﻿function CancelLead()
{
	if (window.url.indexOf('contactspeaker.aspx') != -1)
		window.close();
	else
		self.location.href='<%=RedirectionUrl.Text%>'
}

function showLayer(layer) {
    if (document.all && document.all[layer])
        document.all[layer].style.display = 'block';
    else if (document.getElementById(layer))
        document.getElementById(layer).style.display = 'block';
}

function hideLayer(layer) {
    if (document.all && document.all[layer])
        document.all[layer].style.display = 'none';
    else if (document.getElementById(layer))
        document.getElementById(layer).style.display = 'none';
}

function HideSpecify(field) {
    if (trim(field.value) == '') field.value = 'Please specify';
}

function ShowSpecify(field) {
    if (trim(field.value) == 'Please specify') field.value = '';
}

/****************************** Select Product during RFS ******************************/
function selectProduct(producerID, producerName) {
    var formName = getNameForm("requestForm");
    var fieldName = getNameFormField("requestForm", "productRFS");
    var myWindow = window.open("/common/shared/product/productslist.aspx?FORM=" + formName + "&FIELD=" + fieldName + "&PRODUCERID=" + producerID + "&PRODUCERNAME=" + producerName, "productList", "width=350,height=300,toolbar=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no");
    myWindow.focus();
}

function selectProduct(producerID, producerName, productsType, productsGradeInclude, productsGradeExclude, productsGradeAdd, nameField) {
    var formName = getObjForm("requestForm").name;
    var fieldName = getObjFormField("requestForm", nameField).name;
    var params = "FORM=" + formName + "&FIELD=" + fieldName + "&PRODUCERID=" + producerID + "&PRODUCERNAME=" + producerName;
    params += "&PRODUCTTYPE=" + productsType + "&GRADEINC=" + productsGradeInclude + "&GRADEEXC=" + productsGradeExclude + "&GRADEADD=" + productsGradeAdd;
    var myWindow = window.open("/common/shared/product/productslist.aspx?" + params, "productList", "width=350,height=300,toolbar=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no");
    myWindow.focus();
}

function addProduct(formName, fieldName, value) {
    var list = document.forms[formName][fieldName];
    if (list.options) {
        for (var i = 0; i < list.options.length; i++)
            if (list.options[i].text == value)
            return;
        list.options[list.options.length] = new Option(value);
    }
    else {
        if (list.value != "")
            list.value += "; "
        list.value += value;
    }
}
/************************************************************************************/


/****************************** Registration (step 2) ******************************/

function InitRegistration() {
    ShowState();
}

function GetUserResolution() {
    ecran_l = screen.width;
    ecran_h = screen.height;
    couleurs = (1 << screen.colorDepth);
    resolution = ecran_l + "x" + ecran_h + "x" + couleurs;
    getObjFormField("requestForm", "USREG_00_Resolution").value = resolution;
}

function isPhoneNumber(aStr) {
    var index;
    var reg = "0123456789()+/\\-_. "
    for (index = 0; index < aStr.length; index++)
        if (reg.indexOf(aStr.charAt(index)) == -1)
        return false;
    return true;
}

function checkphone(champ, message) {
    if (!isPhoneNumber(champ.value)) {
        alert(message);
        champ.select();
        champ.focus();
    }
}

function ShowState() {
    if (getObjFormField("requestForm", "USREG_00_Country").options[getObjFormField("requestForm", "USREG_00_Country").selectedIndex].value == "1" || getObjFormField("requestForm", "USREG_00_Country").options[getObjFormField("requestForm", "USREG_00_Country").selectedIndex].value == "2" || getObjFormField("requestForm", "USREG_00_Country").options[getObjFormField("requestForm", "USREG_00_Country").selectedIndex].value == "158") {
        showLayer("state");
    }
    else {
        hideLayer("state");
//        getObjFormField("requestForm", "USREG_00_Country").selectedIndex = 0;
    }
}

var emailArr = new Array(
    "@126.",
    "@163.",
    "@aliceadsl.",
    "@alicemail.",
    "@aol.",
    "@bellsouth.",
    "@comcast.",
    "@earthlink.",
    "@gmail.",
    "@hanmail.",
    "@hotmail.",
    "@msn.",
    "@orange.",
    "@rediffmail.",
    "@sbcglobal.",
    "@tiscali.",
    "@t-online.",
    "@verizon.",
    "@vsnl.",
    "@wanadoo.",
    "@yahoo.",
    "@libero.",
    "@free."
    );


