﻿/*---------------------------------------------------------------------------------------------------------------
         File: signup.js
       Author: Jimmy On
      Version: 1.0
               
         Name: signup.js
Compress Name: signup.compressed.js
  Instruction: For better performance, please compress the javascript. Strip all whitespace and newlines.
               compress info: http://alex.dojotoolkit.org/shrinksafe/
             
        Notes: validation is referenced from helper.js for additonal library functions.
                        
-----------------------------------------------------------------------------------------------------------------*/
//Start -- Validate Form

function onloadinit() {
    var country = getObj("ctl00_ContentPlaceHolder1_ddlCountry");
    var billcountry = getObj("ctl00_ContentPlaceHolder1_ddlBillCountry");
    country.disabled = true;
    //billcountry.disabled = true;
}

$(function() {
    onloadinit();
    
    StateOnChange();
    
});

function StateOnChange() {
    $('select.ddlState').change(function() {
        var _ddlstate = $('select.ddlState').val();
        if (_ddlstate == 'OU') {
            $('div#divProvince').show();
            $('.tbInternationalState').focus();
        } else {
            $('div#divProvince').hide();
            $('.tbZip').focus();
        }
    });
}


function checkState() {
    var state = getObj("ctl00_ContentPlaceHolder1_ddlState");
    var country = getObj("ctl00_ContentPlaceHolder1_ddlCountry");
    
    
    if (state.selectedIndex == 1) {
        country.disabled = true;
        country.selectedIndex = 0;
    } else if (state.selectedIndex != 0 || state.selectedIndex != 1) {
        country.selectedIndex = 0;
        country.disabled = true;
    } else {
        country.disabled = true;
    }
}



function checkBillState() {

    var billstate = getObj("ctl00_ContentPlaceHolder1_ddlBillState");
    var billcountry = getObj("ctl00_ContentPlaceHolder1_ddlBillCountry");
    
    if (billstate.selectedIndex == 1) {
        billcountry.disabled = false;
        billcountry.selectedIndex = 0;
    } else if (billstate.selectedIndex != 0 || billstate.selectedIndex != 1) {
        billcountry.selectedIndex = 0;
        billcountry.disabled = true;
    } else {
        billcountry.disabled = true;
    }
}

