id='[% field_path %]'
name='[% field_path %]'
onchange="validate('[% field_path %]')"
+ [% IF type == 'text' %]onkeyup="validate('[% field_path %]', true)"[% END %]
value='[% value || CGI.param(field_path) | html %]'/>
[% IF invalid_require %]
If it gets too big, move to a dedicated file. */
.patron-reg-invalid {
font-weight: bold;
- background-color: red;
+ /* background-color: red; */
+ background-color: #C11B17;
+ color: white;
}
.patron-reg-required {
font-weight: bold;
<div class="grid">
<div class="grid-cell" style="width:40%">
<div>
- <input disabled='disabled' name='stgba.state' id='stgba.state' value='WA'/>
+ <input readonly name='stgba.state' id='stgba.state' value='WA'/>
</div>
<div>
<label for="stgba.state">State</label>
var activity_timeout = 300000; // 300 seconds
var post_success_timeout = 30000; // 15 seconds
var timeout_redirect = 'https://www.kcls.org';
+var phone_regex = new RegExp(/^\d{3}-\d{3}-\d{4}/);
+var post_regex = new RegExp(/^\d{5}(?:[-\s]\d{4})?$/);
/* show/hide card options depending on the selected type. */
function show_card_types(type) {
if (value) {
delete invalid_fields[dom_id];
} else {
+ valid = false;
invalid_fields[dom_id] = "Please enter an address street";
}
break;
if (value) {
delete invalid_fields[dom_id];
} else {
+ valid = false;
invalid_fields[dom_id] = "Please enter an address city";
}
break;
case 'stgba.post_code':
- if (value) {
+ if (value && value.match(post_regex)) {
delete invalid_fields[dom_id];
} else {
- invalid_fields[dom_id] = "Please enter an address zip/post code";
+ valid = false;
+ invalid_fields[dom_id] = "Please enter a valid zip/post code";
+ }
+ break;
+
+ case 'stgu.day_phone':
+ if (!value || value.match(phone_regex)) {
+ delete invalid_fields[dom_id];
+ } else {
+ valid = false;
+ invalid_fields[dom_id] =
+ "Please use phone number format XXX-YYY-ZZZZ";
}
break;