var isemailcheck = false;
function ValidationUser(logged)
{
    // First Name
    if (isNull(getObjFormField("requestForm", "USREG_00_FirstName").value)) {
        alert("First Name is required.");
        getObjFormField("requestForm", "USREG_00_FirstName").focus();
        return false;
    }
    // Last Name
    if (isNull(getObjFormField("requestForm", "USREG_00_LastName").value)) {
        alert("Last Name is required.");
        getObjFormField("requestForm", "USREG_00_LastName").focus();
        return false;
    }
    // Email
    if (isNull(getObjFormField("requestForm", "USREG_00_Email").value)) {
        alert("E-Mail is required.");
        getObjFormField("requestForm", "USREG_00_Email").focus();
        return false;
    }
    if (!checkmail(getObjFormField("requestForm", "USREG_00_Email").value)) {
        alert("Email address does not seem to be valid.");
        getObjFormField("requestForm", "USREG_00_Email").focus();
        return false;
    }
    // Company Name
    if (isNull(getObjFormField("requestForm", "USREG_00_Company").value)) {
        alert("Company is required.");
        getObjFormField("requestForm", "USREG_00_Company").focus();
        return false;
    }
    // City
    if (isNull(getObjFormField("requestForm", "USREG_00_City").value)) {
        alert("City is required.");
        getObjFormField("requestForm", "USREG_00_City").focus();
        return false;
    }
    // Country
    if (getObjFormField("requestForm", "USREG_00_Country").selectedIndex == 0) {
        alert("Country is required.");
        getObjFormField("requestForm", "USREG_00_Country").focus();
        return false;
    }
    // State
    if (getObjFormField("requestForm", "USREG_00_Country").options[getObjFormField("requestForm", "USREG_00_Country").selectedIndex].value == "1" || getObjFormField("requestForm", "USREG_00_Country").options[getObjFormField("requestForm", "USREG_00_Country").selectedIndex].value == "2" || getObjFormField("requestForm", "USREG_00_Country").options[getObjFormField("requestForm", "USREG_00_Country").selectedIndex].value == "158") {
        if (getObjFormField("requestForm", "USREG_00_State").options[getObjFormField("requestForm", "USREG_00_State").selectedIndex].value == "0" || getObjFormField("requestForm", "USREG_00_State").options[getObjFormField("requestForm", "USREG_00_State").selectedIndex].value == "") {
            alert("State/Province is required for US, Canada and Australia users.");
            getObjFormField("requestForm", "USREG_00_State").focus();
            return false;
        }
    }
    // Phone number
    if (isNull(getObjFormField("requestForm", "USREG_00_Phone").value)) {
        alert("Phone is required.");
        getObjFormField("requestForm", "USREG_00_Phone").focus();
        return false;
    }
    else if (isNull(getObjFormField("requestForm", "USREG_00_Inter_Phone").value)) {
        alert("International code for phone is required.");
        getObjFormField("requestForm", "USREG_00_Inter_Phone").focus();
        return false;
    }
    // Job Department
    if (getObjFormField("requestForm", "USREG_00_JobFunction").selectedIndex == 0) {
        alert("Job Department is required.");
        getObjFormField("requestForm", "USREG_00_JobFunction").focus();
        return false;
    }
    // Activity
    if (getObjFormField("requestForm", "USREG_00_Activity").selectedIndex == 0) {
        alert("Activity is required.");
        getObjFormField("requestForm", "USREG_00_Activity").focus();
        return false;
    }
    if (!logged) {
        // User ID
        if (isNull(getObjFormField("requestForm", "USREG_00_Login").value)) {
            alert("Please enter your User ID.");
            getObjFormField("requestForm", "USREG_00_Login").focus();
            return false;
        }
        rexp = /^[a-zA-Z0-9]+$/
        if (!rexp.test(getObjFormField("requestForm", "USREG_00_Login").value)) {
            alert("Your User ID must contain only alpha-numeric characters. Please enter a new User ID.");
            getObjFormField("requestForm", "USREG_00_Login").select();
            return false;
        }
        if ((getObjFormField("requestForm", "USREG_00_Login").value.length < 6) || (getObjFormField("requestForm", "USREG_00_Login").value.length > 12)) {
            alert("Your User ID must contain between 6 and 12 alpha-numeric characters. Please enter a new User ID.");
            getObjFormField("requestForm", "USREG_00_Login").select();
            return false;
        }
        // Password
        if ((isNull(getObjFormField("requestForm", "USREG_00_Password1").value))) {
            alert("Please enter your password.");
            getObjFormField("requestForm", "USREG_00_Password1").select();
            return false;
        }
        else if (!rexp.test(getObjFormField("requestForm", "USREG_00_Password1").value) || getObjFormField("requestForm", "USREG_00_Password1").value.length < 6 || getObjFormField("requestForm", "USREG_00_Password1").value.length > 12) {
            alert("Your password must contain between 6 and 12 alpha-numeric characters. Please enter a new password.");
            getObjFormField("requestForm", "USREG_00_Password1").select();
            return false;
        }
        else if ((isNull(getObjFormField("requestForm", "USREG_00_Password2").value))) {
            alert("Please confirm your password.");
            getObjFormField("requestForm", "USREG_00_Password2").select();
            return false;
        }
        else if (getObjFormField("requestForm", "USREG_00_Password1").value != getObjFormField("requestForm", "USREG_00_Password2").value) {
            alert("Please confirm your password.")
            getObjFormField("requestForm", "USREG_00_Password2").select();
            return false;
        }
        if (getObjFormField("RegistrationForm", "ConfirmTermsConditions")) {
            if (!getObjFormField("RegistrationForm", "ConfirmTermsConditions").checked) {
                alert("You have to agree SpecialChem's Terms and Conditions to continue.");
                getObjFormField("RegistrationForm", "ConfirmTermsConditions").focus();
                return false;
            }
        }
    }

    var popupheight = "200"; 							// define the popup's height;
    var popupwidth = "500"; 							// define the popup's width;
    var popuptop = (screen.availHeight - popupheight) / 2; // define the popup's vertical position on screen;
    var popupleft = (screen.availWidth - popupwidth) / 2; 	// define the popup's horizontal position on screen;

    var emailperso = false;
    for (var i = 0; i < emailArr.length; i++) {
        if (getObjFormField("requestForm", "USREG_00_Email").value.indexOf(emailArr[i]) != -1) {
            emailperso = true;
            break;
        }
    }
    if (emailperso && !isemailcheck) {
        var popup = window.open("/common/shared/lead/lightRegistrationEmailConfirmation.aspx", "popup", "width=" + popupwidth + ",height=" + popupheight + ",toolbar=no,scrollbars=no,statusbar=no,resizable=no,top=" + popuptop + ",left=" + popupleft + "");
        popup.focus();
        return false;
    }
    GetUserResolution();
    return true;
}

