//function VerifyRequiredFields(FirstName, LastName, Phone, Email, Address)
//{
//    var ErrMsg = ''
//     ErrMsg = checkFields(FirstName, LastName, Phone, Email, Address);
//    if (ErrMsg.length > 0 )
//    {
//        alert(ErrMsg);
//        return false;
//    }
//    else
//    {
//        return true;
//    }
//    return false;
//}

function ShowZipError(ZipCodeLabel)
{
    document.getElementById("ErrorMessageDiv").style.display = "block";
    document.getElementById("DivErrorZip").style.display = "block";
    document.getElementById(ZipCodeLabel).style.color="Red";
}

function VerifyRequiredFields(FirstName, LastName, Phone, Email, Address, ZipCode, FirstNameLabel, LastNameLabel, Phonelabel, EmailLabel, AddressLabel, MakeLabel, Make, ModelLabel, Model, PhoneExt, PhoneExtLabel, ZipCodeLabel)
{    
    var ErrMsg = ''

    ErrMsg = checkFields(FirstName, LastName, Phone, Email, Address, FirstNameLabel, LastNameLabel, Phonelabel, EmailLabel, AddressLabel, Make, MakeLabel, Model, ModelLabel, PhoneExt, PhoneExtLabel)
    
    if(document.getElementById(ZipCode).value == '')
    {
        document.getElementById("DivErrorZip").style.display = "block";
        document.getElementById(ZipCodeLabel).style.color="Red";
        ErrMsg += "Zip code entered is not valid.\n"
    }
    else if(!isZipCode(document.getElementById(ZipCode).value))
    {
        document.getElementById("DivErrorZip").style.display = "block";
        document.getElementById(ZipCodeLabel).style.color="Red";
        ErrMsg += "Zip code entered is not valid.\n"
    }
    else if(document.getElementById(ZipCode).value.length < 5)
    {
        document.getElementById("DivErrorZip").style.display = "block";
        document.getElementById(ZipCodeLabel).style.color="Red";
        ErrMsg += "Zip code entered is not valid.\n"
    }
    else
    {
        document.getElementById("DivErrorZip").style.display = "none";
        document.getElementById(ZipCodeLabel).style.color="black";
    }
    //Start - Added by Ram to fix 3071
    if(document.getElementById('isDealerSelected') != null && document.getElementById('isDealerSelected').value == "true")
    {
         document.getElementById('dealerSerlectorErrorDiv').style.display = "none";
    }
    //End - Added by Ram to fix 3071
    if (ErrMsg.length > 0 )
    {
        //alert(ErrMsg);
        document.getElementById("ErrorMessageDiv").style.display = "block";
        return false;
    }
    else
    {
        document.getElementById("ErrorMessageDiv").style.display = "none";
        return true;
    }
    
    
                                      
    return false;
}

