var timerId=0;

function $(id){
    return(document.getElementById(id));
}

function swap(fieldId,mobile2){
    if(fieldId.checked){
        mobile2.style.display='none';
    }else
        mobile2.style.display='';
}



function validateChecked(fieldId,isMandatory){
 if(get_radio_value(fieldId)==""){
 	 displayError(fieldId,$("errDoc"),"Required: Please select documents.",true);
 	 return false;
 } 
 displayError(fieldId,$("errDoc"),"",false);
 return true;
}

function validatePin(fieldId,isMandatory){
    fieldId.value=fieldId.value.replace(/^\s+|\s+$/g, '');
    if(isMandatory){
        if(isEmpty(fieldId)){
	        displayError(fieldId,$("errPin"),"Required: Please enter Pin Code.",true);
	        fieldId.focus();
	        return false;
	    }
    }
     if(!lengthRestriction(fieldId,6,6)){
            displayError(fieldId,$("errPin"),"Password should be minimum 6 digit long.",true);
            fieldId.focus();
            return false;
    }
    if (!isNumeric(fieldId)){
           displayError(fieldId,$("errPin"),"Required: Please enter valid Pin Code.",true);
            fieldId.focus();
            return false;
     
    }
    displayError(fieldId,$("errPin"),"",false);
    return true;
}

function isNumeric(elem){
    var numericExpression = /^[0-9]+$/;
    if(elem.value.match(numericExpression)){
        return true;
    }else{
        return false;
    }
}


function validateAddress(fieldId,isMandatory){
    fieldId.value=fieldId.value.replace(/^\s+|\s+$/g, '');
    if (isMandatory){
        if(isEmpty(fieldId)){
            displayError(fieldId,$("errAddress"),"Required: Please enter address.",true);
            fieldId.focus();
            return false;
        }
    }
    displayError(fieldId,$("errAddress"),'',false);
    return true;
    
}

function validateComment(fieldId,isMandatory){
    fieldId.value=fieldId.value.replace(/^\s+|\s+$/g, '');
    if (isMandatory){
        if(isEmpty(fieldId)){
            displayError(fieldId,$("errAddress"),"Required: Please enter your comments.",true);
            fieldId.focus();
            return false;
        }
    }
    displayError(fieldId,$("errAddress"),'',false);
    return true;
    
}



function validateCapta(fieldId,isMandatory){
     if (isMandatory){
        if(isEmpty(fieldId)){
            displayError(fieldId,$("errVcode"),"Required: Please enter code above.",true);
            fieldId.focus();
            return false;
        }
    }
     if(!lengthRestriction(fieldId,6,6)){
            displayError(fieldId,$("errVcode"),"Required: Please enter valid code.",true);
            fieldId.focus();
            return false;
     }
    displayError(fieldId,$("errVcode"),"",false);
    return true;
}

function validatePhone(fieldId,isMandatory,errFieldId){
    fieldId.value=fieldId.value.replace(/^\s+|\s+$/g, '');
    var phoneRegx=/^[0][1-9][0-9]{1,5}-[1-9][0-9]{3,8}$/;
    if (isMandatory){
        if(isEmpty(fieldId)){
            displayError(fieldId,errFieldId,"Required: Please enter phone.",true);
            fieldId.focus();
            return false;
        }
    }
    if(!isEmpty(fieldId)){
	    if(!fieldId.value.match(phoneRegx)){
	         displayError(fieldId,errFieldId,"Invalid phone number",true);
	         fieldId.focus();
	         return false;
	    }
    }
    displayError(fieldId,errFieldId,'',false);
    return true;
}

function validateSelected(fieldId,isMandatory){
    if(get_list_value(fieldId)==""){
        
         displayError(fieldId,$("errAssociation"),"Required: Please select clients you working with.",true);
         fieldId.focus();
        return false;
    }
    displayError(fieldId,$("errAssociation"),'',false);
    return true;
}




function validateMobile(fieldId,isMandatory,errFieldId){
   fieldId.value=fieldId.value.replace(/^\s+|\s+$/g, ''); 
   var mobno=fieldId.value;
   if (isMandatory){
        if (mobno.length==10){
            if (isNumeric(fieldId)){
                if (mobno.indexOf('9',0)==0){
                            displayError(fieldId,errFieldId,'',false);
                            return true;
                }else{
                    displayError(fieldId,errFieldId,"Please enter correct mobile number.",true);
                    fieldId.focus();
                    return false;
                }
            }else{
                displayError(fieldId,errFieldId,"Mobile number should be numeric.",true);
                fieldId.focus();
                return false;
            }
        }else{
            displayError(fieldId,errFieldId,"Required: Please enter your 10 digit mobile number.",true);
            fieldId.focus();
            return false;
        }
  }else{
        displayError(fieldId,errFieldId,"Required: Mobile number is mandatory.",true);
        fieldId.focus();
        return false;
  }
}


