YAHOO.util.Dom.addClass(field, 'validation_error_field');
}
-function createCalendar(name) {
+/* This function is never to be called directly, but only indirectly
+ * using template/en/default/global/calendar.js.tmpl, so that localization
+ * works. For the same reason, if you modify this function's parameter list,
+ * you need to modify the documentation in said template as well. */
+function createCalendar(name, start_weekday, months_long, weekdays_short) {
var cal = new YAHOO.widget.Calendar('calendar_' + name,
- 'con_calendar_' + name);
+ 'con_calendar_' + name,
+ { START_WEEKDAY: start_weekday,
+ MONTHS_LONG: months_long,
+ WEEKDAYS_SHORT: weekdays_short
+ });
YAHOO.bugzilla['calendar_' + name] = cal;
var field = document.getElementById(name);
cal.selectEvent.subscribe(setFieldFromCalendar, field, false);
<div id="con_calendar_[% field.name FILTER html %]"></div>
<script type="text/javascript">
- createCalendar('[% field.name FILTER js %]')
- </script>
+ <!--
+ [%+ PROCESS "global/calendar.js.tmpl" id = field.name %]
+ //--></script>
[% CASE constants.FIELD_TYPE_BUG_ID %]
<span id="[% field.name FILTER html %]_input_area">
<input name="[% field.name FILTER html %]" id="[% field.name FILTER html %]"
</form>
<script type="text/javascript">
-<!--
- createCalendar('start_date');
- createCalendar('end_date');
- document.forms['summary'].start_date.focus();
-//--></script>
+ <!--
+ [%+ PROCESS "global/calendar.js.tmpl" id = 'start_date' %]
+ [% PROCESS "global/calendar.js.tmpl" id = 'end_date' %]
+ document.forms['summary'].start_date.focus();
+ //--></script>
<hr noshade size=1>
[% END %]
--- /dev/null
+[%# This Source Code Form is subject to the terms of the Mozilla Public
+ # License, v. 2.0. If a copy of the MPL was not distributed with this
+ # file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ #
+ # This Source Code Form is "Incompatible With Secondary Licenses", as
+ # defined by the Mozilla Public License, v. 2.0.
+ #%]
+
+[%# INTERFACE:
+ # id: The id of the input field the calendar widget is to be assigned to.
+ #%]
+
+[%# This template exists because createCalendar accepts additional parameters
+ # which allow for localization. Please see the YUI documentation at
+ # http://developer.yahoo.com/yui/calendar/#internationalization for details.
+ # As an example, here's what you'd specify as additional parameters to
+ # localize for German calendars; replace the ellipsis ("...") by the original
+ # parameter (we cannot put it into the example because it'd break this
+ # template comment):
+ #
+ # createCalendar(...
+ # /* The weekday the week begins on; 0 is Sunday,
+ # * 1 is Monday and so on: */
+ # 1,
+ # /* Months, full names; first must be January: */
+ # ['Januar', 'Februar', 'März', 'April',
+ # 'Mai', 'Juni', 'Juli', 'August',
+ # 'September', 'Oktober', 'November', 'Dezember'],
+ # /* Weekdays, two-letter abbreviations; first must be
+ # * Sunday: */
+ # ['So', 'Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa']);
+ #%]
+createCalendar('[% id FILTER js %]');
<span id="con_calendar_[% field.name FILTER html %]to"></span>
<script type="text/javascript">
- createCalendar('[% field.name FILTER js %]');
- createCalendar('[% field.name FILTER js %]to');
- </script>
+ <!--
+ [%+ PROCESS "global/calendar.js.tmpl" id = field.name %]
+ [% PROCESS "global/calendar.js.tmpl" id = field.name _ 'to' %]
+ //--></script>
[% CASE [ constants.FIELD_TYPE_SINGLE_SELECT,
constants.FIELD_TYPE_MULTI_SELECT ] %]
<div id="container_[% field.name FILTER html %]" class="search_field_grid">
<div id="con_calendar_chfieldto"></div>
(YYYY-MM-DD or relative dates)
<script type="text/javascript">
- createCalendar('chfieldfrom');
- createCalendar('chfieldto');
- </script>
+ <!--
+ [%+ PROCESS "global/calendar.js.tmpl" id = 'chfieldfrom' %]
+ [% PROCESS "global/calendar.js.tmpl" id = 'chfieldto' %]
+ //--></script>
</li>
</ul>