function checkFields(FirstName, LastName, Phone, Email, Address, FirstNameLabel, LastNameLabel, Phonelabel, EmailLabel, AddressLabel, Make, MakeLabel, Model, ModelLabel, PhoneExt, PhoneExtLabel)
{
 var ErrMsg = ''
 
 //Make
    if(document.getElementById(Make) != null)
    {
        if (document.getElementById(Make).selectedIndex == 0)
        {
            document.getElementById("DivErrorMake").style.display = "block";
            document.getElementById(MakeLabel).style.color="Red";
            ErrMsg += "You must select a make to proceed.\n"
        }
    } 
 //Model
    if(document.getElementById(Model) != null)
    {
        if (document.getElementById(Model).selectedIndex == 0)
        {
            document.getElementById("DivErrorModel").style.display = "block";
            document.getElementById(ModelLabel).style.color="Red";
            ErrMsg += "You must select a model to proceed.\n"
        }
    }    
 //FirstName
    if (document.getElementById(FirstName).value == '')
    {
        document.getElementById("DivErrorFirstName").style.display = "block";
        document.getElementById(FirstNameLabel).style.color="Red";
        ErrMsg += "First name entered is not valid.\n"
    }
    else
    {
        if(!isName(document.getElementById(FirstName).value))
        {
            document.getElementById("DivErrorFirstName").style.display = "block";
            document.getElementById(FirstNameLabel).style.color="Red";
            ErrMsg += "First name entered is not valid.\n"
        }
        else
        {
            document.getElementById("DivErrorFirstName").style.display = "none";
            document.getElementById(FirstNameLabel).style.color="black";
        }
    }
 //LastName
    if (document.getElementById(LastName).value == '')
    {
        document.getElementById("DivErrorLastName").style.display = "block";
        document.getElementById(LastNameLabel).style.color="Red";
        ErrMsg += "Last name entered is not valid.\n"
    }
        else
    {
        if(!isName(document.getElementById(LastName).value))
        {
            document.getElementById("DivErrorLastName").style.display = "block";
            document.getElementById(LastNameLabel).style.color="Red";
            ErrMsg += "Last name entered is not valid.\n"
        }
        else
        {
            document.getElementById("DivErrorLastName").style.display = "none";
            document.getElementById(LastNameLabel).style.color="black";
        }
    }
 //Address
    if (document.getElementById(Address).value == '')
    {
        document.getElementById("DivErrorAddress").style.display = "block";
        document.getElementById(AddressLabel).style.color="Red";
        ErrMsg += "Address entered is not valid.\n"
    } 
    else
    {
        if(!isAddress(document.getElementById(Address).value))
        {
            document.getElementById("DivErrorAddress").style.display = "block";
            document.getElementById(AddressLabel).style.color="Red";
            ErrMsg += "Address entered is not valid.\n"
        }
        else
        {
            document.getElementById("DivErrorAddress").style.display = "none";
            document.getElementById(AddressLabel).style.color="black";
        }
    }
//Email
//    if(document.getElementById(Email).value == '')
//    {
//        document.getElementById("DivErrorEmail").style.display = "block";
//        document.getElementById(EmailLabel).style.color="Red";
//        ErrMsg += "Email entered is not valid.\n"
//    }
    if(!isEmail(document.getElementById(Email).value))
    {
        document.getElementById("DivErrorEmail").style.display = "block";
        document.getElementById(EmailLabel).style.color="Red";
        ErrMsg += "Email entered is not valid.\n"
    }
    else
    {
        document.getElementById("DivErrorEmail").style.display = "none";
        document.getElementById(EmailLabel).style.color="black";
    }
//Phone
//    if(document.getElementById(Phone).value == '')
//    {
//        document.getElementById("DivErrPhone").style.display = "block";
//        document.getElementById(Phonelabel).style.color="Red";
//        ErrMsg += "Phone entered is not valid.\n"
//    }
//    else 
    if(!isPhone(document.getElementById(Phone).value))
    {
        document.getElementById("DivErrPhone").style.display = "block";
        document.getElementById(Phonelabel).style.color="Red";
        ErrMsg += "Phone entered is not valid.\n"
    }
    else
    {
        document.getElementById("DivErrPhone").style.display = "none";
        document.getElementById(Phonelabel).style.color="black";
    }
    
    //Phone Extension
    if(document.getElementById(PhoneExt).value != '')
    {
        if(!isNumeric(document.getElementById(PhoneExt).value))
        {
            document.getElementById("DivErrorPhoneExt").style.display = "block";
            document.getElementById(PhoneExtLabel).style.color="Red";
            ErrMsg += "Phone Extension entered is not valid.\n"
        }
        else
        {
            document.getElementById("DivErrorPhoneExt").style.display = "none";
            document.getElementById(PhoneExtLabel).style.color="black";
        }
    }

    return ErrMsg;
}

