Changeset 1705
- Timestamp:
- 01/18/08 08:09:43
- Files:
-
- branches/xslt-rewrite/build.xml (modified) (3 diffs)
- branches/xslt-rewrite/build/buildfilters.xml (modified) (1 diff)
- branches/xslt-rewrite/build/buildwar.xml (modified) (1 diff)
- branches/xslt-rewrite/deployment/resources/xsl/default/default/attendees.xsl (modified) (21 diffs)
- branches/xslt-rewrite/deployment/resources/xsl/default/default/boxes.xsl (modified) (6 diffs)
- branches/xslt-rewrite/deployment/resources/xsl/default/default/calendar.xsl (modified) (42 diffs)
- branches/xslt-rewrite/deployment/resources/xsl/default/default/category-location.xsl (modified) (12 diffs)
- branches/xslt-rewrite/deployment/resources/xsl/default/default/clock.xsl (modified) (2 diffs)
- branches/xslt-rewrite/deployment/resources/xsl/default/default/errors.xsl (modified) (5 diffs)
- branches/xslt-rewrite/deployment/resources/xsl/default/default/event-form.xsl (modified) (64 diffs)
- branches/xslt-rewrite/deployment/resources/xsl/default/default/event.xsl (modified) (66 diffs)
- branches/xslt-rewrite/deployment/resources/xsl/default/default/freebusy.xsl (modified) (7 diffs)
- branches/xslt-rewrite/deployment/resources/xsl/default/default/messages.xsl (modified) (4 diffs)
- branches/xslt-rewrite/deployment/resources/xsl/default/default/misc.xsl (modified) (11 diffs)
- branches/xslt-rewrite/deployment/resources/xsl/default/default/navigation.xsl (modified) (34 diffs)
- branches/xslt-rewrite/deployment/resources/xsl/default/default/prefs.xsl (modified) (51 diffs)
- branches/xslt-rewrite/deployment/resources/xsl/default/default/search.xsl (modified) (10 diffs)
- branches/xslt-rewrite/deployment/resources/xsl/default/default/subscriptions.xsl (modified) (14 diffs)
- branches/xslt-rewrite/deployment/resources/xsl/default/default/util.xsl (modified) (18 diffs)
- branches/xslt-rewrite/deployment/resources/xsl/default/default/variables.xsl (modified) (4 diffs)
- branches/xslt-rewrite/deployment/resources/xsl/default/default/views.xsl (modified) (27 diffs)
- branches/xslt-rewrite/deployment/termination/jboss/build.xml (modified) (4 diffs)
- branches/xslt-rewrite/deployment/webadmin/webapp/resources/default/default/default.xsl (modified) (10 diffs)
- branches/xslt-rewrite/deployment/webuser/webapp/resources/demoskins/default/default/default.xsl (modified) (5 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
branches/xslt-rewrite/build.xml
r1623 r1705 57 57 <property name="org.bedework.project.webdav" 58 58 location="${org.bedework.projects}/webdav" /> 59 60 61 <target name="i18n" description="Creates lang.xsl from bedework.properties"> 62 <javac srcdir="util" /> 63 <jar destfile="util/make-lang.jar" 64 basedir="util" 65 includes="**/*.class" /> 66 <java classname="MakeLang" 67 classpath="util/make-lang.jar" 68 fork="true"> 69 <!-- read from file ...--> 70 <arg value="deployment/resources/i18n/bedework.properties" /> 71 <!-- and write to file --> 72 <arg value="deployment/resources/xsl/default/default/lang.xsl" /> 73 </java> 74 <delete> 75 <fileset dir="util" includes="*.class *.jar"/> 76 </delete> 77 </target> 59 78 60 79 <target name="README" depends="init" … … 213 232 build.webdav,build.caldav,build.caldavTest, 214 233 build.freebusy,build.bwtools,build.webapps, 215 build.testsuite,build.deployutil "234 build.testsuite,build.deployutil,i18n" 216 235 description="builds the project"/> 217 236 … … 224 243 <delete dir="${dist.home}" /> 225 244 <delete dir="${bin.home}" /> 245 <delete file="deployment/resources/xsl/default/default/lang.xsl"/> 226 246 </target> 227 247 branches/xslt-rewrite/build/buildfilters.xml
r1281 r1705 14 14 <filter token="HIBERNATE-DIALECT" 15 15 value="${org.bedework.global.hibernate.dialect}" /> 16 17 <filter token="JDBC-DRIVER" 18 value="${org.bedework.global.jdbcdriver}" /> 19 20 <filter token="JDBC-URL" 21 value="${org.bedework.global.jdbcurl}" /> 22 23 <filter token="JDBC-ID" 24 value="${org.bedework.global.jdbcid}" /> 25 26 <filter token="JDBC-PW" 27 value="${org.bedework.global.jdbcpw}" /> 16 28 17 29 <filter token="SECOND-LEVEL-CACHING" branches/xslt-rewrite/build/buildwar.xml
r1605 r1705 169 169 170 170 <!-- =============================================================== 171 Add all java resource bundles 172 =============================================================== --> 173 <copy todir="${app.dest.classes}"> 174 <fileset dir="${project.home}/deployment/resources/i18n"> 175 <include name="*.properties" /> 176 </fileset> 177 </copy> 178 179 <!-- =============================================================== 171 180 Add hibernate jars and property files from calendar api. 172 181 =============================================================== --> 173 174 182 <copy todir="${app.dest.classes}"> 175 183 <fileset dir="${org.bedework.project.calendarapi}/calCore/resources/properties" /> branches/xslt-rewrite/deployment/resources/xsl/default/default/attendees.xsl
r1636 r1705 5 5 <table id="attendees" class="widget" cellspacing="0"> 6 6 <tr> 7 <th colspan="4"> Attendees</th>7 <th colspan="4"><xsl:value-of select="$attendees.attendees.attendees" /></th> 8 8 </tr> 9 9 <tr class="subHead"> 10 10 <xsl:if test="$trash = 'yes'"><td></td></xsl:if> 11 <td> attendee</td>12 <td> role</td>13 <td> status</td>11 <td><xsl:value-of select="$attendees.attendees.attendee" /></td> 12 <td><xsl:value-of select="$attendees.attendees.role" /></td> 13 <td><xsl:value-of select="$attendees.attendees.status" /></td> 14 14 </tr> 15 15 <xsl:for-each select="attendee"> … … 62 62 <xsl:choose> 63 63 <xsl:when test="form/status = 'CANCELLED'"> 64 Meeting Cancelled64 <xsl:value-of select="$attendees.attendeeRespond.meeting.cancelled" /> 65 65 </xsl:when> 66 66 <xsl:otherwise> 67 Meeting Request67 <xsl:value-of select="$attendees.attendeeRespond.meeting.request" /> 68 68 <xsl:if test="guidcals/calendar"> (update)</xsl:if> 69 69 </xsl:otherwise> … … 73 73 <tr> 74 74 <th colspan="2" class="commonHeader"> 75 Organizer:75 <xsl:value-of select="$attendees.attendeeRespond.meeting.organizer" /> 76 76 <xsl:choose> 77 77 <xsl:when test="organizer/cn != ''"> … … 87 87 <tr> 88 88 <td class="fieldname"> 89 Calendar:89 <xsl:value-of select="$attendees.attendeeRespond.meeting.calendar" /> 90 90 </td> 91 91 <td class="fieldval scheduleActions"> … … 177 177 </tr> 178 178 <tr> 179 <td class="fieldname">Action:</td> 179 <td class="fieldname"> 180 <xsl:value-of select="$attendees.attendeeRespond.action" /> 181 </td> 180 182 <td class="fieldval scheduleActions"> 181 183 <xsl:choose> … … 184 186 <input type="hidden" name="method" value="REPLY"/> 185 187 <select name="cancelAction"> 186 <option value="mark">mark event as cancelled</option> 187 <option value="delete">delete event</option> 188 <option value="mark"> 189 <xsl:value-of select="$attendees.attendeeRespond.mark.cancelled" /> 190 </option> 191 <option value="delete"> 192 <xsl:value-of select="$attendees.attendeeRespond.mark.delete" /> 193 </option> 188 194 </select> 189 195 </xsl:when> … … 192 198 <input type="radio" name="method" value="REPLY" checked="checked" onclick="swapScheduleDisplay('hide');"/>reply as 193 199 <select name="partstat"> 194 <option value="ACCEPTED">accepted</option> 195 <option value="DECLINED">declined</option> 196 <option value="TENTATIVE">tentative</option> 200 <option value="ACCEPTED"> 201 <xsl:value-of select="$attendees.attendeeRespond.accepted" /> 202 </option> 203 <option value="DECLINED"> 204 <xsl:value-of select="$attendees.attendeeRespond.declined" /> 205 </option> 206 <option value="TENTATIVE"> 207 <xsl:value-of select="$attendees.attendeeRespond.tentative" /> 208 </option> 197 209 </select><br/> 198 210 <!--<input type="radio" name="method" value="REFRESH" onclick="swapScheduleDisplay('hide');"/>refresh this event<br/>--> 199 <input type="radio" name="method" value="DELEGATE" onclick="swapScheduleDisplay('hide');"/> delegate to200 <input type="test" name="delegate" value=""/> (uri or account)<br/>201 <input type="radio" name="method" value="COUNTER" onclick="swapScheduleDisplay('show');"/> counter (suggest a different date, time, and/or location)211 <input type="radio" name="method" value="DELEGATE" onclick="swapScheduleDisplay('hide');"/><xsl:value-of select="$attendees.attendeeRespond.delegate" /> 212 <input type="test" name="delegate" value=""/> <xsl:value-of select="$attendees.attendeeRespond.uri.or.account" /><br/> 213 <input type="radio" name="method" value="COUNTER" onclick="swapScheduleDisplay('show');"/><xsl:value-of select="$attendees.attendeeRespond.counter" /> 202 214 </xsl:otherwise> 203 215 </xsl:choose> … … 205 217 </tr> 206 218 <tr id="scheduleDateEdit" class="invisible"> 207 <td class="fieldname">New Date/Time:</td> 219 <td class="fieldname"> 220 <xsl:value-of select="$attendees.attendeeRespond.new.date.time" /> 221 </td> 208 222 <td class="fieldval scheduleActions"> 209 223 <!-- Set the timefields class for the first load of the page; … … 228 242 </xsl:otherwise> 229 243 </xsl:choose> 230 all day event<br/> 244 <xsl:value-of select="$attendees.attendeeRespond.all.day.event" /> 245 <br/> 231 246 <div class="dateStartEndBox"> 232 <strong> Start:</strong>247 <strong><xsl:value-of select="$attendees.attendeeRespond.start" /></strong> 233 248 <div class="dateFields"> 234 <span class="startDateLabel"> Date</span>249 <span class="startDateLabel"><xsl:value-of select="$attendees.attendeeRespond.date" /> </span> 235 250 <xsl:copy-of select="form/start/month/*"/> 236 251 <xsl:copy-of select="form/start/day/*"/> … … 263 278 </div> 264 279 <div class="dateStartEndBox"> 265 <strong> End:</strong>280 <strong><xsl:value-of select="$attendees.attendeeRespond.end" /></strong> 266 281 <xsl:choose> 267 282 <xsl:when test="form/end/type='E'"> … … 272 287 </xsl:otherwise> 273 288 </xsl:choose> 274 Date289 <xsl:value-of select="$attendees.attendeeRespond.date" /> 275 290 <xsl:variable name="endDateTimeClass"> 276 291 <xsl:choose> … … 321 336 </xsl:otherwise> 322 337 </xsl:choose> 323 Duration338 <xsl:value-of select="$attendees.attendeeRespond.duration" /> 324 339 <xsl:variable name="endDurationClass"> 325 340 <xsl:choose> … … 389 404 </xsl:otherwise> 390 405 </xsl:choose> 391 This event has no duration / end date406 <xsl:value-of select="$attendees.attendeeRespond.has.no.duration" /> 392 407 </div> 393 408 </div> … … 395 410 </tr> 396 411 <tr id="scheduleLocationEdit" class="invisible"> 397 <td class="fieldname"> New Location:</td>412 <td class="fieldname"><xsl:value-of select="$attendees.attendeeRespond.new.location" /></td> 398 413 <td class="fieldval scheduleActions"> 399 <span class="std-text"> choose:</span>414 <span class="std-text"><xsl:value-of select="$attendees.attendeeRespond.choose" /> </span> 400 415 <span id="eventFormLocationList"> 401 416 <select name="eventLocationUid"> 402 <option value="-1"> select...</option>417 <option value="-1"><xsl:value-of select="$attendees.attendeeRespond.select" /></option> 403 418 <xsl:copy-of select="/bedework/formElements/form/location/locationmenu/select/*"/> 404 419 </select> 405 420 </span> 406 <span class="std-text"> or add new:</span>421 <span class="std-text"> <xsl:value-of select="$attendees.attendeeRespond.add.new" /> </span> 407 422 <input type="text" name="locationAddress.value" value="" /> 408 423 </td> 409 424 </tr> 410 425 <tr> 411 <td class="fieldname"> Comment:</td>426 <td class="fieldname"><xsl:value-of select="$attendees.attendeeRespond.comment" /></td> 412 427 <td class="fieldval scheduleActions"> 413 428 <textarea name="comment" cols="60" rows="2"> … … 425 440 <tr> 426 441 <td class="fieldname"> 427 Title:442 <xsl:value-of select="$attendees.attendeeRespond.title" /> 428 443 </td> 429 444 <td class="fieldval"> … … 432 447 </tr> 433 448 <tr> 434 <td class="fieldname"> Description:</td>449 <td class="fieldname"><xsl:value-of select="$attendees.attendeeRespond.description" /></td> 435 450 <td class="fieldval"> 436 451 <xsl:value-of select="/bedework/formElements/form/desc/textarea"/> … … 439 454 <tr> 440 455 <td class="fieldname"> 441 Date & Time:456 <xsl:value-of select="$attendees.attendeeRespond.date.and.time" /> 442 457 </td> 443 458 <td class="fieldval"> … … 457 472 <xsl:if test="form/allDay/input/@checked='checked'"> 458 473 <xsl:text> </xsl:text> 459 (all day)474 <xsl:value-of select="$attendees.attendeeRespond.all.day" /> 460 475 </xsl:if> 461 476 </td> 462 477 </tr> 463 478 <tr> 464 <td class="fieldname"> Location:</td>479 <td class="fieldname"><xsl:value-of select="$attendees.attendeeRespond.location" /></td> 465 480 <td class="fieldval" align="left"> 466 481 <xsl:if test="location/address = ''"> 467 <em> not specified</em>482 <em><xsl:value-of select="$attendees.attendeeRespond.not.specified" /></em> 468 483 </xsl:if> 469 484 <xsl:value-of select="location/address"/> … … 472 487 <xsl:if test="attendee"> 473 488 <tr> 474 <td class="fieldname"> Attendees:</td>489 <td class="fieldname"><xsl:value-of select="$attendees.attendeeRespond.attendees" /></td> 475 490 <td class="fieldval"> 476 491 <table id="attendees" cellspacing="0"> 477 492 <tr> 478 <th> role</th>479 <th> status</th>480 <th> attendee</th>493 <th><xsl:value-of select="$attendees.attendeeRespond.role" /></th> 494 <th><xsl:value-of select="$attendees.attendeeRespond.status" /></th> 495 <th><xsl:value-of select="$attendees.attendeeRespond.attendee" /></th> 481 496 </tr> 482 497 <xsl:for-each select="attendee"> … … 530 545 <xsl:if test="form/link/input/@value != ''"> 531 546 <tr> 532 <td class="fieldname"> See:</td>547 <td class="fieldname"><xsl:value-of select="$attendees.attendeeRespond.see" /></td> 533 548 <td class="fieldval"> 534 549 <a> … … 542 557 <tr> 543 558 <td class="fieldname"> 544 Status:559 <xsl:value-of select="$attendees.attendeeRespond.status2" /> 545 560 </td> 546 561 <td class="fieldval"> branches/xslt-rewrite/deployment/resources/xsl/default/default/boxes.xsl
r1622 r1705 2 2 <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> 3 3 <xsl:template match="inbox"> 4 <h2 class="common"> Inbox</h2>4 <h2 class="common"> <xsl:value-of select="$boxes.inbox.inbox" /></h2> 5 5 <table id="inoutbox" class="common" cellspacing="0"> 6 6 <tr> 7 7 <th class="commonHeader"> </th> 8 <th class="commonHeader"> sent</th>9 <th class="commonHeader"> from</th>10 <th class="commonHeader"> title</th>11 <th class="commonHeader"> start</th>12 <th class="commonHeader"> end</th>13 <th class="commonHeader"> method</th>8 <th class="commonHeader"><xsl:value-of select="$boxes.inbox.sent" /></th> 9 <th class="commonHeader"><xsl:value-of select="$boxes.inbox.from" /></th> 10 <th class="commonHeader"><xsl:value-of select="$boxes.inbox.title" /></th> 11 <th class="commonHeader"><xsl:value-of select="$boxes.inbox.start" /></th> 12 <th class="commonHeader"><xsl:value-of select="$boxes.inbox.end" /></th> 13 <th class="commonHeader"><xsl:value-of select="$boxes.inbox.method" /></th> 14 14 <!--<th class="commonHeader">status</th>--> 15 15 <th class="commonHeader"> </th> … … 35 35 <xsl:attribute name="class"> 36 36 <xsl:choose> 37 <xsl:when test="scheduleState=0"> unprocessed</xsl:when>38 <xsl:when test="scheduleMethod=1"> publish</xsl:when>39 <xsl:when test="scheduleMethod=2"> request</xsl:when>40 <xsl:when test="scheduleMethod=5"> cancel</xsl:when>41 <xsl:when test="scheduleMethod=7 or scheduleMethod=8"> counter</xsl:when>37 <xsl:when test="scheduleState=0"><xsl:value-of select="$boxes.inbox.unprocessed"/></xsl:when> 38 <xsl:when test="scheduleMethod=1"><xsl:value-of select="$boxes.inbox.publish"/></xsl:when> 39 <xsl:when test="scheduleMethod=2"><xsl:value-of select="$boxes.inbox.request"/></xsl:when> 40 <xsl:when test="scheduleMethod=5"><xsl:value-of select="$boxes.inbox.cancel"/></xsl:when> 41 <xsl:when test="scheduleMethod=7 or scheduleMethod=8"><xsl:value-of select="$boxes.inbox.counter"/></xsl:when> 42 42 </xsl:choose> 43 43 </xsl:attribute> … … 136 136 137 137 <xsl:template match="outbox"> 138 <h2 class="common"> Outbox</h2>138 <h2 class="common"><xsl:value-of select="$boxes.outbox.outbox"/></h2> 139 139 <table id="inoutbox" class="common" cellspacing="0"> 140 140 <tr> 141 141 <th class="commonHeader"> </th> 142 <th class="commonHeader"> sent</th>143 <th class="commonHeader"> organizer</th>144 <th class="commonHeader"> title</th>145 <th class="commonHeader"> start</th>146 <th class="commonHeader"> end</th>147 <th class="commonHeader"> method</th>148 <th class="commonHeader"> status</th>142 <th class="commonHeader"><xsl:value-of select="$boxes.outbox.sent"/></th> 143 <th class="commonHeader"><xsl:value-of select="$boxes.outbox.organizer"/></th> 144 <th class="commonHeader"><xsl:value-of select="$boxes.outbox.title"/></th> 145 <th class="commonHeader"><xsl:value-of select="$boxes.outbox.start"/></th> 146 <th class="commonHeader"><xsl:value-of select="$boxes.outbox.end"/></th> 147 <th class="commonHeader"><xsl:value-of select="$boxes.outbox.method"/></th> 148 <th class="commonHeader"><xsl:value-of select="$boxes.outbox.status"/></th> 149 149 <th class="commonHeader"> </th> 150 150 <th class="commonHeader"> </th> … … 167 167 <xsl:attribute name="class"> 168 168 <xsl:choose> 169 <xsl:when test="scheduleMethod=1"> publish</xsl:when>170 <xsl:when test="scheduleMethod=2"> request</xsl:when>171 <xsl:when test="scheduleMethod=5"> cancel</xsl:when>172 <xsl:when test="scheduleMethod=7 or scheduleMethod=8"> counter</xsl:when>169 <xsl:when test="scheduleMethod=1"><xsl:value-of select="$boxes.outbox.publish"/></xsl:when> 170 <xsl:when test="scheduleMethod=2"><xsl:value-of select="$boxes.outbox.request"/></xsl:when> 171 <xsl:when test="scheduleMethod=5"><xsl:value-of select="$boxes.outbox.cancel"/></xsl:when> 172 <xsl:when test="scheduleMethod=7 or scheduleMethod=8"><xsl:value-of select="$boxes.outbox.counter"/></xsl:when> 173 173 </xsl:choose> 174 174 </xsl:attribute> … … 218 218 <a href="{$inboxItemAction}&subid={$subscriptionId}&calPath={$calPath}&eventName={$eventName}&recurrenceId={$recurrenceId}"> 219 219 <xsl:choose> 220 <xsl:when test="scheduleState=0"><em> unprocessed</em></xsl:when>221 <xsl:otherwise> processed</xsl:otherwise>220 <xsl:when test="scheduleState=0"><em><xsl:value-of select="$boxes.outbox.unprocessed"/></em></xsl:when> 221 <xsl:otherwise><xsl:value-of select="$boxes.outbox.processed"/></xsl:otherwise> 222 222 </xsl:choose> 223 223 </a> … … 241 241 <xsl:template match="scheduleMethod"> 242 242 <xsl:choose> 243 <xsl:when test="node()=1"> publish</xsl:when>244 <xsl:when test="node()=2"> request</xsl:when>245 <xsl:when test="node()=3"> reply</xsl:when>246 <xsl:when test="node()=4"> add</xsl:when>247 <xsl:when test="node()=5"> cancel</xsl:when>248 <xsl:when test="node()=6"> refresh</xsl:when>249 <xsl:when test="node()=7"> counter</xsl:when>250 <xsl:when test="node()=8"> declined</xsl:when><!-- declinecounter -->251 <xsl:otherwise> unknown</xsl:otherwise>243 <xsl:when test="node()=1"><xsl:value-of select="$boxes.scheduleMethod.publish" /></xsl:when> 244 <xsl:when test="node()=2"><xsl:value-of select="$boxes.scheduleMethod.request" /></xsl:when> 245 <xsl:when test="node()=3"><xsl:value-of select="$boxes.scheduleMethod.reply" /></xsl:when> 246 <xsl:when test="node()=4"><xsl:value-of select="$boxes.scheduleMethod.add" /></xsl:when> 247 <xsl:when test="node()=5"><xsl:value-of select="$boxes.scheduleMethod.cancel" /></xsl:when> 248 <xsl:when test="node()=6"><xsl:value-of select="$boxes.scheduleMethod.refresh" /></xsl:when> 249 <xsl:when test="node()=7"><xsl:value-of select="$boxes.scheduleMethod.counter" /></xsl:when> 250 <xsl:when test="node()=8"><xsl:value-of select="$boxes.scheduleMethod.declined" /></xsl:when><!-- declinecounter --> 251 <xsl:otherwise><xsl:value-of select="$boxes.scheduleMethod.unknown" /></xsl:otherwise> 252 252 </xsl:choose> 253 253 </xsl:template> 254 254 </xsl:stylesheet> 255 <?xml version="1.0" encoding="UTF-8"?>256 <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">257 <xsl:template match="inbox">258 <h2 class="common">Inbox</h2>259 <table id="inoutbox" class="common" cellspacing="0">260 <tr>261 <th class="commonHeader"> </th>262 <th class="commonHeader">sent</th>263 <th class="commonHeader">from</th>264 <th class="commonHeader">title</th>265 <th class="commonHeader">start</th>266 <th class="commonHeader">end</th>267 <th class="commonHeader">method</th>268 <!--<th class="commonHeader">status</th>-->269 <th class="commonHeader"> </th>270 <th class="commonHeader"> </th>271 </tr>272 <xsl:for-each select="events/event">273 <xsl:sort select="lastmod" order="descending"/>274 <xsl:variable name="guid" select="guid"/>275 <xsl:variable name="subscriptionId" select="subscription/id"/>276 <xsl:variable name="calPath" select="calendar/encodedPath"/>277 <xsl:variable name="eventName" select="name"/>278 <xsl:variable name="recurrenceId" select="recurrenceId"/>279 <xsl:variable name="inboxItemAction">280 <xsl:choose>281 <xsl:when test="scheduleMethod=2"><xsl:value-of select="$schedule-initAttendeeRespond"/></xsl:when>282 <xsl:when test="scheduleMethod=3"><xsl:value-of select="$schedule-initAttendeeReply"/></xsl:when>283 <xsl:when test="scheduleMethod=6"><xsl:value-of select="$schedule-processRefresh"/></xsl:when>284 <xsl:when test="scheduleMethod=7"><xsl:value-of select="$schedule-initAttendeeReply"/></xsl:when>285 <xsl:otherwise><xsl:value-of select="$schedule-initAttendeeRespond"/></xsl:otherwise>286 </xsl:choose>287 </xsl:variable>288 <tr>289 <xsl:attribute name="class">290 <xsl:choose>291 <xsl:when test="scheduleState=0">unprocessed</xsl:when>292 <xsl:when test="scheduleMethod=1">publish</xsl:when>293 <xsl:when test="scheduleMethod=2">request</xsl:when>294 <xsl:when test="scheduleMethod=5">cancel</xsl:when>295 <xsl:when test="scheduleMethod=7 or scheduleMethod=8">counter</xsl:when>296 </xsl:choose>297 </xsl:attribute>298 <td>299 <a href="{$inboxItemAction}&subid={$subscriptionId}&calPath={$calPath}&eventName={$eventName}&recurrenceId={$recurrenceId}" title="check message">300 <img src="{$resourcesRoot}/resources/calIconSchedule-sm.gif" width="13" height="13" border="0" alt="check message"/>301 </a>302 </td>303 <td>304 <a href="{$inboxItemAction}&subid={$subscriptionId}&calPath={$calPath}&eventName={$eventName}&recurrenceId={$recurrenceId}" title="check message">305 <!--<xsl:value-of select="dtstamp/shortdate"/><xsl:text> </xsl:text><xsl:value-of select="dtstamp/time"/>-->306 <!--<xsl:value-of select="lastmod"/>-->307 <xsl:variable name="dt" select="substring-before(lastmod,'T')"/>308 <xsl:variable name="tm" select="substring-after(lastmod,'T')"/>309 <xsl:value-of select="substring($dt,1,4)"/>-<xsl:value-of select="substring($dt,5,2)"/>-<xsl:value-of select="substring($dt,7,2)"/>310 <xsl:text> </xsl:text>311 <xsl:value-of select="substring($tm,1,2)"/>:<xsl:value-of select="substring($tm,3,2)"/>312 </a>313 </td>314 <td>315 <xsl:choose>316 <xsl:when test="scheduleMethod = '1' or317 scheduleMethod = '2' or318 scheduleMethod = '4' or319 scheduleMethod = '5' or320 scheduleMethod = '8'">321 <xsl:if test="organizer">322 <xsl:variable name="organizerUri" select="organizer/organizerUri"/>323 <xsl:choose>324 <xsl:when test="organizer/cn != ''">325 <xsl:value-of select="organizer/cn"/>326 </xsl:when>327 <xsl:otherwise>328 <xsl:value-of select="substring-after(organizer/organizerUri,'mailto:')"/>329 </xsl:otherwise>330 </xsl:choose>331 <xsl:if test="organizer/organizerUri != ''">332 <a href="{$organizerUri}" class="emailIcon" title="email">333 <img src="{$resourcesRoot}/resources/email.gif" width="16" height="10" border="0" alt="email"/>334 </a>335 </xsl:if>336 </xsl:if>337 </xsl:when>338 <xsl:otherwise>339 <xsl:if test="attendees/attendee">340 <!-- there will only be one attendee at this point -->341 <xsl:variable name="attendeeUri" select="attendees/attendee/attendeeUri"/>342 <xsl:choose>343 <xsl:when test="attendees/attendee/cn != ''">344 <xsl:value-of select="attendees/attendee/cn"/>345 </xsl:when>346 <xsl:otherwise>347 <xsl:value-of select="substring-after(attendees/attendee/attendeeUri,'mailto:')"/>348 </xsl:otherwise>349 </xsl:choose>350 <xsl:if test="$attendeeUri != ''">351 <a href="{$attendeeUri}" class="emailIcon" title="email">352 <img src="{$resourcesRoot}/resources/email.gif" width="16" height="10" border="0" alt="email"/>353 </a>354 </xsl:if>355 </xsl:if>356 </xsl:otherwise>357 </xsl:choose>358 </td>359 <td>360 <a href="{$inboxItemAction}&subid={$subscriptionId}&calPath={$calPath}&eventName={$eventName}&recurrenceId={$recurrenceId}" title="check message">361 <xsl:value-of select="title"/>362 </a>363 </td>364 <td><xsl:value-of select="start/shortdate"/><xsl:text> </xsl:text><xsl:value-of select="start/time"/></td>365 <td><xsl:value-of select="end/shortdate"/><xsl:text> </xsl:text><xsl:value-of select="end/time"/></td>366 <td><xsl:apply-templates select="scheduleMethod"/></td>367 <!--<td>368 <a href="{$inboxItemAction}&subid={$subscriptionId}&calPath={$calPath}&eventName={$eventName}&recurrenceId={$recurrenceId}" title="check message">369 <xsl:choose>370 <xsl:when test="scheduleState=0"><em>unprocessed</em></xsl:when>371 <xsl:otherwise>processed</xsl:otherwise>372 </xsl:choose>373 </a>374 </td>-->375 <td>376 <xsl:variable name="eventIcalName" select="concat($guid,'.ics')"/>377 <a href="{$export}&subid={$subscriptionId}&calPath={$calPath}&&eventName={$eventName}&recurrenceId={$recurrenceId}&nocache=no&contentName={$eventIcalName}" title="download">378 <img src="{$resourcesRoot}/resources/std-ical_icon_small.gif" width="12" height="16" border="0" alt="download"/>379 </a>380 </td>381 <td>382 <a href="{$delInboxEvent}&subid={$subscriptionId}&calPath={$calPath}&&eventName={$eventName}&recurrenceId={$recurrenceId}" title="delete">383 <img src="{$resourcesRoot}/resources/trashIcon.gif" width="13" height="13" border="0" alt="delete"/>384 </a>385 </td>386 </tr>387 </xsl:for-each>388 </table>389 </xsl:template>390 391 <xsl:template match="outbox">392 <h2 class="common">Outbox</h2>393 <table id="inoutbox" class="common" cellspacing="0">394 <tr>395 <th class="commonHeader"> </th>396 <th class="commonHeader">sent</th>397 <th class="commonHeader">organizer</th>398 <th class="commonHeader">title</th>399 <th class="commonHeader">start</th>400 <th class="commonHeader">end</th>401 <th class="commonHeader">method</th>402 <th class="commonHeader">status</th>403 <th class="commonHeader"> </th>404 <th class="commonHeader"> </th>405 </tr>406 <xsl:for-each select="events/event">407 <xsl:sort select="lastmod" order="descending"/>408 <xsl:variable name="guid" select="guid"/>409 <xsl:variable name="subscriptionId" select="subscription/id"/>410 <xsl:variable name="calPath" select="calendar/encodedPath"/>411 <xsl:variable name="eventName" select="name"/>412 <xsl:variable name="recurrenceId" select="recurrenceId"/>413 <xsl:variable name="inboxItemAction">414 <xsl:choose>415 <xsl:when test="scheduleMethod=2"><xsl:value-of select="$schedule-initAttendeeRespond"/></xsl:when>416 <xsl:when test="scheduleMethod=3"><xsl:value-of select="$schedule-initAttendeeReply"/></xsl:when>417 <xsl:otherwise><xsl:value-of select="$schedule-initAttendeeRespond"/></xsl:otherwise>418 </xsl:choose>419 </xsl:variable>420 <tr>421 <xsl:attribute name="class">422 <xsl:choose>423 <xsl:when test="scheduleMethod=1">publish</xsl:when>424 <xsl:when test="scheduleMethod=2">request</xsl:when>425 <xsl:when test="scheduleMethod=5">cancel</xsl:when>426 <xsl:when test="scheduleMethod=7 or scheduleMethod=8">counter</xsl:when>427 </xsl:choose>428 </xsl:attribute>429 <td>430 <a href="{$inboxItemAction}&subid={$subscriptionId}&calPath={$calPath}&eventName={$eventName}&recurrenceId={$recurrenceId}" title="check message">431 <img src="{$resourcesRoot}/resources/calIconSchedule-sm.gif" width="13" height="13" border="0" alt="check message"/>432 </a>433 </td>434 <td>435 <a href="{$inboxItemAction}&subid={$subscriptionId}&calPath={$calPath}&eventName={$eventName}&recurrenceId={$recurrenceId}" title="check message">436 <!-- <xsl:value-of select="dtstamp/shortdate"/><xsl:text> </xsl:text><xsl:value-of select="dtstamp/time"/>-->437 <!--<xsl:value-of select="lastmod"/>-->438 <xsl:variable name="dt" select="substring-before(lastmod,'T')"/>439 <xsl:variable name="tm" select="substring-after(lastmod,'T')"/>440 <xsl:value-of select="substring($dt,1,4)"/>-<xsl:value-of select="substring($dt,5,2)"/>-<xsl:value-of select="substring($dt,7,2)"/>441 <xsl:text> </xsl:text>442 <xsl:value-of select="substring($tm,1,2)"/>:<xsl:value-of select="substring($tm,3,2)"/>443 </a>444 </td>445 <td>446 <xsl:if test="organizer">447 <xsl:variable name="organizerUri" select="organizer/organizerUri"/>448 <xsl:choose>449 <xsl:when test="organizer/cn != ''">450 <xsl:value-of select="organizer/cn"/>451 </xsl:when>452 <xsl:otherwise>453 <xsl:value-of select="substring-after(organizer/organizerUri,'mailto:')"/>454 </xsl:otherwise>455 </xsl:choose>456 <xsl:if test="organizer/organizerUri != ''">457 <a href="{$organizerUri}" class="emailIcon" title="email">458 <img src="{$resourcesRoot}/resources/email.gif" width="16" height="10" border="0" alt="email"/>459 </a>460 </xsl:if>461 </xsl:if>462 </td>463 <td>464 <a href="{$inboxItemAction}&subid={$subscriptionId}&calPath={$calPath}&eventName={$eventName}&recurrenceId={$recurrenceId}">465 <xsl:value-of select="title"/>466 </a>467 </td>468 <td><xsl:value-of select="start/shortdate"/><xsl:text> </xsl:text><xsl:value-of select="start/time"/></td>469 <td><xsl:value-of select="end/shortdate"/><xsl:text> </xsl:text><xsl:value-of select="end/time"/></td>470 <td><xsl:apply-templates select="scheduleMethod"/></td>471 <td>472 <a href="{$inboxItemAction}&subid={$subscriptionId}&calPath={$calPath}&eventName={$eventName}&recurrenceId={$recurrenceId}">473 <xsl:choose>474 <xsl:when test="scheduleState=0"><em>unprocessed</em></xsl:when>475 <xsl:otherwise>processed</xsl:otherwise>476 </xsl:choose>477 </a>478 </td>479 <td>480 <xsl:variable name="eventIcalName" select="concat($guid,'.ics')"/>481 <a href="{$export}&subid={$subscriptionId}&calPath={$calPath}&guid={$guid}&recurrenceId={$recurrenceId}&nocache=no&contentName={$eventIcalName}" title="download">482 <img src="{$resourcesRoot}/resources/std-ical_icon_small.gif" width="12" height="16" border="0" alt="download"/>483 </a>484 </td>485 <td>486 <a href="{$delEvent}&subid={$subscriptionId}&calPath={$calPath}&guid={$guid}&recurrenceId={$recurrenceId}" title="delete">487 <img src="{$resourcesRoot}/resources/trashIcon.gif" width="13" height="13" border="0" alt="delete"/>488 </a>489 </td>490 </tr>491 </xsl:for-each>492 </table>493 </xsl:template>494 495 <xsl:template match="scheduleMethod">496 <xsl:choose>497 <xsl:when test="node()=1">publish</xsl:when>498 <xsl:when test="node()=2">request</xsl:when>499 <xsl:when test="node()=3">reply</xsl:when>500 <xsl:when test="node()=4">add</xsl:when>501 <xsl:when test="node()=5">cancel</xsl:when>502 <xsl:when test="node()=6">refresh</xsl:when>503 <xsl:when test="node()=7">counter</xsl:when>504 <xsl:when test="node()=8">declined</xsl:when><!-- declinecounter -->505 <xsl:otherwise>unknown</xsl:otherwise>506 </xsl:choose>507 </xsl:template>508 </xsl:stylesheet>509 <?xml version="1.0" encoding="UTF-8"?>510 <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">511 <xsl:template match="inbox">512 <h2 class="common">Inbox</h2>513 <table id="inoutbox" class="common" cellspacing="0">514 <tr>515 <th class="commonHeader"> </th>516 <th class="commonHeader">sent</th>517 <th class="commonHeader">from</th>518 <th class="commonHeader">title</th>519 <th class="commonHeader">start</th>520 <th class="commonHeader">end</th>521 <th class="commonHeader">method</th>522 <!--<th class="commonHeader">status</th>-->523 <th class="commonHeader"> </th>524 <th class="commonHeader"> </th>525 </tr>526 <xsl:for-each select="events/event">527 <xsl:sort select="lastmod" order="descending"/>528 <xsl:variable name="guid" select="guid"/>529 <xsl:variable name="subscriptionId" select="subscription/id"/>530 <xsl:variable name="calPath" select="calendar/encodedPath"/>531 <xsl:variable name="eventName" select="name"/>532 <xsl:variable name="recurrenceId" select="recurrenceId"/>533 <xsl:variable name="inboxItemAction">534 <xsl:choose>535 <xsl:when test="scheduleMethod=2"><xsl:value-of select="$schedule-initAttendeeRespond"/></xsl:when>536 <xsl:when test="scheduleMethod=3"><xsl:value-of select="$schedule-initAttendeeReply"/></xsl:when>537 <xsl:when test="scheduleMethod=6"><xsl:value-of select="$schedule-processRefresh"/></xsl:when>538 <xsl:when test="scheduleMethod=7"><xsl:value-of select="$schedule-initAttendeeReply"/></xsl:when>539 <xsl:otherwise><xsl:value-of select="$schedule-initAttendeeRespond"/></xsl:otherwise>540 </xsl:choose>541 </xsl:variable>542 <tr>543 <xsl:attribute name="class">544 <xsl:choose>545 <xsl:when test="scheduleState=0">unprocessed</xsl:when>546 <xsl:when test="scheduleMethod=1">publish</xsl:when>547 <xsl:when test="scheduleMethod=2">request</xsl:when>548 <xsl:when test="scheduleMethod=5">cancel</xsl:when>549 <xsl:when test="scheduleMethod=7 or scheduleMethod=8">counter</xsl:when>550 </xsl:choose>551 </xsl:attribute>552 <td>553 <a href="{$inboxItemAction}&subid={$subscriptionId}&calPath={$calPath}&eventName={$eventName}&recurrenceId={$recurrenceId}" title="check message">554 <img src="{$resourcesRoot}/resources/calIconSchedule-sm.gif" width="13" height="13" border="0" alt="check message"/>555 </a>556 </td>557 <td>558 <a href="{$inboxItemAction}&subid={$subscriptionId}&calPath={$calPath}&eventName={$eventName}&recurrenceId={$recurrenceId}" title="check message">559 <!--<xsl:value-of select="dtstamp/shortdate"/><xsl:text> </xsl:text><xsl:value-of select="dtstamp/time"/>-->560 <!--<xsl:value-of select="lastmod"/>-->561 <xsl:variable name="dt" select="substring-before(lastmod,'T')"/>562 <xsl:variable name="tm" select="substring-after(lastmod,'T')"/>563 <xsl:value-of select="substring($dt,1,4)"/>-<xsl:value-of select="substring($dt,5,2)"/>-<xsl:value-of select="substring($dt,7,2)"/>564 <xsl:text> </xsl:text>565 <xsl:value-of select="substring($tm,1,2)"/>:<xsl:value-of select="substring($tm,3,2)"/>566 </a>567 </td>568 <td>569 <xsl:choose>570 <xsl:when test="scheduleMethod = '1' or571 scheduleMethod = '2' or572 scheduleMethod = '4' or573 scheduleMethod = '5' or574 scheduleMethod = '8'">575 <xsl:if test="organizer">576 <xsl:variable name="organizerUri" select="organizer/organizerUri"/>577 <xsl:choose>578 <xsl:when test="organizer/cn != ''">579 <xsl:value-of select="organizer/cn"/>580 </xsl:when>581 <xsl:otherwise>582 <xsl:value-of select="substring-after(organizer/organizerUri,'mailto:')"/>583 </xsl:otherwise>584 </xsl:choose>585 <xsl:if test="organizer/organizerUri != ''">586 <a href="{$organizerUri}" class="emailIcon" title="email">587 <img src="{$resourcesRoot}/resources/email.gif" width="16" height="10" border="0" alt="email"/>588 </a>589 </xsl:if>590 </xsl:if>591 </xsl:when>592 <xsl:otherwise>593 <xsl:if test="attendees/attendee">594 <!-- there will only be one attendee at this point -->595 <xsl:variable name="attendeeUri" select="attendees/attendee/attendeeUri"/>596 <xsl:choose>597 <xsl:when test="attendees/attendee/cn != ''">598 <xsl:value-of select="attendees/attendee/cn"/>599 </xsl:when>600 <xsl:otherwise>601 <xsl:value-of select="substring-after(attendees/attendee/attendeeUri,'mailto:')"/>602 </xsl:otherwise>603 </xsl:choose>604 <xsl:if test="$attendeeUri != ''">605 <a href="{$attendeeUri}" class="emailIcon" title="email">606 <img src="{$resourcesRoot}/resources/email.gif" width="16" height="10" border="0" alt="email"/>607 </a>608 </xsl:if>609 </xsl:if>610 </xsl:otherwise>611 </xsl:choose>612 </td>613 <td>614 <a href="{$inboxItemAction}&subid={$subscriptionId}&calPath={$calPath}&eventName={$eventName}&recurrenceId={$recurrenceId}" title="check message">615 <xsl:value-of select="title"/>616 </a>617 </td>618 <td><xsl:value-of select="start/shortdate"/><xsl:text> </xsl:text><xsl:value-of select="start/time"/></td>619 <td><xsl:value-of select="end/shortdate"/><xsl:text> </xsl:text><xsl:value-of select="end/time"/></td>620 <td><xsl:apply-templates select="scheduleMethod"/></td>621 <!--<td>622 <a href="{$inboxItemAction}&subid={$subscriptionId}&calPath={$calPath}&eventName={$eventName}&recurrenceId={$recurrenceId}" title="check message">623 <xsl:choose>624 <xsl:when test="scheduleState=0"><em>unprocessed</em></xsl:when>625 <xsl:otherwise>processed</xsl:otherwise>626 </xsl:choose>627 </a>628 </td>-->629 <td>630 <xsl:variable name="eventIcalName" select="concat($guid,'.ics')"/>631 <a href="{$export}&subid={$subscriptionId}&calPath={$calPath}&&eventName={$eventName}&recurrenceId={$recurrenceId}&nocache=no&contentName={$eventIcalName}" title="download">632 <img src="{$resourcesRoot}/resources/std-ical_icon_small.gif" width="12" height="16" border="0" alt="download"/>633 </a>634 </td>635 <td>636 <a href="{$delInboxEvent}&subid={$subscriptionId}&calPath={$calPath}&&eventName={$eventName}&recurrenceId={$recurrenceId}" title="delete">637 <img src="{$resourcesRoot}/resources/trashIcon.gif" width="13" height="13" border="0" alt="delete"/>638 </a>639 </td>640 </tr>641 </xsl:for-each>642 </table>643 </xsl:template>644 645 <xsl:template match="outbox">646 <h2 class="common">Outbox</h2>647 <table id="inoutbox" class="common" cellspacing="0">648 <tr>649 <th class="commonHeader"> </th>650 <th class="commonHeader">sent</th>651 <th class="commonHeader">organizer</th>652 <th class="commonHeader">title</th>653 <th class="commonHeader">start</th>654 <th class="commonHeader">end</th>655 <th class="commonHeader">method</th>656 <th class="commonHeader">status</th>657 <th class="commonHeader"> </th>658 <th class="commonHeader"> </th>659 </tr>660 <xsl:for-each select="events/event">661 <xsl:sort select="lastmod" order="descending"/>662 <xsl:variable name="guid" select="guid"/>663 <xsl:variable name="subscriptionId" select="subscription/id"/>664 <xsl:variable name="calPath" select="calendar/encodedPath"/>665 <xsl:variable name="eventName" select="name"/>666 <xsl:variable name="recurrenceId" select="recurrenceId"/>667 <xsl:variable name="inboxItemAction">668 <xsl:choose>669 <xsl:when test="scheduleMethod=2"><xsl:value-of select="$schedule-initAttendeeRespond"/></xsl:when>670 <xsl:when test="scheduleMethod=3"><xsl:value-of select="$schedule-initAttendeeReply"/></xsl:when>671 <xsl:otherwise><xsl:value-of select="$schedule-initAttendeeRespond"/></xsl:otherwise>672 </xsl:choose>673 </xsl:variable>674 <tr>675 <xsl:attribute name="class">676 <xsl:choose>677 <xsl:when test="scheduleMethod=1">publish</xsl:when>678 <xsl:when test="scheduleMethod=2">request</xsl:when>679 <xsl:when test="scheduleMethod=5">cancel</xsl:when>680 <xsl:when test="scheduleMethod=7 or scheduleMethod=8">counter</xsl:when>681 </xsl:choose>682 </xsl:attribute>683 <td>684 <a href="{$inboxItemAction}&subid={$subscriptionId}&calPath={$calPath}&eventName={$eventName}&recurrenceId={$recurrenceId}" title="check message">685 <img src="{$resourcesRoot}/resources/calIconSchedule-sm.gif" width="13" height="13" border="0" alt="check message"/>686 </a>687 </td>688 <td>689 <a href="{$inboxItemAction}&subid={$subscriptionId}&calPath={$calPath}&eventName={$eventName}&recurrenceId={$recurrenceId}" title="check message">690 <!-- <xsl:value-of select="dtstamp/shortdate"/><xsl:text> </xsl:text><xsl:value-of select="dtstamp/time"/>-->691 <!--<xsl:value-of select="lastmod"/>-->692 <xsl:variable name="dt" select="substring-before(lastmod,'T')"/>693 <xsl:variable name="tm" select="substring-after(lastmod,'T')"/>694 <xsl:value-of select="substring($dt,1,4)"/>-<xsl:value-of select="substring($dt,5,2)"/>-<xsl:value-of select="substring($dt,7,2)"/>695 <xsl:text> </xsl:text>696 <xsl:value-of select="substring($tm,1,2)"/>:<xsl:value-of select="substring($tm,3,2)"/>697 </a>698 </td>699 <td>700 <xsl:if test="organizer">701 <xsl:variable name="organizerUri" select="organizer/organizerUri"/>702 <xsl:choose>703 <xsl:when test="organizer/cn != ''">704 <xsl:value-of select="organizer/cn"/>705 </xsl:when>706 <xsl:otherwise>707 <xsl:value-of select="substring-after(organizer/organizerUri,'mailto:')"/>708 </xsl:otherwise>709 </xsl:choose>710 <xsl:if test="organizer/organizerUri != ''">711 <a href="{$organizerUri}" class="emailIcon" title="email">712 <img src="{$resourcesRoot}/resources/email.gif" width="16" height="10" border="0" alt="email"/>713 </a>714 </xsl:if>715 </xsl:if>716 </td>717 <td>718 <a href="{$inboxItemAction}&subid={$subscriptionId}&calPath={$calPath}&eventName={$eventName}&recurrenceId={$recurrenceId}">719 <xsl:value-of select="title"/>720 </a>721 </td>722 <td><xsl:value-of select="start/shortdate"/><xsl:text> </xsl:text><xsl:value-of select="start/time"/></td>723 <td><xsl:value-of select="end/shortdate"/><xsl:text> </xsl:text><xsl:value-of select="end/time"/></td>724 <td><xsl:apply-templates select="scheduleMethod"/></td>725 <td>726 <a href="{$inboxItemAction}&subid={$subscriptionId}&calPath={$calPath}&eventName={$eventName}&recurrenceId={$recurrenceId}">727 <xsl:choose>728 <xsl:when test="scheduleState=0"><em>unprocessed</em></xsl:when>729 <xsl:otherwise>processed</xsl:otherwise>730 </xsl:choose>731 </a>732 </td>733 <td>734 <xsl:variable name="eventIcalName" select="concat($guid,'.ics')"/>735 <a href="{$export}&subid={$subscriptionId}&calPath={$calPath}&guid={$guid}&recurrenceId={$recurrenceId}&nocache=no&contentName={$eventIcalName}" title="download">736 <img src="{$resourcesRoot}/resources/std-ical_icon_small.gif" width="12" height="16" border="0" alt="download"/>737 </a>738 </td>739 <td>740 <a href="{$delEvent}&subid={$subscriptionId}&calPath={$calPath}&guid={$guid}&recurrenceId={$recurrenceId}" title="delete">741 <img src="{$resourcesRoot}/resources/trashIcon.gif" width="13" height="13" border="0" alt="delete"/>742 </a>743 </td>744 </tr>745 </xsl:for-each>746 </table>747 </xsl:template>748 749 <xsl:template match="scheduleMethod">750 <xsl:choose>751 <xsl:when test="node()=1">publish</xsl:when>752 <xsl:when test="node()=2">request</xsl:when>753 <xsl:when test="node()=3">reply</xsl:when>754 <xsl:when test="node()=4">add</xsl:when>755 <xsl:when test="node()=5">cancel</xsl:when>756 <xsl:when test="node()=6">refresh</xsl:when>757 <xsl:when test="node()=7">counter</xsl:when>758 <xsl:when test="node()=8">declined</xsl:when><!-- declinecounter -->759 <xsl:otherwise>unknown</xsl:otherwise>760 </xsl:choose>761 </xsl:template>762 </xsl:stylesheet>763 <?xml version="1.0" encoding="UTF-8"?>764 <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">765 <xsl:template match="inbox">766 <h2 class="common">Inbox</h2>767 <table id="inoutbox" class="common" cellspacing="0">768 <tr>769 <th class="commonHeader"> </th>770 <th class="commonHeader">sent</th>771 <th class="commonHeader">from</th>772 <th class="commonHeader">title</th>773 <th class="commonHeader">start</th>774 <th class="commonHeader">end</th>775 <th class="commonHeader">method</th>776 <!--<th class="commonHeader">status</th>-->777 <th class="commonHeader"> </th>778 <th class="commonHeader"> </th>779 </tr>780 <xsl:for-each select="events/event">781 <xsl:sort select="lastmod" order="descending"/>782 <xsl:variable name="guid" select="guid"/>783 <xsl:variable name="subscriptionId" select="subscription/id"/>784 <xsl:variable name="calPath" select="calendar/encodedPath"/>785 <xsl:variable name="eventName" select="name"/>786 <xsl:variable name="recurrenceId" select="recurrenceId"/>787 <xsl:variable name="inboxItemAction">788 <xsl:choose>789 <xsl:when test="scheduleMethod=2"><xsl:value-of select="$schedule-initAttendeeRespond"/></xsl:when>790 <xsl:when test="scheduleMethod=3"><xsl:value-of select="$schedule-initAttendeeReply"/></xsl:when>791 <xsl:when test="scheduleMethod=6"><xsl:value-of select="$schedule-processRefresh"/></xsl:when>792 <xsl:when test="scheduleMethod=7"><xsl:value-of select="$schedule-initAttendeeReply"/></xsl:when>793 <xsl:otherwise><xsl:value-of select="$schedule-initAttendeeRespond"/></xsl:otherwise>794 </xsl:choose>795 </xsl:variable>796 <tr>797 <xsl:attribute name="class">798 <xsl:choose>799 <xsl:when test="scheduleState=0">unprocessed</xsl:when>800 <xsl:when test="scheduleMethod=1">publish</xsl:when>801 <xsl:when test="scheduleMethod=2">request</xsl:when>802 <xsl:when test="scheduleMethod=5">cancel</xsl:when>803 <xsl:when test="scheduleMethod=7 or scheduleMethod=8">counter</xsl:when>804 </xsl:choose>805 </xsl:attribute>806 <td>807 <a href="{$inboxItemAction}&subid={$subscriptionId}&calPath={$calPath}&eventName={$eventName}&recurrenceId={$recurrenceId}" title="check message">808 <img src="{$resourcesRoot}/resources/calIconSchedule-sm.gif" width="13" height="13" border="0" alt="check message"/>809 </a>810 </td>811 <td>812 <a href="{$inboxItemAction}&subid={$subscriptionId}&calPath={$calPath}&eventName={$eventName}&recurrenceId={$recurrenceId}" title="check message">813 <!--<xsl:value-of select="dtstamp/shortdate"/><xsl:text> </xsl:text><xsl:value-of select="dtstamp/time"/>-->814 <!--<xsl:value-of select="lastmod"/>-->815 <xsl:variable name="dt" select="substring-before(lastmod,'T')"/>816 <xsl:variable name="tm" select="substring-after(lastmod,'T')"/>817 <xsl:value-of select="substring($dt,1,4)"/>-<xsl:value-of select="substring($dt,5,2)"/>-<xsl:value-of select="substring($dt,7,2)"/>818 <xsl:text> </xsl:text>819 <xsl:value-of select="substring($tm,1,2)"/>:<xsl:value-of select="substring($tm,3,2)"/>820 </a>821 </td>822 <td>823 <xsl:choose>824 <xsl:when test="scheduleMethod = '1' or825 scheduleMethod = '2' or826 scheduleMethod = '4' or827 scheduleMethod = '5' or828 scheduleMethod = '8'">829 <xsl:if test="organizer">830 <xsl:variable name="organizerUri" select="organizer/organizerUri"/>831 <xsl:choose>832 <xsl:when test="organizer/cn != ''">833 <xsl:value-of select="organizer/cn"/>834 </xsl:when>835 <xsl:otherwise>836 <xsl:value-of select="substring-after(organizer/organizerUri,'mailto:')"/>837 </xsl:otherwise>838 </xsl:choose>839 <xsl:if test="organizer/organizerUri != ''">840 <a href="{$organizerUri}" class="emailIcon" title="email">841 <img src="{$resourcesRoot}/resources/email.gif" width="16" height="10" border="0" alt="email"/>842 </a>843 </xsl:if>844 </xsl:if>845 </xsl:when>846 <xsl:otherwise>847 <xsl:if test="attendees/attendee">848 <!-- there will only be one attendee at this point -->849 <xsl:variable name="attendeeUri" select="attendees/attendee/attendeeUri"/>850 <xsl:choose>851 <xsl:when test="attendees/attendee/cn != ''">852 <xsl:value-of select="attendees/attendee/cn"/>853 </xsl:when>854 <xsl:otherwise>855 <xsl:value-of select="substring-after(attendees/attendee/attendeeUri,'mailto:')"/>856 </xsl:otherwise>857 </xsl:choose>858 <xsl:if test="$attendeeUri != ''">859 <a href="{$attendeeUri}" class="emailIcon" title="email">860 <img src="{$resourcesRoot}/resources/email.gif" width="16" height="10" border="0" alt="email"/>861 </a>862 </xsl:if>863 </xsl:if>864 </xsl:otherwise>865 </xsl:choose>866 </td>867 <td>868 <a href="{$inboxItemAction}&subid={$subscriptionId}&calPath={$calPath}&eventName={$eventName}&recurrenceId={$recurrenceId}" title="check message">869 <xsl:value-of select="title"/>870 </a>871 </td>872 <td><xsl:value-of select="start/shortdate"/><xsl:text> </xsl:text><xsl:value-of select="start/time"/></td>873 <td><xsl:value-of select="end/shortdate"/><xsl:text> </xsl:text><xsl:value-of select="end/time"/></td>874 <td><xsl:apply-templates select="scheduleMethod"/></td>875 <!--<td>876 <a href="{$inboxItemAction}&subid={$subscriptionId}&calPath={$calPath}&eventName={$eventName}&recurrenceId={$recurrenceId}" title="check message">877 <xsl:choose>878 <xsl:when test="scheduleState=0"><em>unprocessed</em></xsl:when>879 <xsl:otherwise>processed</xsl:otherwise>880 </xsl:choose>881 </a>882 </td>-->883 <td>884 <xsl:variable name="eventIcalName" select="concat($guid,'.ics')"/>885 <a href="{$export}&subid={$subscriptionId}&calPath={$calPath}&&eventName={$eventName}&recurrenceId={$recurrenceId}&nocache=no&contentName={$eventIcalName}" title="download">886 <img src="{$resourcesRoot}/resources/std-ical_icon_small.gif" width="12" height="16" border="0" alt="download"/>887 </a>888 </td>889 <td>890 <a href="{$delInboxEvent}&subid={$subscriptionId}&calPath={$calPath}&&eventName={$eventName}&recurrenceId={$recurrenceId}" title="delete">891 <img src="{$resourcesRoot}/resources/trashIcon.gif" width="13" height="13" border="0" alt="delete"/>892 </a>893 </td>894 </tr>895 </xsl:for-each>896 </table>897 </xsl:template>898 899 <xsl:template match="outbox">900 <h2 class="common">Outbox</h2>901 <table id="inoutbox" class="common" cellspacing="0">902 <tr>903 <th class="commonHeader"> </th>904 <th class="commonHeader">sent</th>905 <th class="commonHeader">organizer</th>906 <th class="commonHeader">title</th>907 <th class="commonHeader">start</th>908 <th class="commonHeader">end</th>909 <th class="commonHeader">method</th>910 <th class="commonHeader">status</th>911 <th class="commonHeader"> </th>912 <th class="commonHeader"> </th>913 </tr>914 <xsl:for-each select="events/event">915 <xsl:sort select="lastmod" order="descending"/>916 <xsl:variable name="guid" select="guid"/>917 <xsl:variable name="subscriptionId" select="subscription/id"/>918 <xsl:variable name="calPath" select="calendar/encodedPath"/>919 <xsl:variable name="eventName" select="name"/>920 <xsl:variable name="recurrenceId" select="recurrenceId"/>921 <xsl:variable name="inboxItemAction">922 <xsl:choose>923 <xsl:when test="scheduleMethod=2"><xsl:value-of select="$schedule-initAttendeeRespond"/></xsl:when>924 <xsl:when test="scheduleMethod=3"><xsl:value-of select="$schedule-initAttendeeReply"/></xsl:when>925 <xsl:otherwise><xsl:value-of select="$schedule-initAttendeeRespond"/></xsl:otherwise>926 </xsl:choose>927 </xsl:variable>928 <tr>929 <xsl:attribute name="class">930 <xsl:choose>931 <xsl:when test="scheduleMethod=1">publish</xsl:when>932 <xsl:when test="scheduleMethod=2">request</xsl:when>933 <xsl:when test="scheduleMethod=5">cancel</xsl:when>934 <xsl:when test="scheduleMethod=7 or scheduleMethod=8">counter</xsl:when>935 </xsl:choose>936 </xsl:attribute>937 <td>938 <a href="{$inboxItemAction}&subid={$subscriptionId}&calPath={$calPath}&eventName={$eventName}&recurrenceId={$recurrenceId}" title="check message">939 <img src="{$resourcesRoot}/resources/calIconSchedule-sm.gif" width="13" height="13" border="0" alt="check message"/>940 </a>941 </td>942 <td>943 <a href="{$inboxItemAction}&subid={$subscriptionId}&calPath={$calPath}&eventName={$eventName}&recurrenceId={$recurrenceId}" title="check message">944 <!-- <xsl:value-of select="dtstamp/shortdate"/><xsl:text> </xsl:text><xsl:value-of select="dtstamp/time"/>-->945 <!--<xsl:value-of select="lastmod"/>-->946 <xsl:variable name="dt" select="substring-before(lastmod,'T')"/>947 <xsl:variable name="tm" select="substring-after(lastmod,'T')"/>948 <xsl:value-of select="substring($dt,1,4)"/>-<xsl:value-of select="substring($dt,5,2)"/>-<xsl:value-of select="substring($dt,7,2)"/>949 <xsl:text> </xsl:text>950 <xsl:value-of select="substring($tm,1,2)"/>:<xsl:value-of select="substring($tm,3,2)"/>951 </a>952 </td>953 <td>954 <xsl:if test="organizer">955 <xsl:variable name="organizerUri" select="organizer/organizerUri"/>956 <xsl:choose>957 <xsl:when test="organizer/cn != ''">958 <xsl:value-of select="organizer/cn"/>959 </xsl:when>960 <xsl:otherwise>961 <xsl:value-of select="substring-after(organizer/organizerUri,'mailto:')"/>962 </xsl:otherwise>963 </xsl:choose>964 <xsl:if test="organizer/organizerUri != ''">965 <a href="{$organizerUri}" class="emailIcon" title="email">966 <img src="{$resourcesRoot}/resources/email.gif" width="16" height="10" border="0" alt="email"/>967 </a>968 </xsl:if>969 </xsl:if>970 </td>971 <td>972 <a href="{$inboxItemAction}&subid={$subscriptionId}&calPath={$calPath}&eventName={$eventName}&recurrenceId={$recurrenceId}">973 <xsl:value-of select="title"/>974 </a>975 </td>976 <td><xsl:value-of select="start/shortdate"/><xsl:text> </xsl:text><xsl:value-of select="start/time"/></td>977 <td><xsl:value-of select="end/shortdate"/><xsl:text> </xsl:text><xsl:value-of select="end/time"/></td>978 <td><xsl:apply-templates select="scheduleMethod"/></td>979 <td>980 <a href="{$inboxItemAction}&subid={$subscriptionId}&calPath={$calPath}&eventName={$eventName}&recurrenceId={$recurrenceId}">981 <xsl:choose>982 <xsl:when test="scheduleState=0"><em>unprocessed</em></xsl:when>983 <xsl:otherwise>processed</xsl:otherwise>984 </xsl:choose>985 </a>986 </td>987 <td>988 <xsl:variable name="eventIcalName" select="concat($guid,'.ics')"/>989 <a href="{$export}&subid={$subscriptionId}&calPath={$calPath}&guid={$guid}&recurrenceId={$recurrenceId}&nocache=no&contentName={$eventIcalName}" title="download">990 <img src="{$resourcesRoot}/resources/std-ical_icon_small.gif" width="12" height="16" border="0" alt="download"/>991 </a>992 </td>993 <td>994 <a href="{$delEvent}&subid={$subscriptionId}&calPath={$calPath}&guid={$guid}&recurrenceId={$recurrenceId}" title="delete">995 <img src="{$resourcesRoot}/resources/trashIcon.gif" width="13" height="13" border="0" alt="delete"/>996 </a>997 </td>998 </tr>999 </xsl:for-each>1000 </table>1001 </xsl:template>1002 1003 <xsl:template match="scheduleMethod">1004 <xsl:choose>1005 <xsl:when test="node()=1">publish</xsl:when>1006 <xsl:when test="node()=2">request</xsl:when>1007 <xsl:when test="node()=3">reply</xsl:when>1008 <xsl:when test="node()=4">add</xsl:when>1009 <xsl:when test="node()=5">cancel</xsl:when>1010 <xsl:when test="node()=6">refresh</xsl:when>1011 <xsl:when test="node()=7">counter</xsl:when>1012 <xsl:when test="node()=8">declined</xsl:when><!-- declinecounter -->1013 <xsl:otherwise>unknown</xsl:otherwise>1014 </xsl:choose>1015 </xsl:template>1016 </xsl:stylesheet>branches/xslt-rewrite/deployment/resources/xsl/default/default/calendar.xsl
r1643 r1705 2 2 <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> 3 3 <xsl:template match="calendars" mode="manageCalendars"> 4 <h2> Manage Calendars</h2>4 <h2><xsl:value-of select="$calendar.manageCalendars.h2"/></h2> 5 5 <table id="calendarTable"> 6 6 <tr> 7 7 <td class="cals"> 8 <h3> Calendars</h3>8 <h3><xsl:value-of select="$calendar.manageCalendars.h3"/></h3> 9 9 <ul class="calendarTree"> 10 10 <xsl:choose> … … 51 51 <xsl:attribute name="class"> 52 52 <xsl:choose> 53 <xsl:when test="calendarCollection='false'"> folder</xsl:when>54 <xsl:otherwise> calendar</xsl:otherwise>53 <xsl:when test="calendarCollection='false'"><xsl:value-of select="$calendar.folder" /></xsl:when> 54 <xsl:otherwise><xsl:value-of select="$calendar.calendar" /></xsl:otherwise> 55 55 </xsl:choose> 56 56 </xsl:attribute> 57 <xsl:if test="calendarCollection='false'"> 58 <!-- test the open state of the folder; if it's open, 59 build a URL to close it and vice versa --> 60 <xsl:choose> 61 <xsl:when test="open = 'true'"> 62 <a href="{$calendar-openCloseDisplay}&calPath={$calPath}&open=false"> 63 <img src="{$resourcesRoot}/resources/minus.gif" width="9" height="9" alt="close" border="0" class="bwPlusMinusIcon"/> 64 </a> 65 </xsl:when> 66 <xsl:when test="open = 'false'"> 67 <a href="{$calendar-openCloseDisplay}&calPath={$calPath}&open=true"> 68 <img src="{$resourcesRoot}/resources/plus.gif" width="9" height="9" alt="open" border="0" class="bwPlusMinusIcon"/> 69 </a> 70 </xsl:when> 71 </xsl:choose> 72 </xsl:if> 57 73 <a href="{$calendar-fetchForDisplay}&calPath={$calPath}" title="display"> 58 74 <xsl:value-of select="name"/> … … 73 89 <xsl:attribute name="class"> 74 90 <xsl:choose> 75 <xsl:when test="calendarCollection='false'"> folder</xsl:when>76 <xsl:otherwise> calendar</xsl:otherwise>91 <xsl:when test="calendarCollection='false'"><xsl:value-of select="$calendar.folder" /></xsl:when> 92 <xsl:otherwise><xsl:value-of select="$calendar.calendar" /></xsl:otherwise> 77 93 </xsl:choose> 78 94 </xsl:attribute> 95 <xsl:if test="calendarCollection='false'"> 96 <!-- test the open state of the folder; if it's open, 97 build a URL to close it and vice versa --> 98 <xsl:choose> 99 <xsl:when test="open = 'true'"> 100 <a href="{$calendar-openCloseMod}&calPath={$calPath}&open=false"> 101 <img src="{$resourcesRoot}/resources/minus.gif" width="9" height="9" alt="close" border="0" class="bwPlusMinusIcon"/> 102 </a> 103 </xsl:when> 104 <xsl:when test="open = 'false'"> 105 <a href="{$calendar-openCloseMod}&calPath={$calPath}&open=true"> 106 <img src="{$resourcesRoot}/resources/plus.gif" width="9" height="9" alt="open" border="0" class="bwPlusMinusIcon"/> 107 </a> 108 </xsl:when> 109 </xsl:choose> 110 </xsl:if> 79 111 <a href="{$calendar-fetchForUpdate}&calPath={$calPath}" title="update"> 80 112 <xsl:value-of select="name"/> … … 98 130 99 131 <xsl:template match="currentCalendar" mode="displayCalendar"> 100 <h2> Calendar Information</h2>132 <h2><xsl:value-of select="$calendar.displayCalendar.information" /></h2> 101 133 <table class="common"> 102 134 <tr> 103 <th> Name:</th>135 <th><xsl:value-of select="$calendar.name" /></th> 104 136 <td> 105 137 <xsl:value-of select="name"/> … … 107 139 </tr> 108 140 <tr> 109 <th> Path:</th>141 <th><xsl:value-of select="$calendar.path" /></th> 110 142 <td> 111 143 <xsl:value-of select="path"/> … … 113 145 </tr> 114 146 <tr> 115 <th> Summary:</th>147 <th><xsl:value-of select="$calendar.summary" /></th> 116 148 <td> 117 149 <xsl:value-of select="summary"/> … … 119 151 </tr> 120 152 <tr> 121 <th> Description:</th>153 <th><xsl:value-of select="$calendar.description" /></th> 122 154 <td> 123 155 <xsl:value-of select="desc"/> … … 130 162 <xsl:choose> 131 163 <xsl:when test="calendarCollection='true'"> 132 <h3> Delete Calendar</h3>164 <h3><xsl:value-of select="$calendar.deleteCalendarConfirm.h3" /></h3> 133 165 <p> 134 The following calendar will be deleted. Continue?166 <xsl:value-of select="$calendar.deleteCalendarConfirm.p" /> 135 167 </p> 136 168 </xsl:when> 137 169 <xsl:otherwise> 138 <h3> Delete Folder</h3>170 <h3><xsl:value-of select="$calendar.deleteCalendarConfirm.delete" /></h3> 139 171 <p> 140 The following folder <em>and all its contents</em> will be deleted. 141 Continue? 172 <xsl:value-of select="$calendar.deleteCalendarConfirm.delete.p" /> 142 173 </p> 143 174 </xsl:otherwise> … … 147 178 <table class="common"> 148 179 <tr> 149 <th> Path:</th>180 <th><xsl:value-of select="$calendar.path" /></th> 150 181 <td> 151 182 <xsl:value-of select="path"/> … … 153 184 </tr> 154 185 <tr> 155 <th> Name:</th>186 <th><xsl:value-of select="$calendar.name" /></th> 156 187 <td> 157 188 <xsl:value-of select="name"/> … … 159 190 </tr> 160 191 <tr> 161 <th> Summary:</th>192 <th><xsl:value-of select="$calendar.summary" /></th> 162 193 <td> 163 194 <xsl:value-of select="summary"/> … … 165 196 </tr> 166 197 <tr> 167 <th> Description:</th>198 <th><xsl:value-of select="$calendar.description" /></th> 168 199 <td> 169 200 <xsl:value-of select="desc"/> … … 193 224 194 225 <xsl:template match="currentCalendar" mode="addCalendar"> 195 <h3> Add Calendar / Folder</h3>226 <h3><xsl:value-of select="$calendar.addCalendar.h3" /></h3> 196 227 <form name="addCalForm" method="post" action="{$calendar-update}"> 197 228 <table class="common"> 198 229 <tr> 199 <th> Name:</th>230 <th><xsl:value-of select="$calendar.name" /></th> 200 231 <td> 201 232 <xsl:variable name="curCalName" select="name"/> … … 204 235 </tr> 205 236 <tr> 206 <th> Summary:</th>237 <th><xsl:value-of select="$calendar.summary" /></th> 207 238 <td> 208 239 <xsl:variable name="curCalSummary" select="summary"/> … … 211 242 </tr> 212 243 <tr> 213 <th> Description:</th>244 <th><xsl:value-of select="$calendar.description" /></th> 214 245 <td> 215 246 <textarea name="calendar.description" cols="40" rows="4"> … … 224 255 </tr> 225 256 <tr> 226 <th>Calendar/Folder:</th> 227 <td> 228 <input type="radio" value="true" name="calendarCollection" checked="checked"/> Calendar 229 <input type="radio" value="false" name="calendarCollection"/> Folder 257 <th><xsl:value-of select="$calendar.calendar.folder" /></th> 258 <td> 259 <xsl:choose> 260 <xsl:when test="calendarCollection='true'"> 261 <input type="radio" value="true" name="calendarCollection" checked="checked"/> <xsl:value-of select="$calendar.calendar2" /> 262 <input type="radio" value="false" name="calendarCollection"/> <xsl:value-of select="$calendar.folder2" /> 263 </xsl:when> 264 <xsl:otherwise> 265 <input type="radio" value="true" name="calendarCollection"/> <xsl:value-of select="$calendar.calendar2" /> 266 <input type="radio" value="false" name="calendarCollection" checked="checked"/> <xsl:value-of select="$calendar.folder2" /> 267 </xsl:otherwise> 268 </xsl:choose> 230 269 </td> 231 270 </tr> … … 244 283 245 284 <div id="sharingBox"> 246 <h3> Current Access:</h3>247 Sharing may be added to a calendar once created.285 <h3><xsl:value-of select="$calendar.addCalendar.current.access.h3" /></h3> 286 <xsl:value-of select="$calendar.addCalendar.current.access.div" /> 248 287 </div> 249 288 </xsl:template> 250 289 251 290 <xsl:template match="currentCalendar" mode="modCalendar"> 252 <xsl:variable name="calPath" select="path"/>253 <xsl:variable name="calPathEncoded" select="encodedPath"/>254 291 <xsl:choose> 255 292 <xsl:when test="calendarCollection='true'"> 256 <h3> Modify Calendar</h3>293 <h3><xsl:value-of select="$calendar.modCalendar.modify.calendar" /></h3> 257 294 </xsl:when> 258 295 <xsl:otherwise> 259 <h3> Modify Folder</h3>296 <h3><xsl:value-of select="$calendar.modCalendar.modify.folder" /></h3> 260 297 </xsl:otherwise> 261 298 </xsl:choose> … … 263 300 <table class="common"> 264 301 <tr> 265 <th class="commonHeader" colspan="2"> 266 <xsl:value-of select="path"/> 267 </th> 268 </tr> 269 <tr> 270 <th>Name:</th> 302 <th><xsl:value-of select="$calendar.path" /></th> 303 <td> <xsl:value-of select="path"/> 304 <xsl:if test="not(/bedework/publicview = 'false')"> 305 <xsl:text> </xsl:text> 306 <a href="{$calendar-move}"><xsl:value-of select="$calendar.move" /></a> 307 </xsl:if> 308 </td> 309 </tr> 310 <tr> 311 <th><xsl:value-of select="$calendar.name" /></th> 271 312 <td> 272 313 <xsl:value-of select="name"/> … … 274 315 </tr> 275 316 <tr> 276 <th> Mailing List ID:</th>317 <th><xsl:value-of select="$calendar.modCalendar.listid" /></th> 277 318 <td> 278 319 <xsl:value-of select="mailListId"/> … … 280 321 </tr> 281 322 <tr> 282 <th> Summary:</th>323 <th><xsl:value-of select="$calendar.summary" /></th> 283 324 <td> 284 325 <xsl:variable name="curCalSummary" select="summary"/> … … 287 328 </tr> 288 329 <tr> 289 <th> Description:</th>330 <th><xsl:value-of select="$calendar.description" /></th> 290 331 <td> 291 332 <textarea name="calendar.description" cols="40" rows="4"> … … 300 341 </tr> 301 342 <tr> 302 <th> Calendar/Folder:</th>343 <th><xsl:value-of select="$calendar.calendar.folder" /></th> 303 344 <td> 304 345 <xsl:choose> 305 346 <xsl:when test="calendarCollection='true'"> 306 <input type="radio" value="true" name="calendarCollection" checked="checked"/> Calendar307 <input type="radio" value="false" name="calendarCollection"/> Folder347 <input type="radio" value="true" name="calendarCollection" checked="checked"/> <xsl:value-of select="$calendar.calendar2" /> 348 <input type="radio" value="false" name="calendarCollection"/> <xsl:value-of select="$calendar.folder2" /> 308 349 </xsl:when> 309 350 <xsl:otherwise> 310 <input type="radio" value="true" name="calendarCollection"/> Calendar311 <input type="radio" value="false" name="calendarCollection" checked="checked"/> Folder351 <input type="radio" value="true" name="calendarCollection"/> <xsl:value-of select="$calendar.calendar2" /> 352 <input type="radio" value="false" name="calendarCollection" checked="checked"/> <xsl:value-of select="$calendar.folder2" /> 312 353 </xsl:otherwise> 313 354 </xsl:choose> … … 346 387 <xsl:apply-templates select="acl" mode="currentAccess"> 347 388 <xsl:with-param name="action" select="$calendar-setAccess"/> 348 <xsl:with-param name="calPathEncoded" select=" $calPathEncoded"/>389 <xsl:with-param name="calPathEncoded" select="encodedPath"/> 349 390 </xsl:apply-templates> 350 391 <form name="calendarShareForm" method="post" action="{$calendar-setAccess}" id="shareForm" onsubmit="setAccessHow(this)"> 351 <input type="hidden" name="calPath" value="{$calPath}"/> 392 <input type="hidden" name="calPath"> 393 <xsl:attribute name="value"><xsl:value-of select="path"/></xsl:attribute> 394 </input> 352 395 <xsl:call-template name="entityAccessForm"> 353 396 <xsl:with-param name="type"> 354 397 <xsl:choose> 355 <xsl:when test="calType = '5'"> inbox</xsl:when>356 <xsl:when test="calType = '6'"> outbox</xsl:when>357 <xsl:otherwise> normal</xsl:otherwise>398 <xsl:when test="calType = '5'"><xsl:value-of select="$calendar.inbox" /></xsl:when> 399 <xsl:when test="calType = '6'"><xsl:value-of select="$calendar.outbox" /></xsl:when> 400 <xsl:otherwise><xsl:value-of select="$calendar.normal" /></xsl:otherwise> 358 401 </xsl:choose> 359 402 </xsl:with-param> … … 380 423 <input type="button" onclick="javascript:changeClass('calSelectWidget','visible')" value="select calendar" class="small"/> 381 424 <div id="calSelectWidget" class="invisible"> 382 <h2> select a calendar</h2>425 <h2><xsl:value-of select="$calendar.selectCalForEvent.widget.h2" /></h2> 383 426 <a href="javascript:changeClass('calSelectWidget','invisible')" id="calSelectWidgetCloser" title="close">x</a> 384 <h4> My Calendars</h4>427 <h4><xsl:value-of select="$calendar.selectCalForEvent.widget.h4" /></h4> 385 428 <ul class="calendarTree"> 386 429 <xsl:choose> … … 389 432 </xsl:when> 390 433 <xsl:otherwise> 391 <em> no writable calendars</em>434 <em><xsl:value-of select="$calendar.selectCalForEvent.widget.otherwise" /></em> 392 435 </xsl:otherwise> 393 436 </xsl:choose> 394 437 </ul> 395 <h4> Subscribed Calendars</h4>438 <h4><xsl:value-of select="$calendar.selectCalForEvent.widget.subscribed" /></h4> 396 439 <ul class="calendarTree"> 397 <xsl:variable name="userPath"> user/<xsl:value-of select="/bedework/userid"/></xsl:variable>440 <xsl:variable name="userPath"><xsl:value-of select="$calendar.user" />/<xsl:value-of select="/bedework/userid"/></xsl:variable> 398 441 <xsl:choose> 399 442 <xsl:when test="/bedework/mySubscriptions/subscription[not(contains(uri,$userPath))]/calendars/calendar[currentAccess/current-user-privilege-set/privilege/write-content]"> … … 401 444 </xsl:when> 402 445 <xsl:otherwise> 403 <em> no writable calendars</em>446 <em><xsl:value-of select="$calendar.selectCalForEvent.widget.no.calendars" /></em> 404 447 </xsl:otherwise> 405 448 </xsl:choose> … … 410 453 <xsl:template match="calendar" mode="selectCalForEventCalTree"> 411 454 <xsl:variable name="id" select="id"/> 455 <xsl:variable name="calPath" select="path"/> 456 <xsl:variable name="userPath"><xsl:value-of select="$calendar.user" />/<xsl:value-of select="/bedework/userid"/>/</xsl:variable> 457 <xsl:variable name="calDisplay"> 458 <xsl:choose> 459 <xsl:when test="contains(path,$userPath)"> 460 <xsl:value-of select="substring-after(path,$userPath)"/> 461 </xsl:when> 462 <xsl:otherwise> 463 <xsl:value-of select="path"/> 464 </xsl:otherwise> 465 </xsl:choose> 466 </xsl:variable> 412 467 <li> 413 468 <xsl:attribute name="class"> 414 469 <xsl:choose> 415 470 <xsl:when test="/bedework/selectionState/selectionType = 'calendar' 416 and name = /bedework/selectionState/subscriptions/subscription/calendar/name">selected</xsl:when>417 <xsl:when test="name='Trash'"> trash</xsl:when>418 <xsl:when test="calendarCollection='false'"> folder</xsl:when>419 <xsl:otherwise> calendar</xsl:otherwise>471 and name = /bedework/selectionState/subscriptions/subscription/calendar/name"><xsl:value-of select="$calendar.selected" /></xsl:when> 472 <xsl:when test="name='Trash'"><xsl:value-of select="$calendar.trash" /></xsl:when> 473 <xsl:when test="calendarCollection='false'"><xsl:value-of select="$calendar.folder" /></xsl:when> 474 <xsl:otherwise><xsl:value-of select="$calendar.calendar" /></xsl:otherwise> 420 475 </xsl:choose> 421 476 </xsl:attribute> 422 <xsl: variable name="calPath" select="path"/>423 <xsl:variable name="userPath">user/<xsl:value-of select="/bedework/userid"/>/</xsl:variable>424 <xsl:variable name="calDisplay">477 <xsl:if test="calendarCollection='false'"> 478 <!-- test the open state of the folder; if it's open, 479 build a URL to close it and vice versa --> 425 480 <xsl:choose> 426 <xsl:when test="contains(path,$userPath)"> 427 <xsl:value-of select="substring-after(path,$userPath)"/> 481 <xsl:when test="open = 'true'"> 482 <a href="{$calendar-openCloseSelect}&calPath={$calPath}&open=false"> 483 <img src="{$resourcesRoot}/resources/minus.gif" width="9" height="9" alt="close" border="0" class="bwPlusMinusIcon"/> 484 </a> 428 485 </xsl:when> 429 <xsl:otherwise> 430 <xsl:value-of select="path"/> 431 </xsl:otherwise> 486 <xsl:when test="open = 'false'"> 487 <a href="{$calendar-openCloseSelect}&calPath={$calPath}&open=true"> 488 <img src="{$resourcesRoot}/resources/plus.gif" width="9" height="9" alt="open" border="0" class="bwPlusMinusIcon"/> 489 </a> 490 </xsl:when> 432 491 </xsl:choose> 433 </xsl: variable>492 </xsl:if> 434 493 <xsl:choose> 435 494 <xsl:when test="currentAccess/current-user-privilege-set/privilege/write-content and (calendarCollection = 'true')"> … … 454 513 455 514 <xsl:template name="calendarList"> 456 <h3> Managing Calendars</h3>515 <h3><xsl:value-of select="$calendar.calendarList.h3" /></h3> 457 516 <ul> 458 <li> Select an item from the calendar list on the left to modify459 a calendar or folder.</li>460 <li>Select the461 <img src="{$resourcesRoot}/resources/calAddIcon.gif" width="13" height="13" alt="true" border="0"/>462 icon to add a new calendar or folder to the tree.517 <li><xsl:value-of select="$calendar.calendarList.li1" /></li> 518 <li> 519 <xsl:value-of select="$calendar.calendarList.li2.part1" /> 520 <img src="{$resourcesRoot}/resources/calAddIcon.gif" width="13" height="13" alt="true" border="0"/> 521 <xsl:value-of select="$calendar.calendarList.li2.part2" /> 463 522 <ul> 464 <li> Folders may only contain calendars and subfolders.</li>465 <li> Calendars may only contain events (and other calendar items).</li>523 <li><xsl:value-of select="$calendar.calendarList.li3" /></li> 524 <li><xsl:value-of select="$calendar.calendarList.li4" /></li> 466 525 <li> 467 If a calendar is empty, it may be converted to a folder and vice 468 versa. If a calendar or folder are not empty, it may not be 469 converted. 526 <xsl:value-of select="$calendar.calendarList.li5" /> 470 527 </li> 471 528 </ul> … … 475 532 476 533 <xsl:template name="calendarDescriptions"> 477 <h2> Calendar Information</h2>534 <h2><xsl:value-of select="$calendar.calendarDescriptions.h2" /></h2> 478 535 <ul> 479 <li>Select an item from the calendar tree on the left to view all information 480 about that calendar or folder. The tree on the left represents the calendar 481 heirarchy.</li> 536 <li><xsl:value-of select="$calendar.calendarDescriptions.li1" /></li> 482 537 </ul> 483 538 484 <p><strong> All Calendar Descriptions:</strong></p>539 <p><strong><xsl:value-of select="$calendar.calendarDescriptions.all.descriptions" /></strong></p> 485 540 <table id="flatCalendarDescriptions" cellspacing="0"> 486 541 <tr> 487 <th> Name</th>488 <th> Description</th>542 <th><xsl:value-of select="$calendar.name" /></th> 543 <th><xsl:value-of select="$calendar.description" /></th> 489 544 </tr> 490 545 <xsl:for-each select="//calendar[calType < 2]"> … … 506 561 </table> 507 562 </xsl:template> 508 </xsl:stylesheet>509 <?xml version="1.0" encoding="UTF-8"?>510 <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">511 <xsl:template match="calendars" mode="manageCalendars">512 <h2>Manage Calendars</h2>513 <table id="calendarTable">514 <tr>515 <td class="cals">516 <h3>Calendars</h3>517 <ul class="calendarTree">518 <xsl:choose>519 <xsl:when test="/bedework/page='calendarDescriptions' or520 /bedework/page='displayCalendar'">521 <xsl:apply-templates select="calendar[calType < 2]" mode="listForDisplay"/>522 </xsl:when>523 <xsl:otherwise>524 <xsl:apply-templates select="calendar[calType < 2]" mode="listForUpdate"/>525 </xsl:otherwise>526 </xsl:choose>527 </ul>528 </td>529 <td class="calendarContent">530 <xsl:choose>531 <xsl:when test="/bedework/page='calendarList' or532 /bedework/page='calendarReferenced'">533 <xsl:call-template name="calendarList"/>534 </xsl:when>535 <xsl:when test="/bedework/page='calendarDescriptions'">536 <xsl:call-template name="calendarDescriptions"/>537 </xsl:when>538 <xsl:when test="/bedework/page='displayCalendar'">539 <xsl:apply-templates select="/bedework/currentCalendar" mode="displayCalendar"/>540 </xsl:when>541 <xsl:when test="/bedework/page='deleteCalendarConfirm'">542 <xsl:apply-templates select="/bedework/currentCalendar" mode="deleteCalendarConfirm"/>543 </xsl:when>544 <xsl:when test="/bedework/creating='true'">545 <xsl:apply-templates select="/bedework/currentCalendar" mode="addCalendar"/>546 </xsl:when>547 <xsl:otherwise>548 <xsl:apply-templates select="/bedework/currentCalendar" mode="modCalendar"/>549 </xsl:otherwise>550 </xsl:choose>551 </td>552 </tr>553 </table>554 </xsl:template>555 556 <xsl:template match="calendar" mode="listForDisplay">557 <xsl:variable name="calPath" select="encodedPath"/>558 <li>559 <xsl:attribute name="class">560 <xsl:choose>561 <xsl:when test="calendarCollection='false'">folder</xsl:when>562 <xsl:otherwise>calendar</xsl:otherwise>563 </xsl:choose>564 </xsl:attribute>565 <a href="{$calendar-fetchForDisplay}&calPath={$calPath}" title="display">566 <xsl:value-of select="name"/>567 </a>568 <xsl:if test="calendar">569 <ul>570 <xsl:apply-templates select="calendar" mode="listForDisplay">571 <!--<xsl:sort select="title" order="ascending" case-order="upper-first"/>-->572 </xsl:apply-templates>573 </ul>574 </xsl:if>575 </li>576 </xsl:template>577 578 <xsl:template match="calendar" mode="listForUpdate">579 <xsl:variable name="calPath" select="encodedPath"/>580 <li>581 <xsl:attribute name="class">582 <xsl:choose>583 <xsl:when test="calendarCollection='false'">folder</xsl:when>584 <xsl:otherwise>calendar</xsl:otherwise>585 </xsl:choose>586 </xsl:attribute>587 <a href="{$calendar-fetchForUpdate}&calPath={$calPath}" title="update">588 <xsl:value-of select="name"/>589 </a>590 <xsl:if test="calendarCollection='false'">591 <xsl:text> </xsl:text>592 <a href="{$calendar-initAdd}&calPath={$calPath}" title="add a calendar or folder">593 <img src="{$resourcesRoot}/resources/calAddIcon.gif" width="13" height="13" alt="add a calendar or folder" border="0"/>594 </a>595 </xsl:if>596 <xsl:if test="calendar">597 <ul>598 <xsl:apply-templates select="calendar" mode="listForUpdate">599 <!--<xsl:sort select="title" order="ascending" case-order="upper-first"/>-->600 </xsl:apply-templates>601 </ul>602 </xsl:if>603 </li>604 </xsl:template>605 606 607 <xsl:template match="currentCalendar" mode="displayCalendar">608 <h2>Calendar Information</h2>609 <table class="common">610 <tr>611 <th>Name:</th>612 <td>613 <xsl:value-of select="name"/>614 </td>615 </tr>616 <tr>617 <th>Path:</th>618 <td>619 <xsl:value-of select="path"/>620 </td>621 </tr>622 <tr>623 <th>Summary:</th>624 <td>625 <xsl:value-of select="summary"/>626 </td>627 </tr>628 <tr>629 <th>Description:</th>630 <td>631 <xsl:value-of select="desc"/>632 </td>633 </tr>634 </table>635 </xsl:template>636 637 <xsl:template match="currentCalendar" mode="deleteCalendarConfirm">638 <xsl:choose>639 <xsl:when test="calendarCollection='true'">640 <h3>Delete Calendar</h3>641 <p>642 The following calendar will be deleted. Continue?643 </p>644 </xsl:when>645 <xsl:otherwise>646 <h3>Delete Folder</h3>647 <p>648 The following folder <em>and all its contents</em> will be deleted.649 Continue?650 </p>651 </xsl:otherwise>652 </xsl:choose>653 654 <form name="delCalForm" method="post" action="{$calendar-delete}">655 <table class="common">656 <tr>657 <th>Path:</th>658 <td>659 <xsl:value-of select="path"/>660 </td>661 </tr>662 <tr>663 <th>Name:</th>664 <td>665 <xsl:value-of select="name"/>666 </td>667 </tr>668 <tr>669 <th>Summary:</th>670 <td>671 <xsl:value-of select="summary"/>672 </td>673 </tr>674 <tr>675 <th>Description:</th>676 <td>677 <xsl:value-of select="desc"/>678 </td>679 </tr>680 </table>681 682 <table border="0" id="submitTable">683 <tr>684 <td>685 <input type="submit" name="cancelled" value="cancel"/>686 </td>687 <td align="right">688 <xsl:choose>689 <xsl:when test="calendarCollection='true'">690 <input type="submit" name="delete" value="Yes: Delete Calendar!"/>691 </xsl:when>692 <xsl:otherwise>693 <input type="submit" name="delete" value="Yes: Delete Folder!"/>694 </xsl:otherwise>695 </xsl:choose>696 </td>697 </tr>698 </table>699 </form>700 </xsl:template>701 702 <xsl:template match="currentCalendar" mode="addCalendar">703 <h3>Add Calendar / Folder</h3>704 <form name="addCalForm" method="post" action="{$calendar-update}">705 <table class="common">706 <tr>707 <th>Name:</th>708 <td>709 <xsl:variable name="curCalName" select="name"/>710 <input name="calendar.name" value="{$curCalName}" size="40"/>711 </td>712 </tr>713 <tr>714 <th>Summary:</th>715 <td>716 <xsl:variable name="curCalSummary" select="summary"/>717 <input type="text" name="calendar.summary" value="{$curCalSummary}" size="40"/>718 </td>719 </tr>720 <tr>721 <th>Description:</th>722 <td>723 <textarea name="calendar.description" cols="40" rows="4">724 <xsl:value-of select="desc"/>725 <xsl:if test="normalize-space(desc) = ''">726 <xsl:text> </xsl:text>727 <!-- keep this non-breaking space to avoid browser728 rendering errors when the text area is empty -->729 </xsl:if>730 </textarea>731 </td>732 </tr>733 <tr>734 <th>Calendar/Folder:</th>735 <td>736 <input type="radio" value="true" name="calendarCollection" checked="checked"/> Calendar737 <input type="radio" value="false" name="calendarCollection"/> Folder738 </td>739 </tr>740 </table>741 742 <table border="0" id="submitTable">743 <tr>744 <td>745 <input type="submit" name="addCalendar" value="Add Calendar/Folder"/>746 <input type="submit" name="cancelled" value="cancel"/>747 <input type="reset" value="Clear"/>748 </td>749 </tr>750 </table>751 </form>752 753 <div id="sharingBox">754 <h3>Current Access:</h3>755 Sharing may be added to a calendar once created.756 </div>757 </xsl:template>758 759 <xsl:template match="currentCalendar" mode="modCalendar">760 <xsl:variable name="calPath" select="path"/>761 <xsl:variable name="calPathEncoded" select="encodedPath"/>762 <xsl:choose>763 <xsl:when test="calendarCollection='true'">764 <h3>Modify Calendar</h3>765 </xsl:when>766 <xsl:otherwise>767 <h3>Modify Folder</h3>768 </xsl:otherwise>769 </xsl:choose>770 <form name="modCalForm" method="post" action="{$calendar-update}">771 <table class="common">772 <tr>773 <th class="commonHeader" colspan="2">774 <xsl:value-of select="path"/>775 </th>776 </tr>777 <tr>778 <th>Name:</th>779 <td>780 <xsl:value-of select="name"/>781 </td>782 </tr>783 <tr>784 <th>Mailing List ID:</th>785 <td>786 <xsl:value-of select="mailListId"/>787 </td>788 </tr>789 <tr>790 <th>Summary:</th>791 <td>792 <xsl:variable name="curCalSummary" select="summary"/>793 <input type="text" name="calendar.summary" value="{$curCalSummary}" size="40"/>794 </td>795 </tr>796 <tr>797 <th>Description:</th>798 <td>799 <textarea name="calendar.description" cols="40" rows="4">800 <xsl:value-of select="desc"/>801 <xsl:if test="normalize-space(desc) = ''">802 <xsl:text> </xsl:text>803 <!-- keep this non-breaking space to avoid browser804 rendering errors when the text area is empty -->805 </xsl:if>806 </textarea>807 </td>808 </tr>809 <tr>810 <th>Calendar/Folder:</th>811 <td>812 <xsl:choose>813 <xsl:when test="calendarCollection='true'">814 <input type="radio" value="true" name="calendarCollection" checked="checked"/> Calendar815 <input type="radio" value="false" name="calendarCollection"/> Folder816 </xsl:when>817 <xsl:otherwise>818 <input type="radio" value="true" name="calendarCollection"/> Calendar819 <input type="radio" value="false" name="calendarCollection" checked="checked"/> Folder820 </xsl:otherwise>821 </xsl:choose>822 </td>823 </tr>824 </table>825 826 <table border="0" id="submitTable">827 <tr>828 <td>829 <xsl:choose>830 <xsl:when test="calendarCollection='true'">831 <input type="submit" name="updateCalendar" value="Update Calendar"/>832 </xsl:when>833 <xsl:otherwise>834 <input type="submit" name="updateCalendar" value="Update Folder"/>835 </xsl:otherwise>836 </xsl:choose>837 <input type="submit" name="cancelled" value="cancel"/>838 <input type="reset" value="Reset"/>839 </td>840 <td align="right">841 <xsl:choose>842 <xsl:when test="calendarCollection='true'">843 <input type="submit" name="delete" value="Delete Calendar"/>844 </xsl:when>845 <xsl:otherwise>846 <input type="submit" name="delete" value="Delete Folder"/>847 </xsl:otherwise>848 </xsl:choose>849 </td>850 </tr>851 </table>852 </form>853 <div id="sharingBox">854 <xsl:apply-templates select="acl" mode="currentAccess">855 <xsl:with-param name="action" select="$calendar-setAccess"/>856 <xsl:with-param name="calPathEncoded" select="$calPathEncoded"/>857 </xsl:apply-templates>858 <form name="calendarShareForm" method="post" action="{$calendar-setAccess}" id="shareForm" onsubmit="setAccessHow(this)">859 <input type="hidden" name="calPath" value="{$calPath}"/>860 <xsl:call-template name="entityAccessForm">861 <xsl:with-param name="type">862 <xsl:choose>863 <xsl:when test="calType = '5'">inbox</xsl:when>864 <xsl:when test="calType = '6'">outbox</xsl:when>865 <xsl:otherwise>normal</xsl:otherwise>866 </xsl:choose>867 </xsl:with-param>868 </xsl:call-template>869 </form>870 </div>871 </xsl:template>872 873 <xsl:template name="selectCalForEvent">874 <!-- selectCalForEvent creates a calendar tree in a pop-up window.875 Used when selecting a calendar while adding or editing an event.876 877 This template will be called when878 a) we add an event by date with no specific calendar selected879 b) we import an event880 c) we add an event ref881 d) we edit an event and change it's calendar (or change it while adding)882 883 The intention is to load the calendar listing in a "pop-up" widget as a884 tree of myCalendars and writable calendars associated with subscriptions.885 The xml for the tree is already in header.jsp in myCalendars and886 mySubscriptions.887 -->888 <input type="button" onclick="javascript:changeClass('calSelectWidget','visible')" value="select calendar" class="small"/>889 <div id="calSelectWidget" class="invisible">890 <h2>select a calendar</h2>891 <a href="javascript:changeClass('calSelectWidget','invisible')" id="calSelectWidgetCloser" title="close">x</a>892 <h4>My Calendars</h4>893 <ul class="calendarTree">894 <xsl:choose>895 <xsl:when test="/bedework/myCalendars/calendars/calendar[currentAccess/current-user-privilege-set/privilege/write-content]">896 <xsl:apply-templates select="/bedework/myCalendars/calendars/calendar[currentAccess/current-user-privilege-set/privilege/write-content]" mode="selectCalForEventCalTree"/>897 </xsl:when>898 <xsl:otherwise>899 <em>no writable calendars</em>900 </xsl:otherwise>901 </xsl:choose>902 </ul>903 <h4>Subscribed Calendars</h4>904 <ul class="calendarTree">905 <xsl:variable name="userPath">user/<xsl:value-of select="/bedework/userid"/></xsl:variable>906 <xsl:choose>907 <xsl:when test="/bedework/mySubscriptions/subscription[not(contains(uri,$userPath))]/calendars/calendar[currentAccess/current-user-privilege-set/privilege/write-content]">908 <xsl:apply-templates select="/bedework/mySubscriptions/subscription[not(contains(uri,$userPath))]/calendars/calendar[currentAccess/current-user-privilege-set/privilege/write-content]" mode="selectCalForEventCalTree"/>909 </xsl:when>910 <xsl:otherwise>911 <em>no writable calendars</em>912 </xsl:otherwise>913 </xsl:choose>914 </ul>915 </div>916 </xsl:template>917 918 <xsl:template match="calendar" mode="selectCalForEventCalTree">919 <xsl:variable name="id" select="id"/>920 <li>921 <xsl:attribute name="class">922 <xsl:choose>923 <xsl:when test="/bedework/selectionState/selectionType = 'calendar'924 and name = /bedework/selectionState/subscriptions/subscription/calendar/name">selected</xsl:when>925 <xsl:when test="name='Trash'">trash</xsl:when>926 <xsl:when test="calendarCollection='false'">folder</xsl:when>927 <xsl:otherwise>calendar</xsl:otherwise>928 </xsl:choose>929 </xsl:attribute>930 <xsl:variable name="calPath" select="path"/>931 <xsl:variable name="userPath">user/<xsl:value-of select="/bedework/userid"/>/</xsl:variable>932 <xsl:variable name="calDisplay">933 <xsl:choose>934 <xsl:when test="contains(path,$userPath)">935 <xsl:value-of select="substring-after(path,$userPath)"/>936 </xsl:when>937 <xsl:otherwise>938 <xsl:value-of select="path"/>939 </xsl:otherwise>940 </xsl:choose>941 </xsl:variable>942 <xsl:choose>943 <xsl:when test="currentAccess/current-user-privilege-set/privilege/write-content and (calendarCollection = 'true')">944 <a href="javascript:updateEventFormCalendar('{$calPath}','{$calDisplay}')">945 <strong><xsl:value-of select="name"/></strong>946 </a>947 <xsl:if test="name != $calDisplay">948 <span class="small">(<xsl:value-of select="$calDisplay"/>)</span>949 </xsl:if>950 </xsl:when>951 <xsl:otherwise>952 <xsl:value-of select="name"/>953 </xsl:otherwise>954 </xsl:choose>955 <xsl:if test="calendar">956 <ul>957 <xsl:apply-templates select="calendar[calType < 2]" mode="selectCalForEventCalTree"/>958 </ul>959 </xsl:if>960 </li>961 </xsl:template>962 963 <xsl:template name="calendarList">964 <h3>Managing Calendars</h3>965 <ul>966 <li>Select an item from the calendar list on the left to modify967 a calendar or folder.</li>968 <li>Select the969 <img src="{$resourcesRoot}/resources/calAddIcon.gif" width="13" height="13" alt="true" border="0"/>970 icon to add a new calendar or folder to the tree.971 <ul>972 <li>Folders may only contain calendars and subfolders.</li>973 <li>Calendars may only contain events (and other calendar items).</li>974 <li>975 If a calendar is empty, it may be converted to a folder and vice976 versa. If a calendar or folder are not empty, it may not be977 converted.978 </li>979 </ul>980 </li>981 </ul>982 </xsl:template>983 984 <xsl:template name="calendarDescriptions">985 <h2>Calendar Information</h2>986 <ul>987 <li>Select an item from the calendar tree on the left to view all information988 about that calendar or folder. The tree on the left represents the calendar989 heirarchy.</li>990 </ul>991 992 <p><strong>All Calendar Descriptions:</strong></p>993 <table id="flatCalendarDescriptions" cellspacing="0">994 <tr>995 <th>Name</th>996 <th>Description</th>997 </tr>998 <xsl:for-each select="//calendar[calType < 2]">999 <xsl:variable name="descClass">1000 <xsl:choose>1001 <xsl:when test="position() mod 2 = 0">even</xsl:when>1002 <xsl:otherwise>odd</xsl:otherwise>1003 </xsl:choose>1004 </xsl:variable>1005 <tr class="{$descClass}">1006 <td>1007 <xsl:value-of select="name"/>1008 </td>1009 <td>1010 <xsl:value-of select="desc"/>1011 </td>1012 </tr>1013 </xsl:for-each>1014 </table>1015 </xsl:template>1016 </xsl:stylesheet>1017 <?xml version="1.0" encoding="UTF-8"?>1018 <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">1019 <xsl:template match="calendars" mode="manageCalendars">1020 <h2>Manage Calendars</h2>1021 <table id="calendarTable">1022 <tr>1023 <td class="cals">1024 <h3>Calendars</h3>1025 <ul class="calendarTree">1026 <xsl:choose>1027 <xsl:when test="/bedework/page='calendarDescriptions' or1028 /bedework/page='displayCalendar'">1029 <xsl:apply-templates select="calendar[calType < 2]" mode="listForDisplay"/>1030 </xsl:when>1031 <xsl:otherwise>1032 <xsl:apply-templates select="calendar[calType < 2]" mode="listForUpdate"/>1033 </xsl:otherwise>1034 </xsl:choose>1035 </ul>1036 </td>1037 <td class="calendarContent">1038 <xsl:choose>1039 <xsl:when test="/bedework/page='calendarList' or1040 /bedework/page='calendarReferenced'">1041 <xsl:call-template name="calendarList"/>1042 </xsl:when>1043 <xsl:when test="/bedework/page='calendarDescriptions'">1044 <xsl:call-template name="calendarDescriptions"/>1045 </xsl:when>1046 <xsl:when test="/bedework/page='displayCalendar'">1047 <xsl:apply-templates select="/bedework/currentCalendar" mode="displayCalendar"/>1048 </xsl:when>1049 <xsl:when test="/bedework/page='deleteCalendarConfirm'">1050 <xsl:apply-templates select="/bedework/currentCalendar" mode="deleteCalendarConfirm"/>1051 </xsl:when>1052 <xsl:when test="/bedework/creating='true'">1053 <xsl:apply-templates select="/bedework/currentCalendar" mode="addCalendar"/>1054 </xsl:when>1055 <xsl:otherwise>1056 <xsl:apply-templates select="/bedework/currentCalendar" mode="modCalendar"/>1057 </xsl:otherwise>1058 </xsl:choose>1059 </td>1060 </tr>1061 </table>1062 </xsl:template>1063 1064 <xsl:template match="calendar" mode="listForDisplay">1065 <xsl:variable name="calPath" select="encodedPath"/>1066 <li>1067 <xsl:attribute name="class">1068 <xsl:choose>1069 <xsl:when test="calendarCollection='false'">folder</xsl:when>1070 <xsl:otherwise>calendar</xsl:otherwise>1071 </xsl:choose>1072 </xsl:attribute>1073 <a href="{$calendar-fetchForDisplay}&calPath={$calPath}" title="display">1074 <xsl:value-of select="name"/>1075 </a>1076 <xsl:if test="calendar">1077 <ul>1078 <xsl:apply-templates select="calendar" mode="listForDisplay">1079 <!--<xsl:sort select="title" order="ascending" case-order="upper-first"/>-->1080 </xsl:apply-templates>1081 </ul>1082 </xsl:if>1083 </li>1084 </xsl:template>1085 1086 <xsl:template match="calendar" mode="listForUpdate">1087 <xsl:variable name="calPath" select="encodedPath"/>1088 <li>1089 <xsl:attribute name="class">1090 <xsl:choose>1091 <xsl:when test="calendarCollection='false'">folder</xsl:when>1092 <xsl:otherwise>calendar</xsl:otherwise>1093 </xsl:choose>1094 </xsl:attribute>1095 <a href="{$calendar-fetchForUpdate}&calPath={$calPath}" title="update">1096 <xsl:value-of select="name"/>1097 </a>1098 <xsl:if test="calendarCollection='false'">1099 <xsl:text> </xsl:text>1100 <a href="{$calendar-initAdd}&calPath={$calPath}" title="add a calendar or folder">1101 <img src="{$resourcesRoot}/resources/calAddIcon.gif" width="13" height="13" alt="add a calendar or folder" border="0"/>1102 </a>1103 </xsl:if>1104 <xsl:if test="calendar">1105 <ul>1106 <xsl:apply-templates select="calendar" mode="listForUpdate">1107 <!--<xsl:sort select="title" order="ascending" case-order="upper-first"/>-->1108 </xsl:apply-templates>1109 </ul>1110 </xsl:if>1111 </li>1112 </xsl:template>1113 1114 1115 <xsl:template match="currentCalendar" mode="displayCalendar">1116 <h2>Calendar Information</h2>1117 <table class="common">1118 <tr>1119 <th>Name:</th>1120 <td>1121 <xsl:value-of select="name"/>1122 </td>1123 </tr>1124 <tr>1125 <th>Path:</th>1126 <td>1127 <xsl:value-of select="path"/>1128 </td>1129 </tr>1130 <tr>1131 <th>Summary:</th>1132 <td>1133 <xsl:value-of select="summary"/>1134 </td>1135 </tr>1136 <tr>1137 <th>Description:</th>1138 <td>1139 <xsl:value-of select="desc"/>1140 </td>1141 </tr>1142 </table>1143 </xsl:template>1144 1145 <xsl:template match="currentCalendar" mode="deleteCalendarConfirm">1146 <xsl:choose>1147 <xsl:when test="calendarCollection='true'">1148 <h3>Delete Calendar</h3>1149 <p>1150 The following calendar will be deleted. Continue?1151 </p>1152 </xsl:when>1153 <xsl:otherwise>1154 <h3>Delete Folder</h3>1155 <p>1156 The following folder <em>and all its contents</em> will be deleted.1157 Continue?1158 </p>1159 </xsl:otherwise>1160 </xsl:choose>1161 1162 <form name="delCalForm" method="post" action="{$calendar-delete}">1163 <table class="common">1164 <tr>1165 <th>Path:</th>1166 <td>1167 <xsl:value-of select="path"/>1168 </td>1169 </tr>1170 <tr>1171 <th>Name:</th>1172 <td>1173 <xsl:value-of select="name"/>1174 </td>1175 </tr>1176 <tr>1177 <th>Summary:</th>1178 <td>1179 <xsl:value-of select="summary"/>1180 </td>1181 </tr>1182 <tr>1183 <th>Description:</th>1184 <td>1185 <xsl:value-of select="desc"/>1186 </td>1187 </tr>1188 </table>1189 1190 <table border="0" id="submitTable">1191 <tr>1192 <td>1193 <input type="submit" name="cancelled" value="cancel"/>1194 </td>1195 <td align="right">1196 <xsl:choose>1197 <xsl:when test="calendarCollection='true'">1198 <input type="submit" name="delete" value="Yes: Delete Calendar!"/>1199 </xsl:when>1200 <xsl:otherwise>1201 <input type="submit" name="delete" value="Yes: Delete Folder!"/>1202 </xsl:otherwise>1203 </xsl:choose>1204 </td>1205 </tr>1206 </table>1207 </form>1208 </xsl:template>1209 1210 <xsl:template match="currentCalendar" mode="addCalendar">1211 <h3>Add Calendar / Folder</h3>1212 <form name="addCalForm" method="post" action="{$calendar-update}">1213 <table class="common">1214 <tr>1215 <th>Name:</th>1216 <td>1217 <xsl:variable name="curCalName" select="name"/>1218 <input name="calendar.name" value="{$curCalName}" size="40"/>1219 </td>1220 </tr>1221 <tr>1222 <th>Summary:</th>1223 <td>1224 <xsl:variable name="curCalSummary" select="summary"/>1225 <input type="text" name="calendar.summary" value="{$curCalSummary}" size="40"/>1226 </td>1227 </tr>1228 <tr>1229 <th>Description:</th>1230 <td>1231 <textarea name="calendar.description" cols="40" rows="4">1232 <xsl:value-of select="desc"/>1233 <xsl:if test="normalize-space(desc) = ''">1234 <xsl:text> </xsl:text>1235 <!-- keep this non-breaking space to avoid browser1236 rendering errors when the text area is empty -->1237 </xsl:if>1238 </textarea>1239 </td>1240 </tr>1241 <tr>1242 <th>Calendar/Folder:</th>1243 <td>1244 <input type="radio" value="true" name="calendarCollection" checked="checked"/> Calendar1245 <input type="radio" value="false" name="calendarCollection"/> Folder1246 </td>1247 </tr>1248 </table>1249 1250 <table border="0" id="submitTable">1251 <tr>1252 <td>1253 <input type="submit" name="addCalendar" value="Add Calendar/Folder"/>1254 <input type="submit" name="cancelled" value="cancel"/>1255 <input type="reset" value="Clear"/>1256 </td>1257 </tr>1258 </table>1259 </form>1260 1261 <div id="sharingBox">1262 <h3>Current Access:</h3>1263 Sharing may be added to a calendar once created.1264 </div>1265 </xsl:template>1266 1267 <xsl:template match="currentCalendar" mode="modCalendar">1268 <xsl:variable name="calPath" select="path"/>1269 <xsl:variable name="calPathEncoded" select="encodedPath"/>1270 <xsl:choose>1271 <xsl:when test="calendarCollection='true'">1272 <h3>Modify Calendar</h3>1273 </xsl:when>1274 <xsl:otherwise>1275 <h3>Modify Folder</h3>1276 </xsl:otherwise>1277 </xsl:choose>1278 <form name="modCalForm" method="post" action="{$calendar-update}">1279 <table class="common">1280 <tr>1281 <th class="commonHeader" colspan="2">1282 <xsl:value-of select="path"/>1283 </th>1284 </tr>1285 <tr>1286 <th>Name:</th>1287 <td>1288 <xsl:value-of select="name"/>1289 </td>1290 </tr>1291 <tr>1292 <th>Mailing List ID:</th>1293 <td>1294 <xsl:value-of select="mailListId"/>1295 </td>1296 </tr>1297 <tr>1298 <th>Summary:</th>1299 <td>1300 <xsl:variable name="curCalSummary" select="summary"/>1301 <input type="text" name="calendar.summary" value="{$curCalSummary}" size="40"/>1302 </td>1303 </tr>1304 <tr>1305 <th>Description:</th>1306 <td>1307 <textarea name="calendar.description" cols="40" rows="4">1308 <xsl:value-of select="desc"/>1309 <xsl:if test="normalize-space(desc) = ''">1310 <xsl:text> </xsl:text>1311 <!-- keep this non-breaking space to avoid browser1312 rendering errors when the text area is empty -->1313 </xsl:if>1314 </textarea>1315 </td>1316 </tr>1317 <tr>1318 <th>Calendar/Folder:</th>1319 <td>1320 <xsl:choose>1321 <xsl:when test="calendarCollection='true'">1322 <input type="radio" value="true" name="calendarCollection" checked="checked"/> Calendar1323 <input type="radio" value="false" name="calendarCollection"/> Folder1324 </xsl:when>1325 <xsl:otherwise>1326 <input type="radio" value="true" name="calendarCollection"/> Calendar1327 <input type="radio" value="false" name="calendarCollection" checked="checked"/> Folder1328 </xsl:otherwise>1329 </xsl:choose>1330 </td>1331 </tr>1332 </table>1333 1334 <table border="0" id="submitTable">1335 <tr>1336 <td>1337 <xsl:choose>1338 <xsl:when test="calendarCollection='true'">1339 <input type="submit" name="updateCalendar" value="Update Calendar"/>1340 </xsl:when>1341 <xsl:otherwise>1342 <input type="submit" name="updateCalendar" value="Update Folder"/>1343 </xsl:otherwise>1344 </xsl:choose>1345 <input type="submit" name="cancelled" value="cancel"/>1346 <input type="reset" value="Reset"/>1347 </td>1348 <td align="right">1349 <xsl:choose>1350 <xsl:when test="calendarCollection='true'">1351 <input type="submit" name="delete" value="Delete Calendar"/>1352 </xsl:when>1353 <xsl:otherwise>1354 <input type="submit" name="delete" value="Delete Folder"/>1355 </xsl:otherwise>1356 </xsl:choose>1357 </td>1358 </tr>1359 </table>1360 </form>1361 <div id="sharingBox">1362 <xsl:apply-templates select="acl" mode="currentAccess">1363 <xsl:with-param name="action" select="$calendar-setAccess"/>1364 <xsl:with-param name="calPathEncoded" select="$calPathEncoded"/>1365 </xsl:apply-templates>1366 <form name="calendarShareForm" method="post" action="{$calendar-setAccess}" id="shareForm" onsubmit="setAccessHow(this)">1367 <input type="hidden" name="calPath" value="{$calPath}"/>1368 <xsl:call-template name="entityAccessForm">1369 <xsl:with-param name="type">1370 <xsl:choose>1371 <xsl:when test="calType = '5'">inbox</xsl:when>1372 <xsl:when test="calType = '6'">outbox</xsl:when>1373 <xsl:otherwise>normal</xsl:otherwise>1374 </xsl:choose>1375 </xsl:with-param>1376 </xsl:call-template>1377 </form>1378 </div>1379 </xsl:template>1380 1381 <xsl:template name="selectCalForEvent">1382 <!-- selectCalForEvent creates a calendar tree in a pop-up window.1383 Used when selecting a calendar while adding or editing an event.1384 1385 This template will be called when1386 a) we add an event by date with no specific calendar selected1387 b) we import an event1388 c) we add an event ref1389 d) we edit an event and change it's calendar (or change it while adding)1390 1391 The intention is to load the calendar listing in a "pop-up" widget as a1392 tree of myCalendars and writable calendars associated with subscriptions.1393 The xml for the tree is already in header.jsp in myCalendars and1394 mySubscriptions.1395 -->1396 <input type="button" onclick="javascript:changeClass('calSelectWidget','visible')" value="select calendar" class="small"/>1397 <div id="calSelectWidget" class="invisible">1398 <h2>select a calendar</h2>1399 <a href="javascript:changeClass('calSelectWidget','invisible')" id="calSelectWidgetCloser" title="close">x</a>1400 <h4>My Calendars</h4>1401 <ul class="calendarTree">1402 <xsl:choose>1403 <xsl:when test="/bedework/myCalendars/calendars/calendar[currentAccess/current-user-privilege-set/privilege/write-content]">1404 <xsl:apply-templates select="/bedework/myCalendars/calendars/calendar[currentAccess/current-user-privilege-set/privilege/write-content]" mode="selectCalForEventCalTree"/>1405 </xsl:when>1406 <xsl:otherwise>1407 <em>no writable calendars</em>1408 </xsl:otherwise>1409 </xsl:choose>1410 </ul>1411 <h4>Subscribed Calendars</h4>1412 <ul class="calendarTree">1413 <xsl:variable name="userPath">user/<xsl:value-of select="/bedework/userid"/></xsl:variable>1414 <xsl:choose>1415 <xsl:when test="/bedework/mySubscriptions/subscription[not(contains(uri,$userPath))]/calendars/calendar[currentAccess/current-user-privilege-set/privilege/write-content]">1416 <xsl:apply-templates select="/bedework/mySubscriptions/subscription[not(contains(uri,$userPath))]/calendars/calendar[currentAccess/current-user-privilege-set/privilege/write-content]" mode="selectCalForEventCalTree"/>1417 </xsl:when>1418 <xsl:otherwise>1419 <em>no writable calendars</em>1420 </xsl:otherwise>1421 </xsl:choose>1422 </ul>1423 </div>1424 </xsl:template>1425 1426 <xsl:template match="calendar" mode="selectCalForEventCalTree">1427 <xsl:variable name="id" select="id"/>1428 <li>1429 <xsl:attribute name="class">1430 <xsl:choose>1431 <xsl:when test="/bedework/selectionState/selectionType = 'calendar'1432 and name = /bedework/selectionState/subscriptions/subscription/calendar/name">selected</xsl:when>1433 <xsl:when test="name='Trash'">trash</xsl:when>1434 <xsl:when test="calendarCollection='false'">folder</xsl:when>1435 <xsl:otherwise>calendar</xsl:otherwise>1436 </xsl:choose>1437 </xsl:attribute>1438 <xsl:variable name="calPath" select="path"/>1439 <xsl:variable name="userPath">user/<xsl:value-of select="/bedework/userid"/>/</xsl:variable>1440 <xsl:variable name="calDisplay">1441 <xsl:choose>1442 <xsl:when test="contains(path,$userPath)">1443 <xsl:value-of select="substring-after(path,$userPath)"/>1444 </xsl:when>1445 <xsl:otherwise>1446 <xsl:value-of select="path"/>1447 </xsl:otherwise>1448 </xsl:choose>1449 </xsl:variable>1450 <xsl:choose>1451 <xsl:when test="currentAccess/current-user-privilege-set/privilege/write-content and (calendarCollection = 'true')">1452 <a href="javascript:updateEventFormCalendar('{$calPath}','{$calDisplay}')">1453 <strong><xsl:value-of select="name"/></strong>1454 </a>1455 <xsl:if test="name != $calDisplay">1456 <span class="small">(<xsl:value-of select="$calDisplay"/>)</span>1457 </xsl:if>1458 </xsl:when>1459 <xsl:otherwise>1460 <xsl:value-of select="name"/>1461 </xsl:otherwise>1462 </xsl:choose>1463 <xsl:if test="calendar">1464 <ul>1465 <xsl:apply-templates select="calendar[calType < 2]" mode="selectCalForEventCalTree"/>1466 </ul>1467 </xsl:if>1468 </li>1469 </xsl:template>1470 1471 <xsl:template name="calendarList">1472 <h3>Managing Calendars</h3>1473 <ul>1474 <li>Select an item from the calendar list on the left to modify1475 a calendar or folder.</li>1476 <li>Select the1477 <img src="{$resourcesRoot}/resources/calAddIcon.gif" width="13" height="13" alt="true" border="0"/>1478 icon to add a new calendar or folder to the tree.1479 <ul>1480 <li>Folders may only contain calendars and subfolders.</li>1481 <li>Calendars may only contain events (and other calendar items).</li>1482 <li>1483 If a calendar is empty, it may be converted to a folder and vice1484 versa. If a calendar or folder are not empty, it may not be1485 converted.1486 </li>1487 </ul>1488 </li>1489 </ul>1490 </xsl:template>1491 1492 <xsl:template name="calendarDescriptions">1493 <h2>Calendar Information</h2>1494 <ul>1495 <li>Select an item from the calendar tree on the left to view all information1496 about that calendar or folder. The tree on the left represents the calendar1497 heirarchy.</li>1498 </ul>1499 1500 <p><strong>All Calendar Descriptions:</strong></p>1501 <table id="flatCalendarDescriptions" cellspacing="0">1502 <tr>1503 <th>Name</th>1504 <th>Description</th>1505 </tr>1506 <xsl:for-each select="//calendar[calType < 2]">1507 <xsl:variable name="descClass">1508 <xsl:choose>1509 <xsl:when test="position() mod 2 = 0">even</xsl:when>1510 <xsl:otherwise>odd</xsl:otherwise>1511 </xsl:choose>1512 </xsl:variable>1513 <tr class="{$descClass}">1514 <td>1515 <xsl:value-of select="name"/>1516 </td>1517 <td>1518 <xsl:value-of select="desc"/>1519 </td>1520 </tr>1521 </xsl:for-each>1522 </table>1523 </xsl:template>1524 </xsl:stylesheet>1525 <?xml version="1.0" encoding="UTF-8"?>1526 <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">1527 <xsl:template match="calendars" mode="manageCalendars">1528 <h2>Manage Calendars</h2>1529 <table id="calendarTable">1530 <tr>1531 <td class="cals">1532 <h3>Calendars</h3>1533 <ul class="calendarTree">1534 <xsl:choose>1535 <xsl:when test="/bedework/page='calendarDescriptions' or1536 /bedework/page='displayCalendar'">1537 <xsl:apply-templates select="calendar[calType < 2]" mode="listForDisplay"/>1538 </xsl:when>1539 <xsl:otherwise>1540 <xsl:apply-templates select="calendar[calType < 2]" mode="listForUpdate"/>1541 </xsl:otherwise>1542 </xsl:choose>1543 </ul>1544 </td>1545 <td class="calendarContent">1546 <xsl:choose>1547 <xsl:when test="/bedework/page='calendarList' or1548 /bedework/page='calendarReferenced'">1549 <xsl:call-template name="calendarList"/>1550 </xsl:when>1551 <xsl:when test="/bedework/page='calendarDescriptions'">1552 <xsl:call-template name="calendarDescriptions"/>1553 </xsl:when>1554 <xsl:when test="/bedework/page='displayCalendar'">1555 <xsl:apply-templates select="/bedework/currentCalendar" mode="displayCalendar"/>1556 </xsl:when>1557 <xsl:when test="/bedework/page='deleteCalendarConfirm'">1558 <xsl:apply-templates select="/bedework/currentCalendar" mode="deleteCalendarConfirm"/>1559 </xsl:when>1560 <xsl:when test="/bedework/creating='true'">1561 <xsl:apply-templates select="/bedework/currentCalendar" mode="addCalendar"/>1562 </xsl:when>1563 <xsl:otherwise>1564 <xsl:apply-templates select="/bedework/currentCalendar" mode="modCalendar"/>1565 </xsl:otherwise>1566 </xsl:choose>1567 </td>1568 </tr>1569 </table>1570 </xsl:template>1571 1572 <xsl:template match="calendar" mode="listForDisplay">1573 <xsl:variable name="calPath" select="encodedPath"/>1574 <li>1575 <xsl:attribute name="class">1576 <xsl:choose>1577 <xsl:when test="calendarCollection='false'">folder</xsl:when>1578 <xsl:otherwise>calendar</xsl:otherwise>1579 </xsl:choose>1580 </xsl:attribute>1581 <a href="{$calendar-fetchForDisplay}&calPath={$calPath}" title="display">1582 <xsl:value-of select="name"/>1583 </a>1584 <xsl:if test="calendar">1585 <ul>1586 <xsl:apply-templates select="calendar" mode="listForDisplay">1587 <!--<xsl:sort select="title" order="ascending" case-order="upper-first"/>-->1588 </xsl:apply-templates>1589 </ul>1590 </xsl:if>1591 </li>1592 </xsl:template>1593 1594 <xsl:template match="calendar" mode="listForUpdate">1595 <xsl:variable name="calPath" select="encodedPath"/>1596 <li>1597 <xsl:attribute name="class">1598 <xsl:choose>1599 <xsl:when test="calendarCollection='false'">folder</xsl:when>1600 <xsl:otherwise>calendar</xsl:otherwise>1601 </xsl:choose>1602 </xsl:attribute>1603 <a href="{$calendar-fetchForUpdate}&calPath={$calPath}" title="update">1604 <xsl:value-of select="name"/>1605 </a>1606 <xsl:if test="calendarCollection='false'">1607 <xsl:text> </xsl:text>1608 <a href="{$calendar-initAdd}&calPath={$calPath}" title="add a calendar or folder">1609 <img src="{$resourcesRoot}/resources/calAddIcon.gif" width="13" height="13" alt="add a calendar or folder" border="0"/>1610 </a>1611 </xsl:if>1612 <xsl:if test="calendar">1613 <ul>1614 <xsl:apply-templates select="calendar" mode="listForUpdate">1615 <!--<xsl:sort select="title" order="ascending" case-order="upper-first"/>-->1616 </xsl:apply-templates>1617 </ul>1618 </xsl:if>1619 </li>1620 </xsl:template>1621 1622 1623 <xsl:template match="currentCalendar" mode="displayCalendar">1624 <h2>Calendar Information</h2>1625 <table class="common">1626 <tr>1627 <th>Name:</th>1628 <td>1629 <xsl:value-of select="name"/>1630 </td>1631 </tr>1632 <tr>1633 <th>Path:</th>1634 <td>1635 <xsl:value-of select="path"/>1636 </td>1637 </tr>1638 <tr>1639 <th>Summary:</th>1640 <td>1641 <xsl:value-of select="summary"/>1642 </td>1643 </tr>1644 <tr>1645 <th>Description:</th>1646 <td>1647 <xsl:value-of select="desc"/>1648 </td>1649 </tr>1650 </table>1651 </xsl:template>1652 1653 <xsl:template match="currentCalendar" mode="deleteCalendarConfirm">1654 <xsl:choose>1655 <xsl:when test="calendarCollection='true'">1656 <h3>Delete Calendar</h3>1657 <p>1658 The following calendar will be deleted. Continue?1659 </p>1660 </xsl:when>1661 <xsl:otherwise>1662 <h3>Delete Folder</h3>1663 <p>1664 The following folder <em>and all its contents</em> will be deleted.1665 Continue?1666 </p>1667 </xsl:otherwise>1668 </xsl:choose>1669 1670 <form name="delCalForm" method="post" action="{$calendar-delete}">1671 <table class="common">1672 <tr>1673 <th>Path:</th>1674 <td>1675 <xsl:value-of select="path"/>1676 </td>1677 </tr>1678 <tr>1679 <th>Name:</th>1680 <td>1681 <xsl:value-of select="name"/>1682 </td>1683 </tr>1684 <tr>1685 <th>Summary:</th>1686 <td>1687 <xsl:value-of select="summary"/>1688 </td>1689 </tr>1690 <tr>1691 <th>Description:</th>1692 <td>1693 <xsl:value-of select="desc"/>1694 </td>1695 </tr>1696 </table>1697 1698 <table border="0" id="submitTable">1699 <tr>1700 <td>1701 <input type="submit" name="cancelled" value="cancel"/>1702 </td>1703 <td align="right">1704 <xsl:choose>1705 <xsl:when test="calendarCollection='true'">1706 <input type="submit" name="delete" value="Yes: Delete Calendar!"/>1707 </xsl:when>1708 <xsl:otherwise>1709 <input type="submit" name="delete" value="Yes: Delete Folder!"/>1710 </xsl:otherwise>1711 </xsl:choose>1712 </td>1713 </tr>1714 </table>1715 </form>1716 </xsl:template>1717 1718 <xsl:template match="currentCalendar" mode="addCalendar">1719 <h3>Add Calendar / Folder</h3>1720 <form name="addCalForm" method="post" action="{$calendar-update}">1721 <table class="common">1722 <tr>1723 <th>Name:</th>1724 <td>1725 <xsl:variable name="curCalName" select="name"/>1726 <input name="calendar.name" value="{$curCalName}" size="40"/>1727 </td>1728 </tr>1729 <tr>1730 <th>Summary:</th>1731 <td>1732 <xsl:variable name="curCalSummary" select="summary"/>1733 <input type="text" name="calendar.summary" value="{$curCalSummary}" size="40"/>1734 </td>1735 </tr>1736 <tr>1737 <th>Description:</th>1738 <td>1739 <textarea name="calendar.description" cols="40" rows="4">1740 <xsl:value-of select="desc"/>1741 <xsl:if test="normalize-space(desc) = ''">1742 <xsl:text> </xsl:text>1743 <!-- keep this non-breaking space to avoid browser1744 rendering errors when the text area is empty -->1745 </xsl:if>1746 </textarea>1747 </td>1748 </tr>1749 <tr>1750 <th>Calendar/Folder:</th>1751 <td>1752 <input type="radio" value="true" name="calendarCollection" checked="checked"/> Calendar1753 <input type="radio" value="false" name="calendarCollection"/> Folder1754 </td>1755 </tr>1756 </table>1757 1758 <table border="0" id="submitTable">1759 <tr>1760 <td>1761 <input type="submit" name="addCalendar" value="Add Calendar/Folder"/>1762 <input type="submit" name="cancelled" value="cancel"/>1763 <input type="reset" value="Clear"/>1764 </td>1765 </tr>1766 </table>1767 </form>1768 1769 <div id="sharingBox">1770 <h3>Current Access:</h3>1771 Sharing may be added to a calendar once created.1772 </div>1773 </xsl:template>1774 1775 <xsl:template match="currentCalendar" mode="modCalendar">1776 <xsl:variable name="calPath" select="path"/>1777 <xsl:variable name="calPathEncoded" select="encodedPath"/>1778 <xsl:choose>1779 <xsl:when test="calendarCollection='true'">1780 <h3>Modify Calendar</h3>1781 </xsl:when>1782 <xsl:otherwise>1783 <h3>Modify Folder</h3>1784 </xsl:otherwise>1785 </xsl:choose>1786 <form name="modCalForm" method="post" action="{$calendar-update}">1787 <table class="common">1788 <tr>1789 <th class="commonHeader" colspan="2">1790 <xsl:value-of select="path"/>1791 </th>1792 </tr>1793 <tr>1794 <th>Name:</th>1795 <td>1796 <xsl:value-of select="name"/>1797 </td>1798 </tr>1799 <tr>1800 <th>Mailing List ID:</th>1801 <td>1802 <xsl:value-of select="mailListId"/>1803 </td>1804 </tr>1805 <tr>1806 <th>Summary:</th>1807 <td>1808 <xsl:variable name="curCalSummary" select="summary"/>1809 <input type="text" name="calendar.summary" value="{$curCalSummary}" size="40"/>1810 </td>1811 </tr>1812 <tr>1813 <th>Description:</th>1814 <td>1815 <textarea name="calendar.description" cols="40" rows="4">1816 <xsl:value-of select="desc"/>1817 <xsl:if test="normalize-space(desc) = ''">1818 <xsl:text> </xsl:text>1819 <!-- keep this non-breaking space to avoid browser1820 rendering errors when the text area is empty -->1821 </xsl:if>1822 </textarea>1823 </td>1824 </tr>1825 <tr>1826 <th>Calendar/Folder:</th>1827 <td>1828 <xsl:choose>1829 <xsl:when test="calendarCollection='true'">1830 <input type="radio" value="true" name="calendarCollection" checked="checked"/> Calendar1831 <input type="radio" value="false" name="calendarCollection"/> Folder1832 </xsl:when>1833 <xsl:otherwise>1834 <input type="radio" value="true" name="calendarCollection"/> Calendar1835 <input type="radio" value="false" name="calendarCollection" checked="checked"/> Folder1836 </xsl:otherwise>1837 </xsl:choose>1838 </td>1839 </tr>1840 </table>1841 1842 <table border="0" id="submitTable">1843 <tr>1844 <td>1845 <xsl:choose>1846 <xsl:when test="calendarCollection='true'">1847 <input type="submit" name="updateCalendar" value="Update Calendar"/>1848 </xsl:when>1849 <xsl:otherwise>1850 <input type="submit" name="updateCalendar" value="Update Folder"/>1851 </xsl:otherwise>1852 </xsl:choose>1853 <input type="submit" name="cancelled" value="cancel"/>1854 <input type="reset" value="Reset"/>1855 </td>1856 <td align="right">1857 <xsl:choose>1858 <xsl:when test="calendarCollection='true'">1859 <input type="submit" name="delete" value="Delete Calendar"/>1860 </xsl:when>1861 <xsl:otherwise>1862 <input type="submit" name="delete" value="Delete Folder"/>1863 </xsl:otherwise>1864 </xsl:choose>1865 </td>1866 </tr>1867 </table>1868 </form>1869 <div id="sharingBox">1870 <xsl:apply-templates select="acl" mode="currentAccess">1871 <xsl:with-param name="action" select="$calendar-setAccess"/>1872 <xsl:with-param name="calPathEncoded" select="$calPathEncoded"/>1873 </xsl:apply-templates>1874 <form name="calendarShareForm" method="post" action="{$calendar-setAccess}" id="shareForm" onsubmit="setAccessHow(this)">1875 <input type="hidden" name="calPath" value="{$calPath}"/>1876 <xsl:call-template name="entityAccessForm">1877 <xsl:with-param name="type">1878 <xsl:choose>1879 <xsl:when test="calType = '5'">inbox</xsl:when>1880 <xsl:when test="calType = '6'">outbox</xsl:when>1881 <xsl:otherwise>normal</xsl:otherwise>1882 </xsl:choose>1883 </xsl:with-param>1884 </xsl:call-template>1885 </form>1886 </div>1887 </xsl:template>1888 1889 <xsl:template name="selectCalForEvent">1890 <!-- selectCalForEvent creates a calendar tree in a pop-up window.1891 Used when selecting a calendar while adding or editing an event.1892 1893 This template will be called when1894 a) we add an event by date with no specific calendar selected1895 b) we import an event1896 c) we add an event ref1897 d) we edit an event and change it's calendar (or change it while adding)1898 1899 The intention is to load the calendar listing in a "pop-up" widget as a1900 tree of myCalendars and writable calendars associated with subscriptions.1901 The xml for the tree is already in header.jsp in myCalendars and1902 mySubscriptions.1903 -->1904 <input type="button" onclick="javascript:changeClass('calSelectWidget','visible')" value="select calendar" class="small"/>1905 <div id="calSelectWidget" class="invisible">1906 <h2>select a calendar</h2>1907 <a href="javascript:changeClass('calSelectWidget','invisible')" id="calSelectWidgetCloser" title="close">x</a>1908 <h4>My Calendars</h4>1909 <ul class="calendarTree">1910 <xsl:choose>1911 <xsl:when test="/bedework/myCalendars/calendars/calendar[currentAccess/current-user-privilege-set/privilege/write-content]">1912 <xsl:apply-templates select="/bedework/myCalendars/calendars/calendar[currentAccess/current-user-privilege-set/privilege/write-content]" mode="selectCalForEventCalTree"/>1913 </xsl:when>1914 <xsl:otherwise>1915 <em>no writable calendars</em>1916 </xsl:otherwise>1917 </xsl:choose>1918 </ul>1919 <h4>Subscribed Calendars</h4>1920 <ul class="calendarTree">1921 <xsl:variable name="userPath">user/<xsl:value-of select="/bedework/userid"/></xsl:variable>1922 <xsl:choose>1923 <xsl:when test="/bedework/mySubscriptions/subscription[not(contains(uri,$userPath))]/calendars/calendar[currentAccess/current-user-privilege-set/privilege/write-content]">1924 <xsl:apply-templates select="/bedework/mySubscriptions/subscription[not(contains(uri,$userPath))]/calendars/calendar[currentAccess/current-user-privilege-set/privilege/write-content]" mode="selectCalForEventCalTree"/>1925 </xsl:when>1926 <xsl:otherwise>1927 <em>no writable calendars</em>1928 </xsl:otherwise>1929 </xsl:choose>1930 </ul>1931 </div>1932 </xsl:template>1933 1934 <xsl:template match="calendar" mode="selectCalForEventCalTree">1935 <xsl:variable name="id" select="id"/>1936 <li>1937 <xsl:attribute name="class">1938 <xsl:choose>1939 <xsl:when test="/bedework/selectionState/selectionType = 'calendar'1940 and name = /bedework/selectionState/subscriptions/subscription/calendar/name">selected</xsl:when>1941 <xsl:when test="name='Trash'">trash</xsl:when>1942 <xsl:when test="calendarCollection='false'">folder</xsl:when>1943 <xsl:otherwise>calendar</xsl:otherwise>1944 </xsl:choose>1945 </xsl:attribute>1946 <xsl:variable name="calPath" select="path"/>1947 <xsl:variable name="userPath">user/<xsl:value-of select="/bedework/userid"/>/</xsl:variable>1948 <xsl:variable name="calDisplay">1949 <xsl:choose>1950 <xsl:when test="contains(path,$userPath)">1951 <xsl:value-of select="substring-after(path,$userPath)"/>1952 </xsl:when>1953 <xsl:otherwise>1954 <xsl:value-of select="path"/>1955 </xsl:otherwise>1956 </xsl:choose>1957 </xsl:variable>1958 <xsl:choose>1959 <xsl:when test="currentAccess/current-user-privilege-set/privilege/write-content and (calendarCollection = 'true')">1960 <a href="javascript:updateEventFormCalendar('{$calPath}','{$calDisplay}')">1961 <strong><xsl:value-of select="name"/></strong>1962 </a>1963 <xsl:if test="name != $calDisplay">1964 <span class="small">(<xsl:value-of select="$calDisplay"/>)</span>1965 </xsl:if>1966 </xsl:when>1967 <xsl:otherwise>1968 <xsl:value-of select="name"/>1969 </xsl:otherwise>1970 </xsl:choose>1971 <xsl:if test="calendar">1972 <ul>1973 <xsl:apply-templates select="calendar[calType < 2]" mode="selectCalForEventCalTree"/>1974 </ul>1975 </xsl:if>1976 </li>1977 </xsl:template>1978 1979 <xsl:template name="calendarList">1980 <h3>Managing Calendars</h3>1981 <ul>1982 <li>Select an item from the calendar list on the left to modify1983 a calendar or folder.</li>1984 <li>Select the1985 <img src="{$resourcesRoot}/resources/calAddIcon.gif" width="13" height="13" alt="true" border="0"/>1986 icon to add a new calendar or folder to the tree.1987 <ul>1988 <li>Folders may only contain calendars and subfolders.</li>1989 <li>Calendars may only contain events (and other calendar items).</li>1990 <li>1991 If a calendar is empty, it may be converted to a folder and vice1992 versa. If a calendar or folder are not empty, it may not be1993 converted.1994 </li>1995 </ul>1996 </li>1997 </ul>1998 </xsl:template>1999 2000 <xsl:template name="calendarDescriptions">2001 <h2>Calendar Information</h2>2002 <ul>2003 <li>Select an item from the calendar tree on the left to view all information2004 about that calendar or folder. The tree on the left represents the calendar2005 heirarchy.</li>2006 </ul>2007 2008 <p><strong>All Calendar Descriptions:</strong></p>2009 <table id="flatCalendarDescriptions" cellspacing="0">2010 <tr>2011 <th>Name</th>2012 <th>Description</th>2013 </tr>2014 <xsl:for-each select="//calendar[calType < 2]">2015 <xsl:variable name="descClass">2016 <xsl:choose>2017 <xsl:when test="position() mod 2 = 0">even</xsl:when>2018 <xsl:otherwise>odd</xsl:otherwise>2019 </xsl:choose>2020 </xsl:variable>2021 <tr class="{$descClass}">2022 <td>2023 <xsl:value-of select="name"/>2024 </td>2025 <td>2026 <xsl:value-of select="desc"/>2027 </td>2028 </tr>2029 </xsl:for-each>2030 </table>2031 </xsl:template>2032 563 2033 564 <xsl:template match="calendars" mode="exportCalendars"> 2034 <h2> Export Calendars as iCal</h2>565 <h2><xsl:value-of select="$calendar.exportCalendars.h2" /></h2> 2035 566 <form name="eventForm" id="exportCalendarForm" action="{$export}" method="post"> 2036 567 <input type="hidden" name="calPath" value=""/> … … 2041 572 <tr> 2042 573 <th class="commonHeader" colspan="3"> 2043 Event date limits:574 <xsl:value-of select="$calendar.exportCalendars.date.limits" /> 2044 575 <input type="radio" name="dateLimits" value="active" checked="checked" onclick="changeClass('exportDateRange','invisible')"/> today forward 2045 576 <input type="radio" name="dateLimits" value="none" onclick="changeClass('exportDateRange','invisible')"/> all dates … … 2049 580 <tr id="exportDateRange" class="invisible"> 2050 581 <td colspan="3" class="dates"> 2051 <strong> Start:</strong>582 <strong><xsl:value-of select="$calendar.start" /></strong> 2052 583 <div class="dateFields"> 2053 584 <xsl:copy-of select="/bedework/formElements/form/start/month/*"/> … … 2056 587 </div> 2057 588    2058 <strong> End:</strong>589 <strong><xsl:value-of select="$calendar.end" /></strong> 2059 590 <div class="dateFields"> 2060 591 <xsl:copy-of select="/bedework/formElements/form/end/month/*"/> … … 2066 597 <tr> 2067 598 <th class="borderRight"> 2068 My Calendars599 <xsl:value-of select="$calendar.my.calendars" /> 2069 600 </th> 2070 601 <th class="borderRight"> 2071 Subscriptions (underlying calendars)602 <xsl:value-of select="$calendar.exportCalendars.subs" /> 2072 603 </th> 2073 604 <th> 2074 Public Calendars605 <xsl:value-of select="$calendar.public.calendars" /> 2075 606 </th> 2076 607 </tr> … … 2106 637 <!-- My Subscriptions (underlying calendars) --> 2107 638 <ul class="calendarTree"> 2108 <xsl:variable name="userPath"> user/<xsl:value-of select="/bedework/userid"/></xsl:variable>639 <xsl:variable name="userPath"><xsl:value-of select="$calendar.user" />/<xsl:value-of select="/bedework/userid"/></xsl:variable> 2109 640 <xsl:for-each select="/bedework/mySubscriptions/subscription[not(contains(uri,$userPath))]"> 2110 641 <xsl:choose> … … 2112 643 <li class="deleted"> 2113 644 <xsl:value-of select="name"/><br/> 2114 <em> calendar not available</em>645 <em><xsl:value-of select="$calendar.exportCalendars.not.available" /></em> 2115 646 </li> 2116 647 </xsl:when> … … 2170 701 <tr> 2171 702 <th colspan="2"> 2172 All Calendars703 <xsl:value-of select="$calendar.exportCalendars.all.calendars" /> 2173 704 </th> 2174 705 </tr> … … 2176 707 <td colspan="2" class="infoCell"> 2177 708 <p class="info"> 2178 Select a calendar from the list below to see only that calendar's events.709 <xsl:value-of select="$calendar.exportCalendars.info" /> 2179 710 </p> 2180 711 <!-- Uncomment this block, and change the links on the download calendar … … 2235 766 <xsl:variable name="itemClass"> 2236 767 <xsl:choose> 2237 <xsl:when test="calendarCollection='false'"> folder</xsl:when>2238 <xsl:otherwise> calendar</xsl:otherwise>768 <xsl:when test="calendarCollection='false'"> <xsl:value-of select="$calendar.folder" /></xsl:when> 769 <xsl:otherwise> <xsl:value-of select="$calendar.calendar" /></xsl:otherwise> 2239 770 </xsl:choose> 2240 771 </xsl:variable> … … 2266 797 2267 798 <xsl:template match="currentCalendar" mode="export"> 2268 <h2 class="bwStatusConfirmed"> Export Calendar</h2>799 <h2 class="bwStatusConfirmed"> <xsl:value-of select="$calendar.export.calendar" /></h2> 2269 800 <div id="export"> 2270 801 <p> 2271 <strong> Calendar to export:</strong>802 <strong><xsl:value-of select="$calendar.export.to.export" /></strong> 2272 803 </p> 2273 804 <div class="indent"> 2274 Name:<strong><em><xsl:value-of select="name"/></em></strong><br/>2275 Path:<xsl:value-of select="path"/>805 <xsl:value-of select="$calendar.name" /> <strong><em><xsl:value-of select="name"/></em></strong><br/> 806 <xsl:value-of select="$calendar.path" /> <xsl:value-of select="path"/> 2276 807 </div> 2277 808 <p> 2278 <strong> Event date limits:</strong>809 <strong><xsl:value-of select="$calendar.export.date.limits" /></strong> 2279 810 </p> 2280 811 <form name="exportCalendarForm" id="exportCalendarForm" action="{$export}" method="post"> … … 2301 832 <input type="radio" name="dateLimits" value="limited" onclick="changeClass('exportDateRange','visible')"/> date range 2302 833 <div id="exportDateRange" class="invisible"> 2303 Start:<div dojoType="dropdowndatepicker" formatLength="medium" saveFormat="yyyyMMdd" id="bwExportCalendarWidgetStartDate"><xsl:text> </xsl:text></div>2304 End:<div dojoType="dropdowndatepicker" formatLength="medium" saveFormat="yyyyMMdd" id="bwExportCalendarWidgetEndDate"><xsl:text> </xsl:text></div>834 <xsl:value-of select="$calendar.start" /> <div dojoType="dropdowndatepicker" formatLength="medium" saveFormat="yyyyMMdd" id="bwExportCalendarWidgetStartDate"><xsl:text> </xsl:text></div> 835 <xsl:value-of select="$calendar.end" /> <div dojoType="dropdowndatepicker" formatLength="medium" saveFormat="yyyyMMdd" id="bwExportCalendarWidgetEndDate"><xsl:text> </xsl:text></div> 2305 836 </div> 2306 837 <p><input type="submit" value="export" class="bwWidgetSubmit" onclick="fillExportFields(this.form)"/></p> … … 2308 839 </div> 2309 840 </xsl:template> 841 842 <xsl:template name="calendarMove"> 843 <table id="calendarTable"> 844 <tr> 845 <td class="calendarContent"> 846 <h3><xsl:value-of select="$calendar.calendarMove.h3" /></h3> 847 848 <table class="eventFormTable"> 849 <tr> 850 <th><xsl:value-of select="$calendar.calendarMove.current.path" /></th> 851 <td> 852 <xsl:value-of select="/bedework/currentCalendar/path"/> 853 </td> 854 </tr> 855 <tr> 856 <th><xsl:value-of select="$calendar.name" /></th> 857 <td> 858 <xsl:value-of select="/bedework/currentCalendar/name"/> 859 </td> 860 </tr> 861 <tr> 862 <th><xsl:value-of select="$calendar.modCalendar.listid" /></th> 863 <td> 864 <xsl:value-of select="/bedework/currentCalendar/mailListId"/> 865 </td> 866 </tr> 867 <tr> 868 <th><xsl:value-of select="$calendar.summary" /></th> 869 <td> 870 <xsl:value-of select="/bedework/currentCalendar/summary"/> 871 </td> 872 </tr> 873 <tr> 874 <th><xsl:value-of select="$calendar.description" /></th> 875 <td> 876 <xsl:value-of select="/bedework/currentCalendar/desc"/> 877 </td> 878 </tr> 879 </table> 880 </td> 881 <td class="bwCalsForMove"> 882 <p><xsl:value-of select="$calendar.calendarMove.new.folder" /></p> 883 <ul id="calendarTree"> 884 <xsl:apply-templates select="/bedework/calendars/calendar" mode="listForMove"/> 885 </ul> 886 </td> 887 </tr> 888 </table> 889 </xsl:template> 890 891 <xsl:template match="calendar" mode="listForMove"> 892 <xsl:variable name="calPath" select="encodedPath"/> 893 <xsl:if test="calendarCollection='false'"> 894 <li class="folder"> 895 <!-- test the open state of the folder; if it's open, 896 build a URL to close it and vice versa --> 897 <xsl:choose> 898 <xsl:when test="open = 'true'"> 899 <a href="{$calendar-openCloseMove}&newCalPath={$calPath}&open=false"> 900 <img src="{$resourcesRoot}/resources/minus.gif" width="9" height="9" alt="close" border="0" class="bwPlusMinusIcon"/> 901 </a> 902 </xsl:when> 903 <xsl:otherwise> 904 <a href="{$calendar-openCloseMove}&newCalPath={$calPath}&open=true"> 905 <img src="{$resourcesRoot}/resources/plus.gif" width="9" height="9" alt="open" border="0" class="bwPlusMinusIcon"/> 906 </a> 907 </xsl:otherwise> 908 </xsl:choose> 909 <a href="{$calendar-update}&newCalPath={$calPath}" title="update"> 910 <xsl:value-of select="name"/> 911 </a> 912 <xsl:if test="calendar"> 913 <ul> 914 <xsl:apply-templates select="calendar" mode="listForMove"/> 915 </ul> 916 </xsl:if> 917 </li> 918 </xsl:if> 919 </xsl:template> 2310 920 </xsl:stylesheet> branches/xslt-rewrite/deployment/resources/xsl/default/default/category-location.xsl
r1622 r1705 4 4 <xsl:template name="categoryList"> 5 5 <h2> 6 Manage Categories6 <xsl:value-of select="$category-location.categoryList.h2" /> 7 7 <input type="button" name="return" value="Add new category" onclick="javascript:location.replace('{$category-initAdd}')" class="titleButton"/> 8 8 </h2> 9 9 <table class="common" id="manage" cellspacing="0"> 10 10 <tr> 11 <th class="commonHeader" colspan="2">Edit/Delete Categories</th> 11 <th class="commonHeader" colspan="2"><xsl:value-of select="$category-location.categoryList.edit.delete" /></th> 12 </tr> 13 <tr> 14 <th><xsl:value-of select="$category-location.keyword" /></th> 15 <th><xsl:value-of select="$category-location.description" /></th> 12 16 </tr> 13 17 <xsl:choose> … … 30 34 <tr> 31 35 <td colspan="2"> 32 No categories defined36 <xsl:value-of select="$category-location.categoryList.not.defined" /> 33 37 </td> 34 38 </tr> … … 41 45 <xsl:choose> 42 46 <xsl:when test="/bedework/creating='true'"> 43 <h2> Manage Categories</h2>47 <h2><xsl:value-of select="$category-location.modCategory.add.category" /></h2> 44 48 <form action="{$category-update}" method="post"> 45 49 <table class="common" cellspacing="0"> 46 50 <tr> 47 <th class="commonHeader" colspan="2"> Add Category</th>51 <th class="commonHeader" colspan="2"><xsl:value-of select="$category-location.modCategory.add.category" /></th> 48 52 </tr> 49 53 <tr> 50 54 <td class="fieldname"> 51 Keyword:55 <xsl:value-of select="$category-location.keyword" /> 52 56 </td> 53 57 <td> … … 57 61 <tr> 58 62 <td class="fieldname optional"> 59 Description:63 <xsl:value-of select="$category-location.description" /> 60 64 </td> 61 65 <td> … … 78 82 </xsl:when> 79 83 <xsl:otherwise> 80 <h2> Manage Categories</h2>84 <h2><xsl:value-of select="$category-location.modCategory.update.category" /></h2> 81 85 <form action="{$category-update}" method="post"> 82 86 <table class="common" cellspacing="0"> 83 87 <tr> 84 <th class="commonHeader" colspan="2"> Update Category</th>88 <th class="commonHeader" colspan="2"><xsl:value-of select="$category-location.modCategory.update.category" /></th> 85 89 </tr> 86 90 <tr> 87 91 <td class="fieldname"> 88 Keyword:92 <xsl:value-of select="$category-location.keyword" /> 89 93 </td> 90 94 <td> … … 95 99 <tr> 96 100 <td class="fieldname optional"> 97 Description:101 <xsl:value-of select="$category-location.description" /> 98 102 </td> 99 103 <td> … … 128 132 129 133 <xsl:template name="deleteCategoryConfirm"> 130 <h2> Ok to delete this category?</h2>134 <h2><xsl:value-of select="$category-location.deleteCategoryConfirm.h2" /></h2> 131 135 132 136 <table class="common" cellspacing="0"> 133 137 <tr> 134 <th class="commonHeader" colspan="2"> Delete Category</th>138 <th class="commonHeader" colspan="2"><xsl:value-of select="$category-location.deleteCategoryConfirm.delete.category" /></th> 135 139 </tr> 136 140 <tr> 137 141 <td class="fieldname"> 138 Keyword:142 <xsl:value-of select="$category-location.keyword" /> 139 143 </td> 140 144 <td> … … 144 148 <tr> 145 149 <td class="fieldname optional"> 146 Description:150 <xsl:value-of select="$category-location.description" /> 147 151 </td> 148 152 <td> … … 160 164 <!--==== MANAGE LOCATIONS ====--> 161 165 <xsl:template name="locationList"> 162 <h2> 163 Manage Locations 164 <input type="button" name="return" value="Add new location" onclick="javascript:location.replace('{$location-initAdd}')" class="titleButton"/> 165 </h2> 166 <table class="common" id="manage" cellspacing="0"> 167 <tr> 168 <th class="commonHeader">Edit/Delete Locations</th> 169 </tr> 170 <tr> 171 <td> 172 <xsl:if test="/bedework/locations/location"> 173 <ul> 174 <xsl:for-each select="/bedework/locations/location"> 175 <xsl:sort select="."/> 176 <li> 177 <xsl:variable name="uid" select="uid"/> 178 <a href="{$location-fetchForUpdate}&uid={$uid}"><xsl:value-of select="address"/></a> 179 </li> 180 </xsl:for-each> 181 </ul> 182 </xsl:if> 183 </td> 184 </tr> 166 <h2> <xsl:value-of select="$category-location.locationList.h2" /></h2> 167 <p> 168 <xsl:value-of select="$category-location.locationList.info" /> 169 <input type="button" name="return" value="Add new location" onclick="javascript:location.replace('{$location-initAdd}')"/> 170 </p> 171 172 <table id="commonListTable"> 173 <tr> 174 <th><xsl:value-of select="$category-location.locationList.address" /></th> 175 <th><xsl:value-of select="$category-location.locationList.subaddress" /></th> 176 <th><xsl:value-of select="$category-location.locationList.url" /></th> 177 </tr> 178 179 <xsl:for-each select="/bedework/locations/location"> 180 <tr> 181 <td> 182 <xsl:copy-of select="address/*"/> 183 </td> 184 <td> 185 <xsl:value-of select="subaddress"/> 186 </td> 187 <td> 188 <xsl:variable name="link" select="link" /> 189 <a href="{$link}" target="linktest"> 190 <xsl:value-of select="link" /> 191 </a> 192 </td> 193 </tr> 194 </xsl:for-each> 185 195 </table> 186 196 </xsl:template> 197 187 198 188 199 <xsl:template name="modLocation"> 189 200 <xsl:choose> 190 <xsl:when test="/bedework/creating = 'true'"> 191 <form name="addLocationForm" method="post" action="{$location-update}" id="standardForm"> 192 <h2>Manage Locations</h2> 193 <table class="common" cellspacing="0"> 194 <tr> 195 <th class="commonHeader" colspan="2">Add Location</th> 196 </tr> 197 <tr> 198 <td class="fieldname"> 199 Main Address: 200 </td> 201 <td> 202 <input size="60" name="locationAddress.value" type="text" id="bwLocMainAddress"/> 203 </td> 204 </tr> 205 <tr> 206 <td class="fieldname"> 207 Subaddress: 208 </td> 209 <td> 210 <input size="60" name="locationSubaddress.value" type="text"/> 211 </td> 212 </tr> 213 <tr> 214 <td class="fieldname"> 215 Location Link: 216 </td> 217 <td> 218 <input size="60" name="location.link" type="text"/> 219 </td> 220 </tr> 221 </table> 222 <table border="0" id="submitTable"> 223 <tr> 224 <td> 225 <input name="submit" type="submit" value="Submit Location"/> 226 <input name="cancelled" type="submit" value="cancel"/> 227 </td> 228 </tr> 229 </table> 230 </form> 201 <xsl:when test="/bedework/creating='true'"> 202 <h2> <xsl:value-of select="$category-location.modLocation.h2" /></h2> 231 203 </xsl:when> 232 204 <xsl:otherwise> 233 <form name="editLocationForm" method="post" action="{$location-update}" id="standardForm"> 234 <input type="hidden" name="updateLocation" value="true"/> 235 <h2>Manage Locations</h2> 236 <table class="common" cellspacing="0"> 237 <tr> 238 <th colspan="2" class="commonHeader"> 239 Edit Location 240 </th> 241 </tr> 242 <tr> 243 <td class="fieldname"> 244 Main Address: 245 </td> 246 <td align="left"> 247 <input size="60" name="locationAddress.value" type="text" id="bwLocMainAddress"> 248 <xsl:attribute name="value"><xsl:value-of select="/bedework/currentLocation/address"/></xsl:attribute> 249 </input> 250 </td> 251 </tr> 252 <tr> 253 <td class="fieldname"> 254 Subaddress: 255 </td> 256 <td align="left"> 257 <input size="60" name="locationSubaddress.value" type="text"> 258 <xsl:attribute name="value"><xsl:value-of select="/bedework/currentLocation/subaddress"/></xsl:attribute> 259 </input> 260 </td> 261 </tr> 262 <tr> 263 <td class="fieldname"> 264 Location Link: 265 </td> 266 <td> 267 <input size="60" name="location.link" type="text"> 268 <xsl:attribute name="value"><xsl:value-of select="/bedework/currentLocation/link"/></xsl:attribute> 269 </input> 270 </td> 271 </tr> 272 </table> 273 <table border="0" id="submitTable"> 274 <tr> 275 <td> 276 <input name="submit" type="submit" value="Submit Location"/> 277 <input name="cancelled" type="submit" value="cancel"/> 278 <input type="reset" value="Reset"/> 279 </td> 280 <td align="right"> 281 <!--<xsl:variable name="uid" select="form/uid"/>--> 282 <a href="{$location-delete}"><input type="button" name="delete" value="Delete Location"/></a> 283 </td> 284 </tr> 285 </table> 286 </form> 205 <h2> <xsl:value-of select="$category-location.modLocation.otherwise" /></h2> 287 206 </xsl:otherwise> 288 207 </xsl:choose> 208 209 <form action="{$location-update}" method="post"> 210 <table id="eventFormTable"> 211 <tr> 212 <td class="fieldName"> 213 <xsl:value-of select="$category-location.locationList.address" /> 214 </td> 215 <td> 216 <xsl:copy-of select="/bedework/formElements/form/address/*"/> 217 </td> 218 </tr> 219 <tr> 220 <td class="optional"> 221 <xsl:value-of select="$category-location.locationList.subaddress" /> 222 </td> 223 <td> 224 <xsl:copy-of select="/bedework/formElements/form/subaddress/*"/> 225 <span class="fieldInfo"> <xsl:value-of select="$category-location.optional" /></span> 226 </td> 227 </tr> 228 <tr> 229 <td class="optional"> 230 <xsl:value-of select="$category-location.modLocation.location.url" /> 231 </td> 232 <td> 233 <xsl:copy-of select="/bedework/formElements/form/link/*"/> 234 <span class="fieldInfo"> <xsl:value-of select="$category-location.optional" /></span> 235 </td> 236 </tr> 237 </table> 238 239 <table border="0" id="submitTable"> 240 <tr> 241 <xsl:choose> 242 <xsl:when test="/bedework/creating='true'"> 243 <td> 244 <input type="submit" name="addLocation" value="Add Location"/> 245 <input type="submit" name="cancelled" value="Cancel"/> 246 <input type="reset" value="Clear"/> 247 </td> 248 </xsl:when> 249 <xsl:otherwise> 250 <td> 251 <input type="submit" name="updateLocation" value="Update Location"/> 252 <input type="submit" name="cancelled" value="Cancel"/> 253 <input type="reset" value="Reset"/> 254 </td> 255 <td align="right"> 256 <input type="submit" name="delete" value="Delete Location"/> 257 </td> 258 </xsl:otherwise> 259 </xsl:choose> 260 </tr> 261 </table> 262 </form> 289 263 </xsl:template> 290 264 291 265 <xsl:template name="deleteLocationConfirm"> 292 <h2> Ok to delete this location?</h2>266 <h2><xsl:value-of select="$category-location.deleteLocationConfirm.h2" /></h2> 293 267 294 268 <table class="common" cellspacing="0"> 295 269 <tr> 296 <th class="commonHeader" colspan="2"> Delete Location</th>270 <th class="commonHeader" colspan="2"><xsl:value-of select="$category-location.deleteLocationConfirm.delete" /></th> 297 271 </tr> 298 272 <tr> 299 273 <td class="fieldname"> 300 Main Address:274 <xsl:value-of select="$category-location.deleteLocationConfirm.main.address" /> 301 275 </td> 302 276 <td align="left"> … … 306 280 <tr> 307 281 <td class="fieldname"> 308 Subaddress:282 <xsl:value-of select="$category-location.locationList.subaddress" /> 309 283 </td> 310 284 <td align="left"> … … 314 288 <tr> 315 289 <td class="fieldname"> 316 Location Link:290 <xsl:value-of select="$category-location.deleteLocationConfirm.location.link" /> 317 291 </td> 318 292 <td> … … 329 303 </xsl:template> 330 304 </xsl:stylesheet> 331 <?xml version="1.0" encoding="UTF-8"?>332 <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">333 <!--+++++++++++++++ Categories ++++++++++++++++++++-->334 <xsl:template name="categoryList">335 <h2>336 Manage Categories337 <input type="button" name="return" value="Add new category" onclick="javascript:location.replace('{$category-initAdd}')" class="titleButton"/>338 </h2>339 <table class="common" id="manage" cellspacing="0">340 <tr>341 <th class="commonHeader" colspan="2">Edit/Delete Categories</th>342 </tr>343 <xsl:choose>344 <xsl:when test="/bedework/categories/category">345 <xsl:for-each select="/bedework/categories/category">346 <xsl:variable name="categoryKey" select="normalize-space(keyword)"/>347 <tr>348 <td>349 <a href="{$category-fetchForUpdate}&categoryKey={$categoryKey}">350 <xsl:value-of select="keyword"/>351 </a>352 </td>353 <td>354 <xsl:value-of select="desc"/>355 </td>356 </tr>357 </xsl:for-each>358 </xsl:when>359 <xsl:otherwise>360 <tr>361 <td colspan="2">362 No categories defined363 </td>364 </tr>365 </xsl:otherwise>366 </xsl:choose>367 </table>368 </xsl:template>369 370 <xsl:template name="modCategory">371 <xsl:choose>372 <xsl:when test="/bedework/creating='true'">373 <h2>Manage Categories</h2>374 <form action="{$category-update}" method="post">375 <table class="common" cellspacing="0">376 <tr>377 <th class="commonHeader" colspan="2">Add Category</th>378 </tr>379 <tr>380 <td class="fieldname">381 Keyword:382 </td>383 <td>384 <input type="text" name="categoryWord.value" value="" size="40"/>385 </td>386 </tr>387 <tr>388 <td class="fieldname optional">389 Description:390 </td>391 <td>392 <textarea name="categoryDesc.value" rows="3" cols="60">393 <xsl:text> </xsl:text>394 </textarea>395 </td>396 </tr>397 </table>398 <table border="0" id="submitTable">399 <tr>400 <td>401 <input type="submit" name="addCategory" value="Add Category"/>402 <input type="submit" name="cancelled" value="cancel"/>403 <input type="reset" value="Clear"/>404 </td>405 </tr>406 </table>407 </form>408 </xsl:when>409 <xsl:otherwise>410 <h2>Manage Categories</h2>411 <form action="{$category-update}" method="post">412 <table class="common" cellspacing="0">413 <tr>414 <th class="commonHeader" colspan="2">Update Category</th>415 </tr>416 <tr>417 <td class="fieldname">418 Keyword:419 </td>420 <td>421 <xsl:variable name="keyword" select="normalize-space(/bedework/currentCategory/category/keyword)"/>422 <input type="text" name="categoryWord.value" value="{$keyword}" size="40"/>423 </td>424 </tr>425 <tr>426 <td class="fieldname optional">427 Description:428 </td>429 <td>430 <textarea name="categoryDesc.value" rows="3" cols="60">431 <xsl:value-of select="normalize-space(/bedework/currentCategory/category/desc)"/>432 <xsl:if test="normalize-space(/bedework/currentCategory/category/desc/textarea) = ''">433 <xsl:text> </xsl:text>434 <!-- keep this space to avoid browser435 rendering errors when the text area is empty -->436 </xsl:if>437 </textarea>438 </td>439 </tr>440 </table>441 442 <table border="0" id="submitTable">443 <tr>444 <td>445 <input type="submit" name="updateCategory" value="Update Category"/>446 <input type="submit" name="cancelled" value="cancel"/>447 <input type="reset" value="Reset"/>448 </td>449 <td align="right">450 <input type="submit" name="delete" value="Delete Category"/>451 </td>452 </tr>453 </table>454 </form>455 </xsl:otherwise>456 </xsl:choose>457 </xsl:template>458 459 <xsl:template name="deleteCategoryConfirm">460 <h2>Ok to delete this category?</h2>461 462 <table class="common" cellspacing="0">463 <tr>464 <th class="commonHeader" colspan="2">Delete Category</th>465 </tr>466 <tr>467 <td class="fieldname">468 Keyword:469 </td>470 <td>471 <xsl:value-of select="/bedework/currentCategory/category/keyword"/>472 </td>473 </tr>474 <tr>475 <td class="fieldname optional">476 Description:477 </td>478 <td>479 <xsl:value-of select="/bedework/currentCategory/category/desc"/>480 </td>481 </tr>482 </table>483 484 <form action="{$category-delete}" method="post">485 <input type="submit" name="deleteCategory" value="Yes: Delete Category"/>486 <input type="submit" name="cancelled" value="No: Cancel"/>487 </form>488 </xsl:template>489 490 <!--==== MANAGE LOCATIONS ====-->491 <xsl:template name="locationList">492 <h2>493 Manage Locations494 <input type="button" name="return" value="Add new location" onclick="javascript:location.replace('{$location-initAdd}')" class="titleButton"/>495 </h2>496 <table class="common" id="manage" cellspacing="0">497 <tr>498 <th class="commonHeader">Edit/Delete Locations</th>499 </tr>500 <tr>501 <td>502 <xsl:if test="/bedework/locations/location">503 <ul>504 <xsl:for-each select="/bedework/locations/location">505 <xsl:sort select="."/>506 <li>507 <xsl:variable name="uid" select="uid"/>508 <a href="{$location-fetchForUpdate}&uid={$uid}"><xsl:value-of select="address"/></a>509 </li>510 </xsl:for-each>511 </ul>512 </xsl:if>513 </td>514 </tr>515 </table>516 </xsl:template>517 518 <xsl:template name="modLocation">519 <xsl:choose>520 <xsl:when test="/bedework/creating = 'true'">521 <form name="addLocationForm" method="post" action="{$location-update}" id="standardForm">522 <h2>Manage Locations</h2>523 <table class="common" cellspacing="0">524 <tr>525 <th class="commonHeader" colspan="2">Add Location</th>526 </tr>527 <tr>528 <td class="fieldname">529 Main Address:530 </td>531 <td>532 <input size="60" name="locationAddress.value" type="text" id="bwLocMainAddress"/>533 </td>534 </tr>535 <tr>536 <td class="fieldname">537 Subaddress:538 </td>539 <td>540 <input size="60" name="locationSubaddress.value" type="text"/>541 </td>542 </tr>543 <tr>544 <td class="fieldname">545 Location Link:546 </td>547 <td>548 <input size="60" name="location.link" type="text"/>549 </td>550 </tr>551 </table>552 <table border="0" id="submitTable">553 <tr>554 <td>555 <input name="submit" type="submit" value="Submit Location"/>556 <input name="cancelled" type="submit" value="cancel"/>557 </td>558 </tr>559 </table>560 </form>561 </xsl:when>562 <xsl:otherwise>563 <form name="editLocationForm" method="post" action="{$location-update}" id="standardForm">564 <input type="hidden" name="updateLocation" value="true"/>565 <h2>Manage Locations</h2>566 <table class="common" cellspacing="0">567 <tr>568 <th colspan="2" class="commonHeader">569 Edit Location570 </th>571 </tr>572 <tr>573 <td class="fieldname">574 Main Address:575 </td>576 <td align="left">577 <input size="60" name="locationAddress.value" type="text" id="bwLocMainAddress">578 <xsl:attribute name="value"><xsl:value-of select="/bedework/currentLocation/address"/></xsl:attribute>579 </input>580 </td>581 </tr>582 <tr>583 <td class="fieldname">584 Subaddress:585 </td>586 <td align="left">587 <input size="60" name="locationSubaddress.value" type="text">588 <xsl:attribute name="value"><xsl:value-of select="/bedework/currentLocation/subaddress"/></xsl:attribute>589 </input>590 </td>591 </tr>592 <tr>593 <td class="fieldname">594 Location Link:595 </td>596 <td>597 <input size="60" name="location.link" type="text">598 <xsl:attribute name="value"><xsl:value-of select="/bedework/currentLocation/link"/></xsl:attribute>599 </input>600 </td>601 </tr>602 </table>603 <table border="0" id="submitTable">604 <tr>605 <td>606 <input name="submit" type="submit" value="Submit Location"/>607 <input name="cancelled" type="submit" value="cancel"/>608 <input type="reset" value="Reset"/>609 </td>610 <td align="right">611 <!--<xsl:variable name="uid" select="form/uid"/>-->612 <a href="{$location-delete}"><input type="button" name="delete" value="Delete Location"/></a>613 </td>614 </tr>615 </table>616 </form>617 </xsl:otherwise>618 </xsl:choose>619 </xsl:template>620 621 <xsl:template name="deleteLocationConfirm">622 <h2>Ok to delete this location?</h2>623 624 <table class="common" cellspacing="0">625 <tr>626 <th class="commonHeader" colspan="2">Delete Location</th>627 </tr>628 <tr>629 <td class="fieldname">630 Main Address:631 </td>632 <td align="left">633 <xsl:value-of select="/bedework/currentLocation/address"/>634 </td>635 </tr>636 <tr>637 <td class="fieldname">638 Subaddress:639 </td>640 <td align="left">641 <xsl:value-of select="/bedework/currentLocation/subaddress"/>642 </td>643 </tr>644 <tr>645 <td class="fieldname">646 Location Link:647 </td>648 <td>649 <xsl:variable name="link" select="/bedework/currentLocation/link"/>650 <a href="{$link}"><xsl:value-of select="$link"/></a>651 </td>652 </tr>653 </table>654 655 <form action="{$location-delete}" method="post">656 <input type="submit" name="updateCategory" value="Yes: Delete Location"/>657 <input type="submit" name="cancelled" value="No: Cancel"/>658 </form>659 </xsl:template>660 </xsl:stylesheet>661 <?xml version="1.0" encoding="UTF-8"?>662 <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">663 <!--+++++++++++++++ Categories ++++++++++++++++++++-->664 <xsl:template name="categoryList">665 <h2>666 Manage Categories667 <input type="button" name="return" value="Add new category" onclick="javascript:location.replace('{$category-initAdd}')" class="titleButton"/>668 </h2>669 <table class="common" id="manage" cellspacing="0">670 <tr>671 <th class="commonHeader" colspan="2">Edit/Delete Categories</th>672 </tr>673 <xsl:choose>674 <xsl:when test="/bedework/categories/category">675 <xsl:for-each select="/bedework/categories/category">676 <xsl:variable name="categoryKey" select="normalize-space(keyword)"/>677 <tr>678 <td>679 <a href="{$category-fetchForUpdate}&categoryKey={$categoryKey}">680 <xsl:value-of select="keyword"/>681 </a>682 </td>683 <td>684 <xsl:value-of select="desc"/>685 </td>686 </tr>687 </xsl:for-each>688 </xsl:when>689 <xsl:otherwise>690 <tr>691 <td colspan="2">692 No categories defined693 </td>694 </tr>695 </xsl:otherwise>696 </xsl:choose>697 </table>698 </xsl:template>699 700 <xsl:template name="modCategory">701 <xsl:choose>702 <xsl:when test="/bedework/creating='true'">703 <h2>Manage Categories</h2>704 <form action="{$category-update}" method="post">705 <table class="common" cellspacing="0">706 <tr>707 <th class="commonHeader" colspan="2">Add Category</th>708 </tr>709 <tr>710 <td class="fieldname">711 Keyword:712 </td>713 <td>714 <input type="text" name="categoryWord.value" value="" size="40"/>715 </td>716 </tr>717 <tr>718 <td class="fieldname optional">719 Description:720 </td>721 <td>722 <textarea name="categoryDesc.value" rows="3" cols="60">723 <xsl:text> </xsl:text>724 </textarea>725 </td>726 </tr>727 </table>728 <table border="0" id="submitTable">729 <tr>730 <td>731 <input type="submit" name="addCategory" value="Add Category"/>732 <input type="submit" name="cancelled" value="cancel"/>733 <input type="reset" value="Clear"/>734 </td>735 </tr>736 </table>737 </form>738 </xsl:when>739 <xsl:otherwise>740 <h2>Manage Categories</h2>741 <form action="{$category-update}" method="post">742 <table class="common" cellspacing="0">743 <tr>744 <th class="commonHeader" colspan="2">Update Category</th>745 </tr>746 <tr>747 <td class="fieldname">748 Keyword:749 </td>750 <td>751 <xsl:variable name="keyword" select="normalize-space(/bedework/currentCategory/category/keyword)"/>752 <input type="text" name="categoryWord.value" value="{$keyword}" size="40"/>753 </td>754 </tr>755 <tr>756 <td class="fieldname optional">757 Description:758 </td>759 <td>760 <textarea name="categoryDesc.value" rows="3" cols="60">761 <xsl:value-of select="normalize-space(/bedework/currentCategory/category/desc)"/>762 <xsl:if test="normalize-space(/bedework/currentCategory/category/desc/textarea) = ''">763 <xsl:text> </xsl:text>764 <!-- keep this space to avoid browser765 rendering errors when the text area is empty -->766 </xsl:if>767 </textarea>768 </td>769 </tr>770 </table>771 772 <table border="0" id="submitTable">773 <tr>774 <td>775 <input type="submit" name="updateCategory" value="Update Category"/>776 <input type="submit" name="cancelled" value="cancel"/>777 <input type="reset" value="Reset"/>778 </td>779 <td align="right">780 <input type="submit" name="delete" value="Delete Category"/>781 </td>782 </tr>783 </table>784 </form>785 </xsl:otherwise>786 </xsl:choose>787 </xsl:template>788 789 <xsl:template name="deleteCategoryConfirm">790 <h2>Ok to delete this category?</h2>791 792 <table class="common" cellspacing="0">793 <tr>794 <th class="commonHeader" colspan="2">Delete Category</th>795 </tr>796 <tr>797 <td class="fieldname">798 Keyword:799 </td>800 <td>801 <xsl:value-of select="/bedework/currentCategory/category/keyword"/>802 </td>803 </tr>804 <tr>805 <td class="fieldname optional">806 Description:807 </td>808 <td>809 <xsl:value-of select="/bedework/currentCategory/category/desc"/>810 </td>811 </tr>812 </table>813 814 <form action="{$category-delete}" method="post">815 <input type="submit" name="deleteCategory" value="Yes: Delete Category"/>816 <input type="submit" name="cancelled" value="No: Cancel"/>817 </form>818 </xsl:template>819 820 <!--==== MANAGE LOCATIONS ====-->821 <xsl:template name="locationList">822 <h2>823 Manage Locations824 <input type="button" name="return" value="Add new location" onclick="javascript:location.replace('{$location-initAdd}')" class="titleButton"/>825 </h2>826 <table class="common" id="manage" cellspacing="0">827 <tr>828 <th class="commonHeader">Edit/Delete Locations</th>829 </tr>830 <tr>831 <td>832 <xsl:if test="/bedework/locations/location">833 <ul>834 <xsl:for-each select="/bedework/locations/location">835 <xsl:sort select="."/>836 <li>837 <xsl:variable name="uid" select="uid"/>838 <a href="{$location-fetchForUpdate}&uid={$uid}"><xsl:value-of select="address"/></a>839 </li>840 </xsl:for-each>841 </ul>842 </xsl:if>843 </td>844 </tr>845 </table>846 </xsl:template>847 848 <xsl:template name="modLocation">849 <xsl:choose>850 <xsl:when test="/bedework/creating = 'true'">851 <form name="addLocationForm" method="post" action="{$location-update}" id="standardForm">852 <h2>Manage Locations</h2>853 <table class="common" cellspacing="0">854 <tr>855 <th class="commonHeader" colspan="2">Add Location</th>856 </tr>857 <tr>858 <td class="fieldname">859 Main Address:860 </td>861 <td>862 <input size="60" name="locationAddress.value" type="text" id="bwLocMainAddress"/>863 </td>864 </tr>865 <tr>866 <td class="fieldname">867 Subaddress:868 </td>869 <td>870 <input size="60" name="locationSubaddress.value" type="text"/>871 </td>872 </tr>873 <tr>874 <td class="fieldname">875 Location Link:876 </td>877 <td>878 <input size="60" name="location.link" type="text"/>879 </td>880 </tr>881 </table>882 <table border="0" id="submitTable">883 <tr>884 <td>885 <input name="submit" type="submit" value="Submit Location"/>886 <input name="cancelled" type="submit" value="cancel"/>887 </td>888 </tr>889 </table>890 </form>891 </xsl:when>892 <xsl:otherwise>893 <form name="editLocationForm" method="post" action="{$location-update}" id="standardForm">894 <input type="hidden" name="updateLocation" value="true"/>895 <h2>Manage Locations</h2>896 <table class="common" cellspacing="0">897 <tr>898 <th colspan="2" class="commonHeader">899 Edit Location900 </th>901 </tr>902 <tr>903 <td class="fieldname">904 Main Address:905 </td>906 <td align="left">907 <input size="60" name="locationAddress.value" type="text" id="bwLocMainAddress">908 <xsl:attribute name="value"><xsl:value-of select="/bedework/currentLocation/address"/></xsl:attribute>909 </input>910 </td>911 </tr>912 <tr>913 <td class="fieldname">914 Subaddress:915 </td>916 <td align="left">917 <input size="60" name="locationSubaddress.value" type="text">918 <xsl:attribute name="value"><xsl:value-of select="/bedework/currentLocation/subaddress"/></xsl:attribute>919 </input>920 </td>921 </tr>922 <tr>923 <td class="fieldname">924 Location Link:925 </td>926 <td>927 <input size="60" name="location.link" type="text">928 <xsl:attribute name="value"><xsl:value-of select="/bedework/currentLocation/link"/></xsl:attribute>929 </input>930 </td>931 </tr>932 </table>933 <table border="0" id="submitTable">934 <tr>935 <td>936 <input name="submit" type="submit" value="Submit Location"/>937 <input name="cancelled" type="submit" value="cancel"/>938 <input type="reset" value="Reset"/>939 </td>940 <td align="right">941 <!--<xsl:variable name="uid" select="form/uid"/>-->942 <a href="{$location-delete}"><input type="button" name="delete" value="Delete Location"/></a>943 </td>944 </tr>945 </table>946 </form>947 </xsl:otherwise>948 </xsl:choose>949 </xsl:template>950 951 <xsl:template name="deleteLocationConfirm">952 <h2>Ok to delete this location?</h2>953 954 <table class="common" cellspacing="0">955 <tr>956 <th class="commonHeader" colspan="2">Delete Location</th>957 </tr>958 <tr>959 <td class="fieldname">960 Main Address:961 </td>962 <td align="left">963 <xsl:value-of select="/bedework/currentLocation/address"/>964 </td>965 </tr>966 <tr>967 <td class="fieldname">968 Subaddress:969 </td>970 <td align="left">971 <xsl:value-of select="/bedework/currentLocation/subaddress"/>972 </td>973 </tr>974 <tr>975 <td class="fieldname">976 Location Link:977 </td>978 <td>979 <xsl:variable name="link" select="/bedework/currentLocation/link"/>980 <a href="{$link}"><xsl:value-of select="$link"/></a>981 </td>982 </tr>983 </table>984 985 <form action="{$location-delete}" method="post">986 <input type="submit" name="updateCategory" value="Yes: Delete Location"/>987 <input type="submit" name="cancelled" value="No: Cancel"/>988 </form>989 </xsl:template>990 </xsl:stylesheet>991 <?xml version="1.0" encoding="UTF-8"?>992 <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">993 <!--+++++++++++++++ Categories ++++++++++++++++++++-->994 <xsl:template name="categoryList">995 <h2>996 Manage Categories997 <input type="button" name="return" value="Add new category" onclick="javascript:location.replace('{$category-initAdd}')" class="titleButton"/>998 </h2>999 <table class="common" id="manage" cellspacing="0">1000 <tr>1001 <th class="commonHeader" colspan="2">Edit/Delete Categories</th>1002 </tr>1003 <xsl:choose>1004 <xsl:when test="/bedework/categories/category">1005 <xsl:for-each select="/bedework/categories/category">1006 <xsl:variable name="categoryKey" select="normalize-space(keyword)"/>1007 <tr>1008 <td>1009 <a href="{$category-fetchForUpdate}&categoryKey={$categoryKey}">1010 <xsl:value-of select="keyword"/>1011 </a>1012 </td>1013 <td>1014 <xsl:value-of select="desc"/>1015 </td>1016 </tr>1017 </xsl:for-each>1018 </xsl:when>1019 <xsl:otherwise>1020 <tr>1021 <td colspan="2">1022 No categories defined1023 </td>1024 </tr>1025 </xsl:otherwise>1026 </xsl:choose>1027 </table>1028 </xsl:template>1029 1030 <xsl:template name="modCategory">1031 <xsl:choose>1032 <xsl:when test="/bedework/creating='true'">1033 <h2>Manage Categories</h2>1034 <form action="{$category-update}" method="post">1035 <table class="common" cellspacing="0">1036 <tr>1037 <th class="commonHeader" colspan="2">Add Category</th>1038 </tr>1039 <tr>1040 <td class="fieldname">1041 Keyword:1042 </td>1043 <td>1044 <input type="text" name="categoryWord.value" value="" size="40"/>1045 </td>1046 </tr>1047 <tr>1048 <td class="fieldname optional">1049 Description:1050 </td>1051 <td>1052 <textarea name="categoryDesc.value" rows="3" cols="60">1053 <xsl:text> </xsl:text>1054 </textarea>1055 </td>1056 </tr>1057 </table>1058 <table border="0" id="submitTable">1059 <tr>1060 <td>1061 <input type="submit" name="addCategory" value="Add Category"/>1062 <input type="submit" name="cancelled" value="cancel"/>1063 <input type="reset" value="Clear"/>1064 </td>1065 </tr>1066 </table>1067 </form>1068 </xsl:when>1069 <xsl:otherwise>1070 <h2>Manage Categories</h2>1071 <form action="{$category-update}" method="post">1072 <table class="common" cellspacing="0">1073 <tr>1074 <th class="commonHeader" colspan="2">Update Category</th>1075 </tr>1076 <tr>1077 <td class="fieldname">1078 Keyword:1079 </td>1080 <td>1081 <xsl:variable name="keyword" select="normalize-space(/bedework/currentCategory/category/keyword)"/>1082 <input type="text" name="categoryWord.value" value="{$keyword}" size="40"/>1083 </td>1084 </tr>1085 <tr>1086 <td class="fieldname optional">1087 Description:1088 </td>1089 <td>1090 <textarea name="categoryDesc.value" rows="3" cols="60">1091 <xsl:value-of select="normalize-space(/bedework/currentCategory/category/desc)"/>1092 <xsl:if test="normalize-space(/bedework/currentCategory/category/desc/textarea) = ''">1093 <xsl:text> </xsl:text>1094 <!-- keep this space to avoid browser1095 rendering errors when the text area is empty -->1096 </xsl:if>1097 </textarea>1098 </td>1099 </tr>1100 </table>1101 1102 <table border="0" id="submitTable">1103 <tr>1104 <td>1105 <input type="submit" name="updateCategory" value="Update Category"/>1106 <input type="submit" name="cancelled" value="cancel"/>1107 <input type="reset" value="Reset"/>1108 </td>1109 <td align="right">1110 <input type="submit" name="delete" value="Delete Category"/>1111 </td>1112 </tr>1113 </table>1114 </form>1115 </xsl:otherwise>1116 </xsl:choose>1117 </xsl:template>1118 1119 <xsl:template name="deleteCategoryConfirm">1120 <h2>Ok to delete this category?</h2>1121 1122 <table class="common" cellspacing="0">1123 <tr>1124 <th class="commonHeader" colspan="2">Delete Category</th>1125 </tr>1126 <tr>1127 <td class="fieldname">1128 Keyword:1129 </td>1130 <td>1131 <xsl:value-of select="/bedework/currentCategory/category/keyword"/>1132 </td>1133 </tr>1134 <tr>1135 <td class="fieldname optional">1136 Description:1137 </td>1138 <td>1139 <xsl:value-of select="/bedework/currentCategory/category/desc"/>1140 </td>1141 </tr>1142 </table>1143 1144 <form action="{$category-delete}" method="post">1145 <input type="submit" name="deleteCategory" value="Yes: Delete Category"/>1146 <input type="submit" name="cancelled" value="No: Cancel"/>1147 </form>1148 </xsl:template>1149 1150 <!--==== MANAGE LOCATIONS ====-->1151 <xsl:template name="locationList">1152 <h2>1153 Manage Locations1154 <input type="button" name="return" value="Add new location" onclick="javascript:location.replace('{$location-initAdd}')" class="titleButton"/>1155 </h2>1156 <table class="common" id="manage" cellspacing="0">1157 <tr>1158 <th class="commonHeader">Edit/Delete Locations</th>1159 </tr>1160 <tr>1161 <td>1162 <xsl:if test="/bedework/locations/location">1163 <ul>1164 <xsl:for-each select="/bedework/locations/location">1165 <xsl:sort select="."/>1166 <li>1167 <xsl:variable name="uid" select="uid"/>1168 <a href="{$location-fetchForUpdate}&uid={$uid}"><xsl:value-of select="address"/></a>1169 </li>1170 </xsl:for-each>1171 </ul>1172 </xsl:if>1173 </td>1174 </tr>1175 </table>1176 </xsl:template>1177 1178 <xsl:template name="modLocation">1179 <xsl:choose>1180 <xsl:when test="/bedework/creating = 'true'">1181 <form name="addLocationForm" method="post" action="{$location-update}" id="standardForm">1182 <h2>Manage Locations</h2>1183 <table class="common" cellspacing="0">1184 <tr>1185 <th class="commonHeader" colspan="2">Add Location</th>1186 </tr>1187 <tr>1188 <td class="fieldname">1189 Main Address:1190 </td>1191 <td>1192 <input size="60" name="locationAddress.value" type="text" id="bwLocMainAddress"/>1193 </td>1194 </tr>1195 <tr>1196 <td class="fieldname">1197 Subaddress:1198 </td>1199 <td>1200 <input size="60" name="locationSubaddress.value" type="text"/>1201 </td>1202 </tr>1203 <tr>1204 <td class="fieldname">1205 Location Link:1206 </td>1207 <td>1208 <input size="60" name="location.link" type="text"/>1209 </td>1210 </tr>1211 </table>1212 <table border="0" id="submitTable">1213 <tr>1214 <td>1215 <input name="submit" type="submit" value="Submit Location"/>1216 <input name="cancelled" type="submit" value="cancel"/>1217 </td>1218 </tr>1219 </table>1220 </form>1221 </xsl:when>1222 <xsl:otherwise>1223 <form name="editLocationForm" method="post" action="{$location-update}" id="standardForm">1224 <input type="hidden" name="updateLocation" value="true"/>1225 <h2>Manage Locations</h2>1226 <table class="common" cellspacing="0">1227 <tr>1228 <th colspan="2" class="commonHeader">1229 Edit Location1230 </th>1231 </tr>1232 <tr>1233 <td class="fieldname">1234 Main Address:1235 </td>1236 <td align="left">1237 <input size="60" name="locationAddress.value" type="text" id="bwLocMainAddress">1238 <xsl:attribute name="value"><xsl:value-of select="/bedework/currentLocation/address"/></xsl:attribute>1239 </input>1240 </td>1241 </tr>1242 <tr>1243 <td class="fieldname">1244 Subaddress:1245 </td>1246 <td align="left">1247 <input size="60" name="locationSubaddress.value" type="text">1248 <xsl:attribute name="value"><xsl:value-of select="/bedework/currentLocation/subaddress"/></xsl:attribute>1249 </input>1250 </td>1251 </tr>1252 <tr>1253 <td class="fieldname">1254 Location Link:1255 </td>1256 <td>1257 <input size="60" name="location.link" type="text">1258 <xsl:attribute name="value"><xsl:value-of select="/bedework/currentLocation/link"/></xsl:attribute>1259 </input>1260 </td>1261 </tr>1262 </table>1263 <table border="0" id="submitTable">1264 <tr>1265 <td>1266 <input name="submit" type="submit" value="Submit Location"/>1267 <input name="cancelled" type="submit" value="cancel"/>1268 <input type="reset" value="Reset"/>1269 </td>1270 <td align="right">1271 <!--<xsl:variable name="uid" select="form/uid"/>-->1272 <a href="{$location-delete}"><input type="button" name="delete" value="Delete Location"/></a>1273 </td>1274 </tr>1275 </table>1276 </form>1277 </xsl:otherwise>1278 </xsl:choose>1279 </xsl:template>1280 1281 <xsl:template name="deleteLocationConfirm">1282 <h2>Ok to delete this location?</h2>1283 1284 <table class="common" cellspacing="0">1285 <tr>1286 <th class="commonHeader" colspan="2">Delete Location</th>1287 </tr>1288 <tr>1289 <td class="fieldname">1290 Main Address:1291 </td>1292 <td align="left">1293 <xsl:value-of select="/bedework/currentLocation/address"/>1294 </td>1295 </tr>1296 <tr>1297 <td class="fieldname">1298 Subaddress:1299 </td>1300 <td align="left">1301 <xsl:value-of select="/bedework/currentLocation/subaddress"/>1302 </td>1303 </tr>1304 <tr>1305 <td class="fieldname">1306 Location Link:1307 </td>1308 <td>1309 <xsl:variable name="link" select="/bedework/currentLocation/link"/>1310 <a href="{$link}"><xsl:value-of select="$link"/></a>1311 </td>1312 </tr>1313 </table>1314 1315 <form action="{$location-delete}" method="post">1316 <input type="submit" name="updateCategory" value="Yes: Delete Location"/>1317 <input type="submit" name="cancelled" value="No: Cancel"/>1318 </form>1319 </xsl:template>1320 </xsl:stylesheet>branches/xslt-rewrite/deployment/resources/xsl/default/default/clock.xsl
r1624 r1705 17 17 <div id="bwClockBox"> 18 18 <h2> 19 Bedework 24-Hour Clock19 <xsl:value-of select="$clock.clock" /> 20 20 </h2> 21 21 <div id="bwClockDateTypeIndicator"> 22 type22 <xsl:value-of select="$clock.clock.type" /> 23 23 </div> 24 24 <div id="bwClockTime"> 25 select time25 <xsl:value-of select="$clock.clock.select.time" /> 26 26 </div> 27 27 <div id="bwClockSwitch"> 28 switch28 <xsl:value-of select="$clock.clock.switch" /> 29 29 </div> 30 30 <div id="bwClockCloseText"> 31 close31 <xsl:value-of select="$clock.clock.close" /> 32 32 </div> 33 33 <div id="bwClockCloseButton"> … … 78 78 79 79 </xsl:stylesheet> 80 <?xml version="1.0" encoding="UTF-8"?>81 <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">82 83 <xsl:template name="clock">84 <div id="bwClock">85 <!-- Bedework 24-Hour Clock time selection widget86 used with resources/bwClock.js and resources/bwClock.css -->87 <xsl:variable name="hour24" select="/bedework/hour24"/><!-- true or false -->88 <div id="bwClockClock">89 <img id="clockMap" src="{$resourcesRoot}/resources/clockMap.gif" width="368" height="368" border="0" alt="bwClock" usemap="#bwClockMap" />90 </div>91 <div id="bwClockCover">92  93 <!-- this is a special effect div used simply to cover the pixelated edge94 where the clock meets the clock box title -->95 </div>96 <div id="bwClockBox">97 <h2>98 Bedework 24-Hour Clock99 </h2>100 <div id="bwClockDateTypeIndicator">101 type102 </div>103 <div id="bwClockTime">104 select time105 </div>106 <div id="bwClockSwitch">107 switch108 </div>109 <div id="bwClockCloseText">110 close111 </div>112 <div id="bwClockCloseButton">113 <a href="javascript:bwClockClose();">X</a>114 </div>115 </div>116 <map name="bwClockMap" id="bwClockMap">117 <area shape="rect" alt="close clock" title="close clock" coords="160,167, 200,200" href="javascript:bwClockClose()"/>118 <area shape="poly" alt="minute 00:55" title="minute 00:55" coords="156,164, 169,155, 156,107, 123,128" href="javascript:bwClockUpdateDateTimeForm('minute','55')" />119 <area shape="poly" alt="minute 00:50" title="minute 00:50" coords="150,175, 156,164, 123,128, 103,161" href="javascript:bwClockUpdateDateTimeForm('minute','50')" />120 <area shape="poly" alt="minute 00:45" title="minute 00:45" coords="150,191, 150,175, 103,161, 103,206" href="javascript:bwClockUpdateDateTimeForm('minute','45')" />121 <area shape="poly" alt="minute 00:40" title="minute 00:40" coords="158,208, 150,191, 105,206, 123,237" href="javascript:bwClockUpdateDateTimeForm('minute','40')" />122 <area shape="poly" alt="minute 00:35" title="minute 00:35" coords="171,218, 158,208, 123,238, 158,261" href="javascript:bwClockUpdateDateTimeForm('minute','35')" />123 <area shape="poly" alt="minute 00:30" title="minute 00:30" coords="193,218, 172,218, 158,263, 209,263" href="javascript:bwClockUpdateDateTimeForm('minute','30')" />124 <area shape="poly" alt="minute 00:25" title="minute 00:25" coords="209,210, 193,218, 209,261, 241,240" href="javascript:bwClockUpdateDateTimeForm('minute','25')" />125 <area shape="poly" alt="minute 00:20" title="minute 00:20" coords="216,196, 209,210, 241,240, 261,206" href="javascript:bwClockUpdateDateTimeForm('minute','20')" />126 <area shape="poly" alt="minute 00:15" title="minute 00:15" coords="216,178, 216,196, 261,206, 261,159" href="javascript:bwClockUpdateDateTimeForm('minute','15')" />127 <area shape="poly" alt="minute 00:10" title="minute 00:10" coords="209,164, 216,178, 261,159, 240,126" href="javascript:bwClockUpdateDateTimeForm('minute','10')" />128 <area shape="poly" alt="minute 00:05" title="minute 00:05" coords="196,155, 209,164, 238,126, 206,107" href="javascript:bwClockUpdateDateTimeForm('minute','5')" />129 <area shape="poly" alt="minute 00:00" title="minute 00:00" coords="169,155, 196,155, 206,105, 156,105" href="javascript:bwClockUpdateDateTimeForm('minute','0')" />130 <area shape="poly" alt="11 PM, 2300 hour" title="11 PM, 2300 hour" coords="150,102, 172,96, 158,1, 114,14" href="javascript:bwClockUpdateDateTimeForm('hour','23',{$hour24})" />131 <area shape="poly" alt="10 PM, 2200 hour" title="10 PM, 2200 hour" coords="131,114, 150,102, 114,14, 74,36" href="javascript:bwClockUpdateDateTimeForm('hour','22',{$hour24})" />132 <area shape="poly" alt="9 PM, 2100 hour" title="9 PM, 2100 hour" coords="111,132, 131,114, 74,36, 40,69" href="javascript:bwClockUpdateDateTimeForm('hour','21',{$hour24})" />133 <area shape="poly" alt="8 PM, 2000 hour" title="8 PM, 2000 hour" coords="101,149, 111,132, 40,69, 15,113" href="javascript:bwClockUpdateDateTimeForm('hour','20',{$hour24})" />134 <area shape="poly" alt="7 PM, 1900 hour" title="7 PM, 1900 hour" coords="95,170, 101,149, 15,113, 1,159" href="javascript:bwClockUpdateDateTimeForm('hour','19',{$hour24})" />135 <area shape="poly" alt="6 PM, 1800 hour" title="6 PM, 1800 hour" coords="95,196, 95,170, 0,159, 0,204" href="javascript:bwClockUpdateDateTimeForm('hour','18',{$hour24})" />136 <area shape="poly" alt="5 PM, 1700 hour" title="5 PM, 1700 hour" coords="103,225, 95,196, 1,205, 16,256" href="javascript:bwClockUpdateDateTimeForm('hour','17',{$hour24})" />137 <area shape="poly" alt="4 PM, 1600 hour" title="4 PM, 1600 hour" coords="116,245, 103,225, 16,256, 41,298" href="javascript:bwClockUpdateDateTimeForm('hour','16',{$hour24})" />138 <area shape="poly" alt="3 PM, 1500 hour" title="3 PM, 1500 hour" coords="134,259, 117,245, 41,298, 76,332" href="javascript:bwClockUpdateDateTimeForm('hour','15',{$hour24})" />139 <area shape="poly" alt="2 PM, 1400 hour" title="2 PM, 1400 hour" coords="150,268, 134,259, 76,333, 121,355" href="javascript:bwClockUpdateDateTimeForm('hour','14',{$hour24})" />140 <area shape="poly" alt="1 PM, 1300 hour" title="1 PM, 1300 hour" coords="169,273, 150,268, 120,356, 165,365" href="javascript:bwClockUpdateDateTimeForm('hour','13',{$hour24})" />141 <area shape="poly" alt="Noon, 1200 hour" title="Noon, 1200 hour" coords="193,273, 169,273, 165,365, 210,364" href="javascript:bwClockUpdateDateTimeForm('hour','12',{$hour24})" />142 <area shape="poly" alt="11 AM, 1100 hour" title="11 AM, 1100 hour" coords="214,270, 193,273, 210,363, 252,352" href="javascript:bwClockUpdateDateTimeForm('hour','11',{$hour24})" />143 <area shape="poly" alt="10 AM, 1000 hour" title="10 AM, 1000 hour" coords="232,259, 214,270, 252,352, 291,330" href="javascript:bwClockUpdateDateTimeForm('hour','10',{$hour24})" />144 <area shape="poly" alt="9 AM, 0900 hour" title="9 AM, 0900 hour" coords="251,240, 232,258, 291,330, 323,301" href="javascript:bwClockUpdateDateTimeForm('hour','9',{$hour24})" />145 <area shape="poly" alt="8 AM, 0800 hour" title="8 AM, 0800 hour" coords="263,219, 251,239, 323,301, 349,261" href="javascript:bwClockUpdateDateTimeForm('hour','8',{$hour24})" />146 <area shape="poly" alt="7 AM, 0700 hour" title="7 AM, 0700 hour" coords="269,194, 263,219, 349,261, 363,212" href="javascript:bwClockUpdateDateTimeForm('hour','7',{$hour24})" />147 <area shape="poly" alt="6 AM, 0600 hour" title="6 AM, 0600 hour" coords="269,172, 269,193, 363,212, 363,155" href="javascript:bwClockUpdateDateTimeForm('hour','6',{$hour24})" />148 <area shape="poly" alt="5 AM, 0500 hour" title="5 AM, 0500 hour" coords="263,150, 269,172, 363,155, 351,109" href="javascript:bwClockUpdateDateTimeForm('hour','5',{$hour24})" />149 <area shape="poly" alt="4 AM, 0400 hour" title="4 AM, 0400 hour" coords="251,130, 263,150, 351,109, 325,68" href="javascript:bwClockUpdateDateTimeForm('hour','4',{$hour24})" />150 <area shape="poly" alt="3 AM, 0300 hour" title="3 AM, 0300 hour" coords="234,112, 251,130, 325,67, 295,37" href="javascript:bwClockUpdateDateTimeForm('hour','3',{$hour24})" />151 <area shape="poly" alt="2 AM, 0200 hour" title="2 AM, 0200 hour" coords="221,102, 234,112, 295,37, 247,11" href="javascript:bwClockUpdateDateTimeForm('hour','2',{$hour24})" />152 <area shape="poly" alt="1 AM, 0100 hour" title="1 AM, 0100 hour" coords="196,96, 221,102, 247,10, 209,-1, 201,61, 206,64, 205,74, 199,75" href="javascript:bwClockUpdateDateTimeForm('hour','1',{$hour24})" />153 <area shape="poly" alt="Midnight, 0000 hour" title="Midnight, 0000 hour" coords="172,96, 169,74, 161,73, 161,65, 168,63, 158,-1, 209,-1, 201,61, 200,62, 206,64, 205,74, 198,75, 196,96, 183,95" href="javascript:bwClockUpdateDateTimeForm('hour','0',{$hour24})" />154 </map>155 </div>156 </xsl:template>157 158 </xsl:stylesheet>branches/xslt-rewrite/deployment/resources/xsl/default/default/errors.xsl
r1597 r1705 1 1 <?xml version="1.0" encoding="UTF-8"?> 2 <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">2 <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> 3 3 <!-- Apart from the exception - trapped first, these are in alphabetic order of 4 4 error code. --> 5 5 <xsl:template match="error"> 6 6 <xsl:choose> 7 <xsl:when test="id='org.bedework.client.error.exc'"> <!-- trap exceptions first -->8 An exception occurred: <em><xsl:value-of select="param"/></em>7 <xsl:when test="id='org.bedework.client.error.exc'"> 8 <xsl:value-of select="$errors.org.bedework.client.error.exc" /> <em><xsl:value-of select="param" /></em> 9 9 </xsl:when> 10 10 <xsl:when test="id='edu.rpi.sss.util.error.exc'"> 11 An exception occurred: <em><xsl:value-of select="param"/></em>11 <xsl:value-of select="$errors.edu.rpi.sss.util.error.exc" /> <em><xsl:value-of select="param" /></em> 12 12 </xsl:when> 13 13 … … 17 17 18 18 <xsl:when test="id='org.bedework.client.error.admingroupassignedcs'"> 19 Error: admin group is assigned to: <em><xsl:value-of select="param"/></em>19 <xsl:value-of select="$errors.org.bedework.client.error.admingroupassignedcs" /> <em><xsl:value-of select="param" /></em> 20 20 </xsl:when> 21 21 <xsl:when test="id='org.bedework.client.error.alreadymember'"> 22 Error: already a member: <em><xsl:value-of select="param"/></em>22 <xsl:value-of select="$errors.org.bedework.client.error.alreadymember" /> <em><xsl:value-of select="param" /></em> 23 23 </xsl:when> 24 24 <xsl:when test="id='org.bedework.client.error.badfilter'"> 25 Error: invalid filter definition: <em><xsl:value-of select="param"/></em>25 <xsl:value-of select="$errors.org.bedework.client.error.badfilter" /> <em><xsl:value-of select="param" /></em> 26 26 </xsl:when> 27 27 <xsl:when test="id='org.bedework.client.error.badinterval'"> 28 Error: bad interval.28 <xsl:value-of select="$errors.org.bedework.client.error.badinterval" /> 29 29 </xsl:when> 30 30 <xsl:when test="id='org.bedework.client.error.badintervalunit'"> 31 Error: bad interval unit.31 <xsl:value-of select="$errors.org.bedework.client.error.badintervalunit" /> 32 32 </xsl:when> 33 33 <xsl:when test="id='org.bedework.client.error.badrequest'"> 34 Error: Bad request.34 <xsl:value-of select="$errors.org.bedework.client.error.badrequest" /> 35 35 </xsl:when> 36 36 <xsl:when test="id='org.bedework.client.error.badschedulewhat'"> 37 Error: Bad scheduling what parameter.37 <xsl:value-of select="$errors.org.bedework.client.error.badschedulewhat" /> 38 38 </xsl:when> 39 39 <xsl:when test="id='org.bedework.error.scheduling.baddestinationcalendar'"> 40 Error: You must set a destination calendar40 <xsl:value-of select="$errors.org.bedework.error.scheduling.baddestinationcalendar" /> 41 41 </xsl:when> 42 42 <xsl:when test="id='org.bedework.client.error.calsuitenotadded'"> 43 Error: calendar suite not added.43 <xsl:value-of select="$errors.org.bedework.client.error.calsuitenotadded" /> 44 44 </xsl:when> 45 45 <xsl:when test="id='org.bedework.client.error.cannotchangecalmode'"> 46 Forbidden: you are not allowed to change the mode of the non-empty 47 collection <em><xsl:value-of select="param"/></em>. 46 <xsl:value-of select="$errors.org.bedework.client.error.cannotchangecalmode" /> <em><xsl:value-of select="param" /></em>. 48 47 </xsl:when> 49 48 <xsl:when test="id='org.bedework.client.error.choosegroupsuppressed'"> 50 Error: choose group is suppressed. You cannot perform that action at this time.49 <xsl:value-of select="$errors.org.bedework.client.error.choosegroupsuppressed" /> 51 50 </xsl:when> 52 51 <xsl:when test="id='org.bedework.client.error.duplicatecontact'"> 53 Cannot add: the contact already exists.52 <xsl:value-of select="$errors.org.bedework.client.error.duplicatecontact" /> 54 53 </xsl:when> 55 54 <xsl:when test="id='org.bedework.client.error.duplicategroup'"> 56 Error: duplicate group. <em><xsl:value-of select="param"/></em> already exists.55 <xsl:value-of select="$errors.org.bedework.client.error.duplicategroup" /> <em><xsl:value-of select="param" /></em> already exists. 57 56 </xsl:when> 58 57 <xsl:when test="id='org.bedework.client.error.duplicatelocation'"> 59 Cannot add: the location already exists.58 <xsl:value-of select="$errors.org.bedework.client.error.duplicatelocation" /> 60 59 </xsl:when> 61 60 <xsl:when test="id='org.bedework.client.error.duplicateuid'"> 62 Duplicate uid: this event already exists in this calendar.61 <xsl:value-of select="$errors.org.bedework.client.error.duplicateuid" /> 63 62 </xsl:when> 64 63 <xsl:when test="id='org.bedework.client.error.failed.overrides'"> 65 Error: there were <xsl:value-of select="param"/>failed overrides.64 <xsl:value-of select="$errors.org.bedework.client.error.failed.overrides" /> <xsl:value-of select="param" /> failed overrides. 66 65 </xsl:when> 67 66 <xsl:when test="id='org.bedework.client.error.mail.norecipient'"> 68 Error: the email has no recipient.67 <xsl:value-of select="$errors.org.bedework.client.error.mail.norecipient" /> 69 68 </xsl:when> 70 69 <xsl:when test="id='org.bedework.client.error.missingcalendarpath'"> 71 Error: missing calendar path.70 <xsl:value-of select="$errors.org.bedework.client.error.missingcalendarpath" /> 72 71 </xsl:when> 73 72 <xsl:when test="id='org.bedework.client.error.missingeventkeyfields'"> 74 Error: missing event key fields73 <xsl:value-of select="$errors.org.bedework.client.error.missingeventkeyfields" /> 75 74 </xsl:when> 76 75 <xsl:when test="id='org.bedework.client.error.missingfilename'"> 77 You must supply a file name (required).76 <xsl:value-of select="$errors.org.bedework.client.error.missingfilename" /> 78 77 </xsl:when> 79 78 <xsl:when test="id='org.bedework.client.error.missingrequestpar'"> 80 Missing request parameter: <em><xsl:value-of select="param"/></em>.79 <xsl:value-of select="$errors.org.bedework.client.error.missingrequestpar" /> <em><xsl:value-of select="param" /></em>. 81 80 </xsl:when> 82 81 <xsl:when test="id='org.bedework.client.error.missingschedulewhat'"> 83 Error: Missing scheduling what parameter.82 <xsl:value-of select="$errors.org.bedework.client.error.missingschedulewhat" /> 84 83 </xsl:when> 85 84 <xsl:when test="id='org.bedework.client.error.multipleevents'"> 86 System Error: Multiple events when one expected.85 <xsl:value-of select="$errors.org.bedework.client.error.multipleevents" /> 87 86 </xsl:when> 88 87 <xsl:when test="id='org.bedework.client.error.noaccess'"> 89 Error: no access.88 <xsl:value-of select="$errors.org.bedework.client.error.noaccess" /> 90 89 </xsl:when> 91 90 <xsl:when test="id='org.bedework.client.error.nodefaultview'"> 92 No default view defined91 <xsl:value-of select="$errors.org.bedework.client.error.nodefaultview" /> 93 92 </xsl:when> 94 93 <xsl:when test="id='org.bedework.client.error.norecurrenceinstances'"> 95 There are no instances for this recurring event.94 <xsl:value-of select="$errors.org.bedework.client.error.norecurrenceinstances" /> 96 95 </xsl:when> 97 96 <xsl:when test="id='org.bedework.client.error.noschedulingaccess'"> 98 You cannot schedule events with user <em><xsl:value-of select="param"/></em>.97 <xsl:value-of select="$errors.org.bedework.client.error.noschedulingaccess" /> <em><xsl:value-of select="param" /></em>. 99 98 </xsl:when> 100 99 <xsl:when test="id='org.bedework.client.error.ongrouppath'"> 101 Error: group may not be added to itself.100 <xsl:value-of select="$errors.org.bedework.client.error.ongrouppath" /> 102 101 </xsl:when> 103 102 <xsl:when test="id='org.bedework.client.error.onlyfrominbox'"> 104 You can only respond from your inbox.103 <xsl:value-of select="$errors.org.bedework.client.error.onlyfrominbox" /> 105 104 </xsl:when> 106 105 <xsl:when test="id='org.bedework.client.error.onlytoinbox'"> 107 You can only reply to an inbox.106 <xsl:value-of select="$errors.org.bedework.client.error.onlytoinbox" /> 108 107 </xsl:when> 109 108 <xsl:when test="id='org.bedework.client.error.referenced.calendar'"> 110 Cannot delete: the calendar is not empty.109 <xsl:value-of select="$errors.org.bedework.client.error.referenced.calendar" /> 111 110 </xsl:when> 112 111 <xsl:when test="id='org.bedework.client.error.referenced.category'"> 113 Cannot delete: the category is referenced by events.112 <xsl:value-of select="$errors.org.bedework.client.error.referenced.category" /> 114 113 </xsl:when> 115 114 <xsl:when test="id='org.bedework.client.error.referenced.contact'"> 116 Cannot delete: the contact is referenced by events.115 <xsl:value-of select="$errors.org.bedework.client.error.referenced.contact" /> 117 116 </xsl:when> 118 117 <xsl:when test="id='org.bedework.client.error.referenced.location'"> 119 Cannot delete: the location is referenced by events.118 <xsl:value-of select="$errors.org.bedework.client.error.referenced.location" /> 120 119 </xsl:when> 121 120 <xsl:when test="id='org.bedework.client.error.referenced.subscription'"> 122 Cannot delete: the subscription is included in view <em><xsl:value-of select="param"/></em>.<br/>121 <xsl:value-of select="$errors.org.bedework.client.error.referenced.subscription" /> <em><xsl:value-of select="param" /></em>.<br /> 123 122 You must remove the subscription from this view before deleting. 124 123 </xsl:when> 125 124 <xsl:when test="id='org.bedework.error.timezones.readerror'"> 126 Timzone error: could not read file.125 <xsl:value-of select="$errors.org.bedework.error.timezones.readerror" /> 127 126 </xsl:when> 128 127 129 128 <!-- things we cannot find --> 130 129 <xsl:when test="id='org.bedework.client.error.unknown.attendee'"> 131 Unknown attendee <em><xsl:value-of select="param"/></em>130 <xsl:value-of select="$errors.org.bedework.client.error.unknown.attendee" /> <em><xsl:value-of select="param" /></em> 132 131 </xsl:when> 133 132 <xsl:when test="id='org.bedework.client.error.unknown.calendar'"> 134 Not found: there is no calendar with the path <em><xsl:value-of select="param"/></em>.133 <xsl:value-of select="$errors.org.bedework.client.error.unknown.calendar" /> <em><xsl:value-of select="param" /></em>. 135 134 </xsl:when> 136 135 <xsl:when test="id='org.bedework.client.error.unknown.calendarsuite'"> 137 There is no calendar suite with the name <em><xsl:value-of select="param"/></em>.136 <xsl:value-of select="$errors.org.bedework.client.error.unknown.calendarsuite" /> <em><xsl:value-of select="param" /></em>. 138 137 </xsl:when> 139 138 <xsl:when test="id='org.bedework.client.error.unknown.calendartype'"> 140 System error: there is no calendar with the type <em><xsl:value-of select="param"/></em>.139 <xsl:value-of select="$errors.org.bedework.client.error.unknown.calendartype" /> <em><xsl:value-of select="param" /></em>. 141 140 </xsl:when> 142 141 <xsl:when test="id='org.bedework.client.error.unknown.category'"> 143 Not found: there is no category with the keyword <em><xsl:value-of select="param"/></em>.142 <xsl:value-of select="$errors.org.bedework.client.error.unknown.category" /> <em><xsl:value-of select="param" /></em>. 144 143 </xsl:when> 145 144 <xsl:when test="id='org.bedework.client.error.unknown.contact'"> 146 Not found: there is no contact <em><xsl:value-of select="param"/></em>.145 <xsl:value-of select="$errors.org.bedework.client.error.unknown.contact" /> <em><xsl:value-of select="param" /></em>. 147 146 </xsl:when> 148 147 <xsl:when test="id='org.bedework.client.error.unknown.event'"> 149 Event <xsl:value-of select="param"/> does not exist.148 <xsl:value-of select="$errors.org.bedework.client.error.unknown.event" /> <xsl:value-of select="param" /> does not exist. 150 149 </xsl:when> 151 150 <xsl:when test="id='org.bedework.client.error.unknown.filter'"> 152 Error: unknown filter: <em><xsl:value-of select="param"/></em>.151 <xsl:value-of select="$errors.org.bedework.client.error.unknown.filter" /> <em><xsl:value-of select="param" /></em>. 153 152 </xsl:when> 154 153 <xsl:when test="id='org.bedework.client.error.unknown.group'"> 155 Error: unknown group: <em><xsl:value-of select="param"/></em>.154 <xsl:value-of select="$errors.org.bedework.client.error.unknown.group" /> <em><xsl:value-of select="param" /></em>. 156 155 </xsl:when> 157 156 <xsl:when test="id='org.bedework.client.error.unknown.location'"> 158 Not found: there is no location identified by the id <em><xsl:value-of select="param"/></em>.157 <xsl:value-of select="$errors.org.bedework.client.error.unknown.location" /> <em><xsl:value-of select="param" /></em>. 159 158 </xsl:when> 160 159 <xsl:when test="id='org.bedework.client.error.unknown.subscription'"> 161 Not found: there is no user identified by the name <em><xsl:value-of select="param"/></em>.160 <xsl:value-of select="$errors.org.bedework.client.error.unknown.subscription" /> <em><xsl:value-of select="param" /></em>. 162 161 </xsl:when> 163 162 <xsl:when test="id='org.bedework.client.error.unknown.user'"> 164 Not found: the user <em><xsl:value-of select="param"/></em> was not found.163 <xsl:value-of select="$errors.org.bedework.client.error.unknown.user" /> <em><xsl:value-of select="param" /></em> was not found. 165 164 </xsl:when> 166 165 <xsl:when test="id='org.bedework.client.error.unknown.userid'"> 167 Not found: there is no user identified by the id <em><xsl:value-of select="param"/></em>.166 <xsl:value-of select="$errors.org.bedework.client.error.unknown.userid" /> <em><xsl:value-of select="param" /></em>. 168 167 </xsl:when> 169 168 <xsl:when test="id='org.bedework.client.error.unknown.view'"> 170 Not found: there is no view identified by the name <em><xsl:value-of select="param"/></em>.169 <xsl:value-of select="$errors.org.bedework.client.error.unknown.view" /> <em><xsl:value-of select="param" /></em>. 171 170 </xsl:when> 172 171 173 172 <xsl:when test="id='org.bedework.client.error.viewnotadded'"> 174 Error: the view was not added.173 <xsl:value-of select="$errors.org.bedework.client.error.viewnotadded" /> 175 174 </xsl:when> 176 175 177 176 <!-- icalendar translation errors --> 178 177 <xsl:when test="id='org.bedework.exception.ical.noguid'"> 179 An event must have a UID property.178 <xsl:value-of select="$errors.org.bedework.exception.ical.noguid" /> 180 179 </xsl:when> 181 180 … … 184 183 185 184 <xsl:when test="id='org.bedework.validation.error.expectoneattendee'"> 186 You must supply exactly one attendee.185 <xsl:value-of select="$errors.org.bedework.validation.error.expectoneattendee" /> 187 186 </xsl:when> 188 187 <xsl:when test="id='org.bedework.validation.error.invalid.how'"> 189 Error: bad ACL request (bad how setting).188 <xsl:value-of select="$errors.org.bedework.validation.error.invalid.how" /> 190 189 </xsl:when> 191 190 <xsl:when test="id='org.bedework.validation.error.invalid.whotype'"> 192 Error: bad who type (user or group).191 <xsl:value-of select="$errors.org.bedework.validation.error.invalid.whotype" /> 193 192 </xsl:when> 194 193 <xsl:when test="id='org.bedework.validation.error.invalid.attendee'"> 195 The attendee uri is invalid194 <xsl:value-of select="$errors.org.bedework.validation.error.invalid.attendee" /> 196 195 </xsl:when> 197 196 <xsl:when test="id='org.bedework.validation.error.invalid.date'"> 198 Bad or out-of-range date.197 <xsl:value-of select="$errors.org.bedework.validation.error.invalid.date" /> 199 198 </xsl:when> 200 199 <xsl:when test="id='org.bedework.validation.error.invalid.duration'"> 201 <em>Invalid duration</em> - you may not have a zero-length duration 202 for an all day event. 200 <xsl:value-of select="$errors.org.bedework.validation.error.invalid.duration" /> 203 201 </xsl:when> 204 202 <xsl:when test="id='org.bedework.validation.error.invalid.endtype'"> 205 The endtype <em><xsl:value-of select="param"/></em> is invalid.203 <xsl:value-of select="$errors.org.bedework.validation.error.invalid.endtype" /> <em><xsl:value-of select="param" /></em> is invalid. 206 204 </xsl:when> 207 205 <xsl:when test="id='org.bedework.validation.error.invalid.organizer'"> 208 The organizer uri is invalid206 <xsl:value-of select="$errors.org.bedework.validation.error.invalid.organizer" /> 209 207 </xsl:when> 210 208 <xsl:when test="id='org.bedework.validation.error.invalid.prefendtype'"> 211 The preferred endtype <em><xsl:value-of select="param"/></em> is invalid.209 <xsl:value-of select="$errors.org.bedework.validation.error.invalid.prefendtype" /> <em><xsl:value-of select="param" /></em> is invalid. 212 210 </xsl:when> 213 211 <xsl:when test="id='org.bedework.validation.error.invalid.prefusermode'"> 214 The preferred user mode <em><xsl:value-of select="param"/></em> is invalid.212 <xsl:value-of select="$errors.org.bedework.validation.error.invalid.prefusermode" /> <em><xsl:value-of select="param" /></em> is invalid. 215 213 </xsl:when> 216 214 <xsl:when test="id='org.bedework.validation.error.invalid.prefworkdayend'"> 217 Error: invalid working days end: <em><xsl:value-of select="param"/></em>215 <xsl:value-of select="$errors.org.bedework.validation.error.invalid.prefworkdayend" /> <em><xsl:value-of select="param" /></em> 218 216 </xsl:when> 219 217 <xsl:when test="id='org.bedework.validation.error.invalid.prefworkdays'"> 220 Error: invalid working days: start after end218 <xsl:value-of select="$errors.org.bedework.validation.error.invalid.prefworkdays" /> 221 219 </xsl:when> 222 220 <xsl:when test="id='org.bedework.validation.error.invalid.prefworkdaystart'"> 223 Error: invalid working days start: <em><xsl:value-of select="param"/></em>221 <xsl:value-of select="$errors.org.bedework.validation.error.invalid.prefworkdaystart" /> <em><xsl:value-of select="param" /></em> 224 222 </xsl:when> 225 223 <xsl:when test="id='org.bedework.validation.error.invalid.recipient'"> 226 The recipient uri is invalid224 <xsl:value-of select="$errors.org.bedework.validation.error.invalid.recipient" /> 227 225 </xsl:when> 228 226 <xsl:when test="id='org.bedework.validation.error.invalid.recurcount'"> 229 Error: bad value for recurrence count: <em><xsl:value-of select="param"/></em>227 <xsl:value-of select="$errors.org.bedework.validation.error.invalid.recurcount" /> <em><xsl:value-of select="param" /></em> 230 228 </xsl:when> 231 229 <xsl:when test="id='org.bedework.validation.error.invalid.recurcountanduntil'"> 232 Error: Cannot specify count and until for recurrence230 <xsl:value-of select="$errors.org.bedework.validation.error.invalid.recurcountanduntil" /> 233 231 </xsl:when> 234 232 <xsl:when test="id='org.bedework.validation.error.invalid.recurinterval'"> 235 Error: bad value for recurrence interval: <em><xsl:value-of select="param"/></em>233 <xsl:value-of select="$errors.org.bedework.validation.error.invalid.recurinterval" /> <em><xsl:value-of select="param" /></em> 236 234 </xsl:when> 237 235 <xsl:when test="id='org.bedework.validation.error.invalid.recurrule'"> 238 Error: bad recurrence rule: <em><xsl:value-of select="param"/></em>236 <xsl:value-of select="$errors.org.bedework.validation.error.invalid.recurrule" /> <em><xsl:value-of select="param" /></em> 239 237 </xsl:when> 240 238 <xsl:when test="id='org.bedework.validation.error.invalid.recuruntil'"> 241 Error: bad value for recurrence until: <em><xsl:value-of select="param"/></em>239 <xsl:value-of select="$errors.org.bedework.validation.error.invalid.recuruntil" /> <em><xsl:value-of select="param" /></em> 242 240 </xsl:when> 243 241 <xsl:when test="id='org.bedework.validation.error.cannot.change.method'"> 244 Error: you cannot change scheduling method242 <xsl:value-of select="$errors.org.bedework.validation.error.cannot.change.method" /> 245 243 </xsl:when> 246 244 … … 248 246 249 247 <xsl:when test="id='org.bedework.error.scheduling.attendeeaccessdisallowed'"> 250 Error: Access is disallowed to one or more attendees.248 <xsl:value-of select="$errors.org.bedework.error.scheduling.attendeeaccessdisallowed" /> 251 249 </xsl:when> 252 250 253 251 <xsl:when test="id='org.bedework.error.scheduling.badttendees'"> 254 Error: Attendee bad252 <xsl:value-of select="$errors.org.bedework.error.scheduling.badttendees" /> 255 253 </xsl:when> 256 254 257 255 <xsl:when test="id='org.bedework.error.scheduling.badmethod'"> 258 Error: bad scheduling method (should be request or publish).256 <xsl:value-of select="$errors.org.bedework.error.scheduling.badmethod" /> 259 257 </xsl:when> 260 258 261 259 <xsl:when test="id='org.bedework.error.scheduling.badresponsemethod'"> 262 Error: bad scheduling method for response (should be request or publish).260 <xsl:value-of select="$errors.org.bedework.error.scheduling.badresponsemethod" /> 263 261 </xsl:when> 264 262 265 263 <xsl:when test="id='org.bedework.error.scheduling.badsourcecalendar'"> 266 Error: event is not in inbox264 <xsl:value-of select="$errors.org.bedework.error.scheduling.badsourcecalendar" /> 267 265 </xsl:when> 268 266 269 267 <xsl:when test="id='org.bedework.error.scheduling.duplicateuid'"> 270 Error: Duplicate uid found in the target calendar268 <xsl:value-of select="$errors.org.bedework.error.scheduling.duplicateuid" /> 271 269 </xsl:when> 272 270 273 271 <xsl:when test="id='org.bedework.error.scheduling.expectoneattendee'"> 274 Error: Expected exactly one attendee for reply272 <xsl:value-of select="$errors.org.bedework.error.scheduling.expectoneattendee" /> 275 273 </xsl:when> 276 274 277 275 <xsl:when test="id='org.bedework.error.scheduling.invalidpartstatus'"> 278 Error: bad scheduling participation status276 <xsl:value-of select="$errors.org.bedework.error.scheduling.invalidpartstatus" /> 279 277 </xsl:when> 280 278 281 279 <xsl:when test="id='org.bedework.error.scheduling.multipleevents'"> 282 Error: Multiple events were found in the target calendar280 <xsl:value-of select="$errors.org.bedework.error.scheduling.multipleevents" /> 283 281 </xsl:when> 284 282 285 283 <xsl:when test="id='org.bedework.error.scheduling.noattendees'"> 286 Error: Entity required attendees but had none.284 <xsl:value-of select="$errors.org.bedework.error.scheduling.noattendees" /> 287 285 </xsl:when> 288 286 289 287 <xsl:when test="id='org.bedework.error.scheduling.noOriginator'"> 290 Error: Entity required originator but had none.288 <xsl:value-of select="$errors.org.bedework.error.scheduling.noOriginator" /> 291 289 </xsl:when> 292 290 293 291 <xsl:when test="id='org.bedework.error.scheduling.norecipients'"> 294 Error: Entity required recipients but had none.292 <xsl:value-of select="$errors.org.bedework.error.scheduling.norecipients" /> 295 293 </xsl:when> 296 294 297 295 <xsl:when test="id='org.bedework.error.scheduling.notattendee'"> 298 Error: You are not an attendee of this meeting.296 <xsl:value-of select="$errors.org.bedework.error.scheduling.notattendee" /> 299 297 </xsl:when> 300 298 301 299 <xsl:when test="id='org.bedework.error.scheduling.unknownattendee'"> 302 Error: Attendee for reply not in event.300 <xsl:value-of select="$errors.org.bedework.error.scheduling.unknownattendee" /> 303 301 </xsl:when> 304 302 305 303 <xsl:when test="id='org.bedework.error.scheduling.unknownevent'"> 306 Error: Unknown event - organizer possibly deleted it?304 <xsl:value-of select="$errors.org.bedework.error.scheduling.unknownevent" /> 307 305 </xsl:when> 308 306 … … 312 310 313 311 <xsl:when test="id='org.bedework.exception.duplicatecalendar'"> 314 Error: Duplicate calendar: <em><xsl:value-of select="param"/></em>312 <xsl:value-of select="$errors.org.bedework.exception.duplicatecalendar" /> <em><xsl:value-of select="param" /></em> 315 313 </xsl:when> 316 314 317 315 <xsl:when test="id='org.bedework.validation.error.invalid.status'"> 318 Error: Invalid status: <em><xsl:value-of select="param"/></em>316 <xsl:value-of select="$errors.org.bedework.validation.error.invalid.status" /> <em><xsl:value-of select="param" /></em> 319 317 </xsl:when> 320 318 <xsl:when test="id='org.bedework.validation.error.invalid.transparency'"> 321 Error: Invalid transparency: <em><xsl:value-of select="param"/></em>319 <xsl:value-of select="$errors.org.bedework.validation.error.invalid.transparency" /> <em><xsl:value-of select="param" /></em> 322 320 </xsl:when> 323 321 <xsl:when test="id='org.bedework.validation.error.invalid.user'"> 324 Error: Invalid user: <em><xsl:value-of select="param"/></em>322 <xsl:value-of select="$errors.org.bedework.validation.error.invalid.user" /> <em><xsl:value-of select="param" /></em> 325 323 </xsl:when> 326 324 327 325 <xsl:when test="id='org.bedework.validation.error.missinghow'"> 328 Error: missing how.326 <xsl:value-of select="$errors.org.bedework.validation.error.missinghow" /> 329 327 </xsl:when> 330 328 331 329 <xsl:when test="id='org.bedework.validation.error.missingwho'"> 332 Error: missing who (principal name).330 <xsl:value-of select="$errors.org.bedework.validation.error.missingwho" /> 333 331 </xsl:when> 334 332 335 333 <xsl:when test="id='org.bedework.validation.error.missingaddress'"> 336 Your information is incomplete: please supply an address.334 <xsl:value-of select="$errors.org.bedework.validation.error.missingaddress" /> 337 335 </xsl:when> 338 336 339 337 <xsl:when test="id='org.bedework.validation.error.missingcalendar'"> 340 Your information is incomplete: please supply a calendar.338 <xsl:value-of select="$errors.org.bedework.validation.error.missingcalendar" /> 341 339 </xsl:when> 342 340 343 341 <xsl:when test="id='org.bedework.validation.error.missingcalendarpath'"> 344 Your information is incomplete: please supply a calendar path.342 <xsl:value-of select="$errors.org.bedework.validation.error.missingcalendarpath" /> 345 343 </xsl:when> 346 344 347 345 <xsl:when test="id='org.bedework.validation.error.missingcalsuitecalendar'"> 348 Your information is incomplete: please supply a root calendar path.346 <xsl:value-of select="$errors.org.bedework.validation.error.missingcalsuitecalendar" /> 349 347 </xsl:when> 350 348 351 349 <xsl:when test="id='org.bedework.validation.error.missingcategorykeyword'"> 352 Your information is incomplete: please supply a category keyword.350 <xsl:value-of select="$errors.org.bedework.validation.error.missingcategorykeyword" /> 353 351 </xsl:when> 354 352 355 353 <xsl:when test="id='org.bedework.validation.error.missingcontact'"> 356 Your information is incomplete: please supply a contact.354 <xsl:value-of select="$errors.org.bedework.validation.error.missingcontact" /> 357 355 </xsl:when> 358 356 359 357 <xsl:when test="id='org.bedework.validation.error.missingcontactname'"> 360 You must enter a contact <em>name</em>.358 <xsl:value-of select="$errors.org.bedework.validation.error.missingcontactname" /> 361 359 </xsl:when> 362 360 363 361 <xsl:when test="id='org.bedework.validation.error.missingdescription'"> 364 Your information is incomplete: please supply a description.362 <xsl:value-of select="$errors.org.bedework.validation.error.missingdescription" /> 365 363 </xsl:when> 366 364 367 365 <xsl:when test="id='org.bedework.validation.error.missingeventowner'"> 368 Your information is incomplete: please supply an event owner.366 <xsl:value-of select="$errors.org.bedework.validation.error.missingeventowner" /> 369 367 </xsl:when> 370 368 371 369 <xsl:when test="id='org.bedework.validation.error.missingfilterdef'"> 372 Your information is incomplete: please supply a filter definition.370 <xsl:value-of select="$errors.org.bedework.validation.error.missingfilterdef" /> 373 371 </xsl:when> 374 372 375 373 <xsl:when test="id='org.bedework.validation.error.missinggroupname'"> 376 Your information is incomplete: please supply a group name.374 <xsl:value-of select="$errors.org.bedework.validation.error.missinggroupname" /> 377 375 </xsl:when> 378 376 379 377 <xsl:when test="id='org.bedework.validation.error.missinggroupowner'"> 380 Your information is incomplete: please supply a group owner.378 <xsl:value-of select="$errors.org.bedework.validation.error.missinggroupowner" /> 381 379 </xsl:when> 382 380 383 381 <xsl:when test="id='org.bedework.validation.error.missinglocation'"> 384 Your information is incomplete: please supply a location.382 <xsl:value-of select="$errors.org.bedework.validation.error.missinglocation" /> 385 383 </xsl:when> 386 384 387 385 <xsl:when test="id='org.bedework.validation.error.missingname'"> 388 Your information is incomplete: please supply a name.386 <xsl:value-of select="$errors.org.bedework.validation.error.missingname" /> 389 387 </xsl:when> 390 388 391 389 <xsl:when test="id='org.bedework.validation.error.missingorganizor'"> 392 Your event is missing the organizor390 <xsl:value-of select="$errors.org.bedework.validation.error.missingorganizor" /> 393 391 </xsl:when> 394 392 395 393 <xsl:when test="id='org.bedework.validation.error.missingoriginator'"> 396 Your event is missing the originator394 <xsl:value-of select="$errors.org.bedework.validation.error.missingoriginator" /> 397 395 </xsl:when> 398 396 399 397 <xsl:when test="id='org.bedework.validation.error.missingrecipients'"> 400 You must supply a recipient.398 <xsl:value-of select="$errors.org.bedework.validation.error.missingrecipients" /> 401 399 </xsl:when> 402 400 403 401 <xsl:when test="id='org.bedework.validation.error.missingsubscriptionid'"> 404 Your information is incomplete: please supply a subscription id.402 <xsl:value-of select="$errors.org.bedework.validation.error.missingsubscriptionid" /> 405 403 </xsl:when> 406 404 407 405 <xsl:when test="id='org.bedework.exception.duplicatesubscription'"> 408 Error: duplicate subscription.406 <xsl:value-of select="$errors.org.bedework.exception.duplicatesubscription" /> 409 407 </xsl:when> 410 408 411 409 <xsl:when test="id='org.bedework.validation.error.missingtitle'"> 412 Your information is incomplete: please supply a title.410 <xsl:value-of select="$errors.org.bedework.validation.error.missingtitle" /> 413 411 </xsl:when> 414 412 415 413 <xsl:when test="id='org.bedework.validation.error.missingsuburi'"> 416 Your information is incomplete: please supply a uri for the subscription.414 <xsl:value-of select="$errors.org.bedework.validation.error.missingsuburi" /> 417 415 </xsl:when> 418 416 419 417 <xsl:when test="id='org.bedework.validation.error.startafterend'"> 420 The <em>end date</em> occurs before the <em>start date</em>.418 <xsl:value-of select="$errors.org.bedework.validation.error.startafterend" /> 421 419 </xsl:when> 422 420 423 421 <xsl:when test="id='org.bedework.validation.error.toolong.description'"> 424 Your description is too long. Please limit your entry to 425 characters. You may also wish to 426 point the event entry at a supplemental web page by entering a <em>URL</em>. 422 <xsl:value-of select="$errors.org.bedework.validation.error.toolong.description" /> 427 423 </xsl:when> 428 424 429 425 <xsl:when test="id='org.bedework.validation.error.toolong.name'"> 430 Your name is too long. Please limit your entry to426 <xsl:value-of select="$errors.org.bedework.validation.error.toolong.name" /> 431 427 </xsl:when> 432 428 433 429 <xsl:when test="id='org.bedework.validation.error.toolong.summary'"> 434 Your summary is too long. Please limit your entry to 435 characters. You may also wish to 436 point the event entry at a supplemental web page by entering a <em>URL</em>. 437 </xsl:when> 430 <xsl:value-of select="$errors.org.bedework.validation.error.toolong.summary" /> 431 </xsl:when> 432 438 433 <xsl:otherwise> 439 <xsl:value-of select="id"/> = <xsl:value-of select="param"/> 434 <xsl:value-of select="id" /> = 435 <xsl:value-of select="param" /> 440 436 </xsl:otherwise> 441 437 </xsl:choose> 442 438 </xsl:template> 443 439 </xsl:stylesheet> 444 branches/xslt-rewrite/deployment/resources/xsl/default/default/event-form.xsl
r1643 r1705 19 19 <a href="{$eventView}&subid={$subscriptionId}&calPath={$calPath}&guid={$guid}&recurrenceId={$recurrenceId}"> 20 20 <img src="{$resourcesRoot}/resources/glassFill-icon-viewGray.gif" width="13" height="13" border="0" alt="view"/> 21 View21 <xsl:value-of select="$eventform.eventform.view"/> 22 22 </a> 23 23 | … … 26 26 <xsl:when test="recurrenceId != ''"> 27 27 <img src="{$resourcesRoot}/resources/trashIcon.gif" width="13" height="13" border="0" alt="delete"/> 28 Delete:28 <xsl:value-of select="$eventform.eventform.delete"/>: 29 29 <a href="{$delEvent}&subid={$subscriptionId}&calPath={$calPath}&guid={$guid}" title="delete master (recurring event)">all</a>, 30 <a href="{$delEvent}&subid={$subscriptionId}&calPath={$calPath}&guid={$guid}&recurrenceId={$recurrenceId}" title="delete instance (recurring event)"> instance</a>30 <a href="{$delEvent}&subid={$subscriptionId}&calPath={$calPath}&guid={$guid}&recurrenceId={$recurrenceId}" title="delete instance (recurring event)"><xsl:value-of select="$eventform.eventform.instance"/></a> 31 31 </xsl:when> 32 32 <xsl:otherwise> 33 <a href="{$delEvent}&subid={$subscriptionId}&calPath={$calPath}&guid={$guid}&recurrenceId={$recurrenceId}" title=" delete event">34 <img src="{$resourcesRoot}/resources/trashIcon.gif" width="13" height="13" border="0" alt=" delete"/>35 Delete33 <a href="{$delEvent}&subid={$subscriptionId}&calPath={$calPath}&guid={$guid}&recurrenceId={$recurrenceId}" title="{$eventform.eventform.deleteEvent}"> 34 <img src="{$resourcesRoot}/resources/trashIcon.gif" width="13" height="13" border="0" alt="{$eventform.eventform.delete2}"/> 35 <xsl:value-of select="$eventform.eventform.delete"/> 36 36 <xsl:if test="form/recurringEntity='true'"> 37 all37 <xsl:value-of select="$eventform.eventform.all"/> 38 38 </xsl:if> 39 39 </a> … … 44 44 <xsl:variable name="entityType"> 45 45 <xsl:choose> 46 <xsl:when test="entityType = '2'"> Task</xsl:when>47 <xsl:when test="scheduleMethod = '2'"> Meeting</xsl:when>48 <xsl:otherwise> Event</xsl:otherwise>46 <xsl:when test="entityType = '2'"><xsl:value-of select="$eventform.eventform.task"/></xsl:when> 47 <xsl:when test="scheduleMethod = '2'"><xsl:value-of select="$eventform.eventform.meeting"/></xsl:when> 48 <xsl:otherwise><xsl:value-of select="$eventform.eventform.event"/></xsl:otherwise> 49 49 </xsl:choose> 50 50 </xsl:variable> 51 51 <xsl:if test="form/recurringEntity='true' or recurrenceId != ''"> 52 Recurring52 <xsl:value-of select="$eventform.eventform.recurring"/> 53 53 </xsl:if> 54 54 <xsl:choose> 55 55 <xsl:when test="form"> 56 56 <!-- just a placeholder: need to add owner to the jsp --> 57 Personal<xsl:value-of select="$entityType"/>57 <xsl:value-of select="$eventform.eventform.personal"/> <xsl:value-of select="$entityType"/> 58 58 </xsl:when> 59 59 <xsl:when test="public = 'true'"> 60 Public<xsl:value-of select="$entityType"/>60 <xsl:value-of select="$eventform.eventform.public"/> <xsl:value-of select="$entityType"/> 61 61 </xsl:when> 62 62 <xsl:otherwise> … … 66 66 <xsl:if test="form/recurringEntity='true' and recurrenceId = ''"> 67 67 <xsl:text> </xsl:text> 68 <em>( recurrence master)</em>68 <em>(<xsl:value-of select="$eventform.eventform.recurMaster"/>)</em> 69 69 </xsl:if> 70 70 </th> … … 77 77 <li class="selected"> 78 78 <a href="javascript:setTab('eventFormTabs',0); show('bwEventTab-Basic'); hide('bwEventTab-Details','bwEventTab-Recurrence','bwEventTab-Access','bwEventTab-Scheduling');"> 79 basic79 <xsl:value-of select="$eventform.eventform.basic"/> 80 80 </a> 81 81 </li> 82 82 <li> 83 83 <a href="javascript:setTab('eventFormTabs',1); show('bwEventTab-Details'); hide('bwEventTab-Basic','bwEventTab-Recurrence','bwEventTab-Access','bwEventTab-Scheduling');"> 84 details84 <xsl:value-of select="$eventform.eventform.details"/> 85 85 </a> 86 86 </li> 87 87 <li> 88 88 <a href="javascript:setTab('eventFormTabs',2); show('bwEventTab-Recurrence'); hide('bwEventTab-Details','bwEventTab-Basic','bwEventTab-Access','bwEventTab-Scheduling');"> 89 recurrence89 <xsl:value-of select="$eventform.eventform.recurrence"/> 90 90 </a> 91 91 </li> 92 92 <li> 93 93 <a href="javascript:setTab('eventFormTabs',3); show('bwEventTab-Scheduling'); hide('bwEventTab-Basic','bwEventTab-Details','bwEventTab-Recurrence','bwEventTab-Access');"> 94 scheduling94 <xsl:value-of select="$eventform.eventform.scheduling"/> 95 95 </a> 96 96 </li> 97 97 <li> 98 98 <a href="javascript:setTab('eventFormTabs',4); show('bwEventTab-Access'); hide('bwEventTab-Details','bwEventTab-Basic','bwEventTab-Recurrence','bwEventTab-Scheduling');"> 99 access99 <xsl:value-of select="$eventform.eventform.access"/> 100 100 </a> 101 101 </li> 102 102 </ul> 103 103 104 <!-- Basic tab --> 105 <xsl:apply-templates select="." mode="bwEventTab-Basic"/> 106 107 <!-- Details tab --> 108 <xsl:apply-templates select="." mode="bwEventTab-Details"/> 109 110 <!-- Recurance tab --> 111 <div id="bwEventTab-Recurrence" class="invisible"> 112 <xsl:apply-templates select="." mode="bwEventTab-Recurrence"> 113 <xsl:with-param name="subscriptionId"><xsl:value-of select="$subscriptionId"/></xsl:with-param> 114 <xsl:with-param name="calPath"><xsl:value-of select="$calPath"/></xsl:with-param> 115 <xsl:with-param name="guid"><xsl:value-of select="$guid"/></xsl:with-param> 116 <xsl:with-param name="recurrenceId"><xsl:value-of select="$recurrenceId"/></xsl:with-param> 117 </xsl:apply-templates> 118 </div> 119 120 121 <!-- Access tab --> 122 <xsl:apply-templates select="." mode="bwEventTab-Access"> 123 <xsl:with-param name="calPathEncoded"><xsl:value-of select="$calPathEncoded"/></xsl:with-param> 124 <xsl:with-param name="guid"><xsl:value-of select="$guid"/></xsl:with-param> 125 <xsl:with-param name="recurrenceId"><xsl:value-of select="$recurrenceId"/></xsl:with-param> 126 </xsl:apply-templates> 127 128 <!-- Scheduling tab --> 129 <xsl:apply-templates select="." mode="bwEventTab-Scheduling"/> 130 131 132 <div class="eventSubmitButtons"> 133 <xsl:choose> 134 <xsl:when test="form/scheduleMethod = '2'"> 135 <input name="submit" type="submit" value="{$eventform.eventform.save}"/> 136 <input name="submitAndSend" type="submit" value="{$eventform.eventform.saveAndSend}"/> 137 </xsl:when> 138 <xsl:otherwise> 139 <input name="submit" type="submit" value="{$eventform.eventform.save}"/> 140 </xsl:otherwise> 141 </xsl:choose> 142 <input name="cancelled" type="submit" value="{$eventform.eventform.cancel}"/> 143 </div> 144 </xsl:template> 145 146 <xsl:template match="formElements" mode="bwEventTab-Basic"> 104 147 <!-- Basic tab --> 105 148 <!-- ============== --> … … 110 153 <tr> 111 154 <td class="fieldname"> 112 Calendar:155 <xsl:value-of select="$eventform.bweventtab.calendar"/>: 113 156 </td> 114 157 <td class="fieldval"> … … 174 217 <tr> 175 218 <td class="fieldname"> 176 Title:219 <xsl:value-of select="$eventform.bweventtab.title"/>: 177 220 </td> 178 221 <td class="fieldval"> … … 182 225 </tr> 183 226 184 <!-- Date and Time --> 185 <!-- ============= --> 186 <tr> 187 <td class="fieldname"> 188 Date & Time: 189 </td> 190 <td class="fieldval"> 191 <!-- Set the timefields class for the first load of the page; 192 subsequent changes will take place using javascript without a 193 page reload. --> 194 <xsl:variable name="timeFieldsClass"> 195 <xsl:choose> 196 <xsl:when test="form/allDay/input/@checked='checked'">invisible</xsl:when> 197 <xsl:otherwise>timeFields</xsl:otherwise> 198 </xsl:choose> 199 </xsl:variable> 200 201 <!-- date only event: anniversary event - often interpreted as "all day event" --> 202 <xsl:choose> 203 <xsl:when test="form/allDay/input/@checked='checked'"> 204 <input type="checkbox" name="allDayFlag" onclick="swapAllDayEvent(this)" value="on" checked="checked"/> 205 <input type="hidden" name="eventStartDate.dateOnly" value="true" id="allDayStartDateField"/> 206 <input type="hidden" name="eventEndDate.dateOnly" value="true" id="allDayEndDateField"/> 207 </xsl:when> 208 <xsl:otherwise> 209 <input type="checkbox" name="allDayFlag" onclick="swapAllDayEvent(this)" value="off"/> 210 <input type="hidden" name="eventStartDate.dateOnly" value="false" id="allDayStartDateField"/> 211 <input type="hidden" name="eventEndDate.dateOnly" value="false" id="allDayEndDateField"/> 212 </xsl:otherwise> 213 </xsl:choose> 214 all day 215 216 <!-- floating event: no timezone (and not UTC) --> 217 <xsl:choose> 218 <xsl:when test="form/floating/input/@checked='checked'"> 219 <input type="checkbox" name="floatingFlag" id="floatingFlag" onclick="swapFloatingTime(this)" value="on" checked="checked"/> 220 <input type="hidden" name="eventStartDate.floating" value="true" id="startFloating"/> 221 <input type="hidden" name="eventEndDate.floating" value="true" id="endFloating"/> 222 </xsl:when> 223 <xsl:otherwise> 224 <input type="checkbox" name="floatingFlag" id="floatingFlag" onclick="swapFloatingTime(this)" value="off"/> 225 <input type="hidden" name="eventStartDate.floating" value="false" id="startFloating"/> 226 <input type="hidden" name="eventEndDate.floating" value="false" id="endFloating"/> 227 </xsl:otherwise> 228 </xsl:choose> 229 floating 230 231 <!-- store time as coordinated universal time (UTC) --> 232 <xsl:choose> 233 <xsl:when test="form/storeUTC/input/@checked='checked'"> 234 <input type="checkbox" name="storeUTCFlag" id="storeUTCFlag" onclick="swapStoreUTC(this)" value="on" checked="checked"/> 235 <input type="hidden" name="eventStartDate.storeUTC" value="true" id="startStoreUTC"/> 236 <input type="hidden" name="eventEndDate.storeUTC" value="true" id="endStoreUTC"/> 237 </xsl:when> 238 <xsl:otherwise> 239 <input type="checkbox" name="storeUTCFlag" id="storeUTCFlag" onclick="swapStoreUTC(this)" value="off"/> 240 <input type="hidden" name="eventStartDate.storeUTC" value="false" id="startStoreUTC"/> 241 <input type="hidden" name="eventEndDate.storeUTC" value="false" id="endStoreUTC"/> 242 </xsl:otherwise> 243 </xsl:choose> 244 store as UTC 245 246 <br/> 247 <div class="dateStartEndBox"> 248 <strong>Start:</strong> 249 <div class="dateFields"> 250 <span class="startDateLabel">Date </span> 251 <xsl:choose> 252 <xsl:when test="$portalFriendly = 'true'"> 253 <xsl:copy-of select="/bedework/formElements/form/start/month/*"/> 254 <xsl:copy-of select="/bedework/formElements/form/start/day/*"/> 255 <xsl:choose> 256 <xsl:when test="/bedework/creating = 'true'"> 257 <xsl:copy-of select="/bedework/formElements/form/start/year/*"/> 258 </xsl:when> 259 <xsl:otherwise> 260 <xsl:copy-of select="/bedework/formElements/form/start/yearText/*"/> 261 </xsl:otherwise> 262 </xsl:choose> 263 <script language="JavaScript" type="text/javascript"> 264 <xsl:comment> 265 startDateDynCalWidget = new dynCalendar('startDateDynCalWidget', <xsl:value-of select="number(/bedework/formElements/form/start/yearText/input/@value)"/>, <xsl:value-of select="number(/bedework/formElements/form/start/month/select/option[@selected='selected']/@value)-1"/>, <xsl:value-of select="number(/bedework/formElements/form/start/day/select/option[@selected='selected']/@value)"/>, 'startDateCalWidgetCallback', '<xsl:value-of select="$resourcesRoot"/>/resources/'); 266 </xsl:comment> 267 </script> 268 </xsl:when> 269 <xsl:otherwise> 270 <span dojoType="dropdowndatepicker" formatLength="medium" value="today" saveFormat="yyyyMMdd" id="bwEventWidgetStartDate" iconURL="{$resourcesRoot}/resources/calIcon.gif"> 271 <xsl:attribute name="value"><xsl:value-of select="form/start/rfc3339DateTime"/></xsl:attribute> 272 <xsl:text> </xsl:text> 273 </span> 274 <input type="hidden" name="eventStartDate.year"> 275 <xsl:attribute name="value"><xsl:value-of select="form/start/yearText/input/@value"/></xsl:attribute> 276 </input> 277 <input type="hidden" name="eventStartDate.month"> 278 <xsl:attribute name="value"><xsl:value-of select="form/start/month/select/option[@selected = 'selected']/@value"/></xsl:attribute> 279 </input> 280 <input type="hidden" name="eventStartDate.day"> 281 <xsl:attribute name="value"><xsl:value-of select="form/start/day/select/option[@selected = 'selected']/@value"/></xsl:attribute> 282 </input> 283 </xsl:otherwise> 284 </xsl:choose> 285 </div> 286 <div class="{$timeFieldsClass}" id="startTimeFields"> 287 <span id="calWidgetStartTimeHider" class="show"> 288 <xsl:copy-of select="form/start/hour/*"/> 289 <xsl:copy-of select="form/start/minute/*"/> 290 <xsl:if test="form/start/ampm"> 291 <xsl:copy-of select="form/start/ampm/*"/> 292 </xsl:if> 293 <xsl:text> </xsl:text> 294 <a href="javascript:bwClockLaunch('eventStartDate');"><img src="{$resourcesRoot}/resources/clockIcon.gif" width="16" height="15" border="0" alt="bwClock"/></a> 295 296 <select name="eventStartDate.tzid" id="startTzid" class="timezones"> 297 <xsl:if test="form/floating/input/@checked='checked'"><xsl:attribute name="disabled">disabled</xsl:attribute></xsl:if> 298 <option value="-1">select timezone...</option> 299 <xsl:variable name="startTzId" select="form/start/tzid"/> 300 <xsl:for-each select="/bedework/timezones/timezone"> 301 <option> 302 <xsl:attribute name="value"><xsl:value-of select="id"/></xsl:attribute> 303 <xsl:if test="$startTzId = id"><xsl:attribute name="selected">selected</xsl:attribute></xsl:if> 304 <xsl:value-of select="name"/> 305 </option> 306 </xsl:for-each> 307 </select> 308 </span> 309 </div> 310 </div> 311 <div class="dateStartEndBox"> 312 <strong> 313 <xsl:choose> 314 <xsl:when test="form/entityType = '2'">Due:</xsl:when> 315 <xsl:otherwise>End:</xsl:otherwise> 316 </xsl:choose> 317 </strong> 318 <xsl:choose> 319 <xsl:when test="form/end/type='E'"> 320 <input type="radio" name="eventEndType" value="E" checked="checked" onclick="changeClass('endDateTime','shown');changeClass('endDuration','invisible');"/> 321 </xsl:when> 322 <xsl:otherwise> 323 <input type="radio" name="eventEndType" value="E" onclick="changeClass('endDateTime','shown');changeClass('endDuration','invisible');"/> 324 </xsl:otherwise> 325 </xsl:choose> 326 Date 327 <xsl:variable name="endDateTimeClass"> 328 <xsl:choose> 329 <xsl:when test="form/end/type='E'">shown</xsl:when> 330 <xsl:otherwise>invisible</xsl:otherwise> 331 </xsl:choose> 332 </xsl:variable> 333 <div class="{$endDateTimeClass}" id="endDateTime"> 334 <div class="dateFields"> 335 <xsl:choose> 336 <xsl:when test="$portalFriendly = 'true'"> 337 <xsl:copy-of select="/bedework/formElements/form/end/dateTime/month/*"/> 338 <xsl:copy-of select="/bedework/formElements/form/end/dateTime/day/*"/> 339 <xsl:choose> 340 <xsl:when test="/bedework/creating = 'true'"> 341 <xsl:copy-of select="/bedework/formElements/form/end/dateTime/year/*"/> 342 </xsl:when> 343 <xsl:otherwise> 344 <xsl:copy-of select="/bedework/formElements/form/end/dateTime/yearText/*"/> 345 </xsl:otherwise> 346 </xsl:choose> 347 <script language="JavaScript" type="text/javascript"> 348 <xsl:comment> 349 endDateDynCalWidget = new dynCalendar('endDateDynCalWidget', <xsl:value-of select="number(/bedework/formElements/form/start/yearText/input/@value)"/>, <xsl:value-of select="number(/bedework/formElements/form/start/month/select/option[@selected='selected']/@value)-1"/>, <xsl:value-of select="number(/bedework/formElements/form/start/day/select/option[@selected='selected']/@value)"/>, 'endDateCalWidgetCallback', '<xsl:value-of select="$resourcesRoot"/>/resources/'); 350 </xsl:comment> 351 </script> 352 </xsl:when> 353 <xsl:otherwise> 354 <span dojoType="dropdowndatepicker" formatLength="medium" value="today" saveFormat="yyyyMMdd" id="bwEventWidgetEndDate" iconURL="{$resourcesRoot}/resources/calIcon.gif"> 355 <xsl:attribute name="value"><xsl:value-of select="form/end/rfc3339DateTime"/></xsl:attribute> 356 <xsl:text> </xsl:text> 357 </span> 358 <input type="hidden" name="eventEndDate.year"> 359 <xsl:attribute name="value"><xsl:value-of select="form/end/dateTime/yearText/input/@value"/></xsl:attribute> 360 </input> 361 <input type="hidden" name="eventEndDate.month"> 362 <xsl:attribute name="value"><xsl:value-of select="form/end/dateTime/month/select/option[@selected = 'selected']/@value"/></xsl:attribute> 363 </input> 364 <input type="hidden" name="eventEndDate.day"> 365 <xsl:attribute name="value"><xsl:value-of select="form/end/dateTime/day/select/option[@selected = 'selected']/@value"/></xsl:attribute> 366 </input> 367 </xsl:otherwise> 368 </xsl:choose> 369 </div> 370 <div class="{$timeFieldsClass}" id="endTimeFields"> 371 <span id="calWidgetEndTimeHider" class="show"> 372 <xsl:copy-of select="form/end/dateTime/hour/*"/> 373 <xsl:copy-of select="form/end/dateTime/minute/*"/> 374 <xsl:if test="form/end/dateTime/ampm"> 375 <xsl:copy-of select="form/end/dateTime/ampm/*"/> 376 </xsl:if> 377 <xsl:text> </xsl:text> 378 <a href="javascript:bwClockLaunch('eventEndDate');"><img src="{$resourcesRoot}/resources/clockIcon.gif" width="16" height="15" border="0" alt="bwClock"/></a> 379 380 <select name="eventEndDate.tzid" id="endTzid" class="timezones"> 381 <xsl:if test="form/floating/input/@checked='checked'"><xsl:attribute name="disabled">disabled</xsl:attribute></xsl:if> 382 <option value="-1">select timezone...</option> 383 <xsl:variable name="endTzId" select="form/end/dateTime/tzid"/> 384 <xsl:for-each select="/bedework/timezones/timezone"> 385 <option> 386 <xsl:attribute name="value"><xsl:value-of select="id"/></xsl:attribute> 387 <xsl:if test="$endTzId = id"><xsl:attribute name="selected">selected</xsl:attribute></xsl:if> 388 <xsl:value-of select="name"/> 389 </option> 390 </xsl:for-each> 391 </select> 392 </span> 393 </div> 394 </div><br/> 395 <div id="clock" class="invisible"> 396 <xsl:call-template name="clock"/> 397 </div> 398 <div class="dateFields"> 399 <xsl:choose> 400 <xsl:when test="form/end/type='D'"> 401 <input type="radio" name="eventEndType" value="D" checked="checked" onclick="changeClass('endDateTime','invisible');changeClass('endDuration','shown');"/> 402 </xsl:when> 403 <xsl:otherwise> 404 <input type="radio" name="eventEndType" value="D" onclick="changeClass('endDateTime','invisible');changeClass('endDuration','shown');"/> 405 </xsl:otherwise> 406 </xsl:choose> 407 Duration 408 <xsl:variable name="endDurationClass"> 409 <xsl:choose> 410 <xsl:when test="form/end/type='D'">shown</xsl:when> 411 <xsl:otherwise>invisible</xsl:otherwise> 412 </xsl:choose> 413 </xsl:variable> 414 <xsl:variable name="durationHrMinClass"> 415 <xsl:choose> 416 <xsl:when test="form/allDay/input/@checked='checked'">invisible</xsl:when> 417 <xsl:otherwise>shown</xsl:otherwise> 418 </xsl:choose> 419 </xsl:variable> 420 <div class="{$endDurationClass}" id="endDuration"> 421 <xsl:choose> 422 <xsl:when test="form/end/duration/weeks/input/@value = '0'"> 423 <!-- we are using day, hour, minute format --> 424 <!-- must send either no week value or week value of 0 (zero) --> 425 <div class="durationBox"> 426 <input type="radio" name="eventDuration.type" value="daytime" onclick="swapDurationType('daytime')" checked="checked"/> 427 <xsl:variable name="daysStr" select="form/end/duration/days/input/@value"/> 428 <input type="text" name="eventDuration.daysStr" size="2" value="{$daysStr}" id="durationDays"/>days 429 <span id="durationHrMin" class="{$durationHrMinClass}"> 430 <xsl:variable name="hoursStr" select="form/end/duration/hours/input/@value"/> 431 <input type="text" name="eventDuration.hoursStr" size="2" value="{$hoursStr}" id="durationHours"/>hours 432 <xsl:variable name="minutesStr" select="form/end/duration/minutes/input/@value"/> 433 <input type="text" name="eventDuration.minutesStr" size="2" value="{$minutesStr}" id="durationMinutes"/>minutes 434 </span> 435 </div> 436 <span class="durationSpacerText">or</span> 437 <div class="durationBox"> 438 <input type="radio" name="eventDuration.type" value="weeks" onclick="swapDurationType('week')"/> 439 <xsl:variable name="weeksStr" select="form/end/duration/weeks/input/@value"/> 440 <input type="text" name="eventDuration.weeksStr" size="2" value="{$weeksStr}" id="durationWeeks" disabled="disabled"/>weeks 441 </div> 442 </xsl:when> 443 <xsl:otherwise> 444 <!-- we are using week format --> 445 <div class="durationBox"> 446 <input type="radio" name="eventDuration.type" value="daytime" onclick="swapDurationType('daytime')"/> 447 <xsl:variable name="daysStr" select="form/end/duration/days/input/@value"/> 448 <input type="text" name="eventDuration.daysStr" size="2" value="{$daysStr}" id="durationDays" disabled="disabled"/>days 449 <span id="durationHrMin" class="{$durationHrMinClass}"> 450 <xsl:variable name="hoursStr" select="form/end/duration/hours/input/@value"/> 451 <input type="text" name="eventDuration.hoursStr" size="2" value="{$hoursStr}" id="durationHours" disabled="disabled"/>hours 452 <xsl:variable name="minutesStr" select="form/end/duration/minutes/input/@value"/> 453 <input type="text" name="eventDuration.minutesStr" size="2" value="{$minutesStr}" id="durationMinutes" disabled="disabled"/>minutes 454 </span> 455 </div> 456 <span class="durationSpacerText">or</span> 457 <div class="durationBox"> 458 <input type="radio" name="eventDuration.type" value="weeks" onclick="swapDurationType('week')" checked="checked"/> 459 <xsl:variable name="weeksStr" select="form/end/duration/weeks/input/@value"/> 460 <input type="text" name="eventDuration.weeksStr" size="2" value="{$weeksStr}" id="durationWeeks"/>weeks 461 </div> 462 </xsl:otherwise> 463 </xsl:choose> 464 </div> 465 </div><br/> 466 <div class="dateFields" id="noDuration"> 467 <xsl:choose> 468 <xsl:when test="form/end/type='N'"> 469 <input type="radio" name="eventEndType" value="N" checked="checked" onclick="changeClass('endDateTime','invisible');changeClass('endDuration','invisible');"/> 470 </xsl:when> 471 <xsl:otherwise> 472 <input type="radio" name="eventEndType" value="N" onclick="changeClass('endDateTime','invisible');changeClass('endDuration','invisible');"/> 473 </xsl:otherwise> 474 </xsl:choose> 475 This 476 <xsl:choose> 477 <xsl:when test="form/entityType = '2'">task</xsl:when> 478 <xsl:otherwise>event</xsl:otherwise> 479 </xsl:choose> 480 has no duration / end date 481 </div> 482 </div> 483 </td> 484 </tr> 227 <xsl:apply-templates select="." mode="bwEvent-DateAndTime"/> 485 228 486 229 <!-- Percent Complete (only for Tasks) --> … … 488 231 <tr> 489 232 <td class="fieldname"> 490 % Complete:233 <xsl:value-of select="$eventform.bweventtab.percentComplete"/>: 491 234 </td> 492 235 <td class="fieldval" align="left"> … … 498 241 </xsl:if> 499 242 500 <!-- Transparency --> 501 <tr> 502 <td class="fieldname padMeTop"> 503 Effects free/busy: 504 </td> 505 <td align="left" class="padMeTop"> 506 <input type="radio" value="OPAQUE" name="transparency"> 507 <xsl:if test="form/transparency = 'OPAQUE'"> 508 <xsl:attribute name="checked">checked</xsl:attribute> 509 </xsl:if> 510 </input> 511 yes <span class="note">(opaque: event status affects your free/busy)</span><br/> 512 513 <input type="radio" value="TRANSPARENT" name="transparency"> 514 <xsl:if test="form/transparency = 'TRANSPARENT'"> 515 <xsl:attribute name="checked">checked</xsl:attribute> 516 </xsl:if> 517 </input> 518 no <span class="note">(transparent: event status does not affect your free/busy)</span><br/> 519 </td> 520 </tr> 243 <xsl:apply-templates select="." mode="bwEvent-status"/> 244 <xsl:apply-templates select="." mode="bwEvent-transparency"/> 245 521 246 522 247 <!-- Category --> 523 248 <tr> 524 249 <td class="fieldname"> 525 Categories:250 <xsl:value-of select="$eventform.bweventtab.categories"/>: 526 251 </td> 527 252 <td class="fieldval" align="left"> … … 529 254 <xsl:choose> 530 255 <xsl:when test="not(form/categories/all/category)"> 531 no categories defined532 <span class="note">(<a href="{$category-initAdd}"> add category</a>)</span>256 <xsl:value-of select="$eventform.bweventtab.noCategories"/> 257 <span class="note">(<a href="{$category-initAdd}"><xsl:value-of select="$eventform.bweventtab.addCategory"/></a>)</span> 533 258 </xsl:when> 534 259 <xsl:otherwise> … … 561 286 </table> 562 287 </div> 563 564 288 </xsl:template> 289 290 <xsl:template match="formElements" mode="bwEventTab-Details"> 565 291 <!-- Details tab --> 566 292 <!-- ============== --> … … 569 295 <!-- Location --> 570 296 <tr> 571 <td class="fieldname"> Location:</td>297 <td class="fieldname"><xsl:value-of select="$eventform.bweventtab.location"/>:</td> 572 298 <td class="fieldval" align="left"> 573 <span class="std-text"> choose: </span>299 <span class="std-text"><xsl:value-of select="$eventform.bweventtab.choose"/>: </span> 574 300 <span id="eventFormLocationList"> 575 301 <!-- … … 590 316 --> 591 317 <select name="locationUid"> 592 <option value=""> select...</option>318 <option value=""><xsl:value-of select="$eventform.bweventtab.select"/></option> 593 319 <xsl:copy-of select="form/location/locationmenu/select/*"/> 594 320 </select> 595 321 </span> 596 <span class="std-text"> or add new: </span>322 <span class="std-text"> <xsl:value-of select="$eventform.bweventtab.orAdd"/>: </span> 597 323 <input type="text" name="locationAddress.value" value="" /> 598 324 </td> … … 600 326 <!-- Link (url associated with event) --> 601 327 <tr> 602 <td class="fieldname"> Event Link:</td>328 <td class="fieldname"><xsl:value-of select="$eventform.bweventtab.eventLink"/>:</td> 603 329 <td class="fieldval"> 604 330 <xsl:variable name="link" select="form/link/input/@value"/> … … 608 334 <!-- Description --> 609 335 <tr> 610 <td class="fieldname"> Description:</td>336 <td class="fieldname"><xsl:value-of select="$eventform.bweventtab.description"/>:</td> 611 337 <td class="fieldval"> 612 338 <xsl:choose> … … 626 352 </td> 627 353 </tr> 628 <!--<tr>629 <td class="fieldname">630 Type:631 </td>632 <td class="fieldval">633 <input type="radio" name="schedule" size="80" value="none" checked="checked">634 <xsl:if test="form/scheduleMethod = '0'"><xsl:attribute name="checked">checked</xsl:attribute></xsl:if>635 my event636 </input>637 <input type="radio" name="schedule" size="80" value="request">638 <xsl:if test="form/scheduleMethod = '2'"><xsl:attribute name="checked">checked</xsl:attribute></xsl:if>639 meeting request640 </input>641 <input type="radio" name="schedule" size="80" value="publish">642 <xsl:if test="form/scheduleMethod = '1'"><xsl:attribute name="checked">checked</xsl:attribute></xsl:if>643 published event644 </input>645 <xsl:if test="/bedework/creating = 'false' and form/scheduleMethod = '2'">646 <br/><input type="checkbox" name="schedule" value="reconfirm "/> ask attendees to reconfirm647 </xsl:if>648 </td>649 </tr>-->650 <!-- Recipients and Attendees -->651 <!--652 <tr>653 <td class="fieldname">654 Recipients &<br/> Attendees:655 </td>656 <td class="fieldval posrelative">657 <input type="button" value="Manage recipients and attendees" onclick="launchSizedWindow('{$event-showAttendeesForEvent}','500','400')" class="small"/>658 </td>659 </tr>-->660 <!-- Status -->661 <tr>662 <td class="fieldname">663 Status:664 </td>665 <td class="fieldval">666 <input type="radio" name="eventStatus" value="CONFIRMED">667 <xsl:if test="form/status = 'CONFIRMED' or /bedework/creating = 'true' or form/status = ''"><xsl:attribute name="checked">checked</xsl:attribute></xsl:if>668 </input>669 confirmed670 <input type="radio" name="eventStatus" value="TENTATIVE">671 <xsl:if test="form/status = 'TENTATIVE'"><xsl:attribute name="checked">checked</xsl:attribute></xsl:if>672 </input>673 tentative674 <input type="radio" name="eventStatus" value="CANCELLED">675 <xsl:if test="form/status = 'CANCELLED'"><xsl:attribute name="checked">checked</xsl:attribute></xsl:if>676 </input>677 cancelled678 </td>679 </tr>680 354 <!-- Transparency --> 681 355 <xsl:if test="entityType != '2'"><!-- no transparency for Tasks --> 682 356 <tr> 683 357 <td class="fieldname"> 684 Effects free/busy:358 <xsl:value-of select="$eventform.bweventtab.effectFreeBusy"/>: 685 359 </td> 686 360 <td class="fieldval"> 687 361 <xsl:choose> 688 362 <xsl:when test="form/transparency = 'TRANSPARENT'"> 689 <input type="radio" name="event.transparency" value="OPAQUE"/> yes <span class="note">(opaque: event status affects your free/busy)</span><br/>690 <input type="radio" name="event.transparency" value="TRANSPARENT" checked="checked"/> no <span class="note">(transparent: event status does not affect your free/busy)</span>363 <input type="radio" name="event.transparency" value="OPAQUE"/><xsl:value-of select="$eventform.bweventtab.yes"/> <span class="note"><xsl:value-of select="$eventform.bweventtab.statusAffectsFreeBusy"/></span><br/> 364 <input type="radio" name="event.transparency" value="TRANSPARENT" checked="checked"/><xsl:value-of select="$eventform.bweventtab.no"/> <span class="note"><xsl:value-of select="$eventform.bweventtab.statusNoAffectsFreeBusy"/></span> 691 365 </xsl:when> 692 366 <xsl:otherwise> 693 <input type="radio" name="event.transparency" value="OPAQUE" checked="checked"/> yes <span class="note">(opaque: event status affects your free/busy)</span><br/>694 <input type="radio" name="event.transparency" value="TRANSPARENT"/> no <span class="note">(transparent: event status does not affect your free/busy)</span>367 <input type="radio" name="event.transparency" value="OPAQUE" checked="checked"/><xsl:value-of select="$eventform.bweventtab.yes"/> <span class="note"><xsl:value-of select="$eventform.bweventtab.statusAffectsFreeBusy"/></span><br/> 368 <input type="radio" name="event.transparency" value="TRANSPARENT"/><xsl:value-of select="$eventform.bweventtab.no"/> <span class="note"><xsl:value-of select="$eventform.bweventtab.statusNoAffectsFreeBusy"/></span> 695 369 </xsl:otherwise> 696 370 </xsl:choose> … … 700 374 </table> 701 375 </div> 702 376 </xsl:template> 377 378 <xsl:template match="formElements" mode="bwEventTab-Recurrence"> 379 <xsl:param name="subscriptionId"/> 380 <xsl:param name="calPath"/> 381 <xsl:param name="guid"/> 382 <xsl:param name="recurrenceId"/> 703 383 704 384 <!-- Recurrence tab --> 705 385 <!-- ============== --> 706 <div id="bwEventTab-Recurrence" class="invisible">707 386 <xsl:choose> 708 387 <xsl:when test="recurrenceId != ''"> 709 388 <!-- recurrence instances can not themselves recur, 710 389 so provide access to master event --> 711 <em> This event is a recurrence instance.</em><br/>712 <a href="{$editEvent}&subid={$subscriptionId}&calPath={$calPath}&guid={$guid}" title=" edit master (recurring event)">edit master event</a>390 <em><xsl:value-of select="$eventform.bweventtab.thisRecurrence"/></em><br/> 391 <a href="{$editEvent}&subid={$subscriptionId}&calPath={$calPath}&guid={$guid}" title="{$eventform.bweventtab.editMasterRecur}"><xsl:value-of select="$eventform.bweventtab.editMaster"/></a> 713 392 </xsl:when> 714 393 <xsl:otherwise> … … 719 398 <input type="radio" name="recurring" value="true" onclick="swapRecurrence(this)"> 720 399 <xsl:if test="form/recurringEntity = 'true'"><xsl:attribute name="checked">checked</xsl:attribute></xsl:if> 721 </input> event recurs400 </input> <xsl:value-of select="$eventform.bweventtab.eventRecurs"/> 722 401 <input type="radio" name="recurring" value="false" onclick="swapRecurrence(this)"> 723 402 <xsl:if test="form/recurringEntity = 'false'"><xsl:attribute name="checked">checked</xsl:attribute></xsl:if> 724 </input> event does not recur403 </input> <xsl:value-of select="$eventform.bweventtab.doesNotRecur"/> 725 404 </div> 726 405 … … 729 408 <xsl:if test="form/recurringEntity = 'true'"><xsl:attribute name="class">visible</xsl:attribute></xsl:if> 730 409 731 <h4> Recurrence Rules</h4>410 <h4><xsl:value-of select="$eventform.bweventtab.recurrenceRules"/></h4> 732 411 <!-- show or hide rrules fields when editing: --> 733 412 <xsl:if test="form/recurrence"> 734 413 <input type="checkbox" name="rrulesFlag" onclick="swapRrules(this)" value="on"/> 735 414 <span id="rrulesSwitch"> 736 change recurrence rules415 <xsl:value-of select="$eventform.bweventtab.changeRecurrence"/> 737 416 </span> 738 417 </xsl:if> … … 742 421 </xsl:if> 743 422 <input type="checkbox" name="rrulesUiSwitch" value="advanced" onchange="swapVisible(this,'advancedRrules')"/> 744 show advanced recurrence rules423 <xsl:value-of select="$eventform.bweventtab.showAdvancedRecur"/> 745 424 </span> 746 425 … … 750 429 more easily internationalized. --> 751 430 <div id="recurrenceInfo"> 752 Every431 <xsl:value-of select="$eventform.bweventtab.every"/> 753 432 <xsl:choose> 754 433 <xsl:when test="form/recurrence/interval > 1"> … … 758 437 <xsl:text> </xsl:text> 759 438 <xsl:choose> 760 <xsl:when test="form/recurrence/freq = 'HOURLY'"> hour</xsl:when>761 <xsl:when test="form/recurrence/freq = 'DAILY'"> day</xsl:when>762 <xsl:when test="form/recurrence/freq = 'WEEKLY'"> week</xsl:when>763 <xsl:when test="form/recurrence/freq = 'MONTHLY'"> month</xsl:when>764 <xsl:when test="form/recurrence/freq = 'YEARLY'"> year</xsl:when>439 <xsl:when test="form/recurrence/freq = 'HOURLY'"><xsl:value-of select="$eventform.bweventtab.hour"/></xsl:when> 440 <xsl:when test="form/recurrence/freq = 'DAILY'"><xsl:value-of select="$eventform.bweventtab.day"/></xsl:when> 441 <xsl:when test="form/recurrence/freq = 'WEEKLY'"><xsl:value-of select="$eventform.bweventtab.week"/></xsl:when> 442 <xsl:when test="form/recurrence/freq = 'MONTHLY'"><xsl:value-of select="$eventform.bweventtab.month"/></xsl:when> 443 <xsl:when test="form/recurrence/freq = 'YEARLY'"><xsl:value-of select="$eventform.bweventtab.year"/></xsl:when> 765 444 </xsl:choose><xsl:if test="form/recurrence/interval > 1">s</xsl:if> 766 445 <xsl:text> </xsl:text> … … 768 447 <xsl:if test="form/recurrence/byday"> 769 448 <xsl:for-each select="form/recurrence/byday/pos"> 770 <xsl:if test="position() != 1"> and</xsl:if>771 on449 <xsl:if test="position() != 1"> <xsl:value-of select="$eventform.bweventtab.and"/> </xsl:if> 450 <xsl:value-of select="$eventform.bweventtab.on"/> 772 451 <xsl:choose> 773 452 <xsl:when test="@val='1'"> 774 the first453 <xsl:value-of select="$eventform.bweventtab.theFirst"/> 775 454 </xsl:when> 776 455 <xsl:when test="@val='2'"> 777 the second456 <xsl:value-of select="$eventform.bweventtab.theSecond"/> 778 457 </xsl:when> 779 458 <xsl:when test="@val='3'"> 780 the third459 <xsl:value-of select="$eventform.bweventtab.theThird"/> 781 460 </xsl:when> 782 461 <xsl:when test="@val='4'"> 783 the fourth462 <xsl:value-of select="$eventform.bweventtab.theFourth"/> 784 463 </xsl:when> 785 464 <xsl:when test="@val='5'"> 786 the fifth465 <xsl:value-of select="$eventform.bweventtab.theFifth"/> 787 466 </xsl:when> 788 467 <xsl:when test="@val='-1'"> 789 the last468 <xsl:value-of select="$eventform.bweventtab.theLast"/> 790 469 </xsl:when> 791 470 <!-- don't output "every" --> … … 819 498 820 499 <xsl:if test="form/recurrence/bymonthday"> 821 on the500 <xsl:value-of select="$eventform.bweventtab.onThe"/> 822 501 <xsl:apply-templates select="form/recurrence/bymonthday/val" mode="weekMonthYearNumbers"/> 823 day<xsl:if test="form/recurrence/bymonthday/val[position()=2]">s</xsl:if> of the month502 <xsl:value-of select="$eventform.bweventtab.day"/><xsl:if test="form/recurrence/bymonthday/val[position()=2]"><xsl:value-of select="$eventform.bweventtab.plural"/></xsl:if> <xsl:value-of select="$eventform.bweventtab.ofTheMonth"/> 824 503 </xsl:if> 825 504 826 505 <xsl:if test="form/recurrence/byyearday"> 827 on the506 <xsl:value-of select="$eventform.bweventtab.onThe"/> 828 507 <xsl:apply-templates select="form/recurrence/byyearday/val" mode="weekMonthYearNumbers"/> 829 day<xsl:if test="form/recurrence/byyearday/val[position()=2]">s</xsl:if> of the year508 <xsl:value-of select="$eventform.bweventtab.day"/><xsl:if test="form/recurrence/byyearday/val[position()=2]"><xsl:value-of select="$eventform.bweventtab.plural"/></xsl:if> <xsl:value-of select="$eventform.bweventtab.ofTheYear"/> 830 509 </xsl:if> 831 510 832 511 <xsl:if test="form/recurrence/byweekno"> 833 in the512 <xsl:value-of select="$eventform.bweventtab.inThe"/> 834 513 <xsl:apply-templates select="form/recurrence/byweekno/val" mode="weekMonthYearNumbers"/> 835 week<xsl:if test="form/recurrence/byweekno/val[position()=2]">s</xsl:if> of the year514 <xsl:value-of select="$eventform.bweventtab.week"/><xsl:if test="form/recurrence/byweekno/val[position()=2]"><xsl:value-of select="$eventform.bweventtab.plural"/></xsl:if> <xsl:value-of select="$eventform.bweventtab.ofTheYear"/> 836 515 </xsl:if> 837 516 838 repeating517 <xsl:value-of select="$eventform.bweventtab.repeating"/> 839 518 <xsl:choose> 840 <xsl:when test="form/recurrence/count = '-1'"> forever</xsl:when>519 <xsl:when test="form/recurrence/count = '-1'"><xsl:value-of select="$eventform.bweventtab.forever"/></xsl:when> 841 520 <xsl:when test="form/recurrence/until"> 842 until<xsl:value-of select="substring(form/recurrence/until,1,4)"/>-<xsl:value-of select="substring(form/recurrence/until,5,2)"/>-<xsl:value-of select="substring(form/recurrence/until,7,2)"/>521 <xsl:value-of select="$eventform.bweventtab.until"/> <xsl:value-of select="substring(form/recurrence/until,1,4)"/>-<xsl:value-of select="substring(form/recurrence/until,5,2)"/>-<xsl:value-of select="substring(form/recurrence/until,7,2)"/> 843 522 </xsl:when> 844 523 <xsl:otherwise> 845 524 <xsl:value-of select="form/recurrence/count"/> 846 time<xsl:if test="form/recurrence/count > 1">s</xsl:if>525 <xsl:value-of select="$eventform.bweventtab.time"/><xsl:if test="form/recurrence/count > 1"><xsl:value-of select="$eventform.bweventtab.plural"/></xsl:if> 847 526 </xsl:otherwise> 848 527 </xsl:choose> … … 869 548 <tr> 870 549 <td id="recurrenceFrequency" rowspan="2"> 871 <em> Frequency:</em><br/>872 <input type="radio" name="freq" value="NONE" onclick="showRrules(this.value)" checked="checked"/> none<br/>550 <em><xsl:value-of select="$eventform.bweventtab.frequency"/>:</em><br/> 551 <input type="radio" name="freq" value="NONE" onclick="showRrules(this.value)" checked="checked"/><xsl:value-of select="$eventform.bweventtab.none"/><br/> 873 552 <!--<input type="radio" name="freq" value="HOURLY" onclick="showRrules(this.value)"/>hourly<br/>--> 874 <input type="radio" name="freq" value="DAILY" onclick="showRrules(this.value)"/> daily<br/>875 <input type="radio" name="freq" value="WEEKLY" onclick="showRrules(this.value)"/> weekly<br/>876 <input type="radio" name="freq" value="MONTHLY" onclick="showRrules(this.value)"/> monthly<br/>877 <input type="radio" name="freq" value="YEARLY" onclick="showRrules(this.value)"/> yearly553 <input type="radio" name="freq" value="DAILY" onclick="showRrules(this.value)"/><xsl:value-of select="$eventform.bweventtab.daily"/><br/> 554 <input type="radio" name="freq" value="WEEKLY" onclick="showRrules(this.value)"/><xsl:value-of select="$eventform.bweventtab.weekly"/><br/> 555 <input type="radio" name="freq" value="MONTHLY" onclick="showRrules(this.value)"/><xsl:value-of select="$eventform.bweventtab.monthly"/><br/> 556 <input type="radio" name="freq" value="YEARLY" onclick="showRrules(this.value)"/><xsl:value-of select="$eventform.bweventtab.yearly"/> 878 557 </td> 879 558 <!-- recurrence count, until, forever --> 880 559 <td id="recurrenceUntil"> 881 560 <div id="noneRecurrenceRules"> 882 no recurrence rules561 <xsl:value-of select="$eventform.bweventtab.noRecur"/> 883 562 </div> 884 563 <div id="recurrenceUntilRules" class="invisible"> 885 <em> Repeat:</em>564 <em><xsl:value-of select="$eventform.bweventtab.repeat"/>:</em> 886 565 <p> 887 <input type="radio" name="recurCountUntil" value=" forever">566 <input type="radio" name="recurCountUntil" value="{$eventform.bweventtab.forever}"> 888 567 <xsl:if test="not(form/recurring) or form/recurring/count = '-1'"> 889 568 <xsl:attribute name="checked">checked</xsl:attribute> 890 569 </xsl:if> 891 570 </input> 892 forever571 <xsl:value-of select="$eventform.bweventtab.forever"/> 893 572 <input type="radio" name="recurCountUntil" value="count" id="recurCount"> 894 573 <xsl:if test="form/recurring/count != '-1'"> … … 901 580 </xsl:if> 902 581 </input> 903 time(s)904 <input type="radio" name="recurCountUntil" value=" until" id="recurUntil">582 <xsl:value-of select="$eventform.bweventtab.times"/> 583 <input type="radio" name="recurCountUntil" value="${eventform.bweventtab.until}" id="recurUntil"> 905 584 <xsl:if test="form/recurring/until"> 906 585 <xsl:attribute name="checked">checked</xsl:attribute> 907 586 </xsl:if> 908 587 </input> 909 until588 <xsl:value-of select="$eventform.bweventtab.until"/> 910 589 <span id="untilHolder"> 911 590 <span dojoType="dropdowndatepicker" formatLength="medium" value="today" saveFormat="yyyyMMdd" id="bwEventWidgetUntilDate" iconURL="{$resourcesRoot}/resources/calIcon.gif"> … … 923 602 <div id="hourlyRecurrenceRules" class="invisible"> 924 603 <p> 925 <em> Interval:</em>926 every604 <em><xsl:value-of select="$eventform.bweventtab.interval"/>:</em> 605 <xsl:value-of select="$eventform.bweventtab.every"/> 927 606 <input type="text" name="hourlyInterval" size="2" value="1"> 928 607 <xsl:if test="form/recurrence/interval"> … … 930 609 </xsl:if> 931 610 </input> 932 hour(s)611 <xsl:value-of select="$eventform.bweventtab.hours"/> 933 612 </p> 934 613 </div> … … 936 615 <div id="dailyRecurrenceRules" class="invisible"> 937 616 <p> 938 <em> Interval:</em>939 every617 <em><xsl:value-of select="$eventform.bweventtab.interval"/>:</em> 618 <xsl:value-of select="$eventform.bweventtab.every"/> 940 619 <input type="text" name="dailyInterval" size="2" value="1"> 941 620 <xsl:if test="form/recurrence/interval"> … … 943 622 </xsl:if> 944 623 </input> 945 day(s)624 <xsl:value-of select="$eventform.bweventtab.days"/> 946 625 </p> 947 626 <p> 948 627 <input type="checkbox" name="swapDayMonthCheckBoxList" value="" onclick="swapVisible(this,'dayMonthCheckBoxList')"/> 949 in these months:628 <xsl:value-of select="$eventform.bweventtab.inTheseMonths"/>: 950 629 <div id="dayMonthCheckBoxList" class="invisible"> 951 630 <xsl:for-each select="/bedework/monthlabels/val"> … … 971 650 <div id="weeklyRecurrenceRules" class="invisible"> 972 651 <p> 973 <em> Interval:</em>974 every652 <em><xsl:value-of select="$eventform.bweventtab.interval"/>:</em> 653 <xsl:value-of select="$eventform.bweventtab.every"/> 975 654 <input type="text" name="weeklyInterval" size="2" value="1"> 976 655 <xsl:if test="form/recurrence/interval"> … … 978 657 </xsl:if> 979 658 </input> 980 week(s) on:659 <xsl:value-of select="$eventform.bweventtab.weeksOn"/>: 981 660 </p> 982 661 <p> … … 988 667 </p> 989 668 <p class="weekRecurLinks"> 990 <a href="javascript:recurSelectWeekdays('weekRecurFields')"> select weekdays</a> |991 <a href="javascript:recurSelectWeekends('weekRecurFields')"> select weekends</a>669 <a href="javascript:recurSelectWeekdays('weekRecurFields')"><xsl:value-of select="$eventform.bweventtab.selectWeekdays"/></a> | 670 <a href="javascript:recurSelectWeekends('weekRecurFields')"><xsl:value-of select="$eventform.bweventtab.selectWeekends"/></a> 992 671 </p> 993 672 <p> 994 Week start:673 <xsl:value-of select="$eventform.bweventtab.weekStart"/>: 995 674 <select name="weekWkst"> 996 675 <xsl:for-each select="/bedework/shortdaynames/val"> … … 1007 686 <div id="monthlyRecurrenceRules" class="invisible"> 1008 687 <p> 1009 <em> Interval:</em>1010 every688 <em><xsl:value-of select="$eventform.bweventtab.interval"/>:</em> 689 <xsl:value-of select="$eventform.bweventtab.every"/> 1011 690 <input type="text" name="monthlyInterval" size="2" value="1"> 1012 691 <xsl:if test="form/recurrence/interval"> … … 1014 693 </xsl:if> 1015 694 </input> 1016 month(s)695 <xsl:value-of select="$eventform.bweventtab.months"/> 1017 696 </p> 1018 697 <div id="monthRecurFields"> 1019 698 <div id="monthRecurFields1"> 1020 on699 <xsl:value-of select="$eventform.bweventtab.on"/> 1021 700 <select name="bymonthposPos1" width="7em" onchange="changeClass('monthRecurFields2','shown')"> 1022 701 <xsl:call-template name="recurrenceDayPosOptions"/> … … 1032 711 <p> 1033 712 <input type="checkbox" name="swapMonthDaysCheckBoxList" value="" onclick="swapVisible(this,'monthDaysCheckBoxList')"/> 1034 on these days:<br/>713 <xsl:value-of select="$eventform.bweventtab.inTheseDays"/>:<br/> 1035 714 <div id="monthDaysCheckBoxList" class="invisible"> 1036 715 <xsl:call-template name="buildCheckboxList"> … … 1045 724 <div id="yearlyRecurrenceRules" class="invisible"> 1046 725 <p> 1047 <em> Interval:</em>1048 every726 <em><xsl:value-of select="$eventform.bweventtab.interval"/>:</em> 727 <xsl:value-of select="$eventform.bweventtab.every"/> 1049 728 <input type="text" name="yearlyInterval" size="2" value="1"> 1050 729 <xsl:if test="form/recurrence/interval"> … … 1052 731 </xsl:if> 1053 732 </input> 1054 years(s)733 <xsl:value-of select="$eventform.bweventtab.years"/> 1055 734 </p> 1056 735 <div id="yearRecurFields"> 1057 736 <div id="yearRecurFields1"> 1058 on737 <xsl:value-of select="$eventform.bweventtab.on"/> 1059 738 <select name="byyearposPos1" width="7em" onchange="changeClass('yearRecurFields2','shown')"> 1060 739 <xsl:call-template name="recurrenceDayPosOptions"/> … … 1070 749 <p> 1071 750 <input type="checkbox" name="swapYearMonthCheckBoxList" value="" onclick="swapVisible(this,'yearMonthCheckBoxList')"/> 1072 in these months:751 <xsl:value-of select="$eventform.bweventtab.inTheseMonths"/>: 1073 752 <div id="yearMonthCheckBoxList" class="invisible"> 1074 753 <xsl:for-each select="/bedework/monthlabels/val"> … … 1086 765 <p> 1087 766 <input type="checkbox" name="swapYearMonthDaysCheckBoxList" value="" onclick="swapVisible(this,'yearMonthDaysCheckBoxList')"/> 1088 on these days of the month:<br/>767 <xsl:value-of select="$eventform.bweventtab.onTheseDaysMonth"/>:<br/> 1089 768 <div id="yearMonthDaysCheckBoxList" class="invisible"> 1090 769 <xsl:call-template name="buildCheckboxList"> … … 1097 776 <p> 1098 777 <input type="checkbox" name="swapYearWeeksCheckBoxList" value="" onclick="swapVisible(this,'yearWeeksCheckBoxList')"/> 1099 in these weeks of the year:<br/>778 <xsl:value-of select="$eventform.bweventtab.inTheseWeeks"/>:<br/> 1100 779 <div id="yearWeeksCheckBoxList" class="invisible"> 1101 780 <xsl:call-template name="buildCheckboxList"> … … 1108 787 <p> 1109 788 <input type="checkbox" name="swapYearDaysCheckBoxList" value="" onclick="swapVisible(this,'yearDaysCheckBoxList')"/> 1110 on these days of the year:<br/>789 <xsl:value-of select="$eventform.bweventtab.onTheseDaysYear"/>:<br/> 1111 790 <div id="yearDaysCheckBoxList" class="invisible"> 1112 791 <xsl:call-template name="buildCheckboxList"> … … 1118 797 </p> 1119 798 <p> 1120 Week start:799 <xsl:value-of select="$eventform.bweventtab.weekStart"/>: 1121 800 <select name="yearWkst"> 1122 801 <xsl:for-each select="/bedework/shortdaynames/val"> … … 1135 814 1136 815 <h4> 1137 Recurrence and Exception Dates816 <xsl:value-of select="$eventform.bweventtab.recurrenceAndException"/> 1138 817 </h4> 1139 818 <div id="raContent"> … … 1141 820 <!-- dateonly event: this is temporary - should be determined by the main event --> 1142 821 <input type="checkbox" name="dateOnly" id="rdateDateOnly" onclick="swapRdateAllDay(this)" value="true"/> 1143 all day822 <xsl:value-of select="$eventform.bweventtab.allDay"/> 1144 823 <!-- floating event: no timezone (and not UTC) --> 1145 824 <input type="checkbox" name="floating" id="rdateFloating" onclick="swapRdateFloatingTime(this)" value="true"/> 1146 floating825 <xsl:value-of select="$eventform.bweventtab.floating"/> 1147 826 <!-- store time as coordinated universal time (UTC) --> 1148 827 <input type="checkbox" name="storeUTC" id="rdateStoreUTC" onclick="swapRdateStoreUTC(this)" value="true"/> 1149 store as UTC<br/>828 <xsl:value-of select="$eventform.bweventtab.storeAsUTC"/><br/> 1150 829 <div class="dateFields"> 1151 830 <input name="eventRdate.date" … … 1202 881 <select name="tzid" id="rdateTzid" class="timezones"> 1203 882 <xsl:if test="form/floating/input/@checked='checked'"><xsl:attribute name="disabled">disabled</xsl:attribute></xsl:if> 1204 <option value=""> select timezone...</option>883 <option value=""><xsl:value-of select="$eventform.bweventtab.selectTimezone"/></option> 1205 884 <xsl:variable name="rdateTzId" select="/bedework/now/defaultTzid"/> 1206 885 <xsl:for-each select="/bedework/timezones/timezone"> … … 1221 900 <!-- if there are no recurrence dates, the following table will show --> 1222 901 <table cellspacing="0" class="invisible" id="bwCurrentRdatesNone"> 1223 <tr><th> Recurrence Dates</th></tr>1224 <tr><td> No recurrence dates</td></tr>902 <tr><th><xsl:value-of select="$eventform.bweventtab.recurDates"/></th></tr> 903 <tr><td><xsl:value-of select="$eventform.bweventtab.noRecurDates"/></td></tr> 1225 904 </table> 1226 905 … … 1228 907 <table cellspacing="0" class="invisible" id="bwCurrentRdates"> 1229 908 <tr> 1230 <th colspan="4"> Recurrence Dates</th>909 <th colspan="4"><xsl:value-of select="$eventform.bweventtab.recurDates"/></th> 1231 910 </tr> 1232 911 <tr class="colNames"> 1233 <td> Date</td>1234 <td> Time</td>1235 <td> TZid</td>912 <td><xsl:value-of select="$eventform.bweventtab.date"/></td> 913 <td><xsl:value-of select="$eventform.bweventtab.time"/></td> 914 <td><xsl:value-of select="$eventform.bweventtab.tzid"/></td> 1236 915 <td></td> 1237 916 </tr> … … 1241 920 <!-- if there are no exception dates, the following table will show --> 1242 921 <table cellspacing="0" class="invisible" id="bwCurrentExdatesNone"> 1243 <tr><th> Exception Dates</th></tr>1244 <tr><td> No exception dates</td></tr>922 <tr><th><xsl:value-of select="$eventform.bweventtab.exceptionDates"/></th></tr> 923 <tr><td><xsl:value-of select="$eventform.bweventtab.noExceptionDates"/></td></tr> 1245 924 </table> 1246 925 … … 1248 927 <table cellspacing="0" class="invisible" id="bwCurrentExdates"> 1249 928 <tr> 1250 <th colspan="4"> Exception Dates</th>929 <th colspan="4"><xsl:value-of select="$eventform.bweventtab.exceptionDates"/></th> 1251 930 </tr> 1252 931 <tr class="colNames"> 1253 <td> Date</td>1254 <td> Time</td>1255 <td> TZid</td>932 <td><xsl:value-of select="$eventform.bweventtab.date"/></td> 933 <td><xsl:value-of select="$eventform.bweventtab.time"/></td> 934 <td><xsl:value-of select="$eventform.bweventtab.tzid"/></td> 1256 935 <td></td> 1257 936 </tr> 1258 937 </table> 1259 938 <p> 1260 Exception dates may also be created by deleting an instance 1261 of a recurring event. 939 <xsl:value-of select="$eventform.bweventtab.exceptionDates"/> 1262 940 </p> 1263 941 </div> … … 1266 944 </xsl:otherwise> 1267 945 </xsl:choose> 1268 </div> 946 </xsl:template> 947 948 <xsl:template match="formElements" mode="bwEventTab-Access"> 949 <xsl:param name="calPathEncoded"/> 950 <xsl:param name="guid"/> 951 <xsl:param name="recurrenceId"/> 1269 952 1270 953 <!-- Access tab --> … … 1283 966 </xsl:when> 1284 967 <xsl:otherwise> 1285 <h3> Current Access:</h3>968 <h3><xsl:value-of select="$eventform.bweventtab.currentAccess"/>:</h3> 1286 969 <table class="common scheduling" id="bwCurrentAccess"> 1287 970 <thead> 1288 971 <tr> 1289 <th> Entry</th>1290 <th> Access</th>1291 <th> Inherited from</th>972 <th><xsl:value-of select="$eventform.bweventtab.entry"/></th> 973 <th><xsl:value-of select="$eventform.bweventtab.access"/></th> 974 <th><xsl:value-of select="$eventform.bweventtab.inherited"/></th> 1292 975 <td></td> 1293 976 </tr> … … 1295 978 <tbody> 1296 979 <tr id="bwEventNoAcl"> 1297 <td colspan="4"> no access defined</td>980 <td colspan="4"><xsl:value-of select="$eventform.bweventtab.noAccessDef"/></td> 1298 981 </tr> 1299 982 </tbody> … … 1306 989 </div> 1307 990 </div> 1308 991 </xsl:template> 992 993 <xsl:template match="formElements" mode="bwEventTab-Scheduling"> 1309 994 <!-- Scheduling tab --> 1310 995 <!-- ============== --> … … 1325 1010 <xsl:choose> 1326 1011 <xsl:when test="form/scheduleMethod = '2'"> 1327 <input name="editEventAttendees" type="submit" value=" edit attendees and recipients"/>1012 <input name="editEventAttendees" type="submit" value="{$eventform.bweventtab.editAttendeeRecip}"/> 1328 1013 </xsl:when> 1329 1014 <xsl:otherwise> 1330 1015 <xsl:choose> 1331 1016 <xsl:when test="form/entityType = '2'"> 1332 <input name="makeEventIntoMeeting" type="submit" value=" schedule this task with other users"/>1017 <input name="makeEventIntoMeeting" type="submit" value="{$eventform.bweventtab.scheduleTaskUser}"/> 1333 1018 </xsl:when> 1334 1019 <xsl:otherwise> 1335 <input name="makeEventIntoMeeting" type="submit" value=" make into meeting - invite attendees and recipients"/>1020 <input name="makeEventIntoMeeting" type="submit" value="{$eventform.bweventtab.makeIntoMeet}"/> 1336 1021 </xsl:otherwise> 1337 1022 </xsl:choose> … … 1340 1025 </p> 1341 1026 </div> 1342 </div>1343 1344 <div class="eventSubmitButtons">1345 <xsl:choose>1346 <xsl:when test="form/scheduleMethod = '2'">1347 <input name="submit" type="submit" value="save"/>1348 <input name="submitAndSend" type="submit" value="save & send invitations"/>1349 </xsl:when>1350 <xsl:otherwise>1351 <input name="submit" type="submit" value="save"/>1352 </xsl:otherwise>1353 </xsl:choose>1354 <input name="cancelled" type="submit" value="cancel"/>1355 1027 </div> 1356 1028 </xsl:template> … … 1406 1078 1407 1079 <xsl:template name="recurrenceDayPosOptions"> 1408 <option value="0"> none</option>1409 <option value="1"> the first</option>1410 <option value="2"> the second</option>1411 <option value="3"> the third</option>1412 <option value="4"> the fourth</option>1413 <option value="5"> the fifth</option>1414 <option value="-1"> the last</option>1415 <option value=""> every</option>1080 <option value="0"><xsl:value-of select="$eventform.bweventtab.none"/></option> 1081 <option value="1"><xsl:value-of select="$eventform.bweventtab.theFirst"/></option> 1082 <option value="2"><xsl:value-of select="$eventform.bweventtab.theSecond"/></option> 1083 <option value="3"><xsl:value-of select="$eventform.bweventtab.theThird"/></option> 1084 <option value="4"><xsl:value-of select="$eventform.bweventtab.theFourth"/></option> 1085 <option value="5"><xsl:value-of select="$eventform.bweventtab.theFifth"/></option> 1086 <option value="-1"><xsl:value-of select="$eventform.bweventtab.theLast"/></option> 1087 <option value=""><xsl:value-of select="$eventform.bweventtab.every"/></option> 1416 1088 </xsl:template> 1417 1089 … … 1422 1094 <div class="invisible"> 1423 1095 <xsl:attribute name="id"><xsl:value-of select="$name"/>RecurFields<xsl:value-of select="$current"/></xsl:attribute> 1424 and1096 <xsl:value-of select="$eventform.bweventtab.and"/> 1425 1097 <select width="12em"> 1426 <xsl:attribute name="name"> by<xsl:value-of select="$name"/>posPos<xsl:value-of select="$current"/></xsl:attribute>1098 <xsl:attribute name="name"><xsl:value-of select="$eventform.bweventtab.by"/><xsl:value-of select="$name"/>posPos<xsl:value-of select="$current"/></xsl:attribute> 1427 1099 <xsl:if test="$current != $total"> 1428 1100 <xsl:attribute name="onchange">changeClass('<xsl:value-of select="$name"/>RecurFields<xsl:value-of select="$current+1"/>','shown')</xsl:attribute> … … 1444 1116 <h2> 1445 1117 <span class="formButtons"><input type="button" value="continue" onclick="window.location='{$gotoEditEvent}'"/></span> 1446 Schedule Meeting or Task1118 <xsl:value-of select="$eventform.attendees.scheduleMeet"/> 1447 1119 </h2> 1448 1120 1449 1121 <div id="recipientsAndAttendees"> 1450 <h4> Add attendees and recipients</h4>1122 <h4> <xsl:value-of select="$eventform.attendees.addAttendeeRecip"/></h4> 1451 1123 <form name="raForm" id="recipientsAndAttendeesForm" action="{$event-attendeesForEvent}" method="post"> 1452 1124 <div id="raContent"> 1453 1125 <div id="raFields"> 1454 1126 <input name="uri" width="40" id="bwRaUri"/> 1455 <input type="submit" value=" add" />1127 <input type="submit" value="{$eventform.attendees.add}" /> 1456 1128   1457 <input type="checkbox" name="recipient" value="true" checked="checked"/> recipient1458 <input type="checkbox" name="attendee" value="true" checked="checked"/> attendee1129 <input type="checkbox" name="recipient" value="true" checked="checked"/> <xsl:value-of select="$eventform.attendees.recipient"/> 1130 <input type="checkbox" name="attendee" value="true" checked="checked"/> <xsl:value-of select="$eventform.attendees.attendee"/> 1459 1131   1460 Role:1132 <xsl:value-of select="$eventform.attendees.role"/>: 1461 1133 <select name="role"> 1462 <option value="REQ-PARTICIPANT"> required participant</option>1463 <option value="OPT-PARTICIPANT"> optional participant</option>1464 <option value="CHAIR"> chair</option>1465 <option value="NON-PARTICIPANT"> non-participant</option>1134 <option value="REQ-PARTICIPANT"><xsl:value-of select="$eventform.attendees.reqPart"/></option> 1135 <option value="OPT-PARTICIPANT"><xsl:value-of select="$eventform.attendees.optPart"/></option> 1136 <option value="CHAIR"><xsl:value-of select="$eventform.attendees.chair"/></option> 1137 <option value="NON-PARTICIPANT"><xsl:value-of select="$eventform.attendees.nonPart"/></option> 1466 1138 </select> 1467 1139   1468 Status:1140 <xsl:value-of select="$eventform.attendees.status"/>: 1469 1141 <select name="partstat"> 1470 <option value="NEEDS-ACTION"> needs action</option>1471 <option value="ACCEPTED"> accepted</option>1472 <option value="DECLINED"> declined</option>1473 <option value="TENTATIVE"> tentative</option>1474 <option value="DELEGATED"> delegated</option>1142 <option value="NEEDS-ACTION"><xsl:value-of select="$eventform.attendees.needsAction"/></option> 1143 <option value="ACCEPTED"><xsl:value-of select="$eventform.attendees.accepted"/></option> 1144 <option value="DECLINED"><xsl:value-of select="$eventform.attendees.declined"/></option> 1145 <option value="TENTATIVE"><xsl:value-of select="$eventform.attendees.tentative"/></option> 1146 <option value="DELEGATED"><xsl:value-of select="$eventform.attendees.delegated"/></option> 1475 1147 </select> 1476 1148 </div> … … 1501 1173 <table id="recipients" class="widget" cellspacing="0"> 1502 1174 <tr> 1503 <th colspan="2"> Recipients</th>1175 <th colspan="2"><xsl:value-of select="$eventform.recipients.recipients"/></th> 1504 1176 </tr> 1505 1177 <tr class="subHead"> 1506 1178 <xsl:if test="$trash = 'yes'"><td></td></xsl:if> 1507 <td> recipient</td>1179 <td><xsl:value-of select="$eventform.attendees.recipient"/></td> 1508 1180 </tr> 1509 1181 <xsl:for-each select="recipient"> … … 1512 1184 <xsl:if test="$trash = 'yes'"> 1513 1185 <td class="trash"> 1514 <a href="{$event-attendeesForEvent}&uri={$recipientUri}&recipient=true&delete=true" title=" remove">1515 <img src="{$resourcesRoot}/resources/trashIcon.gif" width="13" height="13" border="0" alt=" remove"/>1186 <a href="{$event-attendeesForEvent}&uri={$recipientUri}&recipient=true&delete=true" title="{$eventform.recipients.remove}"> 1187 <img src="{$resourcesRoot}/resources/trashIcon.gif" width="13" height="13" border="0" alt="{$eventform.recipients.remove}"/> 1516 1188 </a> 1517 1189 </td> … … 1527 1199 </xsl:template> 1528 1200 1529 <xsl:template name="entityAccessForm"> 1530 <xsl:param name="type"/><!-- optional: currently used for inbox and outbox to conditionally display scheduling access --> 1531 <xsl:param name="method">1</xsl:param><!-- optional: 1532 there are two methods of setting access 1533 - method 1, the older method, uses a single request/response per principal 1534 - method 2 constructs a javascript object that commits the entire ACL 1535 structure in a single request 1536 Both methods are currently supported. Method one is used for calendars, 1537 method two for setting event access. At some point we may move all access 1538 control setting to method two. --> 1539 <xsl:param name="acl"/><!-- nodeset of entity acls used to initialize 1540 javascript object. Required for method two. --> 1541 1542 <table cellpadding="0" id="shareFormTable" class="common"> 1543 <tr> 1544 <th colspan="2" class="commonHeader">Add:</th> 1545 </tr> 1546 <tr> 1547 <td> 1548 <h5>Who:</h5> 1549 <div class="whoTypes"> 1550 <input type="text" name="who" size="20"/><br/> 1551 <input type="radio" value="user" name="whoType" checked="checked"/> user 1552 <input type="radio" value="group" name="whoType"/> group 1553 <p>OR</p> 1554 <p> 1555 <input type="radio" value="owner" name="whoType"/> owner<br/> 1556 <input type="radio" value="auth" name="whoType"/> authenticated<br/> 1557 <input type="radio" value="unauth" name="whoType"/> unauthenticated<br/> 1558 <input type="radio" value="all" name="whoType"/> all users 1559 </p> 1560 </div> 1561 </td> 1562 <td> 1563 <h5> 1564 <span id="accessRightsToggle"> 1565 <xsl:choose> 1566 <xsl:when test="/bedework/appvar[key='accessRightsToggle']/value='advanced'"> 1567 <input type="radio" name="setappvar" value="accessRightsToggle(basic)" onclick="changeClass('howList','visible');changeClass('howTable','invisible');"/>basic 1568 <input type="radio" name="setappvar" value="accessRightsToggle(advanced)" checked="checked" onclick="changeClass('howList','invisible');changeClass('howTable','visible');"/>advanced 1569 </xsl:when> 1570 <xsl:otherwise> 1571 <input type="radio" name="setappvar" value="accessRightsToggle(basic)" checked="checked" onclick="changeClass('howList','visible');changeClass('howTable','invisible');"/>basic 1572 <input type="radio" name="setappvar" value="accessRightsToggle(advanced)" onclick="changeClass('howList','invisible');changeClass('howTable','visible');"/>advanced 1573 </xsl:otherwise> 1574 </xsl:choose> 1575 </span> 1576 Rights: 1577 </h5> 1578 <input type="hidden" name="how" value="" id="bwCurrentHow"/> 1579 <!-- field 'acl' will receive xml for method 2 --> 1580 <input type="hidden" name="acl" value="" id="bwCurrentAcl" /> 1581 <!-- Advanced Access Rights: --> 1582 <!-- the "how" field is set by iterating over the howItems below --> 1583 <table id="howTable" class="invisible" cellspacing="0"> 1584 <xsl:if test="/bedework/appvar[key='accessRightsToggle']/value='advanced'"> 1585 <xsl:attribute name="class">visible</xsl:attribute> 1586 </xsl:if> 1587 <tr> 1588 <th>access type</th> 1589 <th>allow</th> 1590 <th>deny</th> 1591 </tr> 1592 <tr> 1593 <td class="level1"> 1594 <input type="checkbox" value="A" name="howItem" onclick="setupAccessForm(this, this.form); toggleAllowDenyFlag(this, this.form)"/>All 1595 </td> 1596 <td> 1597 <input type="radio" value="A" name="A" checked="checked" disabled="disabled"/> 1598 </td> 1599 <td> 1600 <input type="radio" value="-A" name="A" disabled="disabled"/>
