//NAME OF SUBSYSTEM : Validation
//VERSION NUMBER : 1.0AT
//CHANGES :
//
//DATE		AUTHOR	DESCRIPTION				                VERSION
//16/2/2010	AT		Baseline Build				            1.0


function Validate_form(formname)
{
    var Fields=new Array("divContactName","divContactPhoneNumber","divContactEmailAddress",
    "divDomainNameToBeUsed","divCompanyName","divCompanyAddress","divTypeOfBusiness",
    "divNatureOfBusiness","divBusinessDescription","divHowLongTrading","divAnnualTurnover",
    "divTurnoverToBe","divPercentageTurnoverExpected","divBusinessBank","divHowSoon",
    "divWhereHeardAboutUs"); 
    
    for(i=0;i<=15;i++)
    {
        document.getElementById(Fields[i]).className = "";
    }
    
      
    var returnval=""; 
	if(formname.ContactName.value==""){
	    returnval = "Please tell us the CONTACT NAME<br/>";
        document.getElementById("divContactName").className="highlightDiv";
	}
	else if (!isStringInputOkay(formname.ContactName)) {
		returnval = "Please only input valid alphabet in CONTACT NAME<br/>";
		document.getElementById("divContactName").className="highlightDiv";
	}
	else if(formname.ContactName.value.indexOf(' ')==-1){
	    returnval = "Please provide first naame and surname. (e.g. John Smith)<br/>";
	    document.getElementById("divContactName").className="highlightDiv";
	}
	
	if(formname.ContactPhoneNumber.value==""){
	    returnval = returnval + "Please tell us the CONTACT PHONE NUMBER<br/>";
        document.getElementById("divContactPhoneNumber").className="highlightDiv";
	}
	else if (!isNumberOkay(formname.ContactPhoneNumber)) {
		returnval = returnval + "Please only input numeric in CONTACT PHONE NUMBER<br/>";
		document.getElementById("divContactPhoneNumber").className="highlightDiv";
	}

	if(formname.email.value==""){
	    returnval = returnval + "Please tell us the CONTACT EMAIL ADDRESS<br/>";
        document.getElementById("divContactEmailAddress").className="highlightDiv";
	}
	else if (!isEmailOkay(formname.email)) {
		returnval = returnval + "Please only input valid character in CONTACT EMAIL ADDRESS<br/>";
		document.getElementById("divContactEmailAddress").className="highlightDiv";
	}
	
	if(formname.domain.value==""){
	    returnval = returnval + "Please tell us what DOMAIN NAME TO BE USED<br/>";
        document.getElementById("divDomainNameToBeUsed").className="highlightDiv";
	}
	else if (!isStringNumericInputOkay(formname.domain)) {
		returnval = returnval + "Please only input valid character in the DOMAIN NAME TO BE USED<br/>";
		document.getElementById("divDomainNameToBeUsed").className="highlightDiv";
	}
	
	if(formname.CompanyName.value==""){
	    returnval = returnval + "Please tell us your COMPANY NAME<br/>";
        document.getElementById("divCompanyName").className="highlightDiv";
	}
	else if (!isStringNumericInputOkay(formname.CompanyName)) {
		returnval = returnval + "Please only input valid character in COMPANY NAME<br/>";
		document.getElementById("divCompanyName").className="highlightDiv";
	}
	
	if(formname.CompanyAddress.value==""){
	    returnval = returnval + "Please tell us your COMPANY ADDRESS<br/>";
        document.getElementById("divCompanyAddress").className="highlightDiv";
	}
	
	if(formname.BusinessType.selectedIndex=='0'){
	    returnval = returnval + "Please tell us the TYPE OF BUSINESS <br/>";
        document.getElementById("divTypeOfBusiness").className="highlightDiv";
	}
	
	if(formname.BusinessNature.selectedIndex=='0'){
	    returnval = returnval + "Please tell us the NATURE OF BUSINESS<br/>";
        document.getElementById("divNatureOfBusiness").className="highlightDiv";
	}
	
	if(formname.CompanyActivity.value==""){
	    returnval = returnval + "Please input value in DESCRIPTIONS OF COMPANY<br/>";
        document.getElementById("divBusinessDescription").className="highlightDiv";
	}
	
	if(formname.Howlongtrading.selectedIndex=='0'){
	    returnval = returnval + "Please tell us HOW LONG YOU HAVE BEEN TRADING<br/>";
        document.getElementById("divHowLongTrading").className="highlightDiv";
	}
	 
	if(formname.Turnover.value==""){
	    returnval = returnval + "Please tell us your BUSINESS TURNOVER OF PAST YEAR<br/>";
        document.getElementById("divAnnualTurnover").className="highlightDiv";
	}
	else if (!isNumberAmountOkay(formname.Turnover)) {
		returnval = returnval + "Please only input valid character in the BUSINESS TURNOVER OF PAST YEAR<br/>";
		document.getElementById("divAnnualTurnover").className="highlightDiv";
	}
	
	
	if(formname.TurnoverEstimate.value==""){
	    returnval = returnval + "Please tell us your ESTIMATED TURNOVER FOR CURRENT YEAR<br/>";
        document.getElementById("divTurnoverToBe").className="highlightDiv";
	}
	else if (!isNumberAmountOkay(formname.TurnoverEstimate)) {
		returnval = returnval + "Please only input valid character in the ESTIMATED TURNOVER FOR CURRENT YEAR<br/>";
		document.getElementById("divTurnoverToBe").className="highlightDiv";
	}
	
		
	if(formname.cardpercentage.value==""){
	    returnval = returnval + "Please tell us the PERCENTAGE OF TURNOVER YOU EXPECT<br/>";
        document.getElementById("divPercentageTurnoverExpected").className="highlightDiv";
	}
	else if (!isNumberOkay(formname.cardpercentage)) {
		returnval = returnval + "Please only input valid character in the PERCENTAGE OF TURNOVER YOU EXPECT<br/>";
		document.getElementById("divPercentageTurnoverExpected").className="highlightDiv";
	}
		
	if(formname.BusinessBank.selectedIndex=='0'){
	    returnval = returnval + "Please tell us the CURRENT BANK OF YOUR BUSINESS<br/>";
        document.getElementById("divBusinessBank").className="highlightDiv";
	}
	
	if(formname.HowSoon.selectedIndex=='0'){
	    returnval = returnval + "Please tell us HOW SOON YOU WANT THE SERVICE UP<br/>";
        document.getElementById("divHowSoon").className="highlightDiv";
	}
	
		
	
	if(formname.where_heard_about_us.selectedIndex=='0'){
	    returnval = returnval + "Please tell us WHERE DID YOU HEAR ABOUT US<br/>";
        document.getElementById("divWhereHeardAboutUs").className="highlightDiv";
	}
		
    if(returnval=="") { 
        document.getElementById("divErrorSummary").style.display = "none";
	    document.getElementById("divErrorSummary").innerHTML="";
        return true;
    }
    else {
        document.getElementById("divErrorSummary").style.display = "block";
	    document.getElementById("divErrorSummary").innerHTML=returnval;
	    return false;
	}
}

