function validation() { var s_form_id; var s_field_id; var o_field; var s_fld_value
var s_err_msg; var i_min_length = ''; var i_max_length = ''; var s_format; var s_valid_string; var s_first_field_id; var s_second_field_id; this.form = set_form; this.field = set_field; this.err_msg = set_err_msg; this.min_length = set_min_length; this.max_length = set_max_length; this.format = set_format; this.valid_string = set_valid_string; this.first_field = set_first_field; this.second_field = set_second_field; this.is_length = is_length; this.is_integer = is_integer; this.is_checked = is_checked; this.is_selected = is_selected; this.is_radio = is_radio; this.is_email = is_email; this.is_input = is_input; this.are_unique = are_unique; this.are_identical = are_identical; this.is_date = is_date; this.is_time = is_time; function get_field() { eval('o_field = document.' + s_form_id + '.' + s_field_id); s_fld_value = o_field.value;}
function terminate(s_object_focus) { alert(s_err_msg); if (s_object_focus == 'focus') { o_field.focus();}
else if (s_object_focus == 'select') { o_field.select();}
}
function is_length() { get_field(); if (i_min_length != '' && s_fld_value.length < i_min_length) { terminate('select'); return false;}
if (i_max_length != '' && i_max_length < s_fld_value.length) { terminate('select'); return false;}
return true;}
function is_email() { get_field(); var i_lst_at = s_fld_value.indexOf("@"); var i_str_length = s_fld_value.length; var b_valid_email = true; if ((s_fld_value == null)||(s_fld_value == "")) { b_valid_email = false;}
if (s_fld_value.indexOf("@")==-1) { b_valid_email = false;}
if (s_fld_value.indexOf("@") == -1 || s_fld_value.indexOf("@") == 0 || s_fld_value.indexOf("@") == i_str_length) { b_valid_email = false;}
if (s_fld_value.indexOf(".") == -1 || s_fld_value.indexOf(".") == 0 || s_fld_value.indexOf(".") == i_str_length) { b_valid_email = false;}
if (s_fld_value.indexOf("@",(i_lst_at+1)) != -1) { b_valid_email = false;}
if (s_fld_value.substring(i_lst_at-1,i_lst_at) == "." || s_fld_value.substring(i_lst_at+1,i_lst_at+2) == ".") { b_valid_email = false;}
if (s_fld_value.indexOf(".",(i_lst_at+2)) == -1) { b_valid_email = false;}
if (s_fld_value.indexOf(" ") != -1) { b_valid_email = false;}
if ((s_fld_value.indexOf(".") + 1) == i_str_length) { b_valid_email = false;}
if (b_valid_email == false) { terminate('select'); return false;}
return true;}
function is_input() { get_field(); var b_chr_valid; var i; var n; for (i = 0; i < s_fld_value.length; i++) { s_chr = s_fld_value.charAt(i); b_chr_valid = false
for (n = 0; n < s_valid_string.length; n++) { if (s_chr == s_valid_string.charAt(n)) { b_chr_valid = true; break;}
}
if (b_chr_valid == false) { terminate('select'); return false;}
}
return true;}
function is_integer() { get_field(); var s_valid_string = '0123456789'; var s_chr; var b_chr_valid; var i; var n; for (i = 0; i < s_fld_value.length; i++) { s_chr = s_fld_value.charAt(i); b_chr_valid = false
for (n = 0; n < s_valid_string.length; n++) { if (s_chr == s_valid_string.charAt(n)) { b_chr_valid = true; break;}
}
if (b_chr_valid == false) { terminate('select'); return false;}
}
return true;}
function is_checked() { get_field(); var b_checkbox_selected = false; var i; if (o_field.length) { for (i = 0; i < o_field.length; i++) { if (o_field[i].checked) { b_checkbox_selected = true; break;}
}
}
else { if (o_field.checked) { b_checkbox_selected = true;}
else { b_checkbox_selected = false;}
}
if (!b_checkbox_selected) { terminate(''); return false;}
else { return true;}
}
function is_selected() { get_field(); var o_fld_value; if (1 < eval(s_form_id + '.' + s_field_id + '.size')) { if (o_field.selectedIndex == 'undefined' || o_field.selectedIndex == '-1') { terminate(''); return false;}
}
else { eval('o_fld_value = document.' + s_form_id + '.' + s_field_id + '.options[' + s_form_id + '.' + s_field_id + '.selectedIndex].value'); if (o_field.selectedIndex == 'undefined' || o_field.selectedIndex == '-1' || o_fld_value == '') { terminate(''); return false;}
}
return true;}
function is_radio() { get_field(); var b_radio_button_selected = false; var i; if (o_field.length) { for (i = 0; i < o_field.length; i++) { if (o_field[i].checked) { b_radio_button_selected = true; break;}
}
}
else { if (o_field.checked) { b_radio_button_selected = true;}
else { b_radio_button_selected = false;}
}
if (!b_radio_button_selected) { terminate(''); return false;}
else { return true;}
}
function are_unique() { var s_first_fld; var s_second_fld; eval('var o_first_fld = document.' + s_form_id + '.' + s_first_field_id); eval('var o_second_fld = document.' + s_form_id + '.' + s_second_field_id); if (o_first_fld.value == o_second_fld.value) { terminate(''); o_first_fld.select(); return false;}
else { return true;}
}
function are_identical() { var s_first_fld; var s_second_fld; eval('var o_first_fld = document.' + s_form_id + '.' + s_first_field_id); eval('var o_second_fld = document.' + s_form_id + '.' + s_second_field_id); if (o_first_fld.value != o_second_fld.value) { terminate(''); o_first_fld.select(); return false;}
else { return true;}
}
function is_date() { var a_month_days = new Array(); a_month_days[0] = new Option(31); a_month_days[1] = new Option(28); a_month_days[2] = new Option(31); a_month_days[3] = new Option(30); a_month_days[4] = new Option(31); a_month_days[5] = new Option(30); a_month_days[6] = new Option(31); a_month_days[7] = new Option(31); a_month_days[8] = new Option(30); a_month_days[9] = new Option(31); a_month_days[10] = new Option(30); a_month_days[11] = new Option(31); var a_seperators = new Array('-', '/', '.'); var a_date; var i_day; var i_months; var i_year; var i_days_in_month; get_field(); if (s_fld_value.length < 6 || 10 < s_fld_value.length) { terminate('select'); return false;}
for (i=0; i < a_seperators.length; i++) { a_date = s_fld_value.split(a_seperators[i]); if (a_date.length == 3) { break;}
}
if (a_date.length < 3) { terminate('select'); return false;}
i_day = a_date[0]; i_month = a_date[1]; i_year = a_date[2]; if ((!is_int(i_day)) || (!is_int(i_month)) || (!is_int(i_year))) { terminate('select'); return false;}
if (i_month < 1 || 12 < i_month ) { terminate('select'); return false;}
if (i_year.length != 2 && i_year.length != 4) { terminate('select'); return false;}
if (i_year.length == 2) { i_year = '20'+ i_year;}
if (i_month == 2) { if (i_year % 4 == 0 && (i_year % 100 != 0 || i_year % 400 == 0)) { i_days_in_month = 29;}
else { i_days_in_month = a_month_days[i_month - 1].text;}
}
else { i_days_in_month = a_month_days[i_month - 1].text;}
if (i_day < 1 || i_days_in_month < i_day) { terminate('select'); return false;}
if (i_day.length == 1) { i_day = '0'+ i_day;}
if (i_month.length == 1) { i_month = '0'+ i_month;}
o_field.value = i_day +'-'+ i_month +'-'+ i_year; return true;}
function is_time() { var a_seperators = new Array(':', '.'); var a_time; var i_hour; var i_minutes; var i_days_in_month; get_field(); if (s_fld_value.length < 3 || 5 < s_fld_value.length) { terminate('select'); return false;}
for (i=0; i < a_seperators.length; i++) { a_time = s_fld_value.split(a_seperators[i]); if (a_time.length == 2) { break;}
}
if (a_time.length < 2) { terminate('select'); return false;}
i_hour = a_time[0]; i_minutes = a_time[1]; if ((!is_int(i_hour)) || (!is_int(i_minutes))) { terminate('select'); return false;}
if (i_hour < 0 || 24 < i_hour) { terminate('select'); return false;}
if (i_minutes < 0 || 60 < i_minutes) { terminate('select'); return false;}
if (i_hour.length == 1) { i_hour = '0'+ i_hour;}
if (i_minutes.length == 1) { i_minutes = '0'+ i_minutes;}
o_field.value = i_hour +':'+ i_minutes; return true;}
function is_int(i_int) { var s_valid_string = '0123456789'; var b_chr_valid; for (i = 0; i < i_int.length; i++) { b_chr_valid = false
for (n = 0; n < s_valid_string.length; n++) { if (i_int.charAt(i) == s_valid_string.charAt(n)) { b_chr_valid = true; break;}
}
if (b_chr_valid == false) { return false;}
}
return true;}
function set_err_msg(s__err_msg) { s_err_msg = s__err_msg;}
function set_field(s__field_id) { s_field_id = s__field_id;}
function set_first_field(s__first_field_id) { s_first_field_id = s__first_field_id;}
function set_form(s__form_id) { s_form_id = s__form_id;}
function set_max_length(i__max_length) { i_max_length = i__max_length;}
function set_min_length(i__min_length) { i_min_length = i__min_length;}
function set_format(s__format) { s_format = s__format;}
function set_second_field(s__second_field_id) { s_second_field_id = s__second_field_id;}
function set_valid_string(s__valid_string) { s_valid_string = s__valid_string;}
}