function Validate() {
  
    try {
        
        //********* START DECLARATION **********/
        
        var _id = "ctl00_ContentPlaceHolder1_";     //ID resolved by the container from the master page
        var _name = "ctl00$ContentPlaceHolder1$";   //NAME resolved by the container from the master page
         
        var maincountry = getObj(_id + "ddlMainCountry");
       
        var hearus = getObj(_id + "ddlHearAboutUs");
        var hearusattribute = getObj(_id + "tbHearAboutUsAttribute");
        var affiliation = getObj(_id + "ddlAffiliation");
        var affiliationid = getObj(_id + "tbAffiliationID");
        
        var companyname = getObj(_id + "tbCompanyName");
        var contactname = getObj(_id + "tbContactName");
        var bizowner = getObj(_id + "tbBizOwner");
        var dba = getObj(_id + "tbDBA");
        
        var yrsinbiz = getObj(_id + "ddlYrsInBiz");
        var fedtax = getObj(_id + "tbFedTax");
        
        var ssn = getObj(_id + "tbSSN");
        var yrincorporated = getObj(_id + "ddlYrIncorporated");
        var address1 = getObj(_id + "tbAddressLine1");
        var address2 = getObj(_id + "tbAddressLine2");
        var city = getObj(_id + "tbCity");
        var state = getObj(_id + "ddlState");
        var zip = getObj(_id + "tbZip");
        var country = getObj(_id + "ddlCountry");
        var phone = getObj(_id + "tbPhoneNbr");
        var fax = getObj(_id + "tbFaxNbr");
        var _emailid = getObj(_id + "tbEmailAddress");
        var _emailname = getObj(_id + "tbEmailAddress");
         
        var biztype_corporation = getObj(_id + "cblBiztype_0");
        var biztype_llc = getObj(_id + "cblBiztype_1");
        var biztype_sole = getObj(_id + "cblBiztype_2");
        var biztype_jointventure = getObj(_id + "cblBiztype_3");
        var biztype_other = getObj(_id + "cbTypeOfBizOther");
        
        var pribiz_manufacturer = getObj(_id + "cbPriBiz_0");
        var pribiz_Retailer = getObj(_id + "cbPriBiz_1");
        var pribiz_Wholesaler = getObj(_id + "cbPriBiz_2");
        var pribiz_other = getObj(_id + "cbPrimaryBizOther");
        
        var product_stones = getObj(_id + "cbProducts_0");
        var product_jewelry = getObj(_id + "cbProducts_1");
        var product_diamonds = getObj(_id + "cbProducts_2");
        var product_watch = getObj(_id + "cbProducts_3");
        var product_other = getObj(_id + "cbProductOther");
        
        var bill_contactname = getObj(_id + "tbBillContactName");
        var bill_phone = getObj(_id + "tbBillPhoneNbr");
        var billBoolean = getObj(_id + "cbBillCheck");
        var bill_address1 = getObj(_id + "tbBillAddressLine1");
        var bill_address2 = getObj(_id + "tbBillAddressLine2");
        var bill_city = getObj(_id + "tbBillCity");
        var bill_state = getObj(_id + "ddlBillState");
        var bill_zip = getObj(_id + "tbBillZip");
        var bill_country = getObj(_id + "ddlBillCountry");
          
        var courier = getObj(_id + "tbCurrentCourier");
        var insurer = getObj(_id + "tbCurrentInsurer");
        var ups = getObj(_id + "tbUpsAccount");
        var fedex = getObj(_id + "tbFedexAccount");
        var dhl = getObj(_id + "tbDHLAccount");
        
        var creditcard = getObj(_id + "rdoCreditcard");
        var terms15days = getObj(_id + "rdoTerms");
        var prepaid = getObj(_id + "rdoPrepaid");
       
        //-- OPTIONAL SERVICES/CLAIMS
        var avgshipmentwk = getObj(_id + "ddlAvgShipmentWk");
        var avgshipmentvalue = getObj(_id + "ddlAvgShipmentValue");
        var maxvalueperpackage = getObj(_id + "ddlMaxValuePerPckg");
        
        var claimsyear1 = getObj(_id + "ddlHistoryYear1");
        var claimscourier1 = getObj(_id + "ddlHistoryCourier1");
        var claimsinsured1 = getObj(_id + "tbHistoryValueInsured1");
        var claimspaid1 = getObj(_id + "tbHistoryPaidInsurer1");

        var claimsyear2 = getObj(_id + "ddlHistoryYear2");
        var claimscourier2 = getObj(_id + "ddlHistoryCourier2");
        var claimsinsured2 = getObj(_id + "tbHistoryValueInsured2");
        var claimspaid2 = getObj(_id + "tbHistoryPaidInsurer2");
        
        var claimsyear3 = getObj(_id + "ddlHistoryYear3");
        var claimscourier3 = getObj(_id + "ddlHistoryCourier3");
        var claimsinsured3 = getObj(_id + "tbHistoryValueInsured3");
        var claimspaid3 = getObj(_id + "tbHistoryPaidInsurer3");
     
        //-- BIZ REFERENCES
        var bizrefcompany1 = getObj(_id + "tbRefCompanyName1");
        var bizrefcontact1 = getObj(_id + "tbRefContactName1");
        var bizrefyearsknown1 = getObj(_id + "ddlRefYearsKnown1");
        var bizrefcontactnbr1 = getObj(_id + "tbRefContactNbr1");
        
        var bizrefcompany2 = getObj(_id + "tbRefCompanyName2");
        var bizrefcontact2 = getObj(_id + "tbRefContactName2");
        var bizrefyearsknown2 = getObj(_id + "ddlRefYearsKnown2");
        var bizrefcontactnbr2 = getObj(_id + "tbRefContactNbr2");
        
        //-- HOW TO BE CONTACTED
        var contactPhone = getObj(_id + "rdoContactPhone");
        var contactEmail = getObj(_id + "rdoContactEmail");
        var contactFax = getObj(_id + "rdoContactFax");
        var contactMail = getObj(_id + "rdoContactMail");
        
        //-- CAPTCHA
        var Captcha = getObj("recaptcha_response_field");
            
        //-- TERMS & AGREEMENT
        var termsName = getObj(_id + "tbTermsName");
        var termsTitle = getObj(_id + "tbTitleName");
        var terms = getObj(_id + "chkTerms");
        
        
        //********* START PROCESS VALIDATION **********/
        
        
        if (hearus.selectedIndex == 0) {
            alert("Please Provide Where You Heard About Us");
            hearus.focus();
            return false;
        }
       
        if (hearusattribute.value == "") {
            alert("Please Provide Description Where You Heard About Us");
            hearusattribute.focus();
            return false;
        }
        
        if (companyname.value == "") {
            alert("Please provide a company name");
            companyname.focus();
            return false;
        }
        
        if (contactname.value == "") {
            alert("Please provide your contact name");
            contactname.focus();
            return false;
        }
        
        if (bizowner.value == "") { 
            alert("Please provide business owner name");
            bizowner.focus();
            return false;
        }
        
        if (yrsinbiz.selectedIndex == 0) {
            alert("Please provide the years in business");
            yrsinbiz.focus();
            return false;
        } 
       
        
        
        if (maincountry.value == "U.S.A.") {
            if (fedtax.value == "" && ssn.value == "" ) {
                alert("Please provide your Federal Tax ID or Social Security Number.  \n");
                fedtax.focus();
                return false;
            }
            if (!fedtax.value == "") {
                if(fedtax.value.length < 9){
                    alert("Your Federal Tax ID must be 9 digits.  \n");
                    fedtax.focus();
                    return false;
                }
            }
            if (!ssn.value == "") {
                
                if(ssn.value.length < 9){
                    alert("Your SSN Number must be 9 digits.  \n");
                    ssn.focus();
                    return false;
                }
            }
        }
        
        
        if (address1.value == "") {
            alert("Please provide your address");
            address1.focus();
            return false;
        }
        
        if (city.value == "") {
            alert("Please provide your city");
            city.focus();
            return false;
        }
        
        if (country.value == "U.S.A.") {
            if (state.value == "US") {
                alert("Please provide your state");
                state.focus();
                return false;
            }
        } 
        
        
        
        
        
        if (maincountry.value == "U.S.A.") {
            if (zip.value == "") {
                alert("Please provide your zip");
                zip.focus();
                return false;
            }
        }
        
        if (country.value == "") {
            alert("Please provide your country");
            country.focus();
            return false;
        }
        
        if (maincountry.value == "U.S.A.") {
            if (checkInternationalPhone(phone.value)==false){
	            alert("Please Enter a Valid Phone Number")
	            phone.value=""
	            phone.focus()
	            return false
            }
            
           
            if ((fax.length > 1) || (checkInternationalPhone(fax.value)==false)){
	            alert("Please Enter a Valid Fax Number");
	            fax.focus();
	            return false
            }
        }
        
        if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(_emailname.value) == false)  {
            alert("Invalid E-mail Address! Please re-enter.")
            _emailname.value = "";
            _emailname.focus();
            return (false);
        }
        
        if (biztype_corporation.checked == false && biztype_llc.checked == false && biztype_sole.checked == false && biztype_jointventure.checked == false && biztype_other.value == "" ) {
            alert("Please enter at least one business type");
            biztype_other.focus();
            return false
        }
       
       if (pribiz_manufacturer.checked == false && pribiz_Retailer.checked == false && pribiz_Wholesaler.checked == false && pribiz_other.value == "" ) {
            alert("Please enter at least one primary business");
            pribiz_other.focus();
            return false
       }
       
       if (product_stones.checked == false && product_jewelry.checked == false && product_diamonds.checked == false && product_watch.checked == false && product_other.value == "" ) {
            alert("Please enter at least one product");
            product_other.focus();
            return false
       }
       
        if (bill_contactname.value == "") {
            alert("Please enter your billing contact name");
            bill_contactname.focus();
            return false;
        }
        
        if (maincountry.value == "U.S.A.") {
            if ((bill_phone.value==null)||(bill_phone.value=="")){
	            alert("Please Enter your Phone Number")
	            bill_phone.focus()
	            return false
            }
        }
        
        if (maincountry.value == "U.S.A.") {
            if (checkInternationalPhone(bill_phone.value)==false){
	            alert("Please Enter a Valid Phone Number")
	            bill_phone.value=""
	            bill_phone.focus()
	            return false
            }
        }
        
        // Check Billing Contact Information
        if (billBoolean.checked == false) { 
            
            if (bill_address1.value == "") {
                alert("Please enter your billing address");
                bill_address1.focus();
                return false;
            }
            
            if (bill_city.value == "") {
                alert("Please enter your billing city");
                bill_city.focus();
                return false;
            }
            
            if (bill_country.value == "U.S.A.") {
                if (bill_state.value == "US") {
                    alert("Please enter your billing state");
                    bill_state.focus();
                    return false;
                }
            }
            
            
            if (maincountry.value == "U.S.A.") {
                if (bill_zip.value == "") {
                    alert("Please enter your billing zip code");
                    bill_zip.focus();
                    return false;
                }
            }
        }
        
        //PAYMENT METHOD
        if (creditcard.checked == false && terms15days.checked == false && prepaid.checked == false) {
            alert("Please select at least one payment method.");
            creditcard.focus();
            return false
        }
        
        //OPTIONAL SERVICES START   
        
        if (avgshipmentwk.selectedIndex == 0) {
            alert("Please enter the average shipments per week")
            avgshipmentwk.focus();
            return false;
        }
        
        if (avgshipmentvalue.selectedIndex == 0) {
            alert("Please enter the average shipments per value")
            avgshipmentvalue.focus();
            return false;
        }
        
        if (maxvalueperpackage.selectedIndex == 0) {
            alert("Please enter the maximum value per package")
            maxvalueperpackage.focus();
            return false;
        }
                
        //BUSINESS REFERENCE START   
            
        if (bizrefcompany1.value == "") {
            alert("Please enter reference company name")
            bizrefcompany1.focus();
            return false;
        }

        if (bizrefcontact1.value == "") {
            alert("Please enter reference contact name")
            bizrefcontact1.focus();
            return false;
        }

        if (bizrefyearsknown1.selectedIndex == 0) {
            alert("Please select reference years known")
            bizrefyearsknown1.focus();
            return false;
        }
        
        if (maincountry.value == "U.S.A.") {
            if ((bizrefcontactnbr1.length > 1) || (checkInternationalPhone(bizrefcontactnbr1.value)==false)){
	            alert("Please Enter a Valid Phone Number");
	            bizrefcontactnbr1.focus();
	            return false
            }
        }
        // +
        if (bizrefcompany2.value == "") {
            alert("Please enter reference company name")
            bizrefcompany2.focus();
            return false;
        }

        if (bizrefcontact2.value == "") {
            alert("Please enter reference contact name")
            bizrefcontact2.focus();
            return false;
        }

        if (bizrefyearsknown2.selectedIndex == 0) {
            alert("Please select reference years known")
            bizrefyearsknown2.focus();
            return false;
        }
        
        if (maincountry.value == "U.S.A.") {
            if ((bizrefcontactnbr2.length > 1) || (checkInternationalPhone(bizrefcontactnbr2.value)==false)){
	            alert("Please Enter a Valid Phone Number");
	            bizrefcontactnbr2.focus();
	            return false
            }
        }
        
        //BUSINESS REFERENCE END
        
        //HOW TO BE CONTACTED
        if (contactPhone.checked == false && contactEmail.checked == false && contactFax.checked == false && contactMail.checked == false) {
            alert("Select How you want to be contacted");
            contactPhone.focus();
            return false
        }
        //HOW TO BE END
        
        if (termsName.value == '') {
            alert("You must verify your name to proceed.")
            termsName.focus();
            return false;
        }
        
        if (termsTitle.value == '') {
            alert("You must verify your title to proceed.")
            termsTitle.focus();
            return false;
        }
        
        if (Captcha.value == '') {
            alert("You must enter the word verification field.")
            Captcha.focus();
            return false;
        }
        
        if (terms.checked == false) {
            alert("You must agree to the terms and agreement before proceeding.")
            terms.focus();
            return false;
        }      
    }
    catch(e) 
    {
        alert("error found" + e);
        return false;
    }
}


