﻿/* Email Address Checking */
function ea_HandleKeyUp(obj)
{
    if (validateEmail(obj.value))
        apiCall2('cu', obj.value, 'isUser');
    else
        showExistingUserPanel(false);
}
function ea_HandleKeyDown(e, obj)
{
    if (isEnterKey(e))
    {
        if (validateEmail(obj.value))
        {
            var existingUser = document.getElementById("pnlExistingUser");
            if (existingUser && existingUser.style.display == 'none')
                document.getElementById('btnNext').click();
        }
        return false;
    }
    return true;
}
function isEnterKey(e)
{
    var key = (ie)? event.keyCode : e.which;
    if (key == 13)
        return true;
    else
        return false;
}
function isUser(boolIsUser)
{
    showExistingUserPanel(boolIsUser);
}
function showExistingUserPanel(showIt)
{
    var existingUser = document.getElementById("pnlExistingUser");
    var newUser = document.getElementById("btnNext");
    var existingUserEmail = document.getElementById("existingUserEmail");
    
    if (existingUserEmail)
        setInnerText(existingUserEmail, document.getElementById('txtEmailAddress').value);
    if (existingUser)
        existingUser.style.display = (showIt) ? null : "none";
    if (newUser)
        newUser.style.display = (showIt) ? "none" : "inline";
}
/* Domain Checking */
var chkDomain = true;
function checkKey(e, id) 
{
    var regEx = /[^a-z0-9]/;
    var key = (ie)?event.keyCode:e.which;
    var chrPassed = String.fromCharCode(key).toLowerCase();
    if ((regEx.test(chrPassed) && (key < 36 || key >40) && key !=8 && key != 0) || (((ie)?event.shiftKey:e.shiftKey) && key >= 48 && key <= 57)) 
    {
        chkDomain = false;
        return false;
    } 
    else 
    {
        chkDomain = ((key >= 36 || key <=40) || ((ie)?event.shiftKey:e.shiftKey));
        return true;
    }
}
function checkDomain(e,txtBox) 
{
    if (txtBox.value == "") 
    {
        document.getElementById('lblDomainResult').innerHTML = "&nbsp;";
        chkDomain = false;
        return false;
    } 
    else if (chkDomain) 
    {
        apiCall2('cd', txtBox.value, 'processDomainResult');
    }
}
function processDomainResult(isTaken) 
{
    document.getElementById('lblDomainResult').innerHTML = (isTaken)?"Taken":"Available";
    document.getElementById('lblDomainResult').className = (isTaken)?"reg_siteNotAval":"reg_siteAval";
}
/* Account Details Processing */
function processDetailForm() 
{
    var e = d.getElementById('ddlCountry');
    if (e && e.value == "0") 
        return alert('country_required', '', e);
        
    var e = d.getElementById('ddlCountry2');
    if (e && e.value == "0") 
        return alert('country_required', '', e);
        
    var e = d.getElementById('txtCompanyName');
    if (e.value == "")
        return alert('company_name_required', '',e);
    
    var e = d.getElementById('txtDomainURL');
    if (e.value == "" || d.getElementById('lblDomainResult').innerHTML=="") 
        return alert('domain_name_required', '',e);
    
    var regEx = /[^a-z0-9]/;
    if (regEx.test(e.value.toLowerCase())) 
        return alert('invalid_domain', '', e);
    
    if (d.getElementById('lblDomainResult').className == "reg_siteNotAval") 
        return alert('domain_name_taken', '',e);
    
    var e = d.getElementById('txtFirstName');
    if (e) 
    {
        if (e.value == "") 
            return alert('first_name_required', '',e);
        
        var e = d.getElementById('txtLastName');
        if (e.value == "") 
            return alert('last_name_required', '',e);
        
        var e = d.getElementById('txtPassword');
        if (e.value.length<6) 
            return alert('password_6_characters', '',e);
        if (e.value != d.getElementById('txtConfirmPassword').value) 
            return alert('password_fields_not_match', '',e);
        
        var e = d.getElementById('txtEmail');
        if (e.value == "") 
            return alert('email_required', '',e);
        else if (!validateEmail(e.value)) 
            return alert('invalid_email_address', '',e);
        
    }
    var e = d.getElementById('chkAgreeToTerms');
    if (!e.checked) 
        return alert('agree_to_terms', '',e);
        
    return true;
}
/* Billing Details Processing */
function processBillingForm() 
{
    var e = d.getElementById('txtCardNumber');
    if (e && e.value == "") 
        return alert('cardnumber_required', '', e);
   
    var e = d.getElementById('txtCardholder');
    if (e && e.value == "") 
        return alert('cardholder_required', '', e);
    
    var e = d.getElementById('txtExpiryMonth');
    if (e && e.value == "") 
        return alert('cardexpiry_required', '', e);
        
    var e = d.getElementById('txtExpiryYear');
    if (e && e.value == "") 
        return alert('cardexpiry_required', '', e);
    
    var e = d.getElementById('txtExpiryMonth');
    var regEx = /^[0-9]{1,2}$/;
    if (!regEx.test(e.value.toLowerCase())) 
        return alert('invalid_expiry_month', '', e);
    
    var e = d.getElementById('txtExpiryYear');
    var regEx = /^[0-9]{4}$/;
    if (!regEx.test(e.value.toLowerCase())) 
        return alert('invalid_expiry_year', '', e);       
        
    var e = d.getElementById('txtAddress1');
    if (e.value == "")
        return alert('address_required', '',e);
    
    var e = d.getElementById('txtCity');
    if (e.value == "")
        return alert('city_required', '',e);
    
    var e = d.getElementById('txtEmail');
    if (e.value == "") 
        return alert('email_required', '',e);
    else if (!validateEmail(e.value)) 
        return alert('invalid_email_address', '',e);
        
    var e = d.getElementById('rowCVVCode');
    if (e && e.style.display == "block")
    {
        e = d.getElementById('txtCVVCode');
        if (e && e.value == "")
            return alert('cvv_required','',e);
    }
    var e = d.getElementById('btnSubmit');
    e.value = xmlR.processing;
    
    return disableButton(e);    
}
/* Credit Card Checking */
/*
function checkCardType()
{
    var e = document.getElementById('ddlCardType');
    var e2 = document.getElementById('rowCVVCode');
    if (e)
        e2.style.display = (e[e.selectedIndex].value == "VI" || e[e.selectedIndex].value == "MC") ? "block" : "none";
}
*/

/* Button Disabling */
var btnToDisable;
function disableButton(btn)
{
    btnToDisable = btn;
    setTimeout('disableButtonCB()', 5);
    return true;
}
function disableButtonCB()
{
    if (btnToDisable)
    {
        // Give disabled appearance
        btnToDisable.className = btnToDisable.className + " main_greyedOut";
        // Wipe out submit code.
        btnToDisable.onclick = null;
    }
}