﻿// JScript File

function PopulateUserDetail()
{
    Register.PopulateUserDetail(CallBack_PopulateUserDetail);
}

function CallBack_PopulateUserDetail(response)
{

    userDetail = response.value;
    //alert(response.value);
    if(userDetail == null)
        return;
    if(document.getElementById("txtEmail") != null)
    {
        document.getElementById("txtEmail").value = userDetail[0].toString();
    }
    if(document.getElementById("txtLoggedEmailID") != null)
    {
        document.getElementById("txtLoggedEmailID").value = userDetail[0].toString();
    }        
    if(document.getElementById("txtPassword") != null)
    {
        document.getElementById("txtPassword").value = userDetail[1].toString();
    }
    if(document.getElementById("txtRePassword") != null)
    {
        document.getElementById("txtRePassword").value = userDetail[1].toString();
    }
    if(document.getElementById("txtFName") != null)
    {
        document.getElementById("txtFName").value = userDetail[2].toString();
    }
    if(document.getElementById("txtSName") != null)
    {
        document.getElementById("txtSName").value = userDetail[3].toString();
    }
   
    if(document.getElementById("ddDOBMonth") != null)
    {
        document.getElementById("ddDOBMonth").SelectedIndex = -1;
        if(userDetail[4] == "")
            document.getElementById("ddDOBMonth").value = 0;
        else
            document.getElementById("ddDOBMonth").value = userDetail[4];
    }
    if(document.getElementById("ddDOBDay") != null)
    {
        document.getElementById("ddDOBDay").SelectedIndex = -1;
        if(userDetail[5] == "")
            document.getElementById("ddDOBDay").value = "00";
        else
            document.getElementById("ddDOBDay").value = userDetail[5];
    }
    
    if(document.getElementById("ddDOBYear") != null)
    {
        document.getElementById("ddDOBYear").SelectedIndex = -1;
        if(userDetail[6] == "")
            document.getElementById("ddDOBYear").value = "2006";
        else
            document.getElementById("ddDOBYear").value = userDetail[6];
    }
    
   
    if(document.getElementById("txtContactHouseNameNo") != null)
    {
        document.getElementById("txtContactHouseNameNo").value = userDetail[7].toString();
    }
    if(document.getElementById("txtContactAddress1") != null)
    {
        document.getElementById("txtContactAddress1").value = userDetail[8].toString();
    }
    if(document.getElementById("txtContactAddress2") != null)
    {
        document.getElementById("txtContactAddress2").value = userDetail[9].toString();
    }
    if(document.getElementById("txtContactPostCode") != null)
    {
        document.getElementById("txtContactPostCode").value = userDetail[10].toString();
    }
    if(document.getElementById("txtContactCity") != null)
    {
        document.getElementById("txtContactCity").value = userDetail[11].toString();
    }
    if(document.getElementById("txtContactCounty") != null)
    {
        document.getElementById("txtContactCounty").value = userDetail[12].toString();
    }
    if(document.getElementById("ddContactCountry") != null)
    {
        if(userDetail[14] == "")
            document.getElementById("ddContactCountry").value = 0;
        else
            document.getElementById("ddContactCountry").value = userDetail[13];
    }
    if(document.getElementById("txtContactTelephone") != null)
    {
        document.getElementById("txtContactTelephone").value = userDetail[14].toString();
    }
    if(document.getElementById("txtContactMobile") != null)
    {
        document.getElementById("txtContactMobile").value = userDetail[15].toString();
    }
    if(document.getElementById("txtContactFax") != null)
    {
        document.getElementById("txtContactFax").value = userDetail[16].toString();
    } 
    if(document.getElementById("chkOptin") != null)
    {
        if(userDetail[17].toString() == "true")
            document.getElementById("chkOptin").checked = "checked";
    }
    if(document.getElementById("chkAgreeTerms") != null)
    {
        document.getElementById("chkAgreeTerms").checked = "checked";
        document.getElementById("chkAgreeTerms").disabled = true;
    }     
}