$(function() {
    $('select[id=ctl00_ContentPlaceHolder1_ddlMainCountry]').change(function() {
        CheckCountryProvince();
    });
    
    $('select[id=ctl00_ContentPlaceHolder1_ddlBillCountry]').change(function() {
        CheckBillingCountryProvince();
    });
    
    CheckCountryProvince();
    CheckBillingCountryProvince();
    
});

function CheckCountryProvince() {
    if ($('select[id=ctl00_ContentPlaceHolder1_ddlMainCountry]').val() != 'U.S.A.') {
        
        $('#phFederalInfo').hide();
        $('div.phInternational').hide();
        $('#divState').hide();
        $('#divProvince').show();
        $('select.ddlCountry').val($('select[id=ctl00_ContentPlaceHolder1_ddlMainCountry]').val());
        
    } else {
        $('#phFederalInfo').show();
        $('div.phInternational').show();
        $('#divState').show();
        $('select.ddlCountry').val('U.S.A.');
        $('#divProvince, #divBillingProvince').hide();
    }
}


function CheckBillingCountryProvince() {
    if ($('select[id=ctl00_ContentPlaceHolder1_ddlBillCountry]').val() != 'U.S.A.') {
        $('#divBillingState').hide();
        $('#divBillingProvince').show();
    } else {
        $('#divBillingState').show();
        $('select[id=ctl00_ContentPlaceHolder1_ddlBillCountry]').val('U.S.A.');
        $('#divBillingProvince').hide();
    }
}
