|
Lines 6-136
Link Here
|
| 6 |
[% INCLUDE 'calendar.inc' %] |
6 |
[% INCLUDE 'calendar.inc' %] |
| 7 |
<script type="text/javascript"> |
7 |
<script type="text/javascript"> |
| 8 |
//<![CDATA[ |
8 |
//<![CDATA[ |
| 9 |
$(document).ready(function() { |
9 |
$(document).ready(function() { |
| 10 |
|
10 |
|
| 11 |
[% IF categorycode %] |
11 |
[% IF categorycode %] |
| 12 |
update_category_code( "[% categorycode %]" ); |
12 |
update_category_code( "[% categorycode %]" ); |
| 13 |
[% ELSE %] |
13 |
[% ELSE %] |
| 14 |
if ( $("#categorycode_entry").length > 0 ){ |
14 |
if ( $("#categorycode_entry").length > 0 ){ |
| 15 |
var category_code = $("#categorycode_entry").find("option:selected").val(); |
15 |
var category_code = $("#categorycode_entry").find("option:selected").val(); |
| 16 |
update_category_code( category_code ); |
16 |
update_category_code( category_code ); |
| 17 |
} |
17 |
} |
| 18 |
[% END %] |
18 |
[% END %] |
| 19 |
$("#dateofbirth").datepicker({ maxDate: "-1D", yearRange: "c-120:" }); |
19 |
$("#dateofbirth").datepicker({ maxDate: "-1D", yearRange: "c-120:" }); |
| 20 |
dateformat = $("#dateofbirth").siblings(".hint").first().html(); |
20 |
dateformat = $("#dateofbirth").siblings(".hint").first().html(); |
| 21 |
CalculateAge(); |
21 |
write_age(); |
| 22 |
$("#entryform").validate({ |
22 |
$("#entryform").validate({ |
| 23 |
rules: { |
23 |
rules: { |
| 24 |
email: { |
24 |
email: { |
| 25 |
email: true |
25 |
email: true |
| 26 |
}, |
26 |
}, |
| 27 |
emailpro: { |
27 |
emailpro: { |
| 28 |
email: true |
28 |
email: true |
| 29 |
}, |
29 |
}, |
| 30 |
B_email: { |
30 |
B_email: { |
| 31 |
email: true |
31 |
email: true |
| 32 |
} |
32 |
} |
| 33 |
}, |
33 |
}, |
| 34 |
submitHandler: function(form) { |
34 |
submitHandler: function(form) { |
| 35 |
$("body, form input[type='submit'], form button[type='submit'], form a").addClass('waiting'); |
35 |
$("body, form input[type='submit'], form button[type='submit'], form a").addClass('waiting'); |
| 36 |
if (form.beenSubmitted) |
36 |
if (form.beenSubmitted) |
| 37 |
return false; |
37 |
return false; |
| 38 |
else |
38 |
else |
| 39 |
form.beenSubmitted = true; |
39 |
form.beenSubmitted = true; |
| 40 |
form.submit(); |
40 |
form.submit(); |
| 41 |
} |
41 |
} |
| 42 |
}); |
42 |
}); |
| 43 |
|
43 |
|
| 44 |
var mrform = $("#manual_restriction_form"); |
44 |
var mrform = $("#manual_restriction_form"); |
| 45 |
var mrlink = $("#add_manual_restriction"); |
45 |
var mrlink = $("#add_manual_restriction"); |
| 46 |
mrform.hide(); |
46 |
mrform.hide(); |
| 47 |
mrlink.on("click",function(e){ |
47 |
mrlink.on("click",function(e){ |
| 48 |
$(this).hide(); |
48 |
$(this).hide(); |
| 49 |
mrform.show(); |
49 |
mrform.show(); |
| 50 |
e.preventDefault(); |
50 |
e.preventDefault(); |
| 51 |
}); |
51 |
}); |
| 52 |
$("#cancel_manual_restriction").on("click",function(e){ |
52 |
$("#cancel_manual_restriction").on("click",function(e){ |
| 53 |
$('#debarred_expiration').val(''); |
53 |
$('#debarred_expiration').val(''); |
| 54 |
$('#add_debarment').val(0); |
54 |
$('#add_debarment').val(0); |
| 55 |
$('#debarred_comment').val(''); |
55 |
$('#debarred_comment').val(''); |
| 56 |
mrlink.show(); |
56 |
mrlink.show(); |
| 57 |
mrform.hide(); |
57 |
mrform.hide(); |
| 58 |
e.preventDefault(); |
58 |
e.preventDefault(); |
| 59 |
}); |
59 |
}); |
| 60 |
}); |
60 |
}); |
| 61 |
|
61 |
|
| 62 |
function clear_entry(node) { |
62 |
function clear_entry(node) { |
| 63 |
var original = $(node).parent(); |
63 |
var original = $(node).parent(); |
| 64 |
$("textarea", original).attr('value', ''); |
64 |
$("textarea", original).attr('value', ''); |
| 65 |
$("select", original).attr('value', ''); |
65 |
$("select", original).attr('value', ''); |
| 66 |
} |
66 |
} |
| 67 |
|
67 |
|
| 68 |
function clone_entry(node) { |
68 |
function clone_entry(node) { |
| 69 |
var original = $(node).parent(); |
69 |
var original = $(node).parent(); |
| 70 |
var clone = original.clone(); |
70 |
var clone = original.clone(); |
| 71 |
|
71 |
|
| 72 |
var newId = 50 + parseInt(Math.random() * 100000); |
72 |
var newId = 50 + parseInt(Math.random() * 100000); |
| 73 |
$("input,select,textarea", clone).attr('id', function() { |
73 |
$("input,select,textarea", clone).attr('id', function() { |
| 74 |
return this.id.replace(/patron_attr_\d+/, 'patron_attr_' + newId); |
74 |
return this.id.replace(/patron_attr_\d+/, 'patron_attr_' + newId); |
| 75 |
}); |
75 |
}); |
| 76 |
$("input,select,textarea", clone).attr('name', function() { |
76 |
$("input,select,textarea", clone).attr('name', function() { |
| 77 |
return this.name.replace(/patron_attr_\d+/, 'patron_attr_' + newId); |
77 |
return this.name.replace(/patron_attr_\d+/, 'patron_attr_' + newId); |
| 78 |
}); |
78 |
}); |
| 79 |
$("label", clone).attr('for', function() { |
79 |
$("label", clone).attr('for', function() { |
| 80 |
return $(this).attr("for").replace(/patron_attr_\d+/, 'patron_attr_' + newId); |
80 |
return $(this).attr("for").replace(/patron_attr_\d+/, 'patron_attr_' + newId); |
| 81 |
}); |
81 |
}); |
| 82 |
$("input#patron_attr_" + newId, clone).attr('value',''); |
82 |
$("input#patron_attr_" + newId, clone).attr('value',''); |
| 83 |
$("select#patron_attr_" + newId, clone).attr('value',''); |
83 |
$("select#patron_attr_" + newId, clone).attr('value',''); |
| 84 |
$(original).after(clone); |
84 |
$(original).after(clone); |
| 85 |
return false; |
85 |
return false; |
| 86 |
} |
86 |
} |
| 87 |
|
87 |
|
| 88 |
function update_category_code(category_code) { |
88 |
function update_category_code(category_code) { |
| 89 |
if ( $(category_code).is("select") ) { |
89 |
if ( $(category_code).is("select") ) { |
| 90 |
category_code = $("#categorycode_entry").find("option:selected").val(); |
90 |
category_code = $("#categorycode_entry").find("option:selected").val(); |
| 91 |
} |
91 |
} |
| 92 |
var mytables = $(".attributes_table"); |
92 |
var mytables = $(".attributes_table"); |
| 93 |
$(mytables).find("li").hide(); |
93 |
$(mytables).find("li").hide(); |
| 94 |
$(mytables).find(" li[data-category_code='"+category_code+"']").show(); |
94 |
$(mytables).find(" li[data-category_code='"+category_code+"']").show(); |
| 95 |
$(mytables).find(" li[data-category_code='']").show(); |
95 |
$(mytables).find(" li[data-category_code='']").show(); |
| 96 |
} |
96 |
} |
| 97 |
|
97 |
|
| 98 |
function select_user(borrowernumber, borrower) { |
98 |
function select_user(borrowernumber, borrower) { |
| 99 |
var form = $('#entryform').get(0); |
99 |
var form = $('#entryform').get(0); |
| 100 |
if (form.guarantorid.value) { |
100 |
if (form.guarantorid.value) { |
| 101 |
$("#contact-details").find('a').remove(); |
101 |
$("#contact-details").find('a').remove(); |
| 102 |
$("#contactname, #contactfirstname").parent().find('span').remove(); |
102 |
$("#contactname, #contactfirstname").parent().find('span').remove(); |
| 103 |
} |
103 |
} |
|
|
104 |
|
| 105 |
var id = borrower.borrowernumber; |
| 106 |
form.guarantorid.value = id; |
| 107 |
$('#contact-details') |
| 108 |
.show() |
| 109 |
.find('span') |
| 110 |
.after('<a target="blank" href="/cgi-bin/koha/members/moremember.pl?borrowernumber=' + id + '">' + id + '</a>'); |
| 111 |
|
| 112 |
$(form.contactname) |
| 113 |
.val(borrower.surname) |
| 114 |
.before('<span>' + borrower.surname + '</span>').get(0).type = 'hidden'; |
| 115 |
$(form.contactfirstname) |
| 116 |
.val(borrower.firstname) |
| 117 |
.before('<span>' + borrower.firstname + '</span>').get(0).type = 'hidden'; |
| 118 |
|
| 119 |
form.streetnumber.value = borrower.streetnumber; |
| 120 |
form.address.value = borrower.address; |
| 121 |
form.address2.value = borrower.address2; |
| 122 |
form.city.value = borrower.city; |
| 123 |
form.state.value = borrower.state; |
| 124 |
form.zipcode.value = borrower.zipcode; |
| 125 |
form.country.value = borrower.country; |
| 126 |
form.branchcode.value = borrower.branchcode; |
| 127 |
|
| 128 |
form.guarantorsearch.value = _("Change"); |
| 104 |
|
129 |
|
| 105 |
var id = borrower.borrowernumber; |
130 |
return 0; |
| 106 |
form.guarantorid.value = id; |
131 |
} |
| 107 |
$('#contact-details') |
|
|
| 108 |
.show() |
| 109 |
.find('span') |
| 110 |
.after('<a target="blank" href="/cgi-bin/koha/members/moremember.pl?borrowernumber=' + id + '">' + id + '</a>'); |
| 111 |
|
132 |
|
| 112 |
$(form.contactname) |
133 |
function write_age() { |
| 113 |
.val(borrower.surname) |
134 |
var hint = $("#dateofbirth").siblings(".hint").first(); |
| 114 |
.before('<span>' + borrower.surname + '</span>').get(0).type = 'hidden'; |
135 |
hint.html(dateformat); |
| 115 |
$(form.contactfirstname) |
|
|
| 116 |
.val(borrower.firstname) |
| 117 |
.before('<span>' + borrower.firstname + '</span>').get(0).type = 'hidden'; |
| 118 |
|
136 |
|
| 119 |
form.streetnumber.value = borrower.streetnumber; |
137 |
var age = CalculateAge(document.form.dateofbirth.value); |
| 120 |
form.address.value = borrower.address; |
|
|
| 121 |
form.address2.value = borrower.address2; |
| 122 |
form.city.value = borrower.city; |
| 123 |
form.state.value = borrower.state; |
| 124 |
form.zipcode.value = borrower.zipcode; |
| 125 |
form.country.value = borrower.country; |
| 126 |
form.branchcode.value = borrower.branchcode; |
| 127 |
|
138 |
|
| 128 |
form.guarantorsearch.value = _("Change"); |
139 |
if (!age.year && !age.month) { |
|
|
140 |
return; |
| 141 |
} |
| 142 |
|
| 143 |
var age_string; |
| 144 |
if (age.year || age.month) { |
| 145 |
age_string = _('Age: '); |
| 146 |
} |
| 147 |
|
| 148 |
if (age.year) { |
| 149 |
age_string += _(age.year > 1 ? '%s years ' : '%s year ').format(age.year); |
| 150 |
} |
| 151 |
|
| 152 |
if (age.month) { |
| 153 |
age_string += _(age.month > 1 ? '%s months ' : '%s month ').format(age.month); |
| 154 |
} |
| 129 |
|
155 |
|
| 130 |
return 0; |
156 |
hint.html(age_string); |
| 131 |
} |
157 |
} |
| 132 |
|
158 |
|
| 133 |
>>>>>>> Bug 15206 - Show patron's age under date of birth in memberentry.pl |
|
|
| 134 |
var MSG_SEPARATOR = _("Separator must be / in field %s"); |
159 |
var MSG_SEPARATOR = _("Separator must be / in field %s"); |
| 135 |
var MSG_INCORRECT_DAY = _("Invalid day entered in field %s"); |
160 |
var MSG_INCORRECT_DAY = _("Invalid day entered in field %s"); |
| 136 |
var MSG_INCORRECT_MONTH = _("Invalid month entered in field %s"); |
161 |
var MSG_INCORRECT_MONTH = _("Invalid month entered in field %s"); |
|
Lines 329-335
Link Here
|
| 329 |
[% END %] |
354 |
[% END %] |
| 330 |
Date of birth: </label> |
355 |
Date of birth: </label> |
| 331 |
|
356 |
|
| 332 |
<input type="text" id="dateofbirth" name="dateofbirth" size="20" onchange="CalculateAge();" value="[% UNLESS opduplicate %][% dateofbirth %][% END %]" /> |
357 |
<input type="text" id="dateofbirth" name="dateofbirth" size="20" onchange="write_age();" value="[% UNLESS opduplicate %][% dateofbirth %][% END %]" /> |
| 333 |
|
358 |
|
| 334 |
[% IF ( mandatorydateofbirth ) %]<span class="required">Required</span>[% END %] |
359 |
[% IF ( mandatorydateofbirth ) %]<span class="required">Required</span>[% END %] |
| 335 |
[% IF ( ERROR_dateofbirth ) %]<span class="required">(Error)</span>[% END %] |
360 |
[% IF ( ERROR_dateofbirth ) %]<span class="required">(Error)</span>[% END %] |
| 336 |
- |
|
|