function Validate()
{
    if(document.getElementById("emailChk").style.display=="block")
    {
        document.getElementById("txtEmail").focus();
        return false;
    }
    if(navigator.appName != "Microsoft Internet Explorer")
        document.getElementById("lblError").innerHTML = "";
    else
        document.getElementById("lblError").innerText = "";
    if(trim(document.getElementById("txtEmail").value) == "")
    {
        if(navigator.appName != "Microsoft Internet Explorer")
            document.getElementById("lblError").innerHTML = "Email cannot be blank";
        else
            document.getElementById("lblError").innerText = "Email cannot be blank";
        document.getElementById("lblError").style.visibility = "visible";
        document.getElementById("txtEmail").focus();
        return false;
    }
    if(document.getElementById("txtEmail") != null)
    {
        var emailRegEx = new RegExp("^[\\w-]+(?:\.[\\w-]+)*@(?:[\\w-]+\\.)+[a-zA-Z]{2,7}$");
        var emailAddress = trim(document.getElementById("txtEmail").value);
        if(!emailRegEx.test(emailAddress))
        {
            if(navigator.appName != "Microsoft Internet Explorer")
                document.getElementById("lblError").innerHTML = "Please enter correct email address";
            else
                document.getElementById("lblError").innerText = "Please enter correct email address";
            document.getElementById("lblError").style.visibility = "visible";
            document.getElementById("txtEmail").focus();
            return false;
        }
    }
    if(document.getElementById("txtPassword").value == "")
    {
        if(navigator.appName != "Microsoft Internet Explorer")
            document.getElementById("lblError").innerHTML = "Password cannot be blank";
        else
            document.getElementById("lblError").innerText = "Password cannot be blank";
        document.getElementById("lblError").style.visibility = "visible";
        document.getElementById("txtPassword").focus();
        return false;
    }
    if(document.getElementById("txtRePassword").value == "")
    {
        if(navigator.appName != "Microsoft Internet Explorer")
            document.getElementById("lblError").innerHTML = "Re-type Password cannot be blank";
        else
            document.getElementById("lblError").innerText = "Re-type Password cannot be blank";
        document.getElementById("lblError").style.visibility = "visible";
        document.getElementById("txtRePassword").focus();
        return false;
    }
    if(document.getElementById("txtPassword").value != document.getElementById("txtRePassword").value)
    {
        if(navigator.appName != "Microsoft Internet Explorer")
            document.getElementById("lblError").innerHTML = "Both password need to be same";
        else
            document.getElementById("lblError").innerText = "Both password need to be same";
        document.getElementById("lblError").style.visibility = "visible";
        document.getElementById("txtPassword").focus();
        return false;
    }
    
    if(trim(document.getElementById("txtFName").value) == "")
    {
        if(navigator.appName != "Microsoft Internet Explorer")
            document.getElementById("lblError").innerHTML = "First Name cannot be blank";
        else
            document.getElementById("lblError").innerText = "First Name cannot be blank";
        document.getElementById("lblError").style.visibility = "visible";
        document.getElementById("txtFName").focus();
        return false;
    }
    
    if(trim(document.getElementById("txtSName").value) == "")
    {
        if(navigator.appName != "Microsoft Internet Explorer")
            document.getElementById("lblError").innerHTML = "Second Name cannot be blank";
        else
            document.getElementById("lblError").innerText = "Second Name cannot be blank";
        document.getElementById("lblError").style.visibility = "visible";
        document.getElementById("txtSName").focus();
        return false;
    }
    
    
   if(document.getElementById("txtContactHouseNameNo").value == "")
   {
        if(navigator.appName != "Microsoft Internet Explorer")
            document.getElementById("lblError").innerHTML = "House Name/No cannot be blank";
        else
            document.getElementById("lblError").innerText = "House Name/No cannot be blank";
        document.getElementById("lblError").style.visibility = "visible";
        document.getElementById("txtContactHouseNameNo").focus();
        return false;
   } 
   
   if(document.getElementById("txtContactAddress1").value == "")
   {
        if(navigator.appName != "Microsoft Internet Explorer")
            document.getElementById("lblError").innerHTML = "Address cannot be blank";
        else
            document.getElementById("lblError").innerText = "Address cannot be blank";
        document.getElementById("lblError").style.visibility = "visible";
        document.getElementById("txtContactAddress1").focus();
        return false;
   } 
   
   if(document.getElementById("txtContactCity").value == "")
   {
        if(navigator.appName != "Microsoft Internet Explorer")
            document.getElementById("lblError").innerHTML = "City cannot be blank";
        else
            document.getElementById("lblError").innerText = "City cannot be blank";
        document.getElementById("lblError").style.visibility = "visible";
        document.getElementById("txtContactCity").focus();
        return false;
   }
   
   if(document.getElementById("txtContactPostCode").value == "")
   {
        if(navigator.appName != "Microsoft Internet Explorer")
            document.getElementById("lblError").innerHTML = "PostCode cannot be blank";
        else
            document.getElementById("lblError").innerText = "PostCode cannot be blank";
        document.getElementById("lblError").style.visibility = "visible";
        document.getElementById("txtContactPostCode").focus();
        return false;
   }
   
   if(document.getElementById("ddContactCountry").value == '0')
   {
        if(navigator.appName != "Microsoft Internet Explorer")
            document.getElementById("lblError").innerHTML = "Select the Country";
        else
            document.getElementById("lblError").innerText = "Select the Country";
        document.getElementById("lblError").style.visibility = "visible";
        document.getElementById("ddContactCountry").focus();
        return false;
   }
   
   if(document.getElementById("txtContactTelephone").value == "")
   {
        if(navigator.appName != "Microsoft Internet Explorer")
            document.getElementById("lblError").innerHTML = "Telelphone cannot be blank";
        else
            document.getElementById("lblError").innerText = "Telelphone cannot be blank";
        document.getElementById("lblError").style.visibility = "visible";
        document.getElementById("txtContactTelephone").focus();
        return false;
   }
    if(document.getElementById("chkAgreeTerms") != null)
    {
        if(document.getElementById("chkAgreeTerms").checked == false)
        {
            if(navigator.appName != "Microsoft Internet Explorer")
                 document.getElementById("lblError").innerHTML = "Please check the terms and conditions";
            else
                document.getElementById("lblError").innerText = "Please check the terms and conditions";
            document.getElementById("lblError").style.visibility = "visible";
            document.getElementById("chkAgreeTerms").focus();
            return false;
        }
    }
  
    
    
    var email = document.getElementById("txtEmail").value;
    var pass = document.getElementById("txtPassword").value;
    var fName = document.getElementById("txtFName").value;
    var sName = document.getElementById("txtSName").value;

    
    var day = document.getElementById("ddDOBDay").value;
    var month = document.getElementById("ddDOBMonth").value;
    var w = document.getElementById("ddDOBYear").selectedIndex;
    var year = document.getElementById("ddDOBYear").value;

   
    var dob = day + "/" + month + "/" + year;
 
    var houseNameNo = document.getElementById("txtContactHouseNameNo").value;
    var add1 = document.getElementById("txtContactAddress1").value;
    var add2 = document.getElementById("txtContactAddress2").value;
    var postcode = document.getElementById("txtContactPostCode").value;
    //var town = document.getElementById("txtContactTown").value;
    var city = document.getElementById("txtContactCity").value;
    var county = document.getElementById("txtContactCounty").value;
    var countryID = document.getElementById("ddContactCountry").value;
    var tele = document.getElementById("txtContactTelephone").value;
    var mobile = document.getElementById("txtContactMobile").value;
    var fax = document.getElementById("txtContactFax").value;
    var optin = "";
    if(document.getElementById("chkOptin") != null)
    {
        if(document.getElementById("chkOptin").checked == true)
            optin = "true";
    }
    

    var userDetailArray = new Array (email, pass, fName, sName, dob, houseNameNo, add1, add2, postcode, city, county, countryID, tele, mobile, fax, optin);
    Register.SubmitRegistration(userDetailArray, CallBack_SubmitRegistration);
 }

