Changeset 1842

Show
Ignore:
Timestamp:
04/18/08 17:45:58
Author:
johnsa
Message:

web clients: adding/updating xproperty support to all clients; added X-BEDEWORK-SUBMITTEDBY property.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • releases/bedework-3.4.1.1/deployment/webadmin/webapp/resources/default/default/default.xsl

    r1836 r1842  
    247247              <xsl:for-each select="form/xproperties/node()"> 
    248248                bwXprops.init('<xsl:value-of select="name()"/>',[<xsl:for-each select="parameters/node()">['<xsl:value-of select="name()"/>','<xsl:value-of select="node()"/>']</xsl:for-each>],"<xsl:value-of select="values/text"/>"); 
    249                 <!-- <xsl:variable name="xprop"><xsl:value-of select="name()"/><xsl:for-each select="parameters/node()">;<xsl:value-of select="name()"/>=<xsl:value-of select="node()"/></xsl:for-each>:<xsl:value-of select="values/text"/></xsl:variable> 
    250                 <input type="hidden" name="xproperty" value="{$xprop}" id="name()"/> --> 
    251249              </xsl:for-each> 
    252250            } 
     
    10591057    </xsl:if> 
    10601058 
    1061     <form name="eventForm" method="post" onsubmit="setEventFields(this,{$portalFriendly})"> 
     1059    <xsl:variable name="submitter" select="/bedework/userInfo/group"/> 
     1060    <form name="eventForm" method="post" onsubmit="setEventFields(this,{$portalFriendly},'{$submitter}')"> 
    10621061      <xsl:choose> 
    10631062        <xsl:when test="/bedework/page = 'modEventPending'"> 
  • releases/bedework-3.4.1.1/deployment/webadmin/webapp/resources/resources/bedeworkEventForm.js

    r1836 r1842  
    317317// ======================================================================== 
    318318 
    319 function setEventFields(formObj,portalFriendly) { 
     319function setEventFields(formObj,portalFriendly,submitter) { 
    320320  if (!portalFriendly) { 
    321321    setDates(formObj); 
    322322  } 
    323323  setRecurrence(formObj); 
    324   setBedeworkXProperties(formObj); 
     324  setBedeworkXProperties(formObj,submitter); 
    325325 
    326326  //setAccessHow(formObj,1); 
  • releases/bedework-3.4.1.1/deployment/webadmin/webapp/resources/resources/bedeworkXProperties.js

    r1838 r1842  
    1 // Bedework event form functions 
     1// Bedework x-property functions 
    22 
    33/* ********************************************************************** 
     
    3636var bwXParamHeight = "X-BEDEWORK-PARAM-HEIGHT"; 
    3737 
     38var bwXPropertySubmittedBy = "X-BEDEWORK-SUBMITTEDBY"; 
    3839var bwXPropertySubmitComment = "X-BEDEWORK-SUBMIT-COMMENT"; 
    3940 
     
    4748/* An xproperty 
    4849 * name:   String - name of x-property, e.g. "X-BEDEWORK-IMAGE" 
    49  * params: 2-D Array of parameter key/value pairs, 
     50 * params: 2-D Array of parameter name/value pairs, 
    5051 *         e.g. params[0] = ["X-BEDEWORK-PARAM-DESCRIPTION","a lovely image"] 
    5152 * value:  String - value of x-property 
     
    5859  this.format = function() { 
    5960    var curXparams = ""; 
    60     for (var i = 0; i < this.params.length; i++) { 
    61       curXparams += ";" + this.params[i][0] + "=" + this.params[i][1]; 
     61    if (this.params.length) { 
     62      for (var i = 0; i < this.params.length; i++) { 
     63        curXparams += ";" + this.params[i][0] + "=" + this.params[i][1]; 
     64      } 
    6265    } 
    6366    return this.name + curXparams + ":" + this.value; 
     
    7578  this.update = function(name, params, value, isUnique) { 
    7679    var xprop = new BwXProperty(name, params, value); 
    77     if (isUnique && this.contains(xprop)) { 
     80    if (isUnique && this.contains(name)) { 
    7881      index = this.getIndex(name); 
    7982      xproperties.splice(index,1,xprop); 
     
    8386  } 
    8487 
    85   this.contains = function(xprop) { 
     88  this.contains = function(name) { 
    8689    for (var i = 0; i < xproperties.length; i++) { 
    8790      var curXprop = xproperties[i]; 
    88       if (curXprop[0].equals(xprop[0])) { 
     91      if (curXprop.name == name) { 
    8992        return true; 
    9093      } 
     
    9396  } 
    9497 
    95   this.getIndex = function(xpropName) { 
     98  this.getIndex = function(name) { 
    9699    for (var i = 0; i < xproperties.length; i++) { 
    97100      var curXprop = xproperties[i]; 
    98       if (curXprop[0].equals(xpropName)) { 
     101      if (curXprop.name == name) { 
    99102        return i; 
    100103      } 
     
    109112      xpropField.name = "xproperty"; 
    110113      xpropField.value = xproperties[i].format(); 
     114      // alert(xproperties[i].format()); 
    111115    } 
    112116  } 
     
    114118} 
    115119 
    116 function setBedeworkXProperties(formObj) { 
     120function setBedeworkXProperties(formObj,submitter) { 
    117121  // set up specific Bedework X-Properties on event form submission 
    118122 
     
    121125    bwXProps.update(bwXPropertyImage,[[bwXParamDescription,''],[bwXParamWidth,''],[bwXParamHeight,'']],formObj["xBwImageHolder"].value,true); 
    122126  } 
     127  // X-BEDEWORK-SUBMITTEDBY 
     128  bwXProps.update(bwXPropertySubmittedBy,[],submitter,true); 
    123129 
    124130  // commit all xproperties back to the form 
  • releases/bedework-3.4.1.1/deployment/websubmit/webapp/resources/demoskins/default/default/default.xsl

    r1817 r1842  
    107107        <xsl:if test="/bedework/page = 'editEvent' and 
    108108                      normalize-space(/bedework/formElements/form/xproperties/xproperty[@name='X-BEDEWORK-SUBMIT-COMMENT']/value) != ''"> 
    109           <xsl:attribute name="onload">getComments('standardForm','<xsl:value-of select="/bedework/formElements/form/xproperties/xproperty[@name='X-BEDEWORK-SUBMIT-COMMENT']/value"/>');</xsl:attribute> 
     109          <xsl:attribute name="onload">initRXDates();initXProperties();getComments('standardForm','<xsl:value-of select="/bedework/formElements/form/xproperties/xproperty[@name='X-BEDEWORK-SUBMIT-COMMENT']/value"/>');</xsl:attribute> 
    110110        </xsl:if> 
    111111        <div id="bedework"><!-- main wrapper div --> 
     
    155155      <script type="text/javascript" src="/bedework-common/javascript/dojo/dojo.js">&#160;</script> 
    156156      <script type="text/javascript" src="{$resourcesRoot}/resources/bedeworkEventForm.js">&#160;</script> 
     157      <script type="text/javascript" src="{$resourcesRoot}/resources/bedeworkXProperties.js">&#160;</script> 
    157158    </xsl:if> 
    158159    <!-- <script type="text/javascript" src="{$resourcesRoot}/resources/bedeworkAccess.js">&#160;</script> --> 
     
    163164    <script type="text/javascript"> 
    164165      <xsl:comment> 
    165       <![CDATA[ 
    166166      function focusElement(id) { 
    167167      // focuses element by id 
    168168        document.getElementById(id).focus(); 
    169169      } 
    170       ]]> 
     170      function initRXDates() { 
     171        // return string values to be loaded into javascript for rdates 
     172        <xsl:for-each select="/bedework/formElements/form/rdates/rdate"> 
     173          bwRdates.update('<xsl:value-of select="date"/>','<xsl:value-of select="time"/>',false,false,false,'<xsl:value-of select="tzid"/>'); 
     174        </xsl:for-each> 
     175        // return string values to be loaded into javascript for exdates 
     176        <xsl:for-each select="/bedework/formElements/form/exdates/rdate"> 
     177          bwExdates.update('<xsl:value-of select="date"/>','<xsl:value-of select="time"/>',false,false,false,'<xsl:value-of select="tzid"/>'); 
     178        </xsl:for-each> 
     179      } 
     180      function initXProperties() { 
     181        <xsl:for-each select="form/xproperties/node()"> 
     182          bwXprops.init('<xsl:value-of select="name()"/>',[<xsl:for-each select="parameters/node()">['<xsl:value-of select="name()"/>','<xsl:value-of select="node()"/>']</xsl:for-each>],"<xsl:value-of select="values/text"/>"); 
     183        </xsl:for-each> 
     184      } 
    171185      </xsl:comment> 
    172186    </script> 
     
    281295  <!--==== ADD EVENT ====--> 
    282296  <xsl:template match="formElements" mode="addEvent"> 
    283     <form name="eventForm" method="post" action="{$addEvent}" id="standardForm" onsubmit="setEventFields(this);"> 
     297    <xsl:variable name="submitter" select="/bedework/userid"/> 
     298    <form name="eventForm" method="post" action="{$addEvent}" id="standardForm" onsubmit="setEventFields(this,{$portalFriendly},'{$submitter}');"> 
    284299      <xsl:apply-templates select="." mode="eventForm"/> 
    285300    </form> 
     
    288303  <!--==== EDIT EVENT ====--> 
    289304  <xsl:template match="formElements" mode="editEvent"> 
    290     <form name="eventForm" method="post" action="{$updateEvent}" id="standardForm" onsubmit="setEventFields(this);"> 
     305    <xsl:variable name="submitter" select="/bedework/userid"/> 
     306    <form name="eventForm" method="post" action="{$updateEvent}" id="standardForm" onsubmit="setEventFields(this,{$portalFriendly},'{$submitter}');"> 
    291307      <xsl:apply-templates select="." mode="eventForm"/> 
    292308    </form> 
  • releases/bedework-3.4.1.1/deployment/websubmit/webapp/resources/demoskins/resources/bedeworkEventForm.js

    r1817 r1842  
    240240// ======================================================================== 
    241241 
    242 function setEventFields(formObj) { 
    243   setDates(formObj); 
     242function setEventFields(formObj,portalFriendly,submitter) { 
     243  if (!portalFriendly) { 
     244    setDates(formObj); 
     245  } 
    244246  setComments(formObj); 
    245247  setRecurrence(formObj); 
     248  setBedeworkXProperties(formObj,submitter); 
    246249  setAccessHow(formObj,1); 
    247250  //setAccessAcl(formObj); 
  • releases/bedework-3.4.1.1/deployment/webuser/webapp/resources/demoskins/default/default/default.xsl

    r1810 r1842  
    189189          </xsl:when> 
    190190          <xsl:when test="/bedework/page = 'editEvent'"> 
    191             <xsl:attribute name="onload">initRXDates();</xsl:attribute> 
     191            <xsl:attribute name="onload">initRXDates();initXProperties();focusElement('bwEventTitle');</xsl:attribute> 
    192192          </xsl:when> 
    193193          <xsl:when test="/bedework/page = 'attendees'"> 
     
    379379      <script type="text/javascript" src="/bedework-common/javascript/dojo/dojo.js">&#160;</script> 
    380380      <script type="text/javascript" src="{$resourcesRoot}/resources/bedeworkEventForm.js">&#160;</script> 
     381      <script type="text/javascript" src="{$resourcesRoot}/resources/bedeworkXProperties.js">&#160;</script> 
    381382      <script type="text/javascript" src="{$resourcesRoot}/resources/bedeworkAccess.js">&#160;</script> 
    382383      <xsl:if test="$portalFriendly = 'true'"> 
     
    401402          <xsl:for-each select="/bedework/formElements/form/exdates/rdate"> 
    402403            bwExdates.update('<xsl:value-of select="date"/>','<xsl:value-of select="time"/>',false,false,false,'<xsl:value-of select="tzid"/>'); 
     404          </xsl:for-each> 
     405        } 
     406        function initXProperties() { 
     407          <xsl:for-each select="form/xproperties/node()"> 
     408            bwXprops.init('<xsl:value-of select="name()"/>',[<xsl:for-each select="parameters/node()">['<xsl:value-of select="name()"/>','<xsl:value-of select="node()"/>']</xsl:for-each>],"<xsl:value-of select="values/text"/>"); 
    403409          </xsl:for-each> 
    404410        } 
     
    19891995  <!-- The name "eventForm" is referenced by several javascript functions. Do not 
    19901996    change it without modifying bedework.js --> 
    1991     <form name="eventForm" method="post" action="{$addEvent}" id="standardForm" onsubmit="setEventFields(this,{$portalFriendly})"> 
     1997    <xsl:variable name="submitter" select="/bedework/userid"/> 
     1998    <form name="eventForm" method="post" action="{$addEvent}" id="standardForm" onsubmit="setEventFields(this,{$portalFriendly},'{$submitter}')"> 
    19921999      <h2> 
    19932000        <span class="formButtons"> 
     
    20092016    <!-- The name "eventForm" is referenced by several javascript functions. Do not 
    20102017    change it without modifying bedework.js --> 
    2011     <form name="eventForm" method="post" action="{$updateEvent}" id="standardForm" onsubmit="setEventFields(this,{$portalFriendly})"> 
     2018    <xsl:variable name="submitter" select="/bedework/userid"/> 
     2019    <form name="eventForm" method="post" action="{$updateEvent}" id="standardForm" onsubmit="setEventFields(this,{$portalFriendly},'{$submitter}')"> 
    20122020      <h2> 
    20132021        <span class="formButtons"> 
  • releases/bedework-3.4.1.1/deployment/webuser/webapp/resources/demoskins/resources/bedeworkEventForm.js

    r1729 r1842  
    239239// ======================================================================== 
    240240 
    241 function setEventFields(formObj,portalFriendly) { 
     241function setEventFields(formObj,portalFriendly,submitter) { 
    242242  if (!portalFriendly) { 
    243243    setDates(formObj); 
    244244  } 
    245245  setRecurrence(formObj); 
     246  setBedeworkXProperties(formObj,submitter); 
    246247  setAccessHow(formObj,1); 
    247248  //setAccessAcl(formObj);