update_category_code( category_code );
}
[% END %]
-
+ $("#dateofbirth").datepicker({ maxDate: "-1D" });
});
function clear_entry(node) {
var original = node.parentNode.parentNode;
- $("input[type=text]", original).attr('value', '');
+ $("textarea", original).attr('value', '');
$("select", original).attr('value', '');
}
function clone_entry(node) {
- var original = node.parentNode.parentNode;
- var clone = original.cloneNode(true);
+ var original = $(node).parent();
+ var clone = original.clone();
+
var newId = 50 + parseInt(Math.random() * 100000);
- $("input", clone).attr('id', function() {
+ $("input,select,textarea", clone).attr('id', function() {
return this.id.replace(/patron_attr_\d+/, 'patron_attr_' + newId);
});
- $("input", clone).attr('name', function() {
+ $("input,select,textarea", clone).attr('name', function() {
return this.name.replace(/patron_attr_\d+/, 'patron_attr_' + newId);
});
- $("select", clone).attr('id', function() {
- return this.id.replace(/patron_attr_\d+/, 'patron_attr_' + newId);
- });
- $("select", clone).attr('name', function() {
- return this.name.replace(/patron_attr_\d+/, 'patron_attr_' + newId);
+ $("label", clone).attr('for', function() {
+ return $(this).attr("for").replace(/patron_attr_\d+/, 'patron_attr_' + newId);
});
$("input#patron_attr_" + newId, clone).attr('value','');
$("select#patron_attr_" + newId, clone).attr('value','');
- original.parentNode.insertBefore(clone, original.nextSibling);
+ $(original).after(clone);
+ return false;
}
function update_category_code(category_code) {
if ( $(category_code).is("select") ) {
category_code = $("#categorycode").find("option:selected").val();
}
- var mytables = $(".attributes_table>tbody");
-
- mytables.find("tr").each(function(){
- $(this).hide()
- });
-
- mytables.find("tr[data-category_code="+category_code+"]").each(function(){
- $(this).show();
- });
- mytables.find("tr[data-category_code='']").each(function(){
- $(this).show();
- });
-
+ var mytables = $(".attributes_table");
+ $(mytables).find("li").hide();
+ $(mytables).find(" li[data-category_code="+category_code+"]").show();
+ $(mytables).find(" li[data-category_code='']").show();
}
var MSG_SEPARATOR = _("Separator must be / in field ");
[% END %]
[% IF ( ERROR_age_limitations ) %]
<li id="ERROR_age_limitations">Patron's age is incorrect for their category.
- Ages allowed are [% ERROR_age_limitations %].</li>
+ Ages allowed are [% age_low %]-[% age_high %].</li>
[% END %]
[% IF ( ERROR_branch ) %]
<li id="ERROR_branch">Library is invalid.</li>
<input type="text" id="dateofbirth" name="dateofbirth" size="20" value="[% IF ( opduplicate ) %][% ELSE %][% dateofbirth %][% END %]" />
[% END %]
- <img src="[% themelang %]/lib/calendar/cal.gif" id="dateofbirth_button" alt="Show Calendar" />
- <script language="JavaScript" type="text/javascript">
- Calendar.setup(
- {
- inputField : "dateofbirth",
- ifFormat : "[% DHTMLcalendar_dateformat %]",
- button : "dateofbirth_button"
- }
- );
- </script>
[% IF ( mandatorydateofbirth ) %]<span class="required">Required</span>[% END %]
[% IF ( ERROR_dateofbirth ) %]<span class="required">(Error)</span>[% END %]
<div class="hint">[% INCLUDE 'date-format.inc' %]</div>
<label for="cardnumber">
[% END %]
Card number: </label>
- [% IF ( opduplicate ) %]
- <input type="text" id="cardnumber" name="cardnumber" size="20" />
- [% ELSE %]
- <input type="text" id="cardnumber" name="cardnumber" size="20" value="[% cardnumber %]" />
- [% END %]
+ <input type="text" id="cardnumber" name="cardnumber" size="20" value="[% cardnumber %]" />
[% IF ( mandatorycardnumber ) %]<span class="required">Required</span>[% END %]</li>
[% END %]
[% UNLESS nobranchcode %]
[% UNLESS nodateenrolled %]
<li>
[% IF ( mandatorydateenrolled ) %]
- <label for="dateenrolled" class="required">
+ <label for="from" class="required">
[% ELSE %]
- <label for="dateenrolled">
+ <label for="from">
[% END %]
Registration date: </label>
[% IF ( metric ) %]
- <input type="text" id="dateenrolled" name="dateenrolled" maxlength="10" size="10" onchange="CheckDate(document.form.dateenrolled);check_manip_date('verify');" value="[% dateenrolled %]" />
+ <input type="text" id="from" name="dateenrolled" maxlength="10" size="10" onchange="CheckDate(document.form.dateenrolled);check_manip_date('verify');" value="[% dateenrolled %]" class="datepickerfrom" />
[% ELSE %]
- <input type="text" id="dateenrolled" name="dateenrolled" maxlength="10" size="10" value="[% dateenrolled %]" />
+ <input type="text" id="from" name="dateenrolled" maxlength="10" size="10" value="[% dateenrolled %]" class="datepickerfrom" />
[% END %]
- <img src="[% themelang %]/lib/calendar/cal.gif" id="dateenrolled_button" alt="Show Calendar" />
- <script language="JavaScript" type="text/javascript">
- Calendar.setup(
- {
- inputField : "dateenrolled",
- ifFormat : "[% DHTMLcalendar_dateformat %]",
- button : "dateenrolled_button"
- }
- );
- </script>
[% IF ( mandatorydateenrolled ) %]<span class="required">Required</span>[% END %]
[% IF ( ERROR_dateenrolled ) %]<span class="required">(Error)</span>[% END %]
<div class="hint">[% INCLUDE 'date-format.inc' %]</div>
[% UNLESS nodateexpiry %]
<li>
[% IF ( mandatorydateexpiry ) %]
- <label for="dateexpiry" class="required">
+ <label for="to" class="required">
[% ELSE %]
- <label for="dateexpiry">
+ <label for="to">
[% END %]
Expiry date (leave blank for auto calc) </label>
[% IF ( metric ) %]
[% UNLESS ( opadd ) %]
- <input type="text" id="dateexpiry" name="dateexpiry" maxlength="10" size="10" onchange="CheckDate(document.form.dateexpiry);check_manip_date('verify');" value="[% dateexpiry %]" />
+ <input type="text" id="to" name="dateexpiry" maxlength="10" size="10" onchange="CheckDate(document.form.dateexpiry);check_manip_date('verify');" value="[% dateexpiry %]" class="datepickerto" />
[% ELSE %]
- <input type="text" id="dateexpiry" name="dateexpiry" maxlength="10" size="10" onchange="CheckDate(document.form.dateexpiry);check_manip_date('verify');" />
+ <input type="text" id="to" name="dateexpiry" maxlength="10" size="10" onchange="CheckDate(document.form.dateexpiry);check_manip_date('verify');" class="datepickerto" />
[% END %]
[% ELSE %]
[% UNLESS ( opadd ) %]
- <input type="text" id="dateexpiry" name="dateexpiry" maxlength="10" size="10" value="[% dateexpiry %]" />
+ <input type="text" id="to" name="dateexpiry" maxlength="10" size="10" value="[% dateexpiry %]" class="datepickerto" />
[% ELSE %]
- <input type="text" id="dateexpiry" name="dateexpiry" maxlength="10" size="10" />
+ <input type="text" id="to" name="dateexpiry" maxlength="10" size="10" class="datepickerto" />
[% END %]
[% END %]
- <img src="[% themelang %]/lib/calendar/cal.gif" id="dateexpiry_button" alt="Show Calendar" />
- <script language="JavaScript" type="text/javascript">
- Calendar.setup(
- {
- inputField : "dateexpiry",
- ifFormat : "[% DHTMLcalendar_dateformat %]",
- button : "dateexpiry_button"
- }
- );
- </script>
[% IF ( mandatorydateexpiry ) %]<span class="required">Required</span>[% END %]
[% IF ( ERROR_dateexpiry ) %]<span class="required">(Error)</span>[% END %]
<div class="hint">[% INCLUDE 'date-format.inc' %]</div>
<label for="nodebarred">No </label>
<input type="radio" id="nodebarred" name="debarred" value="0" checked="checked"/>
[% END %]
-
- <br />
- <label for="datedebarred" class="radio">until:</label>
- [% IF opduplicate %]
- <input type="text" name="datedebarred" id="datedebarred" class="debarred" value="[% datedebarred %]" onclick="this.value=''" />
- [% ELSE %]
- <input type="text" name="datedebarred" id="datedebarred" class="debarred" value="[% datedebarred %]" />
- [% END %]
- <img src="[% themelang %]/lib/calendar/cal.gif" id="debarred_button" alt="Show Calendar" />
- <script language="JavaScript" type="text/javascript">
- Calendar.setup(
- {
- inputField : "datedebarred",
- ifFormat : "[% DHTMLcalendar_dateformat %]",
- button : "debarred_button"
- }
- );
- </script>
- <br />
+
+ <span id="debarreduntil"><label for="datedebarred" class="inline">Until:</label>
+ [% IF opduplicate %]
+ <input type="text" name="datedebarred" id="datedebarred" class="debarred datepicker" value="[% datedebarred %]" onclick="this.value=''" />
+ [% ELSE %]
+ <input type="text" name="datedebarred" id="datedebarred" class="debarred datepicker" value="[% datedebarred %]" />
+ [% END %]
+ <span class="hint">(optional)</span> </span>
+ </li>
+ <li>
<label for="debarredcomment" class="radio">Comment:</label>
[% IF ( opduplicate ) %]
<textarea id="debarredcomment" name="debarredcomment" cols="55" rows="3" onclick="this.value=''">[% debarredcomment %]</textarea>
<legend>Additional attributes and identifiers</legend>
[% FOREACH pa_loo IN patron_attributes %]
[% IF pa_loo.class %]
- <table id="aai_[% pa_loo.class %]" class="attributes_table">
- <caption>[% pa_loo.lib %]</caption>
- [% ELSE %]
- <table id="aai" class="attributes_table">
+ <fieldset id="aai_[% pa_loo.class %]">
+ <legend>[% pa_loo.lib %]</legend>
[% END %]
- <thead>
- <tr>
- <th>Type</th>
- <th colspan="2">Value</th>
- </tr>
- </thead>
- <tbody>
+ <ol class="attributes_table">
[% FOREACH patron_attribute IN pa_loo.items %]
- <tr data-category_code="[% patron_attribute.category_code %]">
- <td>
- [% patron_attribute.code %] ([% patron_attribute.description %])
- </td>
- <td>
+ <li data-category_code="[% patron_attribute.category_code %]">
+ <label for="[% patron_attribute.form_id %]">[% patron_attribute.description %]: </label>
<input type="hidden" id="[% patron_attribute.form_id %]_code" name="[% patron_attribute.form_id %]_code" value="[% patron_attribute.code |html %]" />
[% IF ( patron_attribute.use_dropdown ) %]
<select id="[% patron_attribute.form_id %]" name="[% patron_attribute.form_id %]">
</select>
[% ELSE %]
[% IF ( opduplicate ) %]
- <input type="text" maxlength="64" value="[% patron_attribute.value %]"
- id="[% patron_attribute.form_id %]" name="[% patron_attribute.form_id %]" onclick="this.value=''" />
+ <textarea rows="2" cols="30" id="[% patron_attribute.form_id %]" name="[% patron_attribute.form_id %]" onclick="this.value=''" >[% patron_attribute.value %]</textarea>
[% ELSE %]
- <input type="text" maxlength="64" value="[% patron_attribute.value %]"
- id="[% patron_attribute.form_id %]" name="[% patron_attribute.form_id %]" />
+ <textarea rows="2" cols="30" id="[% patron_attribute.form_id %]" name="[% patron_attribute.form_id %]">[% patron_attribute.value %]</textarea>
[% END %]
[% END %]
[% IF ( patron_attribute.password_allowed ) %]
- (Password: <input type="password" maxlength="64" value="[% patron_attribute.password %]"
+ (<label class="yesno" for="[% patron_attribute.form_id %]_password">Password:</label> <input type="password" maxlength="64" value="[% patron_attribute.password %]"
id="[% patron_attribute.form_id %]_password" name="[% patron_attribute.form_id %]_password" />)
[% END %]
- </td>
- <td>
- <a href="#" onclick="clear_entry(this); return false;">Clear</a>
+ <a href="#" class="clear-field" onclick="clear_entry(this); return false;">Clear</a>
[% IF ( patron_attribute.repeatable ) %]
- <a href="#" onclick="clone_entry(this); return false;">New</a>
+ <a href="#" class="clone-field" onclick="clone_entry(this); return false;">New</a>
[% END %]
- </td>
- </tr>
+ </li>
[% END %]
- </tbody>
- </table>
+ </ol>
+ [% IF pa_loo.class %]</fieldset>[% END %]
[% END %]
</fieldset>
[% END %][% END %][% END %]