﻿    
	window.onload = function()
        {
			// Initialise the form
			initialiseForm(document.towerForm);
			
            ShowHideHowHeard();
        }
		
        function ShowHideHowHeard()
        {
            var divHowHeard = document.getElementById("spanOtherHowHeard");
            var SourceMedia = document.getElementById("SourceMedia");
            if (divHowHeard != null && SourceMedia != null)
            {
                if (SourceMedia.value == "")
                {
                    divHowHeard.style.display = "";
                }
                else
                {
                    divHowHeard.style.display = "none";
                }
            }
        }
        
        function ShowHideRequiredPhoneField()
        {
            var contact_method = document.getElementById("PreferedContactMethod").value;
            var spanHomePhone = document.getElementById("spanHomePhone");
            var spanWorkPhone = document.getElementById("spanWorkPhone");
            var spanMobilePhone = document.getElementById("spanMobilePhone");
		    if (contact_method == "Home")
		    {
		        spanHomePhone.innerHTML="*";
	            spanWorkPhone.innerHTML="&nbsp;&nbsp;";
	            spanMobilePhone.innerHTML="&nbsp;&nbsp;";
		    }
		    else if(contact_method == "Work")
		    {
		        spanHomePhone.innerHTML="&nbsp;&nbsp;";
	            spanWorkPhone.innerHTML="*";
	            spanMobilePhone.innerHTML="&nbsp;&nbsp;";
		    }
		    else if(contact_method == "Mobile")
		    {
		        spanHomePhone.innerHTML="&nbsp;&nbsp;";
	            spanWorkPhone.innerHTML="&nbsp;&nbsp;";
	            spanMobilePhone.innerHTML="*";
		    }
		    else
		    {
		        spanHomePhone.innerHTML="&nbsp;&nbsp;";
	            spanWorkPhone.innerHTML="&nbsp;&nbsp;";
	            spanMobilePhone.innerHTML="&nbsp;&nbsp;";
		    }

        }

        function trim(stringToTrim) 
        {
            if(stringToTrim == null)
            {
                return "";
            }
            else
            {
	            return stringToTrim.replace(/^\s+|\s+$/g,"");
	        }
        }
		
        function ltrim(stringToTrim) 
        {if(stringToTrim == null)
            {
                return "";
            }
            else
            {
	            return stringToTrim.replace(/^\s+/,"");
	        }
        }
		
        function rtrim(stringToTrim) 
        {
            if(stringToTrim == null)
            {
                return "";
            }
            else
            {
	            return stringToTrim.replace(/\s+$/,"");
	        }
        }
		
        function ValidEmail(email) 
        {
           var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
           return reg.test(email) 
        }
		
        function ValidPhone(phone) 
        {
           phone = trim(phone);
           if (phone == "")
           {
               return true;
           } 
           else
           {
               var reg = /^[0-9(\s\+]{1}[0-9\-()\s]{1,30}[0-9\s]$/;
               return reg.test(phone)
           } 
        }
		
        function ValidateFields(form) {
            var result = true;
            var errMsg = "";
            var fieldValue = "";
            var ictr = 0;
            var hasItemSelected = false;
            
            if(trim(form["Title"].value) == "") {
				if (errMsg == "")
				{
					errMsg = "Please choose your Title.";
				}
				else
				{
					errMsg = errMsg + "<br />" + "Please choose your Title.";
				}
				result = false;
			}
    		
		    if(trim(form["FirstName"].value) == "") {
			    if (errMsg == "")
			    {
			        errMsg = "Please enter your First Name.";
			    }
			    else
			    {
			        errMsg = errMsg + "<br />" + "Please enter your First Name.";
			    }
			    result = false;
		    }
    		
		    if(trim(form["LastName"].value) == "") {
    		
			    if (errMsg == "")
			    {
			        errMsg = "Please enter your Last Name.";
			    }
			    else
			    {
			        errMsg = errMsg + "<br />" + "Please enter your Last Name.";
			    }
			    result = false;
		    }	

		    if(trim(form["Address_City"].value) == "") {
    		
			    if (errMsg == "")
			    {
			        errMsg = "Please select your Town/City.";
			    }
			    else
			    {
			        errMsg = errMsg + "<br />" + "Please select your Town/City.";
			    }
			    result = false;
		    }
    		
		    if(trim(form["PreferedContactMethod"].value) == "") {
    		
			    if (errMsg == "")
			    {
			        errMsg = "Please select your preferred contact method.";
			    }
			    else
			    {
			        errMsg = errMsg + "<br />" + "Please select your preferred contact method.";
			    }
			    result = false;
		    }
    		
		    fieldValue = "";
		    for (ictr = 0; ictr < form["PreferedContactTime"].length; ictr++)
            {
                if (form["PreferedContactTime"][ictr].checked)
                {
                    fieldValue = form["PreferedContactTime"][ictr].value;
                }
            }
            
            if(trim(fieldValue) == "") {
			    if (errMsg == "")
			    {
			        errMsg = "Please choose your preferred contact time.";
			    }
			    else
			    {
			        errMsg = errMsg + "<br />" + "Please choose your preferred contact time.";
			    }
			    result = false;
		    }
    		
		    if(trim(form.Email.value) == "") {
    		
			    if (errMsg == "")
			    {
			        errMsg = "Please enter your Email.";
			    }
			    else
			    {
			        errMsg = errMsg + "<br />" + "Please enter your Email.";
			    }
			    result = false;
		    }
		    else
		    {
		        fieldValue = trim(form.Email.value);
		        if (!ValidEmail(fieldValue))
		        {
		            if (errMsg == "")
			        {
			            errMsg = "Entered Email is invalid.";
			        }
			        else
			        {
			            errMsg = errMsg + "<br />" + "Entered Email is invalid.";
			        }
			        result = false;
		        } 
		    }
    		
		    var contact_method = trim(form["PreferedContactMethod"].value);
		    if (contact_method == "Home")
		    {
		        fieldValue = trim(form["HomePhone"].value);
		        if (fieldValue == "")
		        {
		            if (errMsg == "")
			        {
			            errMsg = "Please enter Home Phone.";
			        }
			        else
			        {
			            errMsg = errMsg + "<br />" + "Please enter Home Phone.";
			        }
			        result = false;
		        }
		    }
    		
		    if (contact_method == "Work")
		    {
		        fieldValue = trim(form["WorkPhone"].value);
		        if (fieldValue == "")
		        {
		            if (errMsg == "")
			        {
			            errMsg = "Please enter Work Phone.";
			        }
			        else
			        {
			            errMsg = errMsg + "<br />" + "Please enter Work Phone.";
			        }
			        result = false;
		        }
		    }
    		
		    if (contact_method == "Mobile")
		    {
		        fieldValue = trim(form["MobilePhone"].value);
		        if (fieldValue == "")
		        {
		            if (errMsg == "")
			        {
			            errMsg = "Please enter Mobile Phone.";
			        }
			        else
			        {
			            errMsg = errMsg + "<br />" + "Please enter Mobile Phone.";
			        }
			        result = false;
		        }
		    }
            
	        if(!ValidPhone(form["HomePhone"].value))
	        {
	            if (errMsg == "")
		        {
		            errMsg = "Entered Home Phone is invalid.";
		        }
		        else
		        {
		            errMsg = errMsg + "<br />" + "Entered Home Phone is invalid.";
		        }
		        result = false;
	        }
	        if(!ValidPhone(form["WorkPhone"].value))
	        {
	            if (errMsg == "")
		        {
		            errMsg = "Entered Work Phone is invalid.";
		        }
		        else
		        {
		            errMsg = errMsg + "<br />" + "Entered Work Phone is invalid.";
		        }
		        result = false;
	        }
    	    if(!ValidPhone(form["MobilePhone"].value))
	        {
	            if (errMsg == "")
		        {
		            errMsg = "Entered Mobile Phone is invalid.";
		        }
		        else
		        {
		            errMsg = errMsg + "<br />" + "Entered Mobile Phone is invalid.";
		        }
		        result = false;
	        }
    		
		    hasItemSelected = false;
		    for (ictr = 0; ictr < form["DescriptionAppender"].length; ictr++)
            {
                if (form["DescriptionAppender"][ictr].checked)
                {
                    hasItemSelected = true;
                    break;
                }
            }
            
            if(hasItemSelected == false)
            {
                if (errMsg == "")
			    {
			        errMsg = "Please specify which business insurance product/s you are interested in receiving a quote for.";
			    }
			    else
			    {
			        errMsg = errMsg + "<br />" + "Please specify which business insurance product/s you are interested in receiving a quote for.";
			    }
			    result = false;
            }
    		
		    fieldValue = form["SourceMedia"].value;
		    if (fieldValue == "-")
		    {
		        if (errMsg == "")
	            {
	                errMsg = "Please select what prompted you to contact TOWER Health &amp; Life today.";
	            }
	            else
	            {
	                errMsg = errMsg + "<br />" + "Please select what prompted you to contact TOWER Health &amp; Life today.";
	            }
	            result = false;
		    }
		    else if (fieldValue == "")
		    {
		        fieldValue = trim(form["txtOtherHowHeard"].value);
		        if (fieldValue == "")
		        {
		            if (errMsg == "")
	                {
	                    errMsg = "Please enter what prompted you to contact TOWER Health &amp; Life today.";
	                }
	                else
	                {
	                    errMsg = errMsg + "<br />" + "Please enter what prompted you to contact TOWER Health &amp; Life today.";
	                }
	                result = false;
		        }
		    }
    		
		    if(form["TermsAndConditions"].checked == false) {
    		
			    if (errMsg == "")
			    {
			        errMsg = "Please make sure that you read and agree to the terms and conditions.";
			    }
			    else
			    {
			        errMsg = errMsg + "<br />" + "Please make sure that you read and agree to the terms and conditions.";
			    }
			    result = false;
		    }
    		
		    if (result == false)
		    {
		        document.getElementById("ErrorPanel").innerHTML = errMsg;
		        document.getElementById("ErrorPanel").style.display = "";
		        scroll(0,0);
		    }
		    else
		    {
		        document.getElementById("ErrorPanel").style.display = "none";
		    }
    		
		    if(result)	
		    {
		        var SourceMedia = document.getElementById("SourceMedia");
                if (SourceMedia != null)
                {
                    if (SourceMedia.value == "")
                    {
                        form["00N200000018AoT"].value = form["txtOtherHowHeard"].value;
                    }
                    else
                    {
                        form["00N200000018AoT"].value = SourceMedia.value;
                    }
                }
            }
		    return result;
	    }
