root/trunk/deployment/webuser/webapp/resources/demoskins/themes/bedeworkTheme/preferences.xsl

Revision 2890 (checked in by johnsa, 3 years ago)

user client: start of breaking user client into smaller files

Line 
1 <!--
2     Licensed to Jasig under one or more contributor license
3     agreements. See the NOTICE file distributed with this work
4     for additional information regarding copyright ownership.
5     Jasig licenses this file to you under the Apache License,
6     Version 2.0 (the "License"); you may not use this file
7     except in compliance with the License. You may obtain a
8     copy of the License at:
9    
10     http://www.apache.org/licenses/LICENSE-2.0
11    
12     Unless required by applicable law or agreed to in writing,
13     software distributed under the License is distributed on
14     an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15     KIND, either express or implied. See the License for the
16     specific language governing permissions and limitations
17     under the License.
18 -->
19 <xsl:stylesheet
20   version="1.0"
21   xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
22   xmlns="http://www.w3.org/1999/xhtml">
23  
24   <!--==== PREFERENCES ====-->
25   <xsl:template match="prefs">
26     <h2><xsl:copy-of select="$bwStr-Pref-ManagePrefs"/></h2>
27     <ul class="submenu">
28       <li class="selected"><xsl:copy-of select="$bwStr-Pref-General"/></li>
29       <li>
30         <a href="{$category-initUpdate}"><xsl:copy-of select="$bwStr-Pref-Categories"/></a>
31       </li>
32       <li>
33         <a href="{$location-initUpdate}"><xsl:copy-of select="$bwStr-Pref-Locations"/></a>
34       </li>
35       <li>
36         <a href="{$prefs-fetchSchedulingForUpdate}"><xsl:copy-of select="$bwStr-Pref-SchedulingMeetings"/></a>
37       </li>
38     </ul>
39     <!-- The name "eventForm" is referenced by several javascript functions. Do not
40     change it without modifying bedework.js -->
41     <form name="eventForm" method="post" action="{$prefs-update}" onsubmit="setWorkDays(this)">
42       <table class="common">
43         <tr><td colspan="2" class="fill"><xsl:copy-of select="$bwStr-Pref-UserSettings"/></td></tr>
44         <tr>
45           <td class="fieldname">
46             <xsl:copy-of select="$bwStr-Pref-User"/>
47           </td>
48           <td>
49             <xsl:value-of select="user"/>
50             <xsl:variable name="user" select="user"/>
51             <input type="hidden" name="user" value="{$user}"/>
52           </td>
53         </tr>
54         <tr>
55           <td class="fieldname">
56             <xsl:copy-of select="$bwStr-Pref-EmailAddress"/>
57           </td>
58           <td>
59             <xsl:variable name="email" select="email"/>
60             <input type="text" name="email" value="{$email}" size="40"/>
61           </td>
62         </tr>
63         <tr><td colspan="2">&#160;</td></tr>
64         <tr><td colspan="2" class="fill"><xsl:copy-of select="$bwStr-Pref-AddingEvents"/></td></tr>
65         <tr>
66           <td class="fieldname">
67             <xsl:copy-of select="$bwStr-Pref-PreferredTimeType"/>
68           </td>
69           <td>
70             <select name="hour24">
71               <option value="false">
72                 <xsl:if test="hour24 = 'false'">
73                   <xsl:attribute name="selected">selected</xsl:attribute>
74                 </xsl:if>
75                 <xsl:copy-of select="$bwStr-Pref-12HourAMPM"/>
76               </option>
77               <option value="true">
78                 <xsl:if test="hour24 = 'true'">
79                   <xsl:attribute name="selected">selected</xsl:attribute>
80                 </xsl:if>
81                 <xsl:copy-of select="$bwStr-Pref-24Hour"/>
82               </option>
83             </select>
84           </td>
85         </tr>
86         <tr>
87           <td class="fieldname">
88             <xsl:copy-of select="$bwStr-Pref-PreferredEndDateTimeType"/>
89           </td>
90           <td>
91             <select name="preferredEndType">
92               <option value="duration">
93                 <xsl:if test="preferredEndType = 'duration'">
94                   <xsl:attribute name="selected">selected</xsl:attribute>
95                 </xsl:if>
96                 <xsl:copy-of select="$bwStr-Pref-Duration"/>
97               </option>
98               <option value="date">
99                 <xsl:if test="preferredEndType = 'date'">
100                   <xsl:attribute name="selected">selected</xsl:attribute>
101                 </xsl:if>
102                 <xsl:copy-of select="$bwStr-Pref-DateTime"/>
103               </option>
104             </select>
105           </td>
106         </tr>
107         <!-- hide if only one calendar to select -->
108         <xsl:if test="count(/bedework/myCalendars/calendars//calendar[currentAccess/current-user-privilege-set/privilege/write-content and calType = '1']) &gt; 1">
109           <tr>
110             <td class="fieldname">
111               <xsl:copy-of select="$bwStr-Pref-DefaultSchedulingCalendar"/>
112             </td>
113             <td>
114               <xsl:variable name="newCalPath" select="defaultCalendar/path"/>
115               <input type="hidden" name="newCalPath" value="{$newCalPath}" id="bwNewCalPathField"/>
116               <xsl:variable name="userPath">user/<xsl:value-of select="/bedework/userid"/>/</xsl:variable>
117               <span id="bwEventCalDisplay">
118                 <xsl:choose>
119                   <xsl:when test="contains(defaultCalendar,$userPath)">
120                     <xsl:value-of select="substring-after(defaultCalendar,$userPath)"/>
121                   </xsl:when>
122                   <xsl:otherwise>
123                     <xsl:value-of select="defaultCalendar"/>
124                   </xsl:otherwise>
125                 </xsl:choose>
126               </span>
127               <xsl:call-template name="selectCalForEvent"/>
128             </td>
129           </tr>
130         </xsl:if>
131         <tr><td colspan="2">&#160;</td></tr>
132         <tr><td colspan="2" class="fill"><xsl:copy-of select="$bwStr-Pref-WorkdaySettings"/></td></tr>
133         <tr>
134           <td class="fieldname">
135             <xsl:copy-of select="$bwStr-Pref-Workdays"/>
136           </td>
137           <td>
138             <xsl:variable name="workDays" select="workDays"/>
139             <input type="hidden" name="workDays" value="{$workDays}"/>
140             <input type="checkbox" name="workDayIndex" value="0">
141               <xsl:if test="substring(workDays,1,1) = 'W'">
142                 <xsl:attribute name="checked">checked</xsl:attribute>
143               </xsl:if>
144               <xsl:copy-of select="$bwStr-Pref-Sun"/>
145             </input>
146             <input type="checkbox" name="workDayIndex" value="1">
147               <xsl:if test="substring(workDays,2,1) = 'W'">
148                 <xsl:attribute name="checked">checked</xsl:attribute>
149               </xsl:if>
150               <xsl:copy-of select="$bwStr-Pref-Mon"/>
151             </input>
152             <input type="checkbox" name="workDayIndex" value="2">
153               <xsl:if test="substring(workDays,3,1) = 'W'">
154                 <xsl:attribute name="checked">checked</xsl:attribute>
155               </xsl:if>
156               <xsl:copy-of select="$bwStr-Pref-Tue"/>
157             </input>
158             <input type="checkbox" name="workDayIndex" value="3">
159               <xsl:if test="substring(workDays,4,1) = 'W'">
160                 <xsl:attribute name="checked">checked</xsl:attribute>
161               </xsl:if>
162               <xsl:copy-of select="$bwStr-Pref-Wed"/>
163             </input>
164             <input type="checkbox" name="workDayIndex" value="4">
165               <xsl:if test="substring(workDays,5,1) = 'W'">
166                 <xsl:attribute name="checked">checked</xsl:attribute>
167               </xsl:if>
168               <xsl:copy-of select="$bwStr-Pref-Thu"/>
169             </input>
170             <input type="checkbox" name="workDayIndex" value="5">
171               <xsl:if test="substring(workDays,6,1) = 'W'">
172                 <xsl:attribute name="checked">checked</xsl:attribute>
173               </xsl:if>
174               <xsl:copy-of select="$bwStr-Pref-Fri"/>
175             </input>
176             <input type="checkbox" name="workDayIndex" value="6">
177               <xsl:if test="substring(workDays,7,1) = 'W'">
178                 <xsl:attribute name="checked">checked</xsl:attribute>
179               </xsl:if>
180               <xsl:copy-of select="$bwStr-Pref-Sat"/>
181             </input>
182           </td>
183         </tr>
184         <tr>
185           <td class="fieldname">
186             <xsl:copy-of select="$bwStr-Pref-WorkdayStart"/>
187           </td>
188           <td>
189             <select name="workdayStart">
190               <xsl:call-template name="buildWorkdayOptionsList">
191                 <xsl:with-param name="selectedVal" select="workdayStart"/>
192               </xsl:call-template>
193             </select>
194           </td>
195         </tr>
196         <tr>
197           <td class="fieldname">
198             <xsl:copy-of select="$bwStr-Pref-WorkdayEnd"/>
199           </td>
200           <td>
201             <xsl:variable name="workdayEnd" select="workdayEnd"/>
202             <select name="workdayEnd">
203               <xsl:call-template name="buildWorkdayOptionsList">
204                 <xsl:with-param name="selectedVal" select="workdayEnd"/>
205               </xsl:call-template>
206             </select>
207           </td>
208         </tr>
209         <tr><td colspan="2">&#160;</td></tr>
210         <tr><td colspan="2" class="fill"><xsl:copy-of select="$bwStr-Pref-DisplayOptions"/></td></tr>
211         <xsl:if test="/bedework/views/view[position()=2]">
212           <!-- only display if there is more than one to select -->
213           <tr>
214             <td class="fieldname">
215               <xsl:copy-of select="$bwStr-Pref-PreferredView"/>
216             </td>
217             <td>
218               <xsl:variable name="preferredView" select="preferredView"/>
219               <select name="preferredView">
220                 <xsl:for-each select="/bedework/views/view">
221                   <xsl:variable name="viewName" select="name"/>
222                   <xsl:choose>
223                     <xsl:when test="viewName = $preferredView">
224                       <option value="{$viewName}" selected="selected"><xsl:value-of select="name"/></option>
225                     </xsl:when>
226                     <xsl:otherwise>
227                       <option value="{$viewName}"><xsl:value-of select="name"/></option>
228                     </xsl:otherwise>
229                   </xsl:choose>
230                 </xsl:for-each>
231               </select>
232             </td>
233           </tr>
234         </xsl:if>
235         <tr>
236           <td class="fieldname">
237             <xsl:copy-of select="$bwStr-Pref-PreferredViewPeriod"/>
238           </td>
239           <td>
240             <select name="viewPeriod">
241               <option value="dayView">
242                 <xsl:if test="preferredViewPeriod = 'dayView'">
243                   <xsl:attribute name="selected">selected</xsl:attribute>
244                 </xsl:if>
245                 <xsl:copy-of select="$bwStr-Pref-Day"/>
246               </option>
247               <option value="todayView">
248                 <xsl:if test="preferredViewPeriod = 'todayView'">
249                   <xsl:attribute name="selected">selected</xsl:attribute>
250                 </xsl:if>
251                 <xsl:copy-of select="$bwStr-Pref-Today"/>
252               </option>
253               <option value="weekView">
254                 <xsl:if test="preferredViewPeriod = 'weekView'">
255                   <xsl:attribute name="selected">selected</xsl:attribute>
256                 </xsl:if>
257                 <xsl:copy-of select="$bwStr-Pref-Week"/>
258               </option>
259               <option value="monthView">
260                 <xsl:if test="preferredViewPeriod = 'monthView'">
261                   <xsl:attribute name="selected">selected</xsl:attribute>
262                 </xsl:if>
263                 <xsl:copy-of select="$bwStr-Pref-Month"/>
264               </option>
265               <option value="yearView">
266                 <xsl:if test="preferredViewPeriod = 'yearView'">
267                   <xsl:attribute name="selected">selected</xsl:attribute>
268                 </xsl:if>
269                 <xsl:copy-of select="$bwStr-Pref-Year"/>
270               </option>
271             </select>
272           </td>
273         </tr>
274         <tr>
275           <td class="fieldname">
276             <xsl:copy-of select="$bwStr-Pref-DefaultTimezone"/>
277           </td>
278           <td>
279             <xsl:variable name="tzid" select="/bedework/prefs/tzid"/>
280
281             <select name="defaultTzid" id="defaultTzid">
282               <option value="-1"><xsl:copy-of select="$bwStr-Pref-SelectTimezone"/></option>
283               <!--  deprecated: now calling timezone server.  See bedeworkEventForm.js -->
284               <!--
285               <xsl:for-each select="/bedework/timezones/timezone">
286                 <option>
287                   <xsl:attribute name="value"><xsl:value-of select="id"/></xsl:attribute>
288                   <xsl:if test="/bedework/prefs/defaultTzid = id"><xsl:attribute name="selected">selected</xsl:attribute></xsl:if>
289                   <xsl:value-of select="name"/>
290                 </option>
291               </xsl:for-each>
292               -->
293             </select>
294
295             <div class="desc">
296               <xsl:copy-of select="$bwStr-Pref-DefaultTimezoneNote"/>
297             </div>
298           </td>
299         </tr>
300         <!-- as you add skins, update this list and set the selected flag
301                  as required; hide if not in use -->
302         <!--<tr>
303           <td class="fieldname">
304             Skin name:
305           </td>
306           <td>
307             <xsl:variable name="skinName" select="skinName"/>
308             <select name="skin">
309               <option value="default">default</option>
310             </select>
311           </td>
312         </tr> -->
313         <!-- if you have skin styles, update this list and set the selected flag
314                  as required; hide if not in use -->
315         <!--
316         <tr>
317           <td class="fieldname">
318             Skin style:
319           </td>
320           <td>
321             <xsl:variable name="skinStyle" select="skinStyle"/>
322             <select name="skinStyle">
323               <option value="default">default</option>
324             </select>
325           </td>
326         </tr> -->
327         <!-- hide if not in use: -->
328         <!--<tr>
329           <td class="fieldname">
330             Interface mode:
331           </td>
332           <td>
333             <select name="userMode">
334               <option value="0">
335                 <xsl:if test="userMode = 0">
336                   <xsl:attribute name="selected">selected</xsl:attribute>
337                 </xsl:if>
338                 basic
339               </option>
340               <option value="1">
341                 <xsl:if test="userMode = 1">
342                   <xsl:attribute name="selected">selected</xsl:attribute>
343                 </xsl:if>
344                 simple
345               </option>
346               <option value="3">
347                 <xsl:if test="userMode = 3">
348                   <xsl:attribute name="selected">selected</xsl:attribute>
349                 </xsl:if>
350                 advanced
351               </option>
352             </select>
353           </td>
354         </tr>-->
355       </table>
356       <br />
357
358       <input type="submit" name="modPrefs" value="{$bwStr-Pref-Update}"/>
359       <input type="submit" name="cancelled" value="{$bwStr-Pref-Cancel}"/>
360     </form>
361   </xsl:template>
362
363   <xsl:template match="schPrefs">
364     <h2><xsl:copy-of select="$bwStr-ScPr-ManagePreferences"/></h2>
365     <ul class="submenu">
366       <li>
367         <a href="{$prefs-fetchForUpdate}"><xsl:copy-of select="$bwStr-ScPr-General"/></a>
368       </li>
369       <li>
370         <a href="{$category-initUpdate}"><xsl:copy-of select="$bwStr-ScPr-Categories"/></a>
371       </li>
372       <li>
373         <a href="{$location-initUpdate}"><xsl:copy-of select="$bwStr-ScPr-Locations"/></a>
374       </li>
375       <li class="selected"><xsl:copy-of select="$bwStr-ScPr-SchedulingMeetings"/></li>
376     </ul>
377
378     <form name="scheduleAutoProcessingForm" method="post" action="{$prefs-updateSchedulingPrefs}">
379       <table class="common">
380         <tr><td colspan="2" class="fill"><xsl:copy-of select="$bwStr-ScPr-SchedulingAccess"/></td></tr>
381         <tr>
382           <td colspan="2">
383             <div class="innerBlock">
384               <p>
385                 <a href="{$calendar-fetch}"><xsl:copy-of select="$bwStr-ScPr-SetScheduleAccess"/></a>.<br/>
386                 <xsl:copy-of select="$bwStr-ScPr-GrantScheduleAccess"/>
387               </p>
388               <xsl:copy-of select="$bwStr-ScPr-AccessNote"/>
389             </div>
390           </td>
391         </tr>
392         <tr><td colspan="2" class="fill"><xsl:copy-of select="$bwStr-ScPr-SchedulingAutoProcessing"/></td></tr>
393         <tr>
394           <td class="fieldname">
395             <xsl:copy-of select="$bwStr-ScPr-RespondToSchedReqs"/>
396           </td>
397           <td>
398             <input type="radio" name="scheduleAutoRespond" value="true" onclick="toggleAutoRespondFields(this.value)">
399               <xsl:if test="scheduleAutoRespond = 'true'">
400                 <xsl:attribute name="checked">checked</xsl:attribute>
401               </xsl:if>
402               <xsl:copy-of select="$bwStr-ScPr-True"/>
403             </input>
404             <input type="radio" name="scheduleAutoRespond" value="false" onclick="toggleAutoRespondFields(this.value)">
405               <xsl:if test="scheduleAutoRespond = 'false'">
406                 <xsl:attribute name="checked">checked</xsl:attribute>
407               </xsl:if>
408               <xsl:copy-of select="$bwStr-ScPr-False"/>
409             </input>
410           </td>
411         </tr>
412         <tr class="subField">
413           <td class="fieldname">
414             <xsl:copy-of select="$bwStr-ScPr-AcceptDoubleBookings"/>
415           </td>
416           <td>
417             <input type="radio" name="scheduleDoubleBook" value="true" id="scheduleDoubleBookTrue">
418               <xsl:if test="scheduleAutoRespond = 'false'">
419                 <xsl:attribute name="disabled">disabled</xsl:attribute>
420               </xsl:if>
421               <xsl:if test="scheduleDoubleBook = 'true'">
422                 <xsl:attribute name="checked">checked</xsl:attribute>
423               </xsl:if>
424               <xsl:copy-of select="$bwStr-ScPr-True"/>
425             </input>
426             <input type="radio" name="scheduleDoubleBook" value="false" id="scheduleDoubleBookFalse">
427               <xsl:if test="scheduleAutoRespond = 'false'">
428                 <xsl:attribute name="disabled">disabled</xsl:attribute>
429               </xsl:if>
430               <xsl:if test="scheduleDoubleBook = 'false'">
431                 <xsl:attribute name="checked">checked</xsl:attribute>
432               </xsl:if>
433               <xsl:copy-of select="$bwStr-ScPr-False"/>
434             </input>
435           </td>
436         </tr>
437         <tr class="subField">
438           <td class="fieldname">
439             <xsl:copy-of select="$bwStr-ScPr-CancelProcessing"/>
440           </td>
441           <td>
442             <select name="scheduleAutoCancelAction" id="scheduleAutoCancelAction">
443               <xsl:if test="scheduleAutoRespond = 'false'">
444                 <xsl:attribute name="disabled">disabled</xsl:attribute>
445               </xsl:if>
446               <option value="0">
447                 <xsl:if test="scheduleAutoCancelAction = '0'">
448                   <xsl:attribute name="selected">selected</xsl:attribute>
449                 </xsl:if>
450                 <xsl:copy-of select="$bwStr-ScPr-SetToCanceled"/>
451               </option>
452               <option value="1">
453                 <xsl:if test="scheduleAutoCancelAction = '1'">
454                   <xsl:attribute name="selected">selected</xsl:attribute>
455                 </xsl:if>
456                 <xsl:copy-of select="$bwStr-ScPr-DeleteEvent"/>
457               </option>
458             </select>
459           </td>
460         </tr>
461         <tr>
462           <td colspan="2">&#160;</td>
463         </tr>
464         <tr>
465           <td class="fieldname">
466             <xsl:copy-of select="$bwStr-ScPr-ReponseProcessing"/>
467           </td>
468           <td>
469             <select name="scheduleAutoProcessResponses">
470               <option value="0">
471                 <xsl:if test="scheduleAutoProcessResponses = '0'">
472                   <xsl:attribute name="selected">selected</xsl:attribute>
473                 </xsl:if>
474                 <xsl:copy-of select="$bwStr-ScPr-ProcessAccepts"/>
475               </option>
476               <option value="1">
477                 <xsl:if test="scheduleAutoProcessResponses = '1'">
478                   <xsl:attribute name="selected">selected</xsl:attribute>
479                 </xsl:if>
480                 <xsl:copy-of select="$bwStr-ScPr-LeaveInInbox"/>
481               </option>
482               <option value="2">
483                 <xsl:if test="scheduleAutoProcessResponses = '2'">
484                   <xsl:attribute name="selected">selected</xsl:attribute>
485                 </xsl:if>
486                 <xsl:copy-of select="$bwStr-ScPr-TryToProcessAll"/>
487               </option>
488             </select>
489           </td>
490         </tr>
491       </table>
492       <input type="submit" name="modPrefs" value="{$bwStr-ScPr-UpdateSchedulingProcessing}"/>
493       <input type="submit" name="cancelled" value="{$bwStr-ScPr-Cancel}"/>
494     </form>
495   </xsl:template>
496
497   <!-- construct the workDay times options listings from minute 0 to less than
498        minute 1440 (midnight inclusive); initialize the template with the currently
499        selected value. Change the default value for "increment" here. minTime
500        and maxTime are constants. -->
501   <xsl:template name="buildWorkdayOptionsList">
502     <xsl:param name="selectedVal"/>
503     <xsl:param name="increment" select="number(30)"/>
504     <xsl:param name="currentTime" select="number(0)"/>
505     <xsl:variable name="minTime" select="number(0)"/>
506     <xsl:variable name="maxTime" select="number(1440)"/>
507     <xsl:if test="$currentTime &lt; $maxTime">
508       <option value="{$currentTime}">
509         <xsl:if test="$currentTime = $selectedVal"><xsl:attribute name="selected">selected</xsl:attribute></xsl:if>
510         <xsl:if test="floor($currentTime div 60) &lt; 10">0</xsl:if><xsl:value-of select="floor($currentTime div 60)"/>:<xsl:if test="string-length($currentTime mod 60)=1">0</xsl:if><xsl:value-of select="$currentTime mod 60"/>
511       </option>
512       <xsl:call-template name="buildWorkdayOptionsList">
513         <xsl:with-param name="selectedVal" select="$selectedVal"/>
514         <xsl:with-param name="currentTime" select="$currentTime + $increment"/>
515       </xsl:call-template>
516     </xsl:if>
517   </xsl:template>
518  
519  
520 </xsl:stylesheet>
Note: See TracBrowser for help on using the browser.