function isEmailOkay(obj) {

var email = obj.value
var AtPos = email.indexOf("@")
var StopPos = email.lastIndexOf(".")

if (AtPos == -1 || StopPos == -1) {
return false;
}
else return true;

}

function isNumberAmountOkay(obj)
{
	var checkOK = " £$€1234567890-.";
	var checkStr = obj.value;
	var allValid = true;
	for (i = 0;  i < checkStr.length;  i++)
	{
		ch = checkStr.charAt(i);
		for (j = 0;  j < checkOK.length;  j++)
			if (ch == checkOK.charAt(j))
        			break;
    				if (j == checkOK.length)
    				{
					allValid = false;
      					break;
				}
  	}
	
 	if (!allValid)
	{
		return (false);
  	}
  	else return (true);

}

function isNumberOkay(obj)
{
	var checkOK = " 1234567890-.";
	var checkStr = obj.value;
	var allValid = true;
	for (i = 0;  i < checkStr.length;  i++)
	{
		ch = checkStr.charAt(i);
		for (j = 0;  j < checkOK.length;  j++)
			if (ch == checkOK.charAt(j))
        			break;
    				if (j == checkOK.length)
    				{
					allValid = false;
      					break;
				}
  	}
	
 	if (!allValid)
	{
		return (false);
  	}
  	else return (true);

}

function isStringInputOkay(obj)
{
	var checkOK = " ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'-.";
	
	var checkStr = obj.value;
	var allValid = true;
	for (i = 0;  i < checkStr.length;  i++)
	{
		ch = checkStr.charAt(i);
		for (j = 0;  j < checkOK.length;  j++)
			if (ch == checkOK.charAt(j))
        			break;
    				if (j == checkOK.length)
    				{
					allValid = false;
      					break;
				}
  	}
  	if (!allValid)
	{
		return (false);
  	}
  	else return (true);

}

function isStringNumericInputOkay(obj)
{
	var checkOK = " ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz_-@1234567890.";
	
	var checkStr = obj.value;
	var allValid = true;
	for (i = 0;  i < checkStr.length;  i++)
	{
		ch = checkStr.charAt(i);
		for (j = 0;  j < checkOK.length;  j++)
			if (ch == checkOK.charAt(j))
        			break;
    				if (j == checkOK.length)
    				{
					allValid = false;
      					break;
				}
  	}
  	if (!allValid)
	{
		return (false);
  	}
  	else return (true);

}

function jumpToAnchor() {
   window.location = "#Summary";
}

function showFloater(objectID) {
    var theElementStyle = document.getElementById(objectID);

    if(theElementStyle.style.display == "block")
    {
        theElementStyle.style.display = "none";
        theElementStyle.style.visibility = "hidden";
    }
    else
    {
        theElementStyle.style.display = "block";
        theElementStyle.style.visibility = "visible";
    }
}

function showAllFloater(total) {
    var divId = "";
    for(i=1;i<=total;i++)
    {   
         divId = "A" + i
        var theElementStyle = document.getElementById(divId);
        if(theElementStyle.style.display != "block")
        {
            theElementStyle.style.display = "block";
            theElementStyle.style.visibility = "visible";
        }
    }
}

function CloseAllFloater(total) {
    var divId = "";
    for(i=1;i<=total;i++)
    {   
        divId = "A" + i
        var theElementStyle = document.getElementById(divId);
       if(theElementStyle.style.display == "block")
        {
            theElementStyle.style.display = "none";
            theElementStyle.style.visibility = "hidden";
        }
    }
}





