﻿

function ValidationDefault()
{
    

    var fieldRequired ;
    var lblField;
    var fieldDescription;
    
    
                   fieldRequired = Array("ctl00_ctl00_MainContent_QueryForm_ddlPolicyType", //Name of controls to validate
                                              "ctl00_ctl00_MainContent_QueryForm_ddlPreferredProvider",
                                              "ctl00_ctl00_MainContent_QueryForm_ucDOB_drpDay", 
                                              "ctl00_ctl00_MainContent_QueryForm_ucDOB_drpMonth", 
                                              "ctl00_ctl00_MainContent_QueryForm_ucDOB_drpYear", 
                                              "ctl00_ctl00_MainContent_QueryForm_txtFName",
                                              "ctl00_ctl00_MainContent_QueryForm_txtContactNo",
                                              "ctl00_ctl00_MainContent_QueryForm_txtEmailAddress",
                                              "ctl00_ctl00_MainContent_QueryForm_txtAddress1");   
	                lblField = Array( "ctl00_ctl00_MainContent_QueryForm_lblPolicyType",//Name of Lables tobe red if control not Valid
                                              "ctl00_ctl00_MainContent_QueryForm_lblPreferredCompany",
                                              "ctl00_ctl00_MainContent_QueryForm_lblDOB",
                                              "ctl00_ctl00_MainContent_QueryForm_lblDOB",
                                              "ctl00_ctl00_MainContent_QueryForm_lblDOB",
                                              "ctl00_ctl00_MainContent_QueryForm_lblFirstName",
                                              "ctl00_ctl00_MainContent_QueryForm_lblContactNumber",
                                              "ctl00_ctl00_MainContent_QueryForm_lblEmailAddress",
                                              "ctl00_ctl00_MainContent_QueryForm_lblAddress");
                                              
                    fieldDescription = Array("Policy Type",
                                                "Preferred Company",
                                                "Date Of Birth - Day",
                                                "Date Of Birth - Month",
                                                "Date Of Birth - Year",
                                                "Enter Name",
                                                "Enter Contact Number",
                                                "Enter email address",                            
                                                "Enter Address");                            
                                
	var alertMsg = "Please provide correct information for the following fields highlighted in red:\n\n";
	var l_Msg = alertMsg.length;
	
    for (var i = 0; i < fieldRequired.length; i++)
    {
	    var obj = document.getElementById(fieldRequired[i]);
	    var lblObj = document.getElementById(lblField[i]);		
	    if (obj)
	    {      
	    
	        if(obj.type=="select-one")// Tocheck control type DropDown
		        {
	                if(obj.selectedIndex==0 || obj.selectedIndex==-1)
		            {
			            lblObj.style.color="#ff0000";			            
			            alertMsg += " - " + fieldDescription[i] + "\n";
		            }
		            else
		            {
		                lblObj.style.color="#000000";
		            }
		         }
	         else
	            {
	                
	                if(obj.id=="ctl00_ctl00_MainContent_QueryForm_txtEmailAddress")
	                {
	                    //alert('Inside Email');
	                    if(emailValid(obj.id))
	                    {
	                      lblObj.style.color="#000000";
	                    }
	                    else
	                    {
	                      lblObj.style.color="#ff0000";	
	                      document.getElementById(obj.id).value="";		            
			              alertMsg += " - " + fieldDescription[i] + "\n";	                      
	                    }       
	                }
	                else
	                {
	            
	                    if(checkTextData(obj.id,'Special characters are not allowed!!')) //Check special Char
		                {
                           lblObj.style.color="#ff0000";
                           alertMsg += " - " + fieldDescription[i] + "\n";
                        }
                        else
                        {
                           lblObj.style.color="#000000";
                        }
                    }    
	            }        
	    }
    }
    
	if (alertMsg.length == l_Msg)
	{   
	   return true;
	} 
	else
	 {
		alert(alertMsg);
		return false;
	 } 
}

function checkTextData(ctrl,specialCharMsg) //Function check value ="" and special chars
{
    if(document.getElementById(ctrl).value==""  ||  document.getElementById(ctrl).value == null)
    {        
        return true;
    }
    
    if(document.getElementById(ctrl).value != "")
     {        
        var splChars = " !@#$%^&*(){}[]\/:*?\"<>|%'+-,.;";        
        if( ctrl.indexOf("txtContactNo") != -1 )
        {
            splChars = " !@#$%^&*(){}[]\/:*?\"<>|%'+,.;";        
        }
        else if( ctrl.indexOf("txtFName") != -1 )
        {
            splChars = "!@#$%^&*(){}[]\/:*?\"<>|%'+-,.;";        
        }
        else if( ctrl.indexOf("Address") != -1 )
        {
            splChars = "!@#$%^&*(){}[]:*?\"<>|%'+,.;";        
        }
        else
        {
            splChars = " !@#$%^&*(){}[]\/:*?\"<>|%'+-,.;";        
        }
    	var sControlValue = document.getElementById(ctrl).value;
        for (var i = 0; i < sControlValue.length; i++)
        {
            if (splChars.indexOf(sControlValue.charAt(i))!= -1)
            {
                document.getElementById(ctrl).value="";
                document.getElementById(ctrl).focus();
                alert (specialCharMsg);                
                return true;
            }
        }
    }
}