function CallBack_SubmitRegistration(response)
{

   var redirectUrl = document.location.search;
   
   if(response != null)
   {
        if(response.value.toString() != "success" || response.value.toString() != "continueCheckout")
        {
           
            if(navigator.appName != "Microsoft Internet Explorer")
                document.getElementById("lblError").innerHTML = response.value;
            else
                document.getElementById("lblError").innerText = response.value;
            document.getElementById("lblError").style.visibility = "visible";
            if(response.value.toString() != "success")
            {
                redirectUrl = "";
            }
        }
        if(response.value == "success")
        {  
            if (redirectUrl != "")
            {
                if (redirectUrl.indexOf("httpurl") != -1)
                {
                    redirectUrl = redirectUrl.substring(redirectUrl.indexOf("httpurl") + 8);
                    if (redirectUrl.indexOf("&") != -1)
                        redirectUrl = redirectUrl.substring(0, redirectUrl.indexOf("&"));
                    redirectUrl += ".aspx";
                }
            }
            if (redirectUrl == "" || redirectUrl=="?user=new")
                redirectUrl = "Home.aspx";  
        }
        else if(response.value.toString() =="continueCheckout")
        {
            redirectUrl = "ConfirmOrder.aspx";
        }
   }
   if (redirectUrl != "")
       location.href = redirectUrl;
   //alert(response.value);
   

}



