Changeset 1200

Show
Ignore:
Timestamp:
01/04/07 16:01:56
Author:
johnsa
Message:

user client:

- update access control forms and make common
- make current access listings common
- catch missed forward on setting event default

access

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/deployment/webuser/webapp/resources/demoskins/default/default/default.css

    r1198 r1200  
    565565  white-space: nowrap; 
    566566} 
     567table.common td.submit { 
     568  padding: 0.5em 0.5em 0.2em 0.5em; 
     569  color: black; 
     570  background: #f5f5f5; 
     571  text-align: right; 
     572  border-top: 1px solid #ccc; 
     573} 
    567574table.common td.eventLinks { 
    568575  background-color: #ddd; 
     
    718725  clear: both; 
    719726} 
     727#recurrenceDatesButton { 
     728  margin-top: 0.5em; 
     729} 
    720730.shown { 
    721731  display: inline; 
     
    12451255  border-right: 1px solid #aaa; 
    12461256  font-size: 0.9em; 
    1247   width: 200px; 
    12481257} 
    12491258#calendarTable td.cals { 
     
    12971306#submitTable { 
    12981307  width: 98%; /* less than 100% helps avoid IE weirdness */ 
    1299   margin-top: 1em
     1308  margin: 1em 0
    13001309} 
    13011310.note { 
     
    13891398} 
    13901399#sharingBox { 
    1391   margin: 2em 0; 
     1400  margin: 0; 
    13921401  border-top: 1px solid #333; 
    1393 
    1394 #sharingBox h3 { 
    1395   padding: 1em 0 0.5em 0.5em; 
    1396 
     1402  padding: 1em 1em 2em 1em; 
     1403
     1404#sharingBox h3, 
    13971405#sharingBox h5 { 
    1398   padding: 1em 0 0.5em 0; 
     1406  padding: 0 0 0.5em 0; 
    13991407} 
    14001408#sharingBox ul { 
     
    14021410  margin: 0 1em; 
    14031411} 
     1412#sharingBox p { 
     1413  font-size: 0.9em; 
     1414} 
    14041415#shareForm { 
    14051416  margin: 1em 0; 
    14061417  padding: 0; 
    14071418} 
    1408 #shareFormTable { 
    1409   width: 96%; /* less than 100% helps avoid IE weirdness */ 
    1410 } 
    14111419#shareFormTable td { 
    14121420  border: 1px solid #666; 
    1413   padding-bottom: 0.5em
     1421  padding: 0 0 0.5em 0
    14141422} 
    14151423#shareFormTable h5 { 
    14161424  background: #e5e5e5; 
    14171425  color: black; 
    1418   margin: 0 -0.5em
     1426  margin: 0
    14191427  padding: 4px; 
    1420 }#shareFormTable h5.margOk { 
    1421   margin: 0; 
     1428
     1429#shareFormTable .whoTypes { 
     1430  margin: 1em; 
    14221431} 
    14231432#howList { 
    14241433  margin: 0; 
    1425   padding: 0 0 1em 0; 
    1426 } 
    1427 #howList ul { 
     1434  padding: 1em 0; 
     1435} 
     1436/*#howList ul { 
    14281437  margin: 0 0 0 2em; 
    14291438  padding: 0 0 0.5em 0; 
    1430 } 
     1439}*/ 
    14311440#howList li { 
    14321441  list-style-type: none; 
  • trunk/deployment/webuser/webapp/resources/demoskins/default/default/default.xsl

    r1199 r1200  
    17451745      <xsl:apply-templates select="." mode="eventForm"/> 
    17461746    </form> 
     1747 
     1748    <div id="sharingBox"> 
     1749      <h3>Current Access:</h3> 
     1750      Sharing may be added once an event is created 
     1751    </div> 
    17471752  </xsl:template> 
    17481753 
     
    17651770        Edit Event 
    17661771      </h2> 
    1767  
    17681772      <xsl:apply-templates select="." mode="eventForm"/> 
    17691773    </form> 
    17701774 
    17711775    <div id="sharingBox"> 
    1772       <h3>Sharing</h3> 
    1773       <table class="common"> 
    1774         <tr> 
    1775           <th class="commonHeader" colspan="2">Current access:</th> 
    1776         </tr> 
    1777         <xsl:for-each select="acl/ace"> 
    1778           <tr> 
    1779             <th class="thin"> 
    1780               <xsl:choose> 
    1781                 <xsl:when test="invert"> 
    1782                   <em>Deny to 
    1783                   <xsl:choose> 
    1784                     <xsl:when test="invert/principal/href"> 
    1785                       <xsl:value-of select="invert/principal/href"/> 
    1786                     </xsl:when> 
    1787                     <xsl:when test="invert/principal/property"> 
    1788                       <xsl:value-of select="name(invert/principal/property/*)"/> 
    1789                     </xsl:when> 
    1790                     <xsl:otherwise> 
    1791                       <xsl:value-of select="name(invert/principal/*)"/> 
    1792                     </xsl:otherwise> 
    1793                   </xsl:choose> 
    1794                   </em> 
    1795                 </xsl:when> 
    1796                 <xsl:otherwise> 
    1797                   <xsl:choose> 
    1798                     <xsl:when test="principal/href"> 
    1799                       <xsl:value-of select="principal/href"/> 
    1800                     </xsl:when> 
    1801                     <xsl:when test="principal/property"> 
    1802                       <xsl:value-of select="name(principal/property/*)"/> 
    1803                     </xsl:when> 
    1804                     <xsl:otherwise> 
    1805                       <xsl:value-of select="name(principal/*)"/> 
    1806                     </xsl:otherwise> 
    1807                   </xsl:choose> 
    1808                 </xsl:otherwise> 
    1809               </xsl:choose> 
    1810             </th> 
    1811             <td> 
    1812               <xsl:for-each select="grant/node()"> 
    1813                 <xsl:value-of select="name(.)"/>&#160;&#160; 
    1814               </xsl:for-each> 
    1815             </td> 
    1816           </tr> 
    1817         </xsl:for-each> 
    1818       </table> 
     1776      <xsl:apply-templates select="/bedework/access/acl" mode="currentAccess"> 
     1777        <xsl:with-param name="action" select="$event-setAccess"/> 
     1778        <xsl:with-param name="calPathEncoded" select="$calPathEncoded"/> 
     1779        <xsl:with-param name="guid" select="$guid"/> 
     1780        <xsl:with-param name="recurrenceId" select="$recurrenceId"/> 
     1781      </xsl:apply-templates> 
    18191782      <form name="eventShareForm" action="{$event-setAccess}" id="shareForm"> 
    18201783        <input type="hidden" name="calPath" value="{$calPath}"/> 
    18211784        <input type="hidden" name="guid" value="{$guid}"/> 
    18221785        <input type="hidden" name="recurid" value="{$recurrenceId}"/> 
    1823         <table cellpadding="0" id="shareFormTable" class="common"> 
    1824           <tr> 
    1825             <th colspan="2" class="commonHeader">Add:</th> 
    1826           </tr> 
    1827           <tr> 
    1828             <td> 
    1829               <h5 class="margOk">Who:</h5> 
    1830               <input type="text" name="who" size="20"/><br/> 
    1831               <input type="radio" value="user" name="whoType" checked="checked"/> user 
    1832               <input type="radio" value="group" name="whoType"/> group 
    1833               <p>OR</p> 
    1834               <p> 
    1835                 <input type="radio" value="auth" name="whoType"/> all authorized users<br/> 
    1836                 <input type="radio" value="other" name="whoType"/> other users 
    1837               </p> 
    1838             </td> 
    1839             <td> 
    1840               <h5 class="margOk">Rights:</h5> 
    1841               <ul id="howList"> 
    1842                 <li><input type="radio" value="A" name="how"/> <strong>All</strong> (read, write, delete)</li> 
    1843                 <li class="padTop"> 
    1844                   <input type="radio" value="R" name="how" checked="checked"/> <strong>Read</strong> (content, access, freebusy) 
    1845                 </li> 
    1846                 <li> 
    1847                   <input type="radio" value="f" name="how"/> Read freebusy only 
    1848                 </li> 
    1849                 <li class="padTop"> 
    1850                   <input type="radio" value="W" name="how"/> <strong>Write and delete</strong> (content, access, properties) 
    1851                 </li> 
    1852                 <li> 
    1853                   <input type="radio" value="c" name="how"/> Write content only 
    1854                 </li> 
    1855                 <li> 
    1856                  <input type="radio" value="u" name="how"/> Delete only 
    1857                 </li> 
    1858                 <li class="padTop"> 
    1859                   <input type="radio" value="Rc" name="how"/> <strong>Read</strong> and <strong>Write content only</strong> 
    1860                 </li> 
    1861                 <li class="padTop"> 
    1862                   <input type="radio" value="N" name="how"/> <strong>None</strong> 
    1863                 </li> 
    1864               </ul> 
    1865             </td> 
    1866           </tr> 
    1867         </table> 
    1868         <input type="submit" name="submit" value="Submit"/> 
     1786        <xsl:call-template name="entityAccessForm"/> 
    18691787      </form> 
    18701788    </div> 
     
    23262244                <input type="checkbox" name="recurrenceFlag" onclick="swapRecurrence(this)" value="on"/> 
    23272245                <xsl:choose> 
    2328                   <xsl:when test="/bedeworkadmin/creating = 'true'"> 
     2246                  <xsl:when test="/bedework/creating = 'true'"> 
    23292247                    set recurrence rules 
    23302248                  </xsl:when> 
     
    26512569                  </table> 
    26522570                </div> 
     2571 
    26532572                <!-- recurrence dates (rdates) --> 
    2654                 <input type="button" value="add/remove recurrence dates" action="" class="small"/> 
     2573                <div id="recurrenceDatesButton"> 
     2574                  <input type="button" value="add/remove recurrence dates" action="" class="small"/> 
     2575                </div> 
    26552576              </xsl:otherwise> 
    26562577            </xsl:choose> 
     
    27742695          <xsl:variable name="catCount" select="count(form/categories/all/category)"/> 
    27752696          <xsl:choose> 
    2776             <xsl:when test="catCount = 0"> 
     2697            <xsl:when test="not(form/categories/all/category)"> 
    27772698              no categories defined 
    27782699            </xsl:when> 
     
    28052726      </tr> 
    28062727      <tr> 
    2807         <td class="fieldname">&#160;</td> 
    2808         <td class="fieldval"> 
     2728        <td class="submit" colspan="2"> 
    28092729          <input name="submit" type="submit" value="Submit Event"/>&#160; 
    28102730          <input name="cancelled" type="submit" value="Cancel"/> 
     
    37523672 
    37533673    <div id="sharingBox"> 
    3754       <h3>Sharing</h3> 
     3674      <h3>Current Access:</h3> 
    37553675      Sharing may be added to a calendar once created. 
    37563676    </div> 
     
    37593679 
    37603680  <xsl:template match="currentCalendar" mode="modCalendar"> 
     3681    <xsl:variable name="calPath" select="path"/> 
     3682    <xsl:variable name="calPathEncoded" select="encodedPath"/> 
    37613683    <xsl:choose> 
    37623684      <xsl:when test="calendarCollection='true'"> 
     
    37673689      </xsl:otherwise> 
    37683690    </xsl:choose> 
    3769     <xsl:variable name="calPath" select="path"/> 
    37703691    <form name="modCalForm" action="{$calendar-update}"> 
    37713692      <table class="common"> 
     
    38473768    </form> 
    38483769    <div id="sharingBox"> 
    3849       <h3>Sharing</h3> 
    3850       <table class="common"> 
    3851         <tr> 
    3852           <th class="commonHeader" colspan="2">Current access:</th> 
    3853         </tr> 
    3854  
    3855         <xsl:for-each select="acl/ace"> 
    3856           <tr> 
    3857             <th class="thin"> 
    3858               <xsl:choose> 
    3859                 <xsl:when test="invert"> 
    3860                   <em>Deny to 
    3861                   <xsl:choose> 
    3862                     <xsl:when test="invert/principal/href"> 
    3863                       <xsl:value-of select="invert/principal/href"/> 
    3864                     </xsl:when> 
    3865                     <xsl:when test="invert/principal/property"> 
    3866                       <xsl:value-of select="name(invert/principal/property/*)"/> 
    3867                     </xsl:when> 
    3868                     <xsl:otherwise> 
    3869                       <xsl:value-of select="name(invert/principal/*)"/> 
    3870                     </xsl:otherwise> 
    3871                   </xsl:choose> 
    3872                   </em> 
    3873                 </xsl:when> 
    3874                 <xsl:otherwise> 
    3875                   <xsl:choose> 
    3876                     <xsl:when test="principal/href"> 
    3877                       <xsl:value-of select="principal/href"/> 
    3878                     </xsl:when> 
    3879                     <xsl:when test="principal/property"> 
    3880                       <xsl:value-of select="name(principal/property/*)"/> 
    3881                     </xsl:when> 
    3882                     <xsl:otherwise> 
    3883                       <xsl:value-of select="name(principal/*)"/> 
    3884                     </xsl:otherwise> 
    3885                   </xsl:choose> 
    3886                 </xsl:otherwise> 
    3887               </xsl:choose> 
    3888             </th> 
    3889             <td> 
    3890               <xsl:for-each select="grant/node()"> 
    3891                 <xsl:value-of select="name(.)"/>&#160;&#160; 
    3892               </xsl:for-each> 
    3893             </td> 
    3894           </tr> 
    3895         </xsl:for-each> 
    3896       </table> 
     3770      <xsl:apply-templates select="acl" mode="currentAccess"> 
     3771        <xsl:with-param name="action" select="$calendar-setAccess"/> 
     3772        <xsl:with-param name="calPathEncoded" select="$calPathEncoded"/> 
     3773      </xsl:apply-templates> 
    38973774      <form name="calendarShareForm" action="{$calendar-setAccess}" id="shareForm"> 
    38983775        <input type="hidden" name="calPath" value="{$calPath}"/> 
    3899         <table cellpadding="0" id="shareFormTable" class="common"> 
    3900           <tr> 
    3901             <th colspan="2" class="commonHeader">Add:</th> 
    3902           </tr> 
    3903           <tr> 
    3904             <td> 
    3905               <h5>Who:</h5> 
    3906               <input type="text" name="who" size="20"/><br/> 
    3907               <input type="radio" value="user" name="whoType" checked="checked"/> user 
    3908               <input type="radio" value="group" name="whoType"/> group 
    3909               <p>OR</p> 
    3910               <p> 
    3911                 <input type="radio" value="auth" name="whoType"/> all authorized users<br/> 
    3912                 <input type="radio" value="other" name="whoType"/> other users 
    3913               </p> 
    3914             </td> 
    3915             <td> 
    3916               <h5>Rights:</h5> 
    3917               <ul id="howList"> 
    3918                 <li><input type="radio" value="A" name="how"/> <strong>All</strong> (read, write, delete)</li> 
    3919                 <li class="padTop"> 
    3920                   <input type="radio" value="R" name="how" checked="checked"/> <strong>Read</strong> (content, access, freebusy) 
    3921                 </li> 
    3922                 <li> 
    3923                   <input type="radio" value="f" name="how"/> Read freebusy only 
    3924                 </li> 
    3925                 <li class="padTop"> 
    3926                   <input type="radio" value="W" name="how"/> <strong>Write and delete</strong> (content, access, properties) 
    3927                 </li> 
    3928                 <li> 
    3929                   <input type="radio" value="c" name="how"/> Write content only 
    3930                 </li> 
    3931                 <li> 
    3932                  <input type="radio" value="u" name="how"/> Delete only 
    3933                 </li> 
    3934                 <li class="padTop"> 
    3935                   <input type="radio" value="Rc" name="how"/> <strong>Read</strong> and <strong>Write content only</strong> 
    3936                 </li> 
    3937                 <li class="padTop"> 
    3938                   <input type="radio" value="N" name="how"/> <strong>None</strong> 
    3939                 </li> 
    3940               </ul> 
    3941             </td> 
    3942           </tr> 
    3943         </table> 
    3944         <!--<p> 
    3945           Share with:<br/> 
    3946           <input type="text" name="who" size="20"/> 
    3947           <input type="radio" value="user" name="whoType" checked="checked"/> user 
    3948           <input type="radio" value="group" name="whoType"/> group 
    3949         </p> 
    3950         <p> 
    3951           Access rights:<br/> 
    3952           <input type="radio" value="R" name="how" checked="checked"/> read<br/> 
    3953           <input type="radio" value="Rc" name="how"/> read/write content<br/> 
    3954           <input type="radio" value="f" name="how"/> read free/busy only<br/> 
    3955           <input type="radio" value="d" name="how"/> default (reset access) 
    3956         </p>--> 
    3957         <input type="submit" name="submit" value="Submit"/> 
     3776        <xsl:call-template name="entityAccessForm"/> 
    39583777      </form> 
    39593778    </div> 
     
    60615880          <td class="leftBorder padMe"> 
    60625881            <form name="prefsSetAccess1" method="post" action="{$prefs-setAccess}" onsubmit="setScheduleHow(this)"> 
    6063               <input type="hidden" name="what" value="in"/> 
    6064               <p> 
    6065                 <input type="text" name="who" width="40"/> 
    6066                 <span class="nowrap"><input type="radio" name="whoType" value="user" checked="checked"/>user</span> 
    6067                 <span class="nowrap"><input type="radio" name="whoType" value="group"/>group</span> 
    6068               </p> 
    6069               <p> 
    6070                 <strong>or</strong> 
    6071                 <span class="nowrap"><input type="radio" name="whoType" value="owner"/>owner</span> 
    6072                 <span class="nowrap"><input type="radio" name="whoType" value="auth"/>authenticated users</span> 
    6073                 <span class="nowrap"><input type="radio" name="whoType" value="other"/>anyone</span> 
    6074               </p> 
    6075  
    6076               <p><strong>may send the following to me:</strong></p> 
    6077  
    6078               <input type="hidden" name="how" value="S"/> 
    6079               <dl> 
    6080                 <dt> 
    6081                   <input type="checkbox" name="howSetter" value="S" checked="checked" onchange="toggleScheduleHow(this.form,this)"/>all scheduling 
    6082                 </dt> 
    6083                 <dd> 
    6084                   <input type="checkbox" name="howSetter" value="t" checked="checked" disabled="disabled"/>scheduling requests<br/> 
    6085                   <input type="checkbox" name="howSetter" value="y" checked="checked" disabled="disabled"/>scheduling replies<br/> 
    6086                   <input type="checkbox" name="howSetter" value="s" checked="checked" disabled="disabled"/>free-busy requests 
    6087                 </dd> 
    6088               </dl> 
    6089  
    6090               <input type="submit" name="modPrefs" value="Update"/> 
    6091               <input type="reset" value="Reset"/> 
    6092               <input type="submit" name="cancelled" value="Cancel"/> 
     5882              <xsl:call-template name="schedulingAccessForm"/> 
    60935883            </form> 
    6094             <h3>Current Access:</h3> 
    6095             <table class="common scheduling"> 
    6096               <tr> 
    6097                 <th>Entry</th> 
    6098                 <th>Access</th> 
    6099                 <th>Inherited from</th> 
    6100                 <td></td> 
    6101               </tr> 
    6102               <xsl:apply-templates select="inbox/acl/ace" mode="scheduling"> 
    6103                 <xsl:with-param name="what">in</xsl:with-param> 
    6104               </xsl:apply-templates> 
    6105             </table> 
     5884            <xsl:apply-templates select="inbox/acl" mode="currentAccess"> 
     5885              <xsl:with-param name="action" select="$prefs-setAccess"/> 
     5886              <xsl:with-param name="what">in</xsl:with-param> 
     5887            </xsl:apply-templates> 
    61065888          </td> 
    61075889          <td class="leftBorder padMe"> 
    61085890            <form name="prefsSetAccess2" method="post" action="{$prefs-setAccess}" onsubmit="setScheduleHow(this)"> 
    6109               <input type="hidden" name="what" value="out"/> 
    6110               <p> 
    6111                 <input type="text" name="who" width="40"/> 
    6112                 <span class="nowrap"><input type="radio" name="whoType" value="user" checked="checked"/>user</span> 
    6113                 <span class="nowrap"><input type="radio" name="whoType" value="group"/>group</span> 
    6114               </p> 
    6115               <p> 
    6116                 <strong>or</strong> 
    6117                 <span class="nowrap"><input type="radio" name="whoType" value="owner"/>owner</span> 
    6118                 <span class="nowrap"><input type="radio" name="whoType" value="auth"/>authenticated users</span> 
    6119                 <span class="nowrap"><input type="radio" name="whoType" value="other"/>anyone</span> 
    6120               </p> 
    6121  
    6122               <p><strong>may send the following on my behalf:</strong></p> 
    6123  
    6124               <input type="hidden" name="how" value="S"/> 
    6125               <dl> 
    6126                 <dt> 
    6127                   <input type="checkbox" name="howSetter" value="S" checked="checked" onchange="toggleScheduleHow(this.form,this)"/>all scheduling 
    6128                 </dt> 
    6129                 <dd> 
    6130                   <input type="checkbox" name="howSetter" value="t" checked="checked" disabled="disabled"/>scheduling requests<br/> 
    6131                   <input type="checkbox" name="howSetter" value="y" checked="checked" disabled="disabled"/>scheduling replies<br/> 
    6132                   <input type="checkbox" name="howSetter" value="s" checked="checked" disabled="disabled"/>free-busy requests 
    6133                 </dd> 
    6134               </dl> 
    6135  
    6136               <input type="submit" name="modPrefs" value="Update"/> 
    6137               <input type="reset" value="Reset"/> 
    6138               <input type="submit" name="cancelled" value="Cancel"/> 
     5891              <xsl:call-template name="schedulingAccessForm"/> 
    61395892            </form> 
    6140             <h3>Current Access:</h3> 
    6141             <table class="common scheduling"> 
    6142               <tr> 
    6143                 <th>Entry</th> 
    6144                 <th>Access</th> 
    6145                 <th>Inherited from</th> 
    6146                 <td></td> 
    6147               </tr> 
    6148               <xsl:apply-templates select="outbox/acl/ace" mode="scheduling"> 
    6149                 <xsl:with-param name="what">out</xsl:with-param> 
    6150               </xsl:apply-templates> 
    6151             </table> 
     5893            <xsl:apply-templates select="outbox/acl" mode="currentAccess"> 
     5894              <xsl:with-param name="action" select="$prefs-setAccess"/> 
     5895              <xsl:with-param name="what">out</xsl:with-param> 
     5896            </xsl:apply-templates> 
    61525897          </td> 
    61535898        </tr> 
    61545899      </table> 
    6155   </xsl:template> 
    6156  
    6157   <xsl:template match="ace" mode="scheduling"> 
    6158     <xsl:param name="what"/> 
    6159     <xsl:variable name="who"> 
    6160       <xsl:choose> 
    6161         <xsl:when test="invert"> 
    6162           <xsl:choose> 
    6163             <xsl:when test="invert/principal/href"><xsl:value-of select="normalize-space(invert/principal/href)"/></xsl:when> 
    6164             <xsl:when test="invert/principal/property"><xsl:value-of select="name(invert/principal/property/*)"/></xsl:when> 
    6165             <xsl:otherwise><xsl:value-of select="name(invert/principal/*)"/></xsl:otherwise> 
    6166           </xsl:choose> 
    6167         </xsl:when> 
    6168         <xsl:otherwise> 
    6169           <xsl:choose> 
    6170             <xsl:when test="principal/href"><xsl:value-of select="normalize-space(principal/href)"/></xsl:when> 
    6171             <xsl:when test="principal/property"><xsl:value-of select="name(principal/property/*)"/></xsl:when> 
    6172             <xsl:otherwise><xsl:value-of select="name(principal/*)"/></xsl:otherwise> 
    6173           </xsl:choose> 
    6174         </xsl:otherwise> 
    6175       </xsl:choose> 
    6176     </xsl:variable> 
    6177     <xsl:variable name="whoType"> 
    6178       <xsl:choose> 
    6179         <xsl:when test="contains($who,/bedework/syspars/userPrincipalRoot)">user</xsl:when> 
    6180         <xsl:when test="contains($who,/bedework/syspars/groupPrincipalRoot)">group</xsl:when> 
    6181         <xsl:when test="$who='authenticated'">auth</xsl:when> 
    6182         <xsl:when test="invert/principal/property/owner">other</xsl:when> 
    6183         <xsl:when test="principal/property"><xsl:value-of select="name(principal/property/*)"/></xsl:when> 
    6184         <xsl:when test="invert/principal/property"><xsl:value-of select="name(invert/principal/property/*)"/></xsl:when> 
    6185         <xsl:otherwise></xsl:otherwise> 
    6186       </xsl:choose> 
    6187     </xsl:variable> 
    6188     <xsl:variable name="shortWho"> 
    6189       <xsl:choose> 
    6190         <xsl:when test="$whoType='user'"><xsl:value-of select="substring-after(substring-after($who,normalize-space(/bedework/syspars/userPrincipalRoot)),'/')"/></xsl:when> 
    6191         <xsl:when test="$whoType='group'"><xsl:value-of select="substring-after(substring-after($who,normalize-space(/bedework/syspars/groupPrincipalRoot)),'/')"/></xsl:when> 
    6192         <xsl:otherwise></xsl:otherwise> <!-- if not user or group, send no who --> 
    6193       </xsl:choose> 
    6194     </xsl:variable> 
    6195     <tr> 
    6196       <td> 
    6197         <xsl:choose> 
    6198           <xsl:when test="$whoType = 'user' or ($who = 'owner' and $whoType != 'other')"> 
    6199             <img src="{$resourcesRoot}/resources/userIcon.gif" width="13" height="13" border="0" alt="user"/> 
    6200           </xsl:when> 
    6201           <xsl:otherwise> 
    6202             <img src="{$resourcesRoot}/resources/groupIcon.gif" width="13" height="13" border="0" alt="group"/> 
    6203           </xsl:otherwise> 
    6204         </xsl:choose> 
    6205         <xsl:text> </xsl:text> 
    6206         <xsl:choose> 
    6207           <xsl:when test="$whoType = 'other'"> 
    6208             anyone (other) 
    6209           </xsl:when> 
    6210           <xsl:when test="$shortWho != ''"> 
    6211             <xsl:value-of select="$shortWho"/> 
    6212           </xsl:when> 
    6213           <xsl:otherwise> 
    6214             <xsl:value-of select="$who"/> 
    6215           </xsl:otherwise> 
    6216         </xsl:choose> 
    6217       </td> 
    6218       <td> 
    6219         <xsl:value-of select="name(grant/*)"/> 
    6220       </td> 
    6221       <td> 
    6222         <xsl:choose> 
    6223           <xsl:when test="inherited"> 
    6224             <xsl:value-of select="inherited/href"/> 
    6225           </xsl:when> 
    6226           <xsl:otherwise> 
    6227             local 
    6228           </xsl:otherwise> 
    6229         </xsl:choose> 
    6230       </td> 
    6231       <td> 
    6232         <xsl:if test="not(inherited)"> 
    6233           <xsl:choose> 
    6234             <xsl:when test="invert"> 
    6235               <a href="{$prefs-setAccess}&amp;how=default&amp;what={$what}&amp;who={$shortWho}&amp;whoType={$whoType}&amp;notWho=yes" title="reset to default"> 
    6236                 <img src="{$resourcesRoot}/resources/trashIcon.gif" width="13" height="13" border="0" alt="reset to default"/> 
    6237               </a> 
    6238             </xsl:when> 
    6239             <xsl:otherwise> 
    6240               <a href="{$prefs-setAccess}&amp;how=default&amp;what={$what}&amp;who={$shortWho}&amp;whoType={$whoType}" title="reset to default"> 
    6241                 <img src="{$resourcesRoot}/resources/trashIcon.gif" width="13" height="13" border="0" alt="reset to default"/> 
    6242               </a> 
    6243             </xsl:otherwise> 
    6244           </xsl:choose> 
    6245         </xsl:if> 
    6246       </td> 
    6247     </tr> 
    62485900  </xsl:template> 
    62495901 
     
    62765928      </xsl:call-template> 
    62775929    </xsl:if> 
     5930  </xsl:template> 
     5931 
     5932 
     5933  <!--==== ACCESS CONTROL TEMPLATES ====--> 
     5934 
     5935  <xsl:template name="schedulingAccessForm"> 
     5936    <input type="hidden" name="what" value="out"/> 
     5937    <p> 
     5938      <input type="text" name="who" width="40"/> 
     5939      <span class="nowrap"><input type="radio" name="whoType" value="user" checked="checked"/>user</span> 
     5940      <span class="nowrap"><input type="radio" name="whoType" value="group"/>group</span> 
     5941    </p> 
     5942    <p> 
     5943      <strong>or</strong> 
     5944      <span class="nowrap"><input type="radio" name="whoType" value="owner"/>owner</span> 
     5945      <span class="nowrap"><input type="radio" name="whoType" value="auth"/>authenticated users</span> 
     5946      <span class="nowrap"><input type="radio" name="whoType" value="other"/>anyone</span> 
     5947    </p> 
     5948 
     5949    <p><strong>may send the following on my behalf:</strong></p> 
     5950 
     5951    <input type="hidden" name="how" value="S"/> 
     5952    <dl> 
     5953      <dt> 
     5954        <input type="checkbox" name="howSetter" value="S" checked="checked" onchange="toggleScheduleHow(this.form,this)"/>all scheduling 
     5955      </dt> 
     5956      <dd> 
     5957        <input type="checkbox" name="howSetter" value="t" checked="checked" disabled="disabled"/>scheduling requests<br/> 
     5958        <input type="checkbox" name="howSetter" value="y" checked="checked" disabled="disabled"/>scheduling replies<br/> 
     5959        <input type="checkbox" name="howSetter" value="s" checked="checked" disabled="disabled"/>free-busy requests 
     5960      </dd> 
     5961    </dl> 
     5962 
     5963    <input type="submit" name="modPrefs" value="Update"/> 
     5964    <input type="reset" value="Reset"/> 
     5965    <input type="submit" name="cancelled" value="Cancel"/> 
     5966  </xsl:template> 
     5967 
     5968  <xsl:template name="entityAccessForm"> 
     5969    <table cellpadding="0" id="shareFormTable" class="common"> 
     5970      <tr> 
     5971        <th colspan="2" class="commonHeader">Add:</th> 
     5972      </tr> 
     5973      <tr> 
     5974        <td> 
     5975          <h5>Who:</h5> 
     5976          <div class="whoTypes"> 
     5977            <input type="text" name="who" size="20"/><br/> 
     5978            <input type="radio" value="user" name="whoType" checked="checked"/> user 
     5979            <input type="radio" value="group" name="whoType"/> group 
     5980            <p>OR</p> 
     5981            <p> 
     5982              <input type="radio" value="auth" name="whoType"/> authenticated<br/> 
     5983              <input type="radio" value="other" name="whoType"/> other users 
     5984            </p> 
     5985          </div> 
     5986        </td> 
     5987        <td> 
     5988          <h5>Rights:</h5> 
     5989          <ul id="howList"> 
     5990            <li><input type="radio" value="A" name="how"/> <strong>All</strong> (read, write, delete)</li> 
     5991            <li class="padTop"> 
     5992              <input type="radio" value="R" name="how" checked="checked"/> <strong>Read</strong> (content, access, freebusy) 
     5993            </li> 
     5994            <li> 
     5995              <input type="radio" value="f" name="how"/> Read freebusy only 
     5996            </li> 
     5997            <li class="padTop"> 
     5998              <input type="radio" value="W" name="how"/> <strong>Write and delete</strong> (content, access, properties) 
     5999            </li> 
     6000            <li> 
     6001              <input type="radio" value="c" name="how"/> Write content only 
     6002            </li> 
     6003            <li> 
     6004             <input type="radio" value="u" name="how"/> Delete only 
     6005            </li> 
     6006            <li class="padTop"> 
     6007              <input type="radio" value="Rc" name="how"/> <strong>Read</strong> and <strong>Write content only</strong> 
     6008            </li> 
     6009            <li class="padTop"> 
     6010              <input type="radio" value="N" name="how"/> <strong>None</strong> 
     6011            </li> 
     6012          </ul> 
     6013        </td> 
     6014      </tr> 
     6015    </table> 
     6016    <input type="submit" name="submit" value="Submit"/> 
     6017  </xsl:template> 
     6018 
     6019  <xsl:template match="acl" mode="currentAccess"> 
     6020    <xsl:param name="action"/> <!-- required --> 
     6021    <xsl:param name="calPathEncoded"/> <!-- optional (for entities) --> 
     6022    <xsl:param name="guid"/> <!-- optional (for entities) --> 
     6023    <xsl:param name="recurrenceId"/> <!-- optional (for entities) --> 
     6024    <xsl:param name="what"/> <!-- optional (for scheduling only) --> 
     6025    <h3>Current Access:</h3> 
     6026      <table class="common scheduling"> 
     6027        <tr> 
     6028          <th>Entry</th> 
     6029          <th>Access</th> 
     6030          <th>Inherited from</th> 
     6031          <td></td> 
     6032        </tr> 
     6033        <xsl:for-each select="ace"> 
     6034        <xsl:variable name="who"> 
     6035          <xsl:choose> 
     6036            <xsl:when test="invert"> 
     6037              <xsl:choose> 
     6038                <xsl:when test="invert/principal/href"><xsl:value-of select="normalize-space(invert/principal/href)"/></xsl:when> 
     6039                <xsl:when test="invert/principal/property"><xsl:value-of select="name(invert/principal/property/*)"/></xsl:when> 
     6040                <xsl:otherwise><xsl:value-of select="name(invert/principal/*)"/></xsl:otherwise> 
     6041              </xsl:choose> 
     6042            </xsl:when> 
     6043            <xsl:otherwise> 
     6044              <xsl:choose> 
     6045                <xsl:when test="principal/href"><xsl:value-of select="normalize-space(principal/href)"/></xsl:when> 
     6046                <xsl:when test="principal/property"><xsl:value-of select="name(principal/property/*)"/></xsl:when> 
     6047                <xsl:otherwise><xsl:value-of select="name(principal/*)"/></xsl:otherwise> 
     6048              </xsl:choose> 
     6049            </xsl:otherwise> 
     6050          </xsl:choose> 
     6051        </xsl:variable> 
     6052        <xsl:variable name="whoType"> 
     6053          <xsl:choose> 
     6054            <xsl:when test="contains($who,/bedework/syspars/userPrincipalRoot)">user</xsl:when> 
     6055            <xsl:when test="contains($who,/bedework/syspars/groupPrincipalRoot)">group</xsl:when> 
     6056            <xsl:when test="$who='authenticated'">auth</xsl:when> 
     6057            <xsl:when test="invert/principal/property/owner">other</xsl:when> 
     6058            <xsl:when test="principal/property"><xsl:value-of select="name(principal/property/*)"/></xsl:when> 
     6059            <xsl:when test="invert/principal/property"><xsl:value-of select="name(invert/principal/property/*)"/></xsl:when> 
     6060            <xsl:otherwise></xsl:otherwise> 
     6061          </xsl:choose> 
     6062        </xsl:variable> 
     6063        <xsl:variable name="shortWho"> 
     6064          <xsl:choose> 
     6065            <xsl:when test="$whoType='user'"><xsl:value-of select="substring-after(substring-after($who,normalize-space(/bedework/syspars/userPrincipalRoot)),'/')"/></xsl:when> 
     6066            <xsl:when test="$whoType='group'"><xsl:value-of select="substring-after(substring-after($who,normalize-space(/bedework/syspars/groupPrincipalRoot)),'/')"/></xsl:when> 
     6067            <xsl:otherwise></xsl:otherwise> <!-- if not user or group, send no who --> 
     6068          </xsl:choose> 
     6069        </xsl:variable> 
     6070        <tr> 
     6071          <td> 
     6072            <xsl:choose> 
     6073              <xsl:when test="$whoType = 'user' or ($who = 'owner' and $whoType != 'other')"> 
     6074                <img src="{$resourcesRoot}/resources/userIcon.gif" width="13" height="13" border="0" alt="user"/> 
     6075              </xsl:when> 
     6076              <xsl:otherwise> 
     6077                <img src="{$resourcesRoot}/resources/groupIcon.gif" width="13" height="13" border="0" alt="group"/> 
     6078              </xsl:otherwise> 
     6079            </xsl:choose> 
     6080            <xsl:text> </xsl:text> 
     6081            <xsl:choose> 
     6082              <xsl:when test="$whoType = 'other'"> 
     6083                anyone (other) 
     6084              </xsl:when> 
     6085              <xsl:when test="$shortWho != ''"> 
     6086                <xsl:value-of select="$shortWho"/> 
     6087              </xsl:when> 
     6088              <xsl:otherwise> 
     6089                <xsl:value-of select="$who"/> 
     6090              </xsl:otherwise> 
     6091            </xsl:choose> 
     6092          </td> 
     6093          <td> 
     6094            <xsl:value-of select="name(grant/*)"/> 
     6095          </td> 
     6096          <td> 
     6097            <xsl:choose> 
     6098              <xsl:when test="inherited"> 
     6099                <xsl:value-of select="inherited/href"/> 
     6100              </xsl:when> 
     6101              <xsl:otherwise> 
     6102                local 
     6103              </xsl:otherwise> 
     6104            </xsl:choose> 
     6105          </td> 
     6106          <td> 
     6107            <xsl:if test="not(inherited)"> 
     6108              <a href="{$action}&amp;how=default&amp;what={$what}&amp;who={$shortWho}&amp;whoType={$whoType}&amp;calPath={$calPathEncoded}&amp;guid={$guid}&amp;recurrenceId={$recurrenceId}" title="reset to default"> 
     6109                <img src="{$resourcesRoot}/resources/trashIcon.gif" width="13" height="13" border="0" alt="reset to default"/> 
     6110              </a> 
     6111            </xsl:if> 
     6112          </td> 
     6113        </tr> 
     6114      </xsl:for-each> 
     6115    </table> 
    62786116  </xsl:template> 
    62796117