Changeset 1229
- Timestamp:
- 01/18/07 04:38:11
- Files:
-
- trunk/deployment/webadmin/webapp/resources/default/default/default.css (modified) (10 diffs)
- trunk/deployment/webadmin/webapp/resources/default/default/default.xsl (modified) (14 diffs)
- trunk/deployment/webadmin/webapp/resources/resources/bedework.js (added)
- trunk/deployment/webadmin/webapp/resources/resources/bedeworkEventForm.js (added)
- trunk/deployment/webadmin/webapp/resources/resources/bwClock.js (modified) (2 diffs)
- trunk/deployment/webadmin/webapp/resources/resources/glassFill-02.gif (added)
- trunk/deployment/webuser/webapp/resources/demoskins/default/default/default.css (modified) (2 diffs)
- trunk/deployment/webuser/webapp/resources/demoskins/default/default/default.xsl (modified) (5 diffs)
- trunk/deployment/webuser/webapp/resources/demoskins/resources/bedeworkEventForm.js (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/deployment/webadmin/webapp/resources/default/default/default.css
r1179 r1229 26 26 } 27 27 #messages { 28 background-color: inherit;28 background-color: #333; 29 29 color: #ff0; 30 30 font-weight: bold; … … 35 35 } 36 36 #errors { 37 background-color: inherit;37 background-color: #333; 38 38 color: #f99; 39 39 font-weight: bold; … … 41 41 } 42 42 #errors em { 43 background-color: inherit;43 background-color: #333; 44 44 color: #ff9; 45 45 } … … 297 297 padding: 0.2em; 298 298 } 299 table.eventFormTable.dateFields {299 .dateFields { 300 300 display: inline; 301 301 } 302 table.eventFormTable.timeFields {302 .timeFields { 303 303 display: inline; 304 304 margin-left: 1em; … … 312 312 margin-bottom: 0.5em; 313 313 } 314 table.eventFormTable.dateStartEndBox {314 .dateStartEndBox { 315 315 border: 1px solid #ccb; 316 316 margin: 4px; … … 318 318 white-space: nowrap; 319 319 } 320 table.eventFormTable.dateStartEndBox strong {320 .dateStartEndBox strong { 321 321 display: block; 322 322 } … … 328 328 width: 160px; 329 329 } 330 table.eventFormTable.shown {330 .shown { 331 331 display: inline; 332 332 } 333 table.eventFormTable .invisible,334 333 .invisible { 335 334 display: none !important; … … 428 427 } 429 428 #clock { 430 position: relative; 429 position: absolute; 430 top: 160px; 431 margin: auto; 432 } 433 #startTimeFields img, 434 #endTimeFields img { 435 vertical-align: middle; 431 436 } 432 437 #tztable { … … 436 441 padding: 2px 4px; 437 442 } 443 #recurringSwitch { 444 margin: 0; 445 } 438 446 #recurrenceInfo { 439 font-size: 0.9em; 440 font-style: italic; 441 margin-bottom: 0.5em; 442 } 443 #recurrenceFields #recurrenceTable strong { 447 margin: 0; 448 padding: 1em; 449 border: 1px solid #ddd; 450 font-size: 0.9em; 451 } 452 #rrulesSwitch, 453 #rrulesUiSwitch { 454 font-size: 0.8em; 455 } 456 #rrulesFields { 457 margin: 0; 458 padding: 0; 459 } 460 #rrulesTable { 461 border: 1px solid #ddd; 462 margin: 0; 463 padding: 0; 464 } 465 #rrulesTable strong { 444 466 display: inline; 445 467 } 446 #recurrenceFields #recurrenceTable td.recurrenceFrequency { 447 padding: 0.5em 1em 0 0; 448 } 449 #recurrenceFields #recurrenceTable td.recurrenceRules { 450 padding: 0.5em 0 0.5em 1em; 451 border-left: 1px solid #ddd; 452 } 453 #recurrenceFields #recurrenceTable td.recurrenceUntil { 468 #rrulesTable td#recurrenceFrequency { 469 padding: 0.5em 1em; 470 border-right: 1px solid #ddd; 471 } 472 #rrulesTable td#advancedRrules { 473 padding: 0.5em 1em 0.5em 1em; 474 border-top: 1px solid #ddd; 475 } 476 #rrulesTable td#recurrenceUntil { 454 477 width: 100%; 455 478 padding: 0.5em 0 0 1em; 456 border-left: 1px solid #ddd;457 }458 #recurrenceFields #recurrenceTable td.recurrenceRules #advancedRecurrenceRules {459 display: block;460 border-bottom: 1px solid #ddd;461 }462 #recurrenceFields #recurrenceTable td.recurrenceRules .rruleBlock {463 margin: 0 0 0.5em 2em;464 479 } 465 480 .chkBoxListItem { … … 468 483 width: 3em; 469 484 } 470 #r ecurrenceFields #recurrenceTable br {485 #rrulesTable br { 471 486 clear: both; 472 487 } 473 #r ecurrenceFields #recurrenceTable p {488 #rrulesTable p { 474 489 margin: 0 0 0.5em 0; 475 490 } 476 #r ecurrenceFields #recurrenceTable p.weekRecurLinks {491 #rrulesTable p.weekRecurLinks { 477 492 margin: 1em 0 1em 0; 478 493 } 479 #r ecurrenceFields #recurrenceTable .extraByMonthPosFields {494 #rrulesTable .extraByMonthPosFields { 480 495 margin: 0 0 1em 2em; 481 496 padding: 0; 482 497 } 483 #r ecurrenceFields#monthRecurFields div,484 #r ecurrenceFields#yearRecurFields div {498 #rrulesTable #monthRecurFields div, 499 #rrulesTable #yearRecurFields div { 485 500 display: block; 486 501 margin: 0 0 0.5em 0; 487 502 } 488 #r ecurrenceFields#dayMonthCheckBoxList,489 #r ecurrenceFields#monthDaysCheckBoxList,490 #r ecurrenceFields#yearWeeksCheckBoxList,491 #r ecurrenceFields#yearMonthCheckBoxList,492 #r ecurrenceFields#yearMonthDaysCheckBoxList,493 #r ecurrenceFields#yearDaysCheckBoxList {503 #rrulesTable #dayMonthCheckBoxList, 504 #rrulesTable #monthDaysCheckBoxList, 505 #rrulesTable #yearWeeksCheckBoxList, 506 #rrulesTable #yearMonthCheckBoxList, 507 #rrulesTable #yearMonthDaysCheckBoxList, 508 #rrulesTable #yearDaysCheckBoxList { 494 509 margin: 0.5em 0 0.5em 2em; 495 510 display: block; 496 511 clear: both; 512 white-space: nowrap !important; 513 } 514 #recurrenceDatesButton input { 515 margin: 0; 516 font-size: 0.8em; 517 } 518 #rdatesFormFields { 519 font-size: 0.9em; 520 text-align: center; 521 } 522 #rdatesTable { 523 font-size: 0.9em; 524 border: 1px solid #ddd; 525 } 526 #rdatesTable td { 527 padding: 0.5em 1em; 528 } 529 #rdatesTable td.trash { 530 text-align: right; 531 } 532 #bwDialogBox { 533 margin: 0; 534 background: white; 535 color: black; 536 } 537 #bwDialogBox h4 { 538 padding: 4px; 539 margin: 0; 540 text-align: center; 541 color: #eee; 542 background: #233979 url(../../resources/glassFill-02.gif) repeat-x bottom; 543 border: 2px solid #233979; 544 } 545 #bwDialogBox #errors, 546 #bwDialogBox #messages { 547 margin: 0; 548 } 549 #bwDialogBox table { 550 width: 100%; 551 margin: 1em 0; 552 } 553 #bwDialogBox table th { 554 padding: 2px; 555 text-align: center; 556 color: black; 557 background: #eee; 497 558 } 498 559 #contactEmailAlert { trunk/deployment/webadmin/webapp/resources/default/default/default.xsl
r1226 r1229 82 82 <xsl:variable name="event-update" select="/bedeworkadmin/urlPrefixes/event/update/a/@href"/> 83 83 <xsl:variable name="event-selectCalForEvent" select="/bedeworkadmin/urlPrefixes/event/selectCalForEvent/a/@href"/> 84 <xsl:variable name="event-showRdates" select="/bedeworkadmin/urlPrefixes/event/showRdates"/> 85 <xsl:variable name="event-setRdate" select="/bedeworkadmin/urlPrefixes/event/setRdate"/> 84 86 <xsl:variable name="event-initUpload" select="/bedeworkadmin/urlPrefixes/event/initUpload/a/@href"/> 85 87 <xsl:variable name="event-upload" select="/bedeworkadmin/urlPrefixes/event/upload/a/@href"/> … … 192 194 <link rel="stylesheet" href="{$resourcesRoot}/default/default/default.css"/> 193 195 <link rel="stylesheet" href="{$resourcesRoot}/default/default/subColors.css"/> 194 <xsl:if test="/bedeworkadmin/page='modEvent'"> 195 <script type="text/javascript" src="{$resourcesRoot}/resources/includes.js"></script> 196 <script type="text/javascript" src="{$resourcesRoot}/resources/bwClock.js"></script> 196 <xsl:if test="/bedeworkadmin/page='modEvent' or 197 /bedeworkadmin/page='rdates'"> 198 <script type="text/javascript" src="{$resourcesRoot}/resources/bedework.js"> </script> 199 <script type="text/javascript" src="{$resourcesRoot}/resources/bwClock.js"> </script> 197 200 <link rel="stylesheet" href="{$resourcesRoot}/resources/bwClock.css"/> 198 <script type="text/javascript" src="{$resourcesRoot}/resources/dynCalendarWidget.js"></script> 199 <link rel="stylesheet" href="{$resourcesRoot}/resources/dynCalendarWidget.css"/> 200 <script type="text/javascript" src="{$resourcesRoot}/resources/browserSniffer.js"></script> 201 <script type="text/javascript" src="/bedework-common/javascript/dojo/dojo.js"> </script> 202 <script type="text/javascript" src="{$resourcesRoot}/resources/bedeworkEventForm.js"> </script> 201 203 </xsl:if> 202 204 <xsl:if test="/bedeworkadmin/page='upload' or /bedeworkadmin/page='selectCalForEvent'"> 203 <script type="text/javascript" src="{$resourcesRoot}/resources/ includes.js"></script>205 <script type="text/javascript" src="{$resourcesRoot}/resources/bedework.js"> </script> 204 206 </xsl:if> 205 207 <xsl:if test="/bedeworkadmin/page='calendarDescriptions' or /bedeworkadmin/page='displayCalendar'"> … … 224 226 <xsl:when test="/bedeworkadmin/page='selectCalForEvent'"> 225 227 <xsl:call-template name="selectCalForEvent"/> 228 </xsl:when> 229 <xsl:when test="/bedeworkadmin/page='rdates'"> 230 <xsl:call-template name="messagesAndErrors"/> 231 <xsl:call-template name="rdates"/> 226 232 </xsl:when> 227 233 <xsl:otherwise> … … 434 440 </h1> 435 441 436 <xsl:if test="/bedeworkadmin/message"> 437 <div id="messages"> 438 <p> 439 <xsl:apply-templates select="/bedeworkadmin/message"/> 440 </p> 441 </div> 442 </xsl:if> 443 <xsl:if test="/bedeworkadmin/error"> 444 <div id="errors"> 445 <p> 446 <xsl:apply-templates select="/bedeworkadmin/error"/> 447 </p> 448 </div> 449 </xsl:if> 442 <xsl:call-template name="messagesAndErrors"/> 450 443 451 444 </div> … … 484 477 CALENDAR of EVENTS 485 478 </div> 479 </xsl:template> 480 481 <xsl:template name="messagesAndErrors"> 482 <xsl:if test="/bedeworkadmin/message"> 483 <ul id="messages"> 484 <xsl:for-each select="/bedeworkadmin/message"> 485 <li><xsl:apply-templates select="."/></li> 486 </xsl:for-each> 487 </ul> 488 </xsl:if> 489 <xsl:if test="/bedeworkadmin/error"> 490 <ul id="errors"> 491 <xsl:for-each select="/bedeworkadmin/error"> 492 <li><xsl:apply-templates select="."/></li> 493 </xsl:for-each> 494 </ul> 495 </xsl:if> 486 496 </xsl:template> 487 497 … … 768 778 769 779 <xsl:variable name="modEventAction" select="form/@action"/> 770 <form name=" peForm" method="post" action="{$modEventAction}" onsubmit="setRecurrence(this)">780 <form name="eventForm" method="post" action="{$modEventAction}" onsubmit="setEventFields(this)"> 771 781 <table class="eventFormTable"> 772 782 <tr> … … 868 878 <div class="dateFields"> 869 879 <span class="startDateLabel">Date </span> 870 <xsl:copy-of select="form/start/month/*"/> 880 <span dojoType="dropdowndatepicker" formatLength="medium" value="today" saveFormat="yyyyMMdd" id="bwEventWidgetStartDate" iconURL="{$resourcesRoot}/resources/calIcon.gif"> 881 <xsl:attribute name="value"><xsl:value-of select="form/start/rfc3339DateTime"/></xsl:attribute> 882 <xsl:text> </xsl:text> 883 </span> 884 <input type="hidden" name="eventStartDate.year"> 885 <xsl:attribute name="value"><xsl:value-of select="form/start/yearText/input/@value"/></xsl:attribute> 886 </input> 887 <input type="hidden" name="eventStartDate.month"> 888 <xsl:attribute name="value"><xsl:value-of select="form/start/month/select/option[@selected = 'selected']/@value"/></xsl:attribute> 889 </input> 890 <input type="hidden" name="eventStartDate.day"> 891 <xsl:attribute name="value"><xsl:value-of select="form/start/day/select/option[@selected = 'selected']/@value"/></xsl:attribute> 892 </input> 893 <!--<xsl:copy-of select="form/start/month/*"/> 871 894 <xsl:copy-of select="form/start/day/*"/> 872 895 <xsl:choose> … … 877 900 <xsl:copy-of select="form/start/yearText/*"/> 878 901 </xsl:otherwise> 879 </xsl:choose> 902 </xsl:choose>--> 880 903 </div> 904 <!-- 881 905 <script language="JavaScript" type="text/javascript"> 882 906 <xsl:comment> 883 907 startDateDynCalWidget = new dynCalendar('startDateDynCalWidget', <xsl:value-of select="number(form/start/yearText/input/@value)"/>, <xsl:value-of select="number(form/start/month/select/option[@selected='selected']/@value)-1"/>, <xsl:value-of select="number(form/start/day/select/option[@selected='selected']/@value)"/>, 'startDateCalWidgetCallback',true,'<xsl:value-of select="$resourcesRoot"/>/resources/'); 884 908 </xsl:comment> 885 </script> 886 <!--<img src="{$resourcesRoot}/resources/calIcon.gif" width="16" height="15" border="0"/>--> 909 </script>--> 887 910 <div class="{$timeFieldsClass}" id="startTimeFields"> 888 911 <span id="calWidgetStartTimeHider" class="show"> … … 929 952 <div class="{$endDateTimeClass}" id="endDateTime"> 930 953 <div class="dateFields"> 931 <xsl:copy-of select="form/end/dateTime/month/*"/> 954 <span dojoType="dropdowndatepicker" formatLength="medium" value="today" saveFormat="yyyyMMdd" id="bwEventWidgetEndDate" iconURL="{$resourcesRoot}/resources/calIcon.gif"> 955 <xsl:attribute name="value"><xsl:value-of select="form/end/rfc3339DateTime"/></xsl:attribute> 956 <xsl:text> </xsl:text> 957 </span> 958 <input type="hidden" name="eventEndDate.year"> 959 <xsl:attribute name="value"><xsl:value-of select="form/end/dateTime/yearText/input/@value"/></xsl:attribute> 960 </input> 961 <input type="hidden" name="eventEndDate.month"> 962 <xsl:attribute name="value"><xsl:value-of select="form/end/dateTime/month/select/option[@selected = 'selected']/@value"/></xsl:attribute> 963 </input> 964 <input type="hidden" name="eventEndDate.day"> 965 <xsl:attribute name="value"><xsl:value-of select="form/end/dateTime/day/select/option[@selected = 'selected']/@value"/></xsl:attribute> 966 </input> 967 <!--<xsl:copy-of select="form/end/dateTime/month/*"/> 932 968 <xsl:copy-of select="form/end/dateTime/day/*"/> 933 969 <xsl:choose> … … 938 974 <xsl:copy-of select="form/end/dateTime/yearText/*"/> 939 975 </xsl:otherwise> 940 </xsl:choose> 976 </xsl:choose>--> 941 977 </div> 942 < script language="JavaScript" type="text/javascript">978 <!--<script language="JavaScript" type="text/javascript"> 943 979 <xsl:comment> 944 980 endDateDynCalWidget = new dynCalendar('endDateDynCalWidget', <xsl:value-of select="number(form/start/yearText/input/@value)"/>, <xsl:value-of select="number(form/start/month/select/option[@selected='selected']/@value)-1"/>, <xsl:value-of select="number(form/start/day/select/option[@selected='selected']/@value)"/>, 'endDateCalWidgetCallback',true,'<xsl:value-of select="$resourcesRoot"/>/resources/'); 945 981 </xsl:comment> 946 </script> 947 <!--<img src="{$resourcesRoot}/resources/calIcon.gif" width="16" height="15" border="0"/>--> 982 </script>--> 948 983 <div class="{$timeFieldsClass}" id="endTimeFields"> 949 984 <span id="calWidgetEndTimeHider" class="show"> … … 1065 1100 </td> 1066 1101 <td> 1067 <!-- Output descriptive recurrence information. Probably not1068 complete yet. Replace all freq strings so can be internationalized. -->1069 <xsl:if test="form/recurrence">1070 <div id="recurrenceInfo">1071 Every1072 <xsl:choose>1073 <xsl:when test="form/recurrence/interval > 1">1074 <xsl:value-of select="form/recurrence/interval"/>1075 </xsl:when>1076 </xsl:choose>1077 <xsl:text> </xsl:text>1078 <xsl:choose>1079 <xsl:when test="form/recurrence/freq = 'HOURLY'">hour</xsl:when>1080 <xsl:when test="form/recurrence/freq = 'DAILY'">day</xsl:when>1081 <xsl:when test="form/recurrence/freq = 'WEEKLY'">week</xsl:when>1082 <xsl:when test="form/recurrence/freq = 'MONTHLY'">month</xsl:when>1083 <xsl:when test="form/recurrence/freq = 'YEARLY'">year</xsl:when>1084 </xsl:choose><xsl:if test="form/recurrence/interval > 1">s</xsl:if>1085 <xsl:text> </xsl:text>1086 1087 <xsl:if test="form/recurrence/byday">1088 <xsl:for-each select="form/recurrence/byday/pos">1089 <xsl:if test="position() != 1"> and </xsl:if>1090 on1091 <xsl:choose>1092 <xsl:when test="@val='1'">1093 the first1094 </xsl:when>1095 <xsl:when test="@val='2'">1096 the second1097 </xsl:when>1098 <xsl:when test="@val='3'">1099 the third1100 </xsl:when>1101 <xsl:when test="@val='4'">1102 the fourth1103 </xsl:when>1104 <xsl:when test="@val='5'">1105 the fifth1106 </xsl:when>1107 <xsl:when test="@val='-1'">1108 the last1109 </xsl:when>1110 <!-- don't output "every" -->1111 <!--<xsl:otherwise>1112 every1113 </xsl:otherwise>-->1114 </xsl:choose>1115 <xsl:for-each select="day">1116 <xsl:if test="position() != 1 and position() = last()"> and </xsl:if>1117 <xsl:variable name="dayVal" select="."/>1118 <xsl:variable name="dayPos">1119 <xsl:for-each select="/bedeworkadmin/recurdayvals/val">1120 <xsl:if test="node() = $dayVal"><xsl:value-of select="position()"/></xsl:if>1121 </xsl:for-each>1122 </xsl:variable>1123 <xsl:value-of select="/bedeworkadmin/shortdaynames/val[position() = $dayPos]"/>1124 <xsl:if test="position() != last()">, </xsl:if>1125 </xsl:for-each>1126 </xsl:for-each>1127 </xsl:if>1128 1129 <xsl:if test="form/recurrence/bymonth">1130 in1131 <xsl:for-each select="form/recurrence/bymonth/val">1132 <xsl:if test="position() != 1 and position() = last()"> and </xsl:if>1133 <xsl:variable name="monthNum" select="number(.)"/>1134 <xsl:value-of select="/bedeworkadmin/monthlabels/val[position() = $monthNum]"/>1135 <xsl:if test="position() != last()">, </xsl:if>1136 </xsl:for-each>1137 </xsl:if>1138 1139 <xsl:if test="form/recurrence/bymonthday">1140 on the1141 <xsl:apply-templates select="form/recurrence/bymonthday/val" mode="weekMonthYearNumbers"/>1142 day<xsl:if test="form/recurrence/bymonthday/val[position()=2]">s</xsl:if> of the month1143 </xsl:if>1144 1145 <xsl:if test="form/recurrence/byyearday">1146 on the1147 <xsl:apply-templates select="form/recurrence/byyearday/val" mode="weekMonthYearNumbers"/>1148 day<xsl:if test="form/recurrence/byyearday/val[position()=2]">s</xsl:if> of the year1149 </xsl:if>1150 1151 <xsl:if test="form/recurrence/byweekno">1152 in the1153 <xsl:apply-templates select="form/recurrence/byweekno/val" mode="weekMonthYearNumbers"/>1154 week<xsl:if test="form/recurrence/byweekno/val[position()=2]">s</xsl:if> of the year1155 </xsl:if>1156 1157 repeating1158 <xsl:choose>1159 <xsl:when test="form/recurrence/count = '-1'">forever</xsl:when>1160 <xsl:when test="form/recurrence/until">1161 <xsl:value-of select="form/recurrence/until"/>1162 </xsl:when>1163 <xsl:otherwise>1164 <xsl:value-of select="form/recurrence/count"/>1165 time<xsl:if test="form/recurrence/count > 1">s</xsl:if>1166 </xsl:otherwise>1167 </xsl:choose>1168 </div>1169 </xsl:if>1170 1171 1172 <!-- recurrence rules -->1173 1102 <xsl:choose> 1174 1103 <xsl:when test="recurrenceId != ''"> … … 1180 1109 <xsl:otherwise> 1181 1110 <!-- has recurrenceId, so is master --> 1182 <input type="checkbox" name="recurrenceFlag" onclick="swapRecurrence(this)" value="on"/> 1183 <xsl:choose> 1184 <xsl:when test="/bedeworkadmin/creating = 'true'"> 1185 set recurrence rules 1186 </xsl:when> 1187 <xsl:otherwise> 1188 change recurrence 1189 </xsl:otherwise> 1190 </xsl:choose> 1191 <span id="recurrenceUiSwitch" class="invisible"> 1192 <input type="checkbox" name="recurrenceUiSwitch" value="simple" onchange="swapVisible(this,'advancedRecurrenceRules')"/> 1193 show advanced recurrence rules 1194 </span> 1195 1196 <!-- set these dynamically when form is submitted --> 1197 <input type="hidden" name="interval" value=""/> 1198 <input type="hidden" name="count" value=""/> 1199 <input type="hidden" name="until" value=""/> 1200 <input type="hidden" name="byday" value=""/> 1201 <input type="hidden" name="bymonthday" value=""/> 1202 <input type="hidden" name="bymonth" value=""/> 1203 <input type="hidden" name="byweekno" value=""/> 1204 <input type="hidden" name="byyearday" value=""/> 1205 <input type="hidden" name="wkst" value=""/> 1206 <input type="hidden" name="setpos" value=""/> 1207 1111 1112 <div id="recurringSwitch"> 1113 <!-- set or remove "recurring" and show or hide all recurrence fields: --> 1114 <input type="radio" name="recurring" value="true" onclick="swapRecurrence(this)"> 1115 <xsl:if test="form/recurrence"><xsl:attribute name="checked">checked</xsl:attribute></xsl:if> 1116 </input> event recurs 1117 <input type="radio" name="recurring" value="false" onclick="swapRecurrence(this)"> 1118 <xsl:if test="not(form/recurrence)"><xsl:attribute name="checked">checked</xsl:attribute></xsl:if> 1119 </input> event does not recur 1120 </div> 1121 1122 <!-- wrapper for all recurrence fields (rrules and rdates): --> 1208 1123 <div id="recurrenceFields" class="invisible"> 1209 <table id="recurrenceTable" cellspacing="0"> 1124 <xsl:if test="form/recurrence"><xsl:attribute name="class">visible</xsl:attribute></xsl:if> 1125 1126 <!-- show or hide rrules fields: --> 1127 <input type="checkbox" name="rrulesFlag" onclick="swapRrules(this)" value="on"/> 1128 <span id="rrulesSwitch"> 1129 <xsl:choose> 1130 <xsl:when test="/bedeworkadmin/creating = 'true'"> 1131 create recurrence rules 1132 </xsl:when> 1133 <xsl:otherwise> 1134 change recurrence rules 1135 </xsl:otherwise> 1136 </xsl:choose> 1137 </span> 1138 <span id="rrulesUiSwitch" class="invisible"> 1139 <input type="checkbox" name="rrulesUiSwitch" value="advanced" onchange="swapVisible(this,'advancedRrules')"/> 1140 show advanced recurrence rules 1141 </span> 1142 1143 <xsl:if test="form/recurrence"> 1144 <!-- Output descriptive recurrence information. Probably not 1145 complete yet. Replace all strings so can be 1146 more easily internationalized. --> 1147 <div id="recurrenceInfo"> 1148 Every 1149 <xsl:choose> 1150 <xsl:when test="form/recurrence/interval > 1"> 1151 <xsl:value-of select="form/recurrence/interval"/> 1152 </xsl:when> 1153 </xsl:choose> 1154 <xsl:text> </xsl:text> 1155 <xsl:choose> 1156 <xsl:when test="form/recurrence/freq = 'HOURLY'">hour</xsl:when> 1157 <xsl:when test="form/recurrence/freq = 'DAILY'">day</xsl:when> 1158 <xsl:when test="form/recurrence/freq = 'WEEKLY'">week</xsl:when> 1159 <xsl:when test="form/recurrence/freq = 'MONTHLY'">month</xsl:when> 1160 <xsl:when test="form/recurrence/freq = 'YEARLY'">year</xsl:when> 1161 </xsl:choose><xsl:if test="form/recurrence/interval > 1">s</xsl:if> 1162 <xsl:text> </xsl:text> 1163 1164 <xsl:if test="form/recurrence/byday"> 1165 <xsl:for-each select="form/recurrence/byday/pos"> 1166 <xsl:if test="position() != 1"> and </xsl:if> 1167 on 1168 <xsl:choose> 1169 <xsl:when test="@val='1'"> 1170 the first 1171 </xsl:when> 1172 <xsl:when test="@val='2'"> 1173 the second 1174 </xsl:when> 1175 <xsl:when test="@val='3'"> 1176 the third 1177 </xsl:when> 1178 <xsl:when test="@val='4'"> 1179 the fourth 1180 </xsl:when> 1181 <xsl:when test="@val='5'"> 1182 the fifth 1183 </xsl:when> 1184 <xsl:when test="@val='-1'"> 1185 the last 1186 </xsl:when> 1187 <!-- don't output "every" --> 1188 <!--<xsl:otherwise> 1189 every 1190 </xsl:otherwise>--> 1191 </xsl:choose> 1192 <xsl:for-each select="day"> 1193 <xsl:if test="position() != 1 and position() = last()"> and </xsl:if> 1194 <xsl:variable name="dayVal" select="."/> 1195 <xsl:variable name="dayPos"> 1196 <xsl:for-each select="/bedeworkadmin/recurdayvals/val"> 1197 <xsl:if test="node() = $dayVal"><xsl:value-of select="position()"/></xsl:if> 1198 </xsl:for-each> 1199 </xsl:variable> 1200 <xsl:value-of select="/bedeworkadmin/shortdaynames/val[position() = $dayPos]"/> 1201 <xsl:if test="position() != last()">, </xsl:if> 1202 </xsl:for-each> 1203 </xsl:for-each> 1204 </xsl:if> 1205 1206 <xsl:if test="form/recurrence/bymonth"> 1207 in 1208 <xsl:for-each select="form/recurrence/bymonth/val"> 1209 <xsl:if test="position() != 1 and position() = last()"> and </xsl:if> 1210 <xsl:variable name="monthNum" select="number(.)"/> 1211 <xsl:value-of select="/bedeworkadmin/monthlabels/val[position() = $monthNum]"/> 1212 <xsl:if test="position() != last()">, </xsl:if> 1213 </xsl:for-each> 1214 </xsl:if> 1215 1216 <xsl:if test="form/recurrence/bymonthday"> 1217 on the 1218 <xsl:apply-templates select="form/recurrence/bymonthday/val" mode="weekMonthYearNumbers"/> 1219 day<xsl:if test="form/recurrence/bymonthday/val[position()=2]">s</xsl:if> of the month 1220 </xsl:if> 1221 1222 <xsl:if test="form/recurrence/byyearday"> 1223 on the 1224 <xsl:apply-templates select="form/recurrence/byyearday/val" mode="weekMonthYearNumbers"/> 1225 day<xsl:if test="form/recurrence/byyearday/val[position()=2]">s</xsl:if> of the year 1226 </xsl:if> 1227 1228 <xsl:if test="form/recurrence/byweekno"> 1229 in the 1230 <xsl:apply-templates select="form/recurrence/byweekno/val" mode="weekMonthYearNumbers"/> 1231 week<xsl:if test="form/recurrence/byweekno/val[position()=2]">s</xsl:if> of the year 1232 </xsl:if> 1233 1234 repeating 1235 <xsl:choose> 1236 <xsl:when test="form/recurrence/count = '-1'">forever</xsl:when> 1237 <xsl:when test="form/recurrence/until"> 1238 <xsl:value-of select="form/recurrence/until"/> 1239 </xsl:when> 1240 <xsl:otherwise> 1241 <xsl:value-of select="form/recurrence/count"/> 1242 time<xsl:if test="form/recurrence/count > 1">s</xsl:if> 1243 </xsl:otherwise> 1244 </xsl:choose> 1245 </div> 1246 </xsl:if> 1247 1248 <!-- set these dynamically when form is submitted --> 1249 <input type="hidden" name="interval" value=""/> 1250 <input type="hidden" name="count" value=""/> 1251 <input type="hidden" name="until" value=""/> 1252 <input type="hidden" name="byday" value=""/> 1253 <input type="hidden" name="bymonthday" value=""/> 1254 <input type="hidden" name="bymonth" value=""/> 1255 <input type="hidden" name="byweekno" value=""/> 1256 <input type="hidden" name="byyearday" value=""/> 1257 <input type="hidden" name="wkst" value=""/> 1258 <input type="hidden" name="setpos" value=""/> 1259 1260 <!-- wrapper for rrules: --> 1261 <table id="rrulesTable" cellspacing="0" class="invisible"> 1210 1262 <tr> 1211 <td class="recurrenceFrequency" rowspan="2">1263 <td id="recurrenceFrequency" rowspan="2"> 1212 1264 <strong>Frequency:</strong><br/> 1213 <!-- "freq" is used to determine if a recurrence should be created; test for "NONE" --> 1214 <input type="radio" name="freq" value="NONE" onclick="showRecurrence(this.value)" checked="checked"/>none<br/> 1215 <!--<input type="radio" name="freq" value="HOURLY" onclick="showRecurrence(this.value)"/>hourly<br/>--> 1216 <input type="radio" name="freq" value="DAILY" onclick="showRecurrence(this.value)"/>daily<br/> 1217 <input type="radio" name="freq" value="WEEKLY" onclick="showRecurrence(this.value)"/>weekly<br/> 1218 <input type="radio" name="freq" value="MONTHLY" onclick="showRecurrence(this.value)"/>monthly<br/> 1219 <input type="radio" name="freq" value="YEARLY" onclick="showRecurrence(this.value)"/>yearly 1265 <input type="radio" name="freq" value="NONE" onclick="showRrules(this.value)" checked="checked"/>none<br/> 1266 <!--<input type="radio" name="freq" value="HOURLY" onclick="showRrules(this.value)"/>hourly<br/>--> 1267 <input type="radio" name="freq" value="DAILY" onclick="showRrules(this.value)"/>daily<br/> 1268 <input type="radio" name="freq" value="WEEKLY" onclick="showRrules(this.value)"/>weekly<br/> 1269 <input type="radio" name="freq" value="MONTHLY" onclick="showRrules(this.value)"/>monthly<br/> 1270 <input type="radio" name="freq" value="YEARLY" onclick="showRrules(this.value)"/>yearly 1220 1271 </td> 1221 < td class="recurrenceRules">1222 <!-- none -->1272 <!-- recurrence count, until, forever --> 1273 <td id="recurrenceUntil"> 1223 1274 <div id="noneRecurrenceRules"> 1224 <p>does not recur</p>1275 no recurrence rules 1225 1276 </div> 1226 <span id="advancedRecurrenceRules" class="invisible"> 1227 <!-- hourly --> 1228 <div id="hourlyRecurrenceRules" class="invisible"> 1229 <p> 1230 <strong>Interval:</strong> 1231 every 1232 <input type="text" name="hourlyInterval" size="2" value="1"> 1233 <xsl:if test="form/recurrence/interval"> 1234 <xsl:attribute name="value"><xsl:value-of select="form/recurrence/interval"/></xsl:attribute> 1235 </xsl:if> 1236 </input> 1237 hour(s) 1238 </p> 1239 </div> 1240 <!-- daily --> 1241 <div id="dailyRecurrenceRules" class="invisible"> 1242 <p> 1243 <strong>Interval:</strong> 1244 every 1245 <input type="text" name="dailyInterval" size="2" value="1"> 1246 <xsl:if test="form/recurrence/interval"> 1247 <xsl:attribute name="value"><xsl:value-of select="form/recurrence/interval"/></xsl:attribute> 1248 </xsl:if> 1249 </input> 1250 day(s) 1251 </p> 1252 <p> 1253 <input type="checkbox" name="swapDayMonthCheckBoxList" value="" onclick="swapVisible(this,'dayMonthCheckBoxList')"/> 1254 in these months: 1255 <div id="dayMonthCheckBoxList" class="invisible"> 1256 <xsl:for-each select="/bedeworkadmin/monthlabels/val"> 1257 <xsl:variable name="pos"><xsl:value-of select="position()"/></xsl:variable> 1258 <span class="chkBoxListItem"> 1259 <input type="checkbox" name="dayMonths"> 1260 <xsl:attribute name="value"><xsl:value-of select="/bedeworkadmin/monthvalues/val[position() = $pos]"/></xsl:attribute> 1261 </input> 1262 <xsl:value-of select="."/> 1263 </span> 1264 <xsl:if test="$pos mod 6 = 0"><br/></xsl:if> 1265 </xsl:for-each> 1266 </div> 1267 </p> 1268 </div> 1269 <!-- weekly --> 1270 <div id="weeklyRecurrenceRules" class="invisible"> 1271 <p> 1272 <strong>Interval:</strong> 1273 every 1274 <input type="text" name="weeklyInterval" size="2" value="1"> 1275 <xsl:if test="form/recurrence/interval"> 1276 <xsl:attribute name="value"><xsl:value-of select="form/recurrence/interval"/></xsl:attribute> 1277 </xsl:if> 1278 </input> 1279 week(s) on: 1280 </p> 1281 <p> 1282 <div id="weekRecurFields"> 1283 <xsl:call-template name="byDayChkBoxList"> 1284 <xsl:with-param name="name">byDayWeek</xsl:with-param> 1285 </xsl:call-template> 1286 </div> 1287 </p> 1288 <p class="weekRecurLinks"> 1289 <a href="javascript:recurSelectWeekdays('weekRecurFields')">select weekdays</a> | 1290 <a href="javascript:recurSelectWeekends('weekRecurFields')">select weekends</a> 1291 </p> 1292 <p> 1293 Week start: 1294 <select name="weekWkst"> 1295 <xsl:for-each select="/bedeworkadmin/shortdaynames/val"> 1296 <xsl:variable name="pos" select="position()"/> 1297 <option> 1298 <xsl:attribute name="value"><xsl:value-of select="/bedeworkadmin/recurdayvals/val[position() = $pos]"/></xsl:attribute> 1299 <xsl:value-of select="."/> 1300 </option> 1301 </xsl:for-each> 1302 </select> 1303 </p> 1304 </div> 1305 <!-- monthly --> 1306 <div id="monthlyRecurrenceRules" class="invisible"> 1307 <p> 1308 <strong>Interval:</strong> 1309 every 1310 <input type="text" name="monthlyInterval" size="2" value="1"> 1311 <xsl:if test="form/recurrence/interval"> 1312 <xsl:attribute name="value"><xsl:value-of select="form/recurrence/interval"/></xsl:attribute> 1313 </xsl:if> 1314 </input> 1315 month(s) 1316 </p> 1317 <div id="monthRecurFields"> 1318 <div id="monthRecurFields1"> 1319 on 1320 <select name="bymonthposPos1" width="7em" onchange="changeClass('monthRecurFields2','shown')"> 1321 <xsl:call-template name="recurrenceDayPosOptions"/> 1322 </select> 1323 <xsl:call-template name="byDayChkBoxList"/> 1324 </div> 1325 <xsl:call-template name="buildRecurFields"> 1326 <xsl:with-param name="current">2</xsl:with-param> 1327 <xsl:with-param name="total">10</xsl:with-param> 1328 <xsl:with-param name="name">month</xsl:with-param> 1277 <div id="recurrenceUntilRules" class="invisible"> 1278 <strong>Repeat:</strong> 1279 <p> 1280 <input type="radio" name="recurCountUntil" value="forever"> 1281 <xsl:if test="not(form/recurring) or form/recurring/count = '-1'"> 1282 <xsl:attribute name="checked">checked</xsl:attribute> 1283 </xsl:if> 1284 </input> 1285 forever 1286 <input type="radio" name="recurCountUntil" value="count" id="recurCount"> 1287 <xsl:if test="form/recurring/count != '-1'"> 1288 <xsl:attribute name="checked">checked</xsl:attribute> 1289 </xsl:if> 1290 </input> 1291 <input type="text" value="1" size="2" name="countHolder" onfocus="selectRecurCountUntil('recurCount')"> 1292 <xsl:if test="form/recurring/count and form/recurring/count != '-1'"> 1293 <xsl:attribute name="value"><xsl:value-of select="form/recurring/count"/></xsl:attribute> 1294 </xsl:if> 1295 </input> 1296 time(s) 1297 <input type="radio" name="recurCountUntil" value="until" id="recurUntil"> 1298 <xsl:if test="form/recurring/until"> 1299 <xsl:attribute name="checked">checked</xsl:attribute> 1300 </xsl:if> 1301 </input> 1302 until 1303 <span id="untilHolder"> 1304 <span dojoType="dropdowndatepicker" formatLength="medium" value="today" saveFormat="yyyyMMdd" id="bwEventWidgetUntilDate" iconURL="{$resourcesRoot}/resources/calIcon.gif"> 1305 <xsl:attribute name="value"><xsl:value-of select="form/start/rfc3339DateTime"/></xsl:attribute> 1306 <xsl:text> </xsl:text> 1307 </span> 1308 </span> 1309 </p> 1310 </div> 1311 </td> 1312 </tr> 1313 <tr> 1314 <td id="advancedRrules" class="invisible"> 1315 <!-- hourly --> 1316 <div id="hourlyRecurrenceRules" class="invisible"> 1317 <p> 1318 <strong>Interval:</strong> 1319 every 1320 <input type="text" name="hourlyInterval" size="2" value="1"> 1321 <xsl:if test="form/recurrence/interval"> 1322 <xsl:attribute name="value"><xsl:value-of select="form/recurrence/interval"/></xsl:attribute> 1323 </xsl:if> 1324 </input> 1325 hour(s) 1326 </p> 1327 </div> 1328 <!-- daily --> 1329 <div id="dailyRecurrenceRules" class="invisible"> 1330 <p> 1331 <strong>Interval:</strong> 1332 every 1333 <input type="text" name="dailyInterval" size="2" value="1"> 1334 <xsl:if test="form/recurrence/interval"> 1335 <xsl:attribute name="value"><xsl:value-of select="form/recurrence/interval"/></xsl:attribute> 1336 </xsl:if> 1337 </input> 1338 day(s) 1339 </p> 1340 <p> 1341 <input type="checkbox" name="swapDayMonthCheckBoxList" value="" onclick="swapVisible(this,'dayMonthCheckBoxList')"/> 1342 in these months: 1343 <div id="dayMonthCheckBoxList" class="invisible"> 1344 <xsl:for-each select="/bedeworkadmin/monthlabels/val"> 1345 <xsl:variable name="pos"><xsl:value-of select="position()"/></xsl:variable> 1346 <span class="chkBoxListItem"> 1347 <input type="checkbox" name="dayMonths"> 1348 <xsl:attribute name="value"><xsl:value-of select="/bedeworkadmin/monthvalues/val[position() = $pos]"/></xsl:attribute> 1349 </input> 1350 <xsl:value-of select="."/> 1351 </span> 1352 <xsl:if test="$pos mod 6 = 0"><br/></xsl:if> 1353 </xsl:for-each> 1354 </div> 1355 </p> 1356 <!--<p> 1357 <input type="checkbox" name="swapDaySetPos" value="" onclick="swapVisible(this,'daySetPos')"/> 1358 limit to: 1359 <div id="daySetPos" class="invisible"> 1360 </div> 1361 </p>--> 1362 </div> 1363 <!-- weekly --> 1364 <div id="weeklyRecurrenceRules" class="invisible"> 1365 <p> 1366 <strong>Interval:</strong> 1367 every 1368 <input type="text" name="weeklyInterval" size="2" value="1"> 1369 <xsl:if test="form/recurrence/interval"> 1370 <xsl:attribute name="value"><xsl:value-of select="form/recurrence/interval"/></xsl:attribute> 1371 </xsl:if> 1372 </input> 1373 week(s) on: 1374 </p> 1375 <p> 1376 <div id="weekRecurFields"> 1377 <xsl:call-template name="byDayChkBoxList"> 1378 <xsl:with-param name="name">byDayWeek</xsl:with-param> 1329 1379 </xsl:call-template> 1330 1380 </div> 1331 <p> 1332 <input type="checkbox" name="swapMonthDaysCheckBoxList" value="" onclick="swapVisible(this,'monthDaysCheckBoxList')"/> 1333 on these days:<br/> 1334 <div id="monthDaysCheckBoxList" class="invisible"> 1335 <xsl:call-template name="buildCheckboxList"> 1336 <xsl:with-param name="current">1</xsl:with-param> 1337 <xsl:with-param name="end">31</xsl:with-param> 1338 <xsl:with-param name="name">monthDayBoxes</xsl:with-param> 1339 </xsl:call-template> 1340 </div> 1341 </p> 1381 </p> 1382 <p class="weekRecurLinks"> 1383 <a href="javascript:recurSelectWeekdays('weekRecurFields')">select weekdays</a> | 1384 <a href="javascript:recurSelectWeekends('weekRecurFields')">select weekends</a> 1385 </p> 1386 <p> 1387 Week start: 1388 <select name="weekWkst"> 1389 <xsl:for-each select="/bedeworkadmin/shortdaynames/val"> 1390 <xsl:variable name="pos" select="position()"/> 1391 <option> 1392 <xsl:attribute name="value"><xsl:value-of select="/bedeworkadmin/recurdayvals/val[position() = $pos]"/></xsl:attribute> 1393 <xsl:value-of select="."/> 1394 </option> 1395 </xsl:for-each> 1396 </select> 1397 </p> 1398 </div> 1399 <!-- monthly --> 1400 <div id="monthlyRecurrenceRules" class="invisible"> 1401 <p> 1402 <strong>Interval:</strong> 1403 every 1404 <input type="text" name="monthlyInterval" size="2" value="1"> 1405 <xsl:if test="form/recurrence/interval"> 1406 <xsl:attribute name="value"><xsl:value-of select="form/recurrence/interval"/></xsl:attribute> 1407 </xsl:if> 1408 </input> 1409 month(s) 1410 </p> 1411 <div id="monthRecurFields"> 1412 <div id="monthRecurFields1"> 1413 on 1414 <select name="bymonthposPos1" width="7em" onchange="changeClass('monthRecurFields2','shown')"> 1415 <xsl:call-template name="recurrenceDayPosOptions"/> 1416 </select> 1417 <xsl:call-template name="byDayChkBoxList"/> 1418 </div> 1419 <xsl:call-template name="buildRecurFields"> 1420 <xsl:with-param name="current">2</xsl:with-param> 1421 <xsl:with-param name="total">10</xsl:with-param> 1422 <xsl:with-param name="name">month</xsl:with-param> 1423 </xsl:call-template> 1342 1424 </div> 1343 <!-- yearly --> 1344 <div id="yearlyRecurrenceRules" class="invisible"> 1345 <p> 1346 <strong>Interval:</strong> 1347 every 1348 <input type="text" name="yearlyInterval" size="2" value="1"> 1349 <xsl:if test="form/recurrence/interval"> 1350 <xsl:attribute name="value"><xsl:value-of select="form/recurrence/interval"/></xsl:attribute> 1351 </xsl:if> 1352 </input> 1353 years(s) 1354 </p> 1355 <div id="yearRecurFields"> 1356 <div id="yearRecurFields1"> 1357 on 1358 <select name="byyearposPos1" width="7em" onchange="changeClass('yearRecurFields2','shown')"> 1359 <xsl:call-template name="recurrenceDayPosOptions"/> 1360 </select> 1361 <xsl:call-template name="byDayChkBoxList"/> 1362 </div> 1363 <xsl:call-template name="buildRecurFields"> 1364 <xsl:with-param name="current">2</xsl:with-param> 1365 <xsl:with-param name="total">10</xsl:with-param> 1366 <xsl:with-param name="name">year</xsl:with-param> 1425 <p> 1426 <input type="checkbox" name="swapMonthDaysCheckBoxList" value="" onclick="swapVisible(this,'monthDaysCheckBoxList')"/> 1427 on these days:<br/> 1428 <div id="monthDaysCheckBoxList" class="invisible"> 1429 <xsl:call-template name="buildCheckboxList"> 1430 <xsl:with-param name="current">1</xsl:with-param> 1431 <xsl:with-param name="end">31</xsl:with-param> 1432 <xsl:with-param name="name">monthDayBoxes</xsl:with-param> 1367 1433 </xsl:call-template> 1368 1434 </div> 1369 <p> 1370 <input type="checkbox" name="swapYearMonthCheckBoxList" value="" onclick="swapVisible(this,'yearMonthCheckBoxList')"/> 1371 in these months: 1372 <div id="yearMonthCheckBoxList" class="invisible"> 1373 <xsl:for-each select="/bedeworkadmin/monthlabels/val"> 1374 <xsl:variable name="pos"><xsl:value-of select="position()"/></xsl:variable> 1375 <span class="chkBoxListItem"> 1376 <input type="checkbox" name="yearMonths"> 1377 <xsl:attribute name="value"><xsl:value-of select="/bedeworkadmin/monthvalues/val[position() = $pos]"/></xsl:attribute> 1378 </input> 1379 <xsl:value-of select="."/> 1380 </span> 1381 <xsl:if test="$pos mod 6 = 0"><br/></xsl:if> 1382 </xsl:for-each> 1383 </div> 1384 </p> 1385 <p> 1386 <input type="checkbox" name="swapYearMonthDaysCheckBoxList" value="" onclick="swapVisible(this,'yearMonthDaysCheckBoxList')"/> 1387 on these days of the month:<br/> 1388 <div id="yearMonthDaysCheckBoxList" class="invisible"> 1389 <xsl:call-template name="buildCheckboxList"> 1390 <xsl:with-param name="current">1</xsl:with-param> 1391 <xsl:with-param name="end">31</xsl:with-param> 1392 <xsl:with-param name="name">yearMonthDayBoxes</xsl:with-param> 1393 </xsl:call-template> 1394 </div> 1395 </p> 1396 <p> 1397 <input type="checkbox" name="swapYearWeeksCheckBoxList" value="" onclick="swapVisible(this,'yearWeeksCheckBoxList')"/> 1398 in these weeks of the year:<br/> 1399 <div id="yearWeeksCheckBoxList" class="invisible"> 1400 <xsl:call-template name="buildCheckboxList"> 1401 <xsl:with-param name="current">1</xsl:with-param> 1402 <xsl:with-param name="end">53</xsl:with-param> 1403 <xsl:with-param name="name">yearWeekBoxes</xsl:with-param> 1404 </xsl:call-template> 1405 </div> 1406 </p> 1407 <p> 1408 <input type="checkbox" name="swapYearDaysCheckBoxList" value="" onclick="swapVisible(this,'yearDaysCheckBoxList')"/> 1409 on these days of the year:<br/> 1410 <div id="yearDaysCheckBoxList" class="invisible"> 1411 <xsl:call-template name="buildCheckboxList"> 1412 <xsl:with-param name="current">1</xsl:with-param> 1413 <xsl:with-param name="end">366</xsl:with-param> 1414 <xsl:with-param name="name">yearDayBoxes</xsl:with-param> 1415 </xsl:call-template> 1416 </div> 1417 </p> 1418 <p> 1419 Week start: 1420 <select name="yearWkst"> 1421 <xsl:for-each select="/bedeworkadmin/shortdaynames/val"> 1422 <xsl:variable name="pos" select="position()"/> 1423 <option> 1424 <xsl:attribute name="value"><xsl:value-of select="/bedeworkadmin/recurdayvals/val[position() = $pos]"/></xsl:attribute> 1425 <xsl:value-of select="."/> 1426 </option> 1427 </xsl:for-each> 1435 </p> 1436 </div> 1437 <!-- yearly --> 1438 <div id="yearlyRecurrenceRules" class="invisible"> 1439 <p> 1440 <strong>Interval:</strong> 1441 every 1442 <input type="text" name="yearlyInterval" size="2" value="1"> 1443 <xsl:if test="form/recurrence/interval"> 1444 <xsl:attribute name="value"><xsl:value-of select="form/recurrence/interval"/></xsl:attribute> 1445 </xsl:if> 1446 </input> 1447 years(s) 1448 </p> 1449 <div id="yearRecurFields"> 1450 <div id="yearRecurFields1"> 1451 on 1452 <select name="byyearposPos1" width="7em" onchange="changeClass('yearRecurFields2','shown')"> 1453 <xsl:call-template name="recurrenceDayPosOptions"/> 1428 1454 </select> 1429 </p> 1455 <xsl:call-template name="byDayChkBoxList"/> 1456 </div> 1457 <xsl:call-template name="buildRecurFields"> 1458 <xsl:with-param name="current">2</xsl:with-param> 1459 <xsl:with-param name="total">10</xsl:with-param> 1460 <xsl:with-param name="name">year</xsl:with-param> 1461 </xsl:call-template> 1430 1462 </div> 1431 </span> 1432 </td> 1433 </tr> 1434 <!-- recurrence count, until, forever --> 1435 <tr> 1436 <td class="recurrenceUntil"> 1437 <div id="recurrenceUntilRules" class="invisible"> 1438 <strong>Repeat:</strong> 1439 <p> 1440 <div class="dateFields"> 1441 <input type="radio" name="recurCountUntil" value="until" id="recurUntil"> 1442 <xsl:if test="form/recurring/until"> 1443 <xsl:attribute name="checked">checked</xsl:attribute> 1444 </xsl:if> 1445 </input> 1446 until 1447 <select name="untilMonth" onfocus="selectRecurCountUntil('recurUntil')"> 1448 <xsl:for-each select="form/start/month/select/option"> 1449 <xsl:copy-of select="."/> 1450 </xsl:for-each> 1451 </select> 1452 <select name="untilDay" onfocus="selectRecurCountUntil('recurUntil')"> 1453 <xsl:for-each select="form/start/day/select/option"> 1454 <xsl:copy-of select="."/> 1455 </xsl:for-each> 1456 </select> 1457 <xsl:choose> 1458 <xsl:when test="/bedeworkadmin/creating = 'true'"> 1459 <select name="untilYear" onfocus="selectRecurCountUntil('recurUntil')"> 1460 <xsl:for-each select="form/start/year/select/option"> 1461 <xsl:copy-of select="."/> 1462 </xsl:for-each> 1463 </select> 1464 </xsl:when> 1465 <xsl:otherwise> 1466 <input type="text" name="untilYear" size="4" onfocus="selectRecurCountUntil('recurUntil')"> 1467 <xsl:attribute name="value"><xsl:value-of select="form/start/yearText/input/@value"/></xsl:attribute> 1468 </input> 1469 </xsl:otherwise> 1470 </xsl:choose> 1471 </div> 1472 <script language="JavaScript" type="text/javascript"> 1473 <xsl:comment> 1474 untilDateDynCalWidget = new dynCalendar('untilDateDynCalWidget', <xsl:value-of select="number(form/start/yearText/input/@value)"/>, <xsl:value-of select="number(form/start/month/select/option[@selected='selected']/@value)-1"/>, <xsl:value-of select="number(form/start/day/select/option[@selected='selected']/@value)"/>, 'untilDateCalWidgetCallback',false,'<xsl:value-of select="$resourcesRoot"/>/resources/'); 1475 </xsl:comment> 1476 </script> 1477 </p> 1478 <p> 1479 <input type="radio" name="recurCountUntil" value="forever"> 1480 <xsl:if test="not(form/recurring) or form/recurring/count = '-1'"> 1481 <xsl:attribute name="checked">checked</xsl:attribute> 1482 </xsl:if> 1483 </input> 1484 forever 1485   1486 <input type="radio" name="recurCountUntil" value="count" id="recurCount"> 1487 <xsl:if test="form/recurring/count != '-1'"> 1488 <xsl:attribute name="checked">checked</xsl:attribute> 1489 </xsl:if> 1490 </input> 1491 <input type="text" value="1" size="2" name="countHolder" onfocus="selectRecurCountUntil('recurCount')"> 1492 <xsl:if test="form/recurring/count and form/recurring/count != '-1'"> 1493 <xsl:attribute name="value"><xsl:value-of select="form/recurring/count"/></xsl:attribute> 1494 </xsl:if> 1495 </input> 1496 times 1497 </p> 1498 </div> 1463 <p> 1464 <input type="checkbox" name="swapYearMonthCheckBoxList" value="" onclick="swapVisible(this,'yearMonthCheckBoxList')"/> 1465 in these months: 1466 <div id="yearMonthCheckBoxList" class="invisible"> 1467 <xsl:for-each select="/bedeworkadmin/monthlabels/val"> 1468 <xsl:variable name="pos"><xsl:value-of select="position()"/></xsl:variable> 1469 <span class="chkBoxListItem"> 1470 <input type="checkbox" name="yearMonths"> 1471 <xsl:attribute name="value"><xsl:value-of select="/bedeworkadmin/monthvalues/val[position() = $pos]"/></xsl:attribute> 1472 </input> 1473 <xsl:value-of select="."/> 1474 </span> 1475 <xsl:if test="$pos mod 6 = 0"><br/></xsl:if> 1476 </xsl:for-each> 1477 </div> 1478 </p> 1479 <p> 1480 <input type="checkbox" name="swapYearMonthDaysCheckBoxList" value="" onclick="swapVisible(this,'yearMonthDaysCheckBoxList')"/> 1481 on these days of the month:<br/> 1482 <div id="yearMonthDaysCheckBoxList" class="invisible"> 1483 <xsl:call-template name="buildCheckboxList"> 1484 <xsl:with-param name="current">1</xsl:with-param> 1485 <xsl:with-param name="end">31</xsl:with-param> 1486 <xsl:with-param name="name">yearMonthDayBoxes</xsl:with-param> 1487 </xsl:call-template> 1488 </div> 1489 </p> 1490 <p> 1491 <input type="checkbox" name="swapYearWeeksCheckBoxList" value="" onclick="swapVisible(this,'yearWeeksCheckBoxList')"/> 1492 in these weeks of the year:<br/> 1493 <div id="yearWeeksCheckBoxList" class="invisible"> 1494 <xsl:call-template name="buildCheckboxList"> 1495 <xsl:with-param name="current">1</xsl:with-param> 1496 <xsl:with-param name="end">53</xsl:with-param> 1497 <xsl:with-param name="name">yearWeekBoxes</xsl:with-param> 1498 </xsl:call-template> 1499 </div> 1500 </p> 1501 <p> 1502 <input type="checkbox" name="swapYearDaysCheckBoxList" value="" onclick="swapVisible(this,'yearDaysCheckBoxList')"/> 1503 on these days of the year:<br/> 1504 <div id="yearDaysCheckBoxList" class="invisible"> 1505 <xsl:call-template name="buildCheckboxList"> 1506 <xsl:with-param name="current">1</xsl:with-param> 1507 <xsl:with-param name="end">366</xsl:with-param> 1508 <xsl:with-param name="name">yearDayBoxes</xsl:with-param> 1509 </xsl:call-template> 1510 </div> 1511 </p> 1512 <p> 1513 Week start: 1514 <select name="yearWkst"> 1515 <xsl:for-each select="/bedeworkadmin/shortdaynames/val"> 1516 <xsl:variable name="pos" select="position()"/> 1517 <option> 1518 <xsl:attribute name="value"><xsl:value-of select="/bedeworkadmin/recurdayvals/val[position() = $pos]"/></xsl:attribute> 1519 <xsl:value-of select="."/> 1520 </option> 1521 </xsl:for-each> 1522 </select> 1523 </p> 1524 </div> 1499 1525 </td> 1500 1526 </tr> 1501 1527 </table> 1528 <!-- recurrence dates (rdates) --> 1529 <div id="recurrenceDatesButton"> 1530 <input type="button" value="add/remove recurrence dates" onclick="launchSizedWindow('{$event-showRdates}','560','400')"/> 1531 </div> 1502 1532 </div> 1503 1533 </xsl:otherwise> … … 1952 1982 <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')" /> 1953 1983 <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')" /> 1954 <area shape="poly" alt="minute 00:05" title="minute 00:05" coords="196,155, 209,164, 238,126, 206,107" href="javascript:bwClockUpdateDateTimeForm('minute',' 05')" />1955 <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 0')" />1984 <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')" /> 1985 <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')" /> 1956 1986 <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')" /> 1957 1987 <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')" /> … … 1968 1998 <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')" /> 1969 1999 <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')" /> 1970 <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',' 09')" />1971 <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',' 08')" />1972 <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',' 07')" />1973 <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',' 06')" />1974 <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',' 05')" />1975 <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',' 04')" />1976 <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',' 03')" />1977 <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',' 02')" />1978 <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',' 01')" />1979 <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 0')" />2000 <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')" /> 2001 <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')" /> 2002 <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')" /> 2003 <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')" /> 2004 <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')" /> 2005 <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')" /> 2006 <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')" /> 2007 <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')" /> 2008 <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')" /> 2009 <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')" /> 1980 2010 </map> 2011 </div> 2012 </xsl:template> 2013 2014 <xsl:template name="rdates"> 2015 <div id="bwDialogBox"> 2016 <form name="rdatesForm" id="rdates" action="{$event-setRdate}" method="post" onsubmit="setRdateDatetime(this)"> 2017 <h4 id="dialogTitle"> 2018 Add / Remove Recurrence Dates 2019 </h4> 2020 <div id="raContent"> 2021 2022 <div class="dateStartEndBox" id="rdatesFormFields"> 2023 <div class="dateFields"> 2024 <input name="datetime" 2025 dojoType="dropdowndatepicker" 2026 formatLength="medium" 2027 value="today" 2028 saveFormat="yyyyMMdd" 2029 id="bwEventWidgeRdate" 2030 iconURL="{$resourcesRoot}/resources/calIcon.gif"/> 2031 </div> 2032 <div id="rdateTimeFields"> 2033 <xsl:attribute name="class"> 2034 <xsl:choose> 2035 <xsl:when test="form/allDay/input/@checked='checked'">invisible</xsl:when> 2036 <xsl:otherwise>timeFields</xsl:otherwise> 2037 </xsl:choose> 2038 </xsl:attribute> 2039 <input name="rdateTime" 2040 dojoType="dropdowntimepicker" 2041 formatLength="short" 2042 saveFormat="hhmmss" 2043 id="bwEventWidgeRdateTime" 2044 iconURL="{$resourcesRoot}/resources/clockIcon.gif"/> 2045 <xsl:text> </xsl:text> 2046 2047 <select name="tzid" id="rdateTzid" class="timezones"> 2048 <xsl:if test="form/floating/input/@checked='checked'"><xsl:attribute name="disabled">disabled</xsl:attribute></xsl:if> 2049 <option value="-1">select timezone...</option> 2050 <xsl:variable name="rdateTzId" select="/bedeworkadmin/rdates/tzid"/> 2051 <xsl:for-each select="/bedeworkadmin/timezones/timezone"> 2052 <option> 2053 <xsl:attribute name="value"><xsl:value-of select="id"/></xsl:attribute> 2054 <xsl:if test="$rdateTzId = id"><xsl:attribute name="selected">selected</xsl:attribute></xsl:if> 2055 <xsl:value-of select="name"/> 2056 </option> 2057 </xsl:for-each> 2058 </select> 2059 </div> 2060 <xsl:text> </xsl:text> 2061 <input type="submit" value="add"/> 2062 <br/> 2063 <!-- floating event: no timezone (and not UTC) --> 2064 <input type="checkbox" name="floating" id="rdateFloating" onclick="swapRdateFloatingTime(this)" value="off"/> 2065 floating 2066 <!-- store time as coordinated universal time (UTC) --> 2067 <input type="checkbox" name="storeUTC" id="rdateStoreUTC" onclick="swapRdateStoreUTC(this)" value="off"/> 2068 store as UTC 2069 </div> 2070 2071 <table cellspacing="0" id="rdatesTable"> 2072 <tr> 2073 <th colspan="2">Recurrence Dates</th> 2074 </tr> 2075 <xsl:for-each select="/bedeworkadmin/rdates/rdate"> 2076 <tr> 2077 <td> 2078 <xsl:value-of select="longdate"/> 2079 <xsl:if test="allday='false'"> 2080 <xsl:value-of select="time"/> 2081 <xsl:if test="floating='false'"> 2082 <xsl:value-of select="timezone/id"/> 2083 </xsl:if> 2084 </xsl:if> 2085 </td> 2086 <td class="trash"> 2087 <xsl:variable name="datetime"><xsl:value-of select="fourdigityear"/><xsl:value-of select="twodigitmonth"/><xsl:value-of select="twodigitday"/>T<xsl:value-of select="twodigithour"/><xsl:value-of select="twodigitminute"/>00</xsl:variable> 2088 <xsl:variable name="tzid" select="timezone/id"/> 2089 <xsl:variable name="floating" select="floating"/> 2090 <a href="{$event-setRdate}&datetime={$datetime}&floating={$floating}&tzid={$tzid}&delete=true" title="remove"> 2091 <img src="{$resourcesRoot}/resources/trashIcon.gif" width="13" height="13" border="0" alt="remove"/> 2092 </a> 2093 </td> 2094 </tr> 2095 </xsl:for-each> 2096 </table> 2097 2098 <input type="button" value="done" onclick="window.close()"/> 2099 </div> 2100 </form> 1981 2101 </div> 1982 2102 </xsl:template> trunk/deployment/webadmin/webapp/resources/resources/bwClock.js
r1226 r1229 9 9 // if the clock with the same type is visible, toggle it off 10 10 changeClass("clock","invisible"); 11 } else { // otherwise, turn it on and display the correct type 11 } else { 12 // otherwise, turn it on and display the correct type 13 changeClass("clock","visible"); 12 14 bwClockRequestedType = type; 13 15 bwClockCurrentType = type; 14 changeClass("clock","shown");15 16 // reset hours and minutes to null 16 17 bwClockHour = null; 17 18 bwClockMinute = null; 18 changeClass("eventFormPrefLocationList","hidden");19 changeClass("eventFormLocationList","hidden");20 changeClass("eventFormContactList","hidden");21 changeClass("eventFormPrefContactList","hidden");22 19 bwClockIndicator = document.getElementById("bwClockDateTypeIndicator"); 23 20 bwClockSwitch = document.getElementById("bwClockSwitch"); … … 35 32 function bwClockClose() { 36 33 changeClass("clock","invisible"); 37 changeClass("eventFormPrefLocationList","shown");38 changeClass("eventFormLocationList","shown");39 changeClass("eventFormContactList","shown");40 changeClass("eventFormPrefContactList","shown");41 34 } 42 35 trunk/deployment/webuser/webapp/resources/demoskins/default/default/default.css
r1228 r1229 721 721 } 722 722 #recurrenceInfo { 723 margin-top: 1em; 724 font-weight: bold; 723 margin: 0; 724 padding: 1em; 725 border: 1px solid #ddd; 726 font-size: 0.9em; 725 727 } 726 728 #rrulesSwitch, … … 789 791 margin: 2em 0 0 0; 790 792 font-size: 0.8em; 793 } 794 #rdatesFormFields { 795 font-size: 0.9em; 796 text-align: center; 797 } 798 #rdatesTable { 799 font-size: 0.9em; 800 border: 1px solid #ddd; 801 } 802 #rdatesTable td { 803 padding: 0.5em 1em; 804 } 805 #rdatesTable td.trash { 806 text-align: right; 791 807 } 792 808 .shown { trunk/deployment/webuser/webapp/resources/demoskins/default/default/default.xsl
r1228 r1229 2338 2338 </div> 2339 2339 2340 <xsl:if test="form/recurrence">2341 <!-- Output descriptive recurrence information. Probably not2342 complete yet. Replace all strings so can be2343 more easily internationalized. -->2344 <strong>Recurrence:</strong>2345 <div id="recurrenceInfo">2346 Every2347 <xsl:choose>2348 <xsl:when test="form/recurrence/interval > 1">2349 <xsl:value-of select="form/recurrence/interval"/>2350 </xsl:when>2351 </xsl:choose>2352 <xsl:text> </xsl:text>2353 <xsl:choose>2354 <xsl:when test="form/recurrence/freq = 'HOURLY'">hour</xsl:when>2355 <xsl:when test="form/recurrence/freq = 'DAILY'">day</xsl:when>2356 <xsl:when test="form/recurrence/freq = 'WEEKLY'">week</xsl:when>2357 <xsl:when test="form/recurrence/freq = 'MONTHLY'">month</xsl:when>2358 <xsl:when test="form/recurrence/freq = 'YEARLY'">year</xsl:when>2359 </xsl:choose><xsl:if test="form/recurrence/interval > 1">s</xsl:if>2360 <xsl:text> </xsl:text>2361 2362 <xsl:if test="form/recurrence/byday">2363 <xsl:for-each select="form/recurrence/byday/pos">2364 <xsl:if test="position() != 1"> and </xsl:if>2365 on2366 <xsl:choose>2367 <xsl:when test="@val='1'">2368 the first2369 </xsl:when>2370 <xsl:when test="@val='2'">2371 the second2372 </xsl:when>2373 <xsl:when test="@val='3'">2374 the third2375 </xsl:when>2376 <xsl:when test="@val='4'">2377 the fourth2378 </xsl:when>2379 <xsl:when test="@val='5'">2380 the fifth2381 </xsl:when>2382 <xsl:when test="@val='-1'">2383 the last2384 </xsl:when>2385 <!-- don't output "every" -->2386 <!--<xsl:otherwise>2387 every2388 </xsl:otherwise>-->2389 </xsl:choose>2390 <xsl:for-each select="day">2391 <xsl:if test="position() != 1 and position() = last()"> and </xsl:if>2392 <xsl:variable name="dayVal" select="."/>2393 <xsl:variable name="dayPos">2394 <xsl:for-each select="/bedework/recurdayvals/val">2395 <xsl:if test="node() = $dayVal"><xsl:value-of select="position()"/></xsl:if>2396 </xsl:for-each>2397 </xsl:variable>2398 <xsl:value-of select="/bedework/shortdaynames/val[position() = $dayPos]"/>2399 <xsl:if test="position() != last()">, </xsl:if>2400 </xsl:for-each>2401 </xsl:for-each>2402 </xsl:if>2403 2404 <xsl:if test="form/recurrence/bymonth">2405 in2406 <xsl:for-each select="form/recurrence/bymonth/val">2407 <xsl:if test="position() != 1 and position() = last()"> and </xsl:if>2408 <xsl:variable name="monthNum" select="number(.)"/>2409 <xsl:value-of select="/bedework/monthlabels/val[position() = $monthNum]"/>2410 <xsl:if test="position() != last()">, </xsl:if>2411 </xsl:for-each>2412 </xsl:if>2413 2414 <xsl:if test="form/recurrence/bymonthday">2415 on the2416 <xsl:apply-templates select="form/recurrence/bymonthday/val" mode="weekMonthYearNumbers"/>2417 day<xsl:if test="form/recurrence/bymonthday/val[position()=2]">s</xsl:if> of the month2418 </xsl:if>2419 2420 <xsl:if test="form/recurrence/byyearday">2421 on the2422 <xsl:apply-templates select="form/recurrence/byyearday/val" mode="weekMonthYearNumbers"/>2423 day<xsl:if test="form/recurrence/byyearday/val[position()=2]">s</xsl:if> of the year2424 </xsl:if>2425 2426 <xsl:if test="form/recurrence/byweekno">2427 in the2428 <xsl:apply-templates select="form/recurrence/byweekno/val" mode="weekMonthYearNumbers"/>2429 week<xsl:if test="form/recurrence/byweekno/val[position()=2]">s</xsl:if> of the year2430 </xsl:if>2431 2432 repeating2433 <xsl:choose>2434 <xsl:when test="form/recurrence/count = '-1'">forever</xsl:when>2435 <xsl:when test="form/recurrence/until">2436 <xsl:value-of select="form/recurrence/until"/>2437 </xsl:when>2438 <xsl:otherwise>2439 <xsl:value-of select="form/recurrence/count"/>2440 time<xsl:if test="form/recurrence/count > 1">s</xsl:if>2441 </xsl:otherwise>2442 </xsl:choose>2443 </div>2444 </xsl:if>2445 2446 <!-- set these dynamically when form is submitted -->2447 <input type="hidden" name="interval" value=""/>2448 <input type="hidden" name="count" value=""/>2449 <input type="hidden" name="until" value=""/>2450 <input type="hidden" name="byday" value=""/>2451 <input type="hidden" name="bymonthday" value=""/>2452 <input type="hidden" name="bymonth" value=""/>2453 <input type="hidden" name="byweekno" value=""/>2454 <input type="hidden" name="byyearday" value=""/>2455 <input type="hidden" name="wkst" value=""/>2456 <input type="hidden" name="setpos" value=""/>2457 2458 2340 <!-- wrapper for all recurrence fields (rrules and rdates): --> 2459 2341 <div id="recurrenceFields" class="invisible"> 2342 <xsl:if test="form/recurrence"><xsl:attribute name="class">visible</xsl:attribute></xsl:if> 2460 2343 2461 2344 <!-- show or hide rrules fields: --> … … 2475 2358 show advanced recurrence rules 2476 2359 </span> 2360 2361 <xsl:if test="form/recurrence"> 2362 <!-- Output descriptive recurrence information. Probably not 2363 complete yet. Replace all strings so can be 2364 more easily internationalized. --> 2365 <div id="recurrenceInfo"> 2366 Every 2367 <xsl:choose> 2368 <xsl:when test="form/recurrence/interval > 1"> 2369 <xsl:value-of select="form/recurrence/interval"/> 2370 </xsl:when> 2371 </xsl:choose> 2372 <xsl:text> </xsl:text> 2373 <xsl:choose> 2374 <xsl:when test="form/recurrence/freq = 'HOURLY'">hour</xsl:when> 2375 <xsl:when test="form/recurrence/freq = 'DAILY'">day</xsl:when> 2376 <xsl:when test="form/recurrence/freq = 'WEEKLY'">week</xsl:when> 2377 <xsl:when test="form/recurrence/freq = 'MONTHLY'">month</xsl:when> 2378 <xsl:when test="form/recurrence/freq = 'YEARLY'">year</xsl:when> 2379 </xsl:choose><xsl:if test="form/recurrence/interval > 1">s</xsl:if> 2380 <xsl:text> </xsl:text> 2381 2382 <xsl:if test="form/recurrence/byday"> 2383 <xsl:for-each select="form/recurrence/byday/pos"> 2384 <xsl:if test="position() != 1"> and </xsl:if> 2385 on 2386 <xsl:choose> 2387 <xsl:when test="@val='1'"> 2388 the first 2389 </xsl:when> 2390 <xsl:when test="@val='2'"> 2391 the second 2392 </xsl:when> 2393 <xsl:when test="@val='3'"> 2394 the third 2395 </xsl:when> 2396 <xsl:when test="@val='4'"> 2397 the fourth 2398 </xsl:when> 2399 <xsl:when test="@val='5'"> 2400 the fifth 2401 </xsl:when> 2402 <xsl:when test="@val='-1'"> 2403 the last 2404 </xsl:when> 2405 <!-- don't output "every" --> 2406 <!--<xsl:otherwise> 2407 every 2408 </xsl:otherwise>--> 2409 </xsl:choose> 2410 <xsl:for-each select="day"> 2411 <xsl:if test="position() != 1 and position() = last()"> and </xsl:if> 2412 <xsl:variable name="dayVal" select="."/> 2413 <xsl:variable name="dayPos"> 2414 <xsl:for-each select="/bedework/recurdayvals/val"> 2415 <xsl:if test="node() = $dayVal"><xsl:value-of select="position()"/></xsl:if> 2416 </xsl:for-each> 2417 </xsl:variable> 2418 <xsl:value-of select="/bedework/shortdaynames/val[position() = $dayPos]"/> 2419 <xsl:if test="position() != last()">, </xsl:if> 2420 </xsl:for-each> 2421 </xsl:for-each> 2422 </xsl:if> 2423 2424 <xsl:if test="form/recurrence/bymonth"> 2425 in 2426 <xsl:for-each select="form/recurrence/bymonth/val"> 2427 <xsl:if test="position() != 1 and position() = last()"> and </xsl:if> 2428 <xsl:variable name="monthNum" select="number(.)"/> 2429 <xsl:value-of select="/bedework/monthlabels/val[position() = $monthNum]"/> 2430 <xsl:if test="position() != last()">, </xsl:if> 2431 </xsl:for-each> 2432 </xsl:if> 2433 2434 <xsl:if test="form/recurrence/bymonthday"> 2435 on the 2436 <xsl:apply-templates select="form/recurrence/bymonthday/val" mode="weekMonthYearNumbers"/> 2437 day<xsl:if test="form/recurrence/bymonthday/val[position()=2]">s</xsl:if> of the month 2438 </xsl:if> 2439 2440 <xsl:if test="form/recurrence/byyearday"> 2441 on the 2442 <xsl:apply-templates select="form/recurrence/byyearday/val" mode="weekMonthYearNumbers"/> 2443 day<xsl:if test="form/recurrence/byyearday/val[position()=2]">s</xsl:if> of the year 2444 </xsl:if> 2445 2446 <xsl:if test="form/recurrence/byweekno"> 2447 in the 2448 <xsl:apply-templates select="form/recurrence/byweekno/val" mode="weekMonthYearNumbers"/> 2449 week<xsl:if test="form/recurrence/byweekno/val[position()=2]">s</xsl:if> of the year 2450 </xsl:if> 2451 2452 repeating 2453 <xsl:choose> 2454 <xsl:when test="form/recurrence/count = '-1'">forever</xsl:when> 2455 <xsl:when test="form/recurrence/until"> 2456 <xsl:value-of select="form/recurrence/until"/> 2457 </xsl:when> 2458 <xsl:otherwise> 2459 <xsl:value-of select="form/recurrence/count"/> 2460 time<xsl:if test="form/recurrence/count > 1">s</xsl:if> 2461 </xsl:otherwise> 2462 </xsl:choose> 2463 </div> 2464 </xsl:if> 2465 2466 <!-- set these dynamically when form is submitted --> 2467 <input type="hidden" name="interval" value=""/> 2468 <input type="hidden" name="count" value=""/> 2469 <input type="hidden" name="until" value=""/> 2470 <input type="hidden" name="byday" value=""/> 2471 <input type="hidden" name="bymonthday" value=""/> 2472 <input type="hidden" name="bymonth" value=""/> 2473 <input type="hidden" name="byweekno" value=""/> 2474 <input type="hidden" name="byyearday" value=""/> 2475 <input type="hidden" name="wkst" value=""/> 2476 <input type="hidden" name="setpos" value=""/> 2477 2477 2478 2478 <!-- wrapper for rrules: --> … … 2931 2931 <xsl:template name="rdates"> 2932 2932 <div id="bwDialogBox"> 2933 <form name="rdatesForm" id="rdates" action="{$event-setRdate}" method="post" >2933 <form name="rdatesForm" id="rdates" action="{$event-setRdate}" method="post" onsubmit="setRdateDatetime(this)"> 2934 2934 <h4 id="dialogTitle"> 2935 Recurrence Dates2935 Add / Remove Recurrence Dates 2936 2936 </h4> 2937 2937 <div id="raContent"> 2938 2938 2939 <div class="dateStartEndBox"> 2940 <strong>Add Rdate:</strong> 2939 <div class="dateStartEndBox" id="rdatesFormFields"> 2941 2940 <div class="dateFields"> 2942 <input name="datetime" dojoType="dropdowndatepicker" formatLength="medium" value="today" saveFormat="yyyyMMdd" id="bwEventWidgeRdate" iconURL="{$resourcesRoot}/resources/calIcon.gif"/> 2941 <input name="datetime" 2942 dojoType="dropdowndatepicker" 2943 formatLength="medium" 2944 value="today" 2945 saveFormat="yyyyMMdd" 2946 id="bwEventWidgeRdate" 2947 iconURL="{$resourcesRoot}/resources/calIcon.gif"/> 2943 2948 </div> 2944 2949 <div id="rdateTimeFields"> … … 2949 2954 </xsl:choose> 2950 2955 </xsl:attribute> 2951 <select name="eventRdate.hour"> 2952 <option value="0">00</option> 2953 <option value="1">01</option> 2954 <option value="2">02</option> 2955 <option value="3">03</option> 2956 <option value="4">04</option> 2957 <option value="5">05</option> 2958 <option value="6">06</option> 2959 <option value="7">07</option> 2960 <option value="8">08</option> 2961 2962 <option value="9">09</option> 2963 <option value="10">10</option> 2964 <option value="11">11</option> 2965 <option value="12" selected="selected">12</option> 2966 <option value="13">13</option> 2967 <option value="14">14</option> 2968 <option value="15">15</option> 2969 <option value="16">16</option> 2970 <option value="17">17</option> 2971 2972 <option value="18">18</option> 2973 <option value="19">19</option> 2974 <option value="20">20</option> 2975 <option value="21">21</option> 2976 <option value="22">22</option> 2977 <option value="23">23</option> 2978 </select> 2979 <select name="eventRdate.minute"> 2980 <option value="0" selected="selected">00</option> 2981 <option value="5">05</option> 2982 <option value="10">10</option> 2983 2984 <option value="15">15</option> 2985 <option value="20">20</option> 2986 <option value="25">25</option> 2987 <option value="30">30</option> 2988 <option value="35">35</option> 2989 <option value="40">40</option> 2990 <option value="45">45</option> 2991 <option value="50">50</option> 2992 <option value="55">55</option> 2993 </select> 2956 <input name="rdateTime" 2957 dojoType="dropdowntimepicker" 2958 formatLength="short" 2959 saveFormat="hhmmss" 2960 id="bwEventWidgeRdateTime" 2961 iconURL="{$resourcesRoot}/resources/clockIcon.gif"/> 2994 2962 <xsl:text> </xsl:text> 2995 2963 2996 <select name="tzid" id=" startTzid" class="timezones">2964 <select name="tzid" id="rdateTzid" class="timezones"> 2997 2965 <xsl:if test="form/floating/input/@checked='checked'"><xsl:attribute name="disabled">disabled</xsl:attribute></xsl:if> 2998 2966 <option value="-1">select timezone...</option> … … 3007 2975 </select> 3008 2976 </div> 2977 <xsl:text> </xsl:text> 3009 2978 <input type="submit" value="add"/> 2979 <br/> 2980 <!-- floating event: no timezone (and not UTC) --> 2981 <input type="checkbox" name="floating" id="rdateFloating" onclick="swapRdateFloatingTime(this)" value="off"/> 2982 floating 2983 <!-- store time as coordinated universal time (UTC) --> 2984 <input type="checkbox" name="storeUTC" id="rdateStoreUTC" onclick="swapRdateStoreUTC(this)" value="off"/> 2985 store as UTC 3010 2986 </div> 2987 2988 <table cellspacing="0" id="rdatesTable"> 2989 <tr> 2990 <th colspan="2">Recurrence Dates</th> 2991 </tr> 2992 <xsl:for-each select="/bedework/rdates/rdate"> 2993 <tr> 2994 <td> 2995 <xsl:value-of select="longdate"/> 2996 <xsl:if test="allday='false'"> 2997 <xsl:value-of select="time"/> 2998 <xsl:if test="floating='false'"> 2999 <xsl:value-of select="timezone/id"/> 3000 </xsl:if> 3001 </xsl:if> 3002 </td> 3003 <td class="trash"> 3004 <xsl:variable name="datetime"><xsl:value-of select="fourdigityear"/><xsl:value-of select="twodigitmonth"/><xsl:value-of select="twodigitday"/>T<xsl:value-of select="twodigithour"/><xsl:value-of select="twodigitminute"/>00</xsl:variable> 3005 <xsl:variable name="tzid" select="timezone/id"/> 3006 <xsl:variable name="floating" select="floating"/> 3007 <a href="{$event-setRdate}&datetime={$datetime}&floating={$floating}&tzid={$tzid}&delete=true" title="remove"> 3008 <img src="{$resourcesRoot}/resources/trashIcon.gif" width="13" height="13" border="0" alt="remove"/> 3009 </a> 3010 </td> 3011 </tr> 3012 </xsl:for-each> 3013 </table> 3011 3014 3012 3015 <input type="button" value="done" onclick="window.close()"/> trunk/deployment/webuser/webapp/resources/demoskins/resources/bedeworkEventForm.js
r1228 r1229 71 71 startStoreUTC.value = "false"; 72 72 endStoreUTC.value = "false"; 73 } 74 } 75 function swapRdateFloatingTime(obj) { 76 rdateTimezone = document.getElementById("rdateTzid"); 77 rdateFloating = document.getElementById("rdateFloating"); 78 if (obj.checked) { 79 document.getElementById("rdateStoreUTC").checked = false; 80 rdateTimezone.disabled = true; 81 } else { 82 rdateTimezone.disabled = false; 83 rdateFloating.value = "false"; 84 } 85 } 86 function swapRdateStoreUTC(obj) { 87 rdateTimezone = document.getElementById("rdateTzid"); 88 rdateStoreUTC = document.getElementById("rdateStoreUTC"); 89 if (obj.checked) { 90 document.getElementById("rdateFloating").checked = false; 91 rdateTimezone.disabled = false; 92 rdateStoreUTC.value = "true"; 93 } else { 94 rdateStoreUTC.value = "false"; 73 95 } 74 96 } … … 106 128 changeClass('rrulesTable','visible'); 107 129 changeClass('rrulesUiSwitch','visible'); 130 if (document.getElementById('recurrenceInfo')) { 131 changeClass('recurrenceInfo','invisible'); 132 } 108 133 } else { 109 134 changeClass('rrulesTable','invisible'); 110 135 changeClass('rrulesUiSwitch','invisible'); 136 if (document.getElementById('recurrenceInfo')) { 137 changeClass('recurrenceInfo','visible'); 138 } 111 139 } 112 140 } … … 292 320 } 293 321 322 function setRdateDateTime(formObj) { 323 var rdateTime = dojo.byId("bwEventWidgeRdateTime"); 324 alert (rdateTime.getValue()); 325 if (rdateTime.getValue() != "") { 326 /*var rdateTimeObj = rdateTime.getTime(); 327 var timeString = rdateTimeObj. 328 formOjb.datetime.value += "T" +*/ 329 } 330 } 331 294 332 function untilClickHandler(evt) { 295 333 selectRecurCountUntil('recurUntil');