function PopulateCountry()
{
    
    Register.PopulateCountry(CallBack_PopulateCountry);
}

function CallBack_PopulateCountry(response)
{
    //alert(response.value);
    if(document.getElementById("spanCountryDD") != null) 
        document.getElementById("spanCountryDD").innerHTML = response.value; 
        
}



        
// Removes leading and trailing spaces from the passed string. Also removes
// consecutive spaces and replaces it with one space. If something besides
// a string is passed in (null, custom object, etc.) then return the input.
function trim(inputString) 
{   
   if (typeof inputString != "string") { return inputString; }
   var retValue = inputString;
   var ch = retValue.substring(0, 1);
   while (ch == " ") { // Check for spaces at the beginning of the string
      retValue = retValue.substring(1, retValue.length);
      ch = retValue.substring(0, 1);
   }
   ch = retValue.substring(retValue.length-1, retValue.length);
   while (ch == " ") { // Check for spaces at the end of the string
      retValue = retValue.substring(0, retValue.length-1);
      ch = retValue.substring(retValue.length-1, retValue.length);
   }
   while (retValue.indexOf("  ") != -1) { // Note that there are two spaces in the string - look for multiple spaces within the string
      retValue = retValue.substring(0, retValue.indexOf("  ")) + retValue.substring(retValue.indexOf("  ")+1, retValue.length); // Again, there are two spaces in each of the strings
   }
   return retValue; // Return the trimmed string back to the user
}

function CheckRegistered()
{
    var loggedEmailID = "";
    var changedEmailID = "";
    if(document.getElementById("txtEmail") != null)
        changedEmailID = document.getElementById("txtEmail").value;
    if(document.getElementById("txtLoggedEmailID") != null)
        loggedEmailID = document.getElementById("txtLoggedEmailID").value;
    Register.CheckRegistered(changedEmailID, loggedEmailID, Callback_CheckRegistered);
}


function Callback_CheckRegistered(response)
{
    if(response.value==1)
    {
        document.getElementById("emailChk").style.display="block";
        document.getElementById("emailChk").innerHTML="<font style=color:red>Email Id Already Exists.<br><a href=\"forgotpassword.aspx\" title=\"Click to retireve Password.\">Forgot password.</a></font>";
    }
    
}



///////////////////////// FUNCTIONS FOR SHOW & HIDE TOOLTIP BALOON///////////////////////

function showToolTip(e,text){
		if(document.all)e = event;
		
		var obj = document.getElementById('bubble_tooltip');
		var obj2 = document.getElementById('bubble_tooltip_content');
		obj2.innerHTML = text;
		obj.style.display = 'block';
		
		var st = Math.max(document.body.scrollTop,document.documentElement.scrollTop);
		if(navigator.userAgent.toLowerCase().indexOf('safari')>=0)st=0; 
		//var leftPos = e.clientX+600;
		//alert(e.clientX);
		//if(leftPos<0)leftPos = 0;
		obj.style.left = 500 + 'px';
		obj.style.top = 373+'px';
	}	
	
	function hideToolTip()
	{
	    if(navigator.appName == "Microsoft Internet Explorer")
        {
		    document.getElementById("emailChk").style.display="none";
		    document.getElementById('btnSubmit').disabled='';
        }
        else
            document.getElementById("emailChk").style.display="none";
		
		
	}
// Ends the "trim" function

        function submitForm(btn, event)
        {
            if (event.keyCode == 13)
            {
                event.returnValue=false;
                event.cancel = true;
                document.getElementById(btn).click();
            }
        }