function validatePassword(fieldId,isMandatory){
    fieldId.value=fieldId.value.replace(/^\s+|\s+$/g, '');
    if (isMandatory){
        if(isEmpty(fieldId)){
            displayError(fieldId,$("errPassword"),"Required: Please enter password.",true);
            fieldId.focus();
            return false;
        }
    }
    if(!lengthRestriction(fieldId,6,20)){
            displayError(fieldId,$("errPassword"),"Password should be minimum 6 character long.",true);
            fieldId.focus();
            return false;
    }
    displayError(fieldId,$("errPassword"),'',false);
    return true;
}

function  validateConfirmPassword(passwd,cpasswd){
     if (passwd.value!="" && cpasswd.value!=""){ 
         if (passwd.value!=cpasswd.value){
            displayError(cpasswd,$("errRentPassword"),"Password & confirm password not matching.",true);
            cpasswd.focus();
            return false;
         }
         displayError(cpasswd,$("errRentPassword"),'',false);
         return true;
     }else{
        displayError(cpasswd,$("errRentPassword"),"Required: Please enter password confirmation.",true);
        cpasswd.focus();
        return false;
    }
}


function validatePan(fieldId,isMandatory){
    fieldId.value=fieldId.value.replace(/^\s+|\s+$/g, '');
    var panRegx=/^[a-zA-Z]{5,5}[0-9]{4,4}[a-zA-Z]$/;
    if (isMandatory){
        if(isEmpty(fieldId)){
            displayError(fieldId,$("errPan"),"Required: Please enter PAN card no.",true);
            fieldId.focus();
            return false;
        }
    }
    if(!fieldId.value.match(panRegx)){
         displayError(fieldId,$("errPan"),"Please enter valid PAN card no.",true);
         fieldId.focus();
         return false;
    }
    displayError(fieldId,$("errPan"),'',false);
    return true;
}



function validateUserName(fieldId,isMandatory){
    fieldId.value=fieldId.value.replace(/^\s+|\s+$/g, '');
    if (isMandatory){
        if(isEmpty(fieldId)){
            displayError(fieldId,$("errUserName"),"Required: enter user name.",true);
            fieldId.focus();
            return false;
        }
    }
    if(!emailValidator(fieldId)){
        displayError(fieldId,$("errUserName"),"Please enter valid user name.",true);
        fieldId.focus();
        return false;
    }
    displayError(fieldId,$("errUserName"),'',false);
    return true;
}

function validateEmail(fieldId,isMandatory){
    fieldId.value=fieldId.value.replace(/^\s+|\s+$/g, '');
    if (isMandatory){
        if(isEmpty(fieldId)){
            displayError(fieldId,$("errUserName"),"Required: please enter email.",true);
            fieldId.focus();
            return false;
        }
    }
    if(!emailValidator(fieldId)){
        displayError(fieldId,$("errUserName"),"Please enter valid email.",true);
        fieldId.focus();
        return false;
    }
    displayError(fieldId,$("errUserName"),'',false);
    return true;
}

function validateName(fieldId,isMandatory){
     var nameRegx=/^[a-zA-Z\'\s]+$/;
     fieldId.value=fieldId.value.replace(/^\s+|\s+$/g, '');
    if (isMandatory){
        if(isEmpty(fieldId)){
            displayError(fieldId,$("errContact"),"Please enter contact person name",true);
            fieldId.focus();
            return false;
        }
    }
    if (!fieldId.value.match(nameRegx)){
        displayError(fieldId,$("errContact"),"Please enter correct name",true);
        fieldId.focus();
        return false;
    }
     displayError(fieldId,$("errContact"),'',false);
    return true;
}

function validateCompanyName(fieldId,isMandatory){
    fieldId.value=fieldId.value.replace(/^\s+|\s+$/g, '');
    if (isMandatory){
        if(isEmpty(fieldId)){
            displayError(fieldId,$("errName"),"Please enter company Name",true);
            return false;
        }
    }
    displayError(fieldId,$("errName"),'',false);
    return true;
}



function msg(fld,msgtype,message){
     // setting an empty string can give problems if later set to a
    // non-empty string, so ensure a space present. (For Mozilla and Opera one could
     // simply use a space, but IE demands something more, like a non-breaking space.)
     var dispmessage;
     if (emptyString.test(message))
     dispmessage = String.fromCharCode(nbsp);
     else
     dispmessage = message;
    
     var elem = document.getElementById(fld);
     elem.firstChild.nodeValue = dispmessage;
    
     elem.className = msgtype; // set the CSS class to adjust appearance of message
}
