<!--
//------    form validattion     -------//

var msg = "";
function doBackForm(frmname) {
    if(checkForm(frmname)){
        var thisfrm = eval(document.forms[frmname]);
        thisfrm.target = 'backService';
        thisfrm.submit();
    }
}
function checkForm(frmname) {
    msg = "";
    /*
    for(var i=0; i< document.forms.length;i++){
        alert(document.forms[i].name);
    }
    */
    var frm = eval(document.forms[frmname]);
    if(frm._check_fields == null || frm._check_fields.value == "" ) return true;
    var str_check_keys = frm._check_fields.value;
    var str_check_names= frm._check_names.value;
    var str_check_methods= frm._check_methods.value;
    var check_keys = str_check_keys.split("|");
    var check_names= str_check_names.split("|");
    var check_methods= str_check_methods.split("|");
    var fld_key;
    var fld_name;
    var fld_method;
    var val;
    for(var i=0, n=check_keys.length; i<n; i++){
        fld_key= check_keys[i];
        fld_name= check_names[i]; 
        fld_method= check_methods[i];
        
        if( fld_method == "req" )
        {
          //alert(fld_key);
          if(isEmpty(frm.elements[fld_key].value) || frm.elements[fld_key].value== null ){
            msg += "    "+fld_name+"\n";
          }
        }     
        else if( fld_method ==   "email" )
        {
             if(!checkEmail(frm.elements[fld_key].value)){
               msg += "    "+fld_name+"\n";
             }
        }
        else if( fld_method == "phone")
        {
             if(!checkPhone(frm.elements[fld_key].value)){
               msg += "    "+fld_name+"\n";
             }
        }
        else if( fld_method =="radio")
        {
             if(!checkRadio(frm, fld_key)){
               msg += "    "+fld_name+"\n";
             }
        }
    }
    
    if (msg != "") {
        alert("You forgot to enter the following information:  \n"+msg);
        return false;
    }else{
       msg =  _additional_check(frmname,msg); 
    }
    if (msg != "") {
        alert(msg);
        return false;
    }
    return true;
}

function _additional_check(frmname,msg){

    if( typeof window.additional_check == "function" ) {
        return window.additional_check(frmname,msg);
    }else{
        return "";
    }
}
  
function additional_check(frmname,msg){
    var frm = eval(document.forms[frmname]);
    if(frmname == 'form_updateprof' || frmname == 'form_adduser'){
        if(frm.attr_PASSWORD.value != frm.PASSWORD2.value){
            msg += "    Password not match\n";
        }
    }
    return msg;
}

     

function checkEmail (strng) {
  if (strng == "") {
    return false;
  }

  var emailFilter=/^.+@.+\..{2,3}$/;
  if (!(emailFilter.test(strng))) { 
       return false;
  }else {
       var illegalChars= /[\(\)\<\>\,\;\:\\\"\[\]]/
         if (strng.match(illegalChars)) {
          return false;
       }
    }
  return true;    
}

function checkPhone (strng) {
  if (strng == "") {
    return false;
  }
  var stripped = strng.replace(/[\(\)\.\-\ ]/g, ''); 
    if (isNaN(parseInt(stripped))) {
       return false;  
    }
    if (!(stripped.length == 10)) {
	return false;
    } 
return true;
}

function checkPassword (strng) {

  if (strng == "") {
    return false;
  }

    var illegalChars = /[\W_]/; 
    
    if ((strng.length < 6) || (strng.length > 8)) {
       return false;
    }
    else if (illegalChars.test(strng)) {
      return false;
    } 
    else if (!((strng.search(/(a-z)+/)) && (strng.search(/(A-Z)+/)) && (strng.search(/(0-9)+/)))) {
       return false;
    }  
  return true;    
}    


function checkLogin (strng) {
  if (strng == "") {
   return false;
  }


    var illegalChars = /\W/; // allow letters, numbers, and underscores
    if ((strng.length < 4) || (strng.length > 10)) {
       return false;
    }
    else if (illegalChars.test(strng)) {
      return false;
    } 
return true;
}       

function checkRadio(frm, fld) {
     var ok = false;
    if(!frm.elements[fld].length){
        if (frm.elements[fld].checked) {
            ok = true
        }
    }else{
        for (i=0, n=frm.elements[fld].length; i<n; i++) {
            if (frm.elements[fld][i].checked) {
                ok = true
                break;
            } 
        }
    }
return ok;
}
function checkDropdown(frm, fld) {
     var ok = true;
     var s = frm.elements[fld].options[frm.elements[fld].selectedIndex].value;
     if(s == "" ){
        return false;
     }
    return ok;
}
//-->