function ConfirmEmail() {
    window.opener.isemailcheck = true;
    var arr = window.opener.document.getElementsByTagName("a");

    var func = "";
    for (var i = 0; i < arr.length; i++) {
        if (arr[i].id.indexOf("BtnValidation") != -1) {
            arr[i].click();
            break;
        }
    }
    window.close();
}

function ModifyEmail() {
    window.opener.getObjFormField("requestForm", "USREG_00_Email").select();
    window.close();
}

function Init() {
    document.getElementById("email").innerHTML = window.opener.getObjFormField("requestForm", "USREG_00_Email").value;
}

/****************************** Call Me Back / Expert Call ******************************/
function ValidationPhoneRequest() {
    // First Name
    if (isNull(getObjFormField("requestForm", "USER_FirstName").value)) {
        alert("First Name is required.");
        getObjFormField("requestForm", "USER_FirstName").focus();
        return false;
    }
    // Last Name
    if (isNull(getObjFormField("requestForm", "USER_LastName").value)) {
        alert("Last Name is required.");
        getObjFormField("requestForm", "USER_LastName").focus();
        return false;
    }
    // Email
    if (isNull(getObjFormField("requestForm", "USER_Email").value)) {
        alert("E-Mail is required.");
        getObjFormField("requestForm", "USER_Email").focus();
        return false;
    }
    if (!checkmail(getObjFormField("requestForm", "USER_Email").value)) {
        alert("Email address does not seem to be valid.");
        getObjFormField("requestForm", "USER_Email").focus();
        return false;
    }
    // Company Name
    if (isNull(getObjFormField("requestForm", "USER_Company").value)) {
        alert("Company is required.");
        getObjFormField("requestForm", "USER_Company").focus();
        return false;
    }
    // Country
    if (getObjFormField("requestForm", "USER_Country").selectedIndex == 0) {
        alert("Country is required.");
        getObjFormField("requestForm", "USER_Country").focus();
        return false;
    }
    // Phone number
    if (isNull(getObjFormField("requestForm", "USER_Phone").value)) {
        alert("Phone is required.");
        getObjFormField("requestForm", "USER_Phone").focus();
        return false;
    }
    else if (isNull(getObjFormField("requestForm", "USER_Inter_Phone").value)) {
        alert("International code for phone is required.");
        getObjFormField("requestForm", "USER_Inter_Phone").focus();
        return false;
    }

    // Primary reason for the contact request
    if (isNull(getObjFormField("requestForm", "USER_Request").value)) {
        alert("Primary reason for your contact request is required.");
        getObjFormField("requestForm", "USER_Request").focus();
        return false;
    }

    return true;
}