function isPhone(value)
{
    value1 = value.replace(".", "");
    value1 = value1.replace(".", "");
    value1 = value1.replace(" ", "");
    value1 = value1.replace(" ", "");
    value1 = value1.replace("(", "");
    value1 = value1.replace("(", "");
    value1 = value1.replace(")", "");
    value1 = value1.replace(")", "");
    value1 = value1.replace("-", "");
    value1 = value1.replace("-", "");
    
    var numericExpression = /^[0-9]{10}$/;
    if(value1.match(numericExpression))
	{
		return true;
	}
	else
	{
		return false;
	}
}

function isEmail(value)
{
    var numericExpression = /^([0-9a-zA-Z]([-.\w]*[0-9a-zA-Z])*@([0-9a-zA-Z][-\w]*[0-9a-zA-Z]\.)+[a-zA-Z]{2,9})$/;
    if(value.match(numericExpression))
	{
		return true;
	}
	else
	{
		return false;
	}
}

function isName(value)
{
    var numericExpression = /^[a-zA-Z-'\.\s]{2,50}$/;
    if(value.match(numericExpression))
	{
		return true;
	}
	else
	{
		return false;
	}
}
function isAddress(value)
{
    var numericExpression = /^[\w-'\.# ]{2,50}$/;
    if(value.match(numericExpression))
	{
		return true;
	}
	else
	{
		return false;
	}
}

//email /^([0-9a-zA-Z]([-.\w]*[0-9a-zA-Z])*@([0-9a-zA-Z][-\w]*[0-9a-zA-Z]\.)+[a-zA-Z]{2,9})$/;
//zip /^(\d{5}-\d{4}|\d{5}|\d{9})$|^([a-zA-Z]\d[a-zA-Z] \d[a-zA-Z]\d)$/;
//Non- negative integer /^\d+$/;

function validateZipField(zipCode)
{
    if(!isZipCode(document.getElementById(zipCode).value))
    {
        alert("Zip code entered is not valid.\n");
        return false;
    }
    alert("fine");
    return true;
}

function isZipCode(value)
{
	var numericExpression = /^[0-9]+$/;
	if(value.match(numericExpression))
	{
		return true;
	}
	else
	{
		return false;
	}
} 
function isNumeric(value)
{
	var numericExpression = /^[0-9]+$/;
	if(value.match(numericExpression))
	{
		return true;
	}
	else
	{
		return false;
	}
}

function CheckDangerousValues(FirstName, LastName, Phone, Email, Address, ZipCode)
{
    if(checkDangerous(FirstName) == false)
    {
        return false;
    }
    else if(checkDangerous(LastName) == false)
    {
        return false;
    }
    else if(checkDangerous(Phone) == false)
    {
        return false;
    }
    else if(checkDangerous(Email) == false)
    {
        return false;
    }
    else if(checkDangerous(Address) == false)
    {
        return false;
    }
     else if(checkDangerous(ZipCode) == false)
    {
        return false;
    }
    else
    {
        return true;
    }
   
}

function checkDangerous(field)
{
    var data = document.getElementById(field).value;

    var iChars = "<>";    
    for (var i = 0; i < data.length; i++) 
    {  	
        if (iChars.indexOf(data.charAt(i)) != -1) 
        {  	  
            alert ("Your input has special characters. \n" + iChars + "are not allowed.");  	
            return false;  	
        }  
    }
}

function emailcheck(str) 
{

		var at="@"
		var dot="."
		var lat=str.indexOf(at)
		var lstr=str.length
		var ldot=str.indexOf(dot)
		if (str.indexOf(at)==-1){
		   return false
		}

		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		   return false
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		    return false
		}

		 if (str.indexOf(at,(lat+1))!=-1){
		    return false
		 }

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		    return false
		 }

		 if (str.indexOf(dot,(lat+2))==-1){
		    return false
		 }
		
		 if (str.indexOf(" ")!=-1){
		    return false
		 }

 		 return true					
	}

