﻿var ActiveSkin = "/UserPages/Skins/Skin1";

/* **************************************** GENERAL **************************************** */
function textMaxLength(obj, maxLength, evt){
    var charCode=(evt.which) ? evt.which : event.keyCode
    var max = maxLength - 0;
    var text = obj.value;
    if(text.length > max)
    {
        var ignoreKeys = [8,46,37,38,39,40,35,36];
        for(i=0;i<ignoreKeys.length;i++)
        {
            if(charCode==ignoreKeys[i])
            {
                return true;
            }
        }
    return false;
    }
    else
    {
    return true;
    }
} 

function popUp(URL, width, height, scroll) {
    var settings
    settings = "width=" + width + ",height=" + height + ",scrollbars=" + scroll + ",toolbar=no";
    popwin = window.open(URL, "PureCollection", settings);
    popwin.focus();
}

function ClearSearchString() {
    document.getElementById("SearchString").value = '';
    document.getElementById("SearchString").className = 'SearchString_Active'
}

function ClearMediaCode() {
    document.getElementById("txtPromoCode").value = '';
}

function ClearEmailSignUp() {
    document.getElementById("EmailSignUp").value = '';
 }

function CheckSearch(e) {
    if (e.keyCode == 13) {
        doSearch();
    }
}

function doSearch() {
    var SearchString = document.getElementById("SearchString").value;
    if (SearchString == "") {
        alert("Please enter a search term")
    } else {
        location.href = "/Search/" + SearchString;
    }
    return false;
}

function CheckSignUp(e) {
    if (e.keyCode == 13) {
        doSignUp();
    }
}

function doSignUp() {
    var EmailSignUp = document.getElementById("EmailSignUp").value;
    if (EmailSignUp == "") {
        alert("Please enter an email address")
    } else {
        location.href = "/Info/Static.aspx?page=Newsletter&email=" + EmailSignUp;
    }
    return false;
}

/* **************************************** PRODUCT LIST **************************************** */

function SetPageNumber(varPageNumber) {
    if (document.location.search.length) {
        var strPrefix = "?";
        var URL = RemoveQuery("PageNumber");
        if (URL.substring(0, 1) == "?") { strPrefix = "&"; }
        location.href = URL + strPrefix + 'PageNumber=' + varPageNumber;
    }else{
        var URL = RemoveFriendlyPageNumber();
        URL = URL + '/Page-' + varPageNumber;
        location.href = OrderURL(URL);
    } 
}

function SetSortBy(varSortValue) {
    if (document.location.search.length) {
        var strPrefix = "?";
        var URL = RemoveQuery("SortBy");
        if (URL.substring(0, 1) == "?") { strPrefix = "&"; }
        location.href = URL + strPrefix + 'SortBy=' + varSortValue;
    } else {
        var URL = RemoveFriendlySortBy(document.location.pathname);
        URL = URL + '/SortBy-' + varSortValue;
        location.href = OrderURL(URL);
    }
}

function SetProdsPerPage(varValue) {
    if (document.location.search.length) {
        var strPrefix = "?";
        var URL = RemoveQuery("PP");
        if (URL.substring(0, 1) == "?") { strPrefix = "&"; }
        location.href = URL + strPrefix + 'PP=' + varValue;
    } else {
        var URL = RemoveFriendlyPageNumber();
        URL = RemoveFriendlyPerPage(URL);
        URL = URL + '/PP-' + varValue;
        location.href = OrderURL(URL);
    }
}

function RemoveQuery(variable) {
    var query = window.location.search.substring(1);
    var vars = query.split("&");
    var URL = "";
    for (var i = 0; i < vars.length; i++) {
        var pair = vars[i].split("=");
        if (pair.length > 1) {
            if (pair[0].toString().toLowerCase() != variable.toString().toLowerCase()) {
                URL = URL + '&' + pair[0] + '=' + pair[1];
            }
        }
    }
    if (URL.toString().substring(0, 1) == '&') {
        URL = '?' + URL.toString().substring(1, URL.toString().length);
    }
    return URL;
}

function RemoveFriendlyPageNumber() {
    var query = window.location.pathname;
    var NewURL = window.location.pathname;
    var CurrentURL;
    var vars = query.split("/");
    var URL = "";
    for (var i = 0; i < vars.length; i++) {
        var pair = vars[i];
        if (pair.length > 1) {
            if (pair.toString().toLowerCase().substring(0,5) == 'page-') {
                for (var x = 0; x < 100; x++) {
                    if (pair.toString().toLowerCase() == 'page-' + x) {
                        NewURL = NewURL.replace("/Page-" + x + "", "");
                    }
                }
            }
        }
    }
    return NewURL;
}

function RemoveFriendlyPerPage(URL) {
    var query = URL;
    var NewURL = URL;
    var vars = query.split("/");

    for (var i = 0; i < vars.length; i++) {
        var pair = vars[i];
        if (pair.length > 1) {
            if (pair.toString().toLowerCase().substring(0, 3) == 'pp-') {
                for (var x = 0; x < 99999; x++) {
                    if (pair.toString().toLowerCase() == 'pp-' + x) {
                        NewURL = URL.replace("/PP-" + x + "", "");
                    }
                }
            }
        }
    }
    return NewURL;
}

function RemoveFriendlySortBy(URL) {
    var query = URL;
    var NewURL = URL;
    var vars = query.split("/");

    for (var i = 0; i < vars.length; i++) {
        var pair = vars[i];
        if (pair.length > 1) {
            if (pair.toString().toLowerCase().substring(0, 7) == 'sortby-') {
                for (var x = 0; x < 99999; x++) {
                    if (pair.toString().toLowerCase() == 'sortby-' + x) {
                        NewURL = URL.replace("/SortBy-" + x + "", "");
                    }
                }
            }
        }
    }
    return NewURL;
}

function RemoveFriendlySortBy(URL) {
    var query = URL;
    var NewURL = URL;
    var vars = query.split("/");

    for (var i = 0; i < vars.length; i++) {
        var pair = vars[i];
        if (pair.length > 1) {
            if (pair.toString().toLowerCase().substring(0, 7) == 'sortby-') {
                for (var x = 0; x < 99999; x++) {
                    if (pair.toString().toLowerCase() == 'sortby-' + x) {
                        NewURL = URL.replace("/SortBy-" + x + "", "");
                    }
                }
            }
        }
    }
    return NewURL;
}


function OrderURL(URL) {
    var query = URL;
    var NewURL = URL;
    var vars = query.split("/");
    var pp = "";
    var page = "";
    var sortby = "";

    for (var i = 0; i < vars.length; i++) {
        var pair = vars[i];
        if (pair.length > 1) {
            if (pair.toString().toLowerCase().substring(0, 3) == 'pp-') {
                for (var x = 0; x < 99999; x++) {
                    if (pair.toString().toLowerCase() == 'pp-' + x) {
                        pp = "/PP-" + x;
                    }
                }
            }

            if (pair.toString().toLowerCase().substring(0, 5) == 'page-') {
                for (var x = 0; x < 100; x++) {
                    if (pair.toString().toLowerCase() == 'page-' + x) {
                        page = "/Page-" + x;
                    }
                }
            }

            if (pair.toString().toLowerCase().substring(0, 7) == 'sortby-') {
                for (var x = 0; x < 100; x++) {
                    if (pair.toString().toLowerCase() == 'sortby-' + x) {
                        sortby = "/SortBy-" + x;
                    }
                }
            }
        }
    }
    
    var RedirectURL;
    RedirectURL = RemoveFriendlyPageNumber();
    RedirectURL = RemoveFriendlyPerPage(RedirectURL);
    RedirectURL = RemoveFriendlySortBy(RedirectURL);

    RedirectURL = RedirectURL + page + pp + sortby;

    return RedirectURL;
}
/* **************************************** PRODUCT DETAIL **************************************** */

function ChangeMoreInformation(strObj) {
    var tabs = document.getElementById("MoreInformation_Tabs").getElementsByTagName('div');
    var info = document.getElementById("MoreInformation_Detail").getElementsByTagName('div');
    for (var i = 0; i < tabs.length; i++) {
        if (tabs[i].id.substring(0, 4) == 'Tab_') {
            tabs[i].className = '';
            document.getElementById("Tab_" + strObj).className = 'Active';
        }
    }
    for (var i = 0; i < info.length; i++) {
        if (info[i].id.substring(0, 12) == 'Information_') {
            info[i].style.display = 'none';
            document.getElementById("Information_" + strObj).style.display = 'block';
        }
    }
}

function AddCashmereCare() {
    if (document.getElementById("MS-905").checked == true) {
        var StockID1 = document.getElementById("MS-905").value;
        SelectStock(StockID1);
    }
    if (document.getElementById("MS-900").checked == true) {
        var StockID2 = document.getElementById("MS-900").value;
        SelectStock(StockID2);
    }
}

function SelectStock(varID) {
    var StockID;
    var Qty;
    if (varID != "") {
        StockID = varID;
        Qty = 1;
        location.href = "/Basket/AddToBasket.aspx?Qty=" + Qty + "&StockID=" + StockID;
    }
}

function NoGrid(StockID, BtnType) {
    document.getElementById("StockID").value = StockID;
    $(window).bind("load", function () {
        switch (BtnType) {

            case "Email":
                document.getElementById("BtnAdd").src = "/UserPages/Images/Btn_AddBasketEmail.jpg";
                $('#LinkAdd')[0].onclick = null;
                $('#LinkAdd').click(function () { document.getElementById('EmailWhenBackInStock').style.display = ''; }); //This link may need changing when email when in stock is added.
                break;
            case "PreOrder":
                SelectStock(StockID); // This may need changing in the future
                break;
            case "Order":
                SelectStock(StockID);
                break;
            case "CantBuy":
                document.getElementById("BtnAdd").src = "/UserPages/Images/Btn_AddBasketOut.jpg";
                $('#LinkAdd')[0].onclick = null;
                $('#LinkAdd').click(function () { return false; });
                break;
        }
    });
}

function AddItemToBasket() {
    var StockID;
    var Qty;
    if (document.getElementById("StockID").value != "") {
        StockID = document.getElementById("StockID").value;
        Qty = document.getElementById("Qty").value;
        location.href = "/Basket/AddToBasket.aspx?Qty=" + Qty + "&StockID=" + StockID;
    }
}

function SetMainProductImage(image) {
    var strImagePath;
    strImagePath = image.src;
    document.getElementById("MainProductImage").src = strImagePath.replace("Basket", "Large");
}

/* **************************************** EMAIL WHEN BACK IN STOCK **************************************** */

function EmailWhenBackInStock(StockID, ProdCode, Name, Email) {
    EWIS_AjaxGetData("/EmailWhenInStock.aspx?StockID=" + StockID + "&ProductCode=" + ProdCode + "&Email=" + Email + "&Name=" + Name, EWIS_AjaxHandler);
}
function EWIS_AjaxGetData(url, responseHandler) {
    if (window.XMLHttpRequest) {
        // browser has native support for XMLHttpRequest object          
        req = new XMLHttpRequest();
    }
    else if (window.ActiveXObject) {
        // try XMLHTTP ActiveX (Internet Explorer) version          
        req = new ActiveXObject("Microsoft.XMLHTTP");
    }
    if (req) {
        req.onreadystatechange = responseHandler;
        req.open('get', url, true);
        req.setRequestHeader("If-Modified-Since", "Thu, 1 Jan 1970 00:00:00 GMT");
        req.setRequestHeader("Cache-Control", "no-cache");
        req.setRequestHeader("content-type", "application/x-www-form-urlencoded");
        req.send('');
    }
    else { alert('Your browser does not seem to support XMLHttpRequest.'); }
}
function EWIS_AjaxHandler() {

    try {
        if (req.readyState == 4 ||
            req.readyState == 'complete') {
            document.getElementById('EWISDetails').innerHTML = req.responseText;
            return false;
        }
    }
    catch (e) {
        alert('Error in Ajax respone:' + req.readyState);
        return false;
    }
}

/* **************************************** PRODUCT REVIEWS **************************************** */

function AddProductReview() {
    document.getElementById("ProductReviewAdd").style.display = "";
}

function ShowProductReview() {
    if (document.getElementById("ShowProductReviews").style.display != "") {
        document.getElementById("ShowProductReviews").style.display = "";
        document.getElementById("ShowHideReview").innerHTML = "<b>Hide Product Reviews</b>";
    } else {
        document.getElementById("ShowProductReviews").style.display = "none";
        document.getElementById("ShowHideReview").innerHTML = "<b>Show Product Reviews</b>";
    }
}

function AjaxGetDataProductReview(url, responseHandler) {
    if (window.XMLHttpRequest) {
        // browser has native support for XMLHttpRequest object          
        reqMail = new XMLHttpRequest();
    }
    else if (window.ActiveXObject) {
        // try XMLHTTP ActiveX (Internet Explorer) version          
        reqMail = new ActiveXObject("Microsoft.XMLHTTP");
    }
    if (reqMail) {
        reqMail.onreadystatechange = responseHandler;
        reqMail.open('get', url, true);
        reqMail.setRequestHeader("If-Modified-Since", "Thu, 1 Jan 1970 00:00:00 GMT");
        reqMail.setRequestHeader("Cache-Control", "no-cache");
        reqMail.setRequestHeader("content-type", "application/x-www-form-urlencoded");
        reqMail.send('');
    }
    else { alert('Your browser does not seem to support XMLHttpRequest.'); }
}

function AjaxHandler_ProductReview() {
    try {
        if (reqMail.readyState == 4 ||
            reqMail.readyState == 'complete') {
            document.getElementById('ProductReviewAdd').style.display = 'none';
            alert("Thank you for submitting a product review.")
        }
    }
    catch (e) {
        alert('Error in Ajax respone:' + reqMail.readyState);
    }
}

function SubmitProductReview() {
    var Message = "";
    var Action = "";
    var Code = document.getElementById("ProductCode").value;
    var Name = document.getElementById("ProductReviewName").value;
    var Email = document.getElementById("ProductReviewEmail").value;
    var Rating = document.getElementById("ProductReviewRating").value;
    var Review = document.getElementById("ProductReview").value;
    Review = Review.replace(/\r\n/g, "{CS_LineBreak}\r\n");

    if (isValidEmail(Email) == false) { Message = Message + "Invalid email address\n"; }
    if (Name == "") { Message = Message + "Please enter your Name\n"; }
    if (Rating == "" || Rating == "0") { Message = Message + "Please enter your Rating\n"; }
    if (Review == "") { Message = Message + "Please enter your Review\n"; }
    if (Message == "") { Action = "True"; } else { Action = "False"; }
    if (Action == "True") { AjaxGetDataProductReview("/ReviewSave.aspx?Code=" + Code + "&Name=" + Name + "&Rating=" + Rating + "&Email=" + Email + "&Review=" + Review, AjaxHandler_ProductReview); } else { alert(Message); }
}
function isValidEmail(str) {
    return (str.indexOf(".") > 0) && (str.indexOf("@") > 0);
}

/* **************************************** BASKET **************************************** */

function GetMiniBasket() {
    AjaxGetData("/WS/BasketWebService.aspx", AjaxHandler);
}
function AjaxGetData(url, responseHandler) {
    if (window.XMLHttpRequest) {
        // browser has native support for XMLHttpRequest object          
        req = new XMLHttpRequest();
    }
    else if (window.ActiveXObject) {
        // try XMLHTTP ActiveX (Internet Explorer) version          
        req = new ActiveXObject("Microsoft.XMLHTTP");
    }
    if (req) {
        req.onreadystatechange = responseHandler;
        req.open('get', url, true);
        req.setRequestHeader("If-Modified-Since", "Thu, 1 Jan 1970 00:00:00 GMT");
        req.setRequestHeader("Cache-Control", "no-cache");
        req.setRequestHeader("content-type", "application/x-www-form-urlencoded");
        req.send('');
    }
    else { alert('Your browser does not seem to support XMLHttpRequest.'); }
}
function AjaxHandler() {

    try {
        if (req.readyState == 4 ||
            req.readyState == 'complete') {
            document.getElementById('TopNavigation_MiniBasket').innerHTML = req.responseText;
        }
    }
    catch (e) {
        alert('Error in Ajax respone:' + req.readyState);
    }
}

function ShowMiniBasketItems() { document.getElementById("MiniBasket_Items").style.display = 'block'; }
function HideMiniBasketItems() { document.getElementById("MiniBasket_Items").style.display = 'none'; }

function setShipping(varID) {
    var URL = self.location.href.replace(/(\?.*)/, "");
    self.location.href = URL + "?ShippingID=" + varID;
}

function UpdateBasket() {
    location.href = "/Basket/UpdateBasket.aspx"
}

/* **************************************** CHECKOUT **************************************** */

function HideElement(id) {
    document.getElementById(id).style.display = 'none';
}

function ShowElement(id) {
    document.getElementById(id).style.display = 'block';
}
function CheckCustomerDetails() {
    var sMsg = '';
    if (document.getElementById("ContentPlaceHolder1_cboTitle").value == '') { sMsg = sMsg + 'Please select your title.\n'; }
    if (document.getElementById("ContentPlaceHolder1_txtFirstName").value == '') { sMsg = sMsg + 'Please enter your first name.\n'; }
    if (document.getElementById("ContentPlaceHolder1_txtLastName").value == '') { sMsg = sMsg + 'Please enter your last name.\n'; }
    if (document.getElementById("ContentPlaceHolder1_txtTelephone1").value == '') { sMsg = sMsg + 'Please enter your phone 1.\n'; }
    if (document.getElementById("ContentPlaceHolder1_txtEmail").value == '') { sMsg = sMsg + 'Please enter your email address.\n'; }
    if (document.getElementById("ContentPlaceHolder1_txtEmailConfirm").value == '') { sMsg = sMsg + 'Please confirm your email address.\n'; }
    if (document.getElementById("ContentPlaceHolder1_txtEmail").value != document.getElementById("ContentPlaceHolder1_txtEmailConfirm").value) { sMsg = sMsg + 'Please ensure your email addresses match.\n'; }
    if (document.getElementById("ContentPlaceHolder1_txtPostCode").value == '') { sMsg = sMsg + 'Please enter your post code.\n'; }
    if (document.getElementById("ContentPlaceHolder1_txtAddress1").value == '') { sMsg = sMsg + 'Please enter your house no/name.\n'; }
    if (document.getElementById("ContentPlaceHolder1_txtAddress2").value == '') { sMsg = sMsg + 'Please enter your address line 1.\n'; }
    if (document.getElementById("ContentPlaceHolder1_txtAddress4").value == '') { sMsg = sMsg + 'Please enter your town/city.\n'; }
    if (document.getElementById("ContentPlaceHolder1_TandC").checked == false) { sMsg = sMsg + 'Please read and accept our terms and conditions.\n'; }

    if (document.getElementById("ContentPlaceHolder1_optDeliveryNo").checked == true) {
        if (document.getElementById("ContentPlaceHolder1_cboTitleD").value == '') { sMsg = sMsg + 'Please enter your delivery title.\n'; }
        if (document.getElementById("ContentPlaceHolder1_txtFirstNameD").value == '') { sMsg = sMsg + 'Please enter your delivery first name.\n'; }
        if (document.getElementById("ContentPlaceHolder1_txtLastNameD").value == '') { sMsg = sMsg + 'Please enter your delivery last name.\n'; }
        if (document.getElementById("ContentPlaceHolder1_txtPostCodeD").value == '') { sMsg = sMsg + 'Please enter your delivery postcode.\n'; }
        if (document.getElementById("ContentPlaceHolder1_txtAddress1D").value == '') { sMsg = sMsg + 'Please enter your delivery house no/name.\n'; }
        if (document.getElementById("ContentPlaceHolder1_txtAddress2D").value == '') { sMsg = sMsg + 'Please enter your delivery address line 1.\n'; }
        if (document.getElementById("ContentPlaceHolder1_txtAddress4D").value == '') { sMsg = sMsg + 'Please enter your delivery town/city.\n'; }
    }

    try {
        if (document.getElementById("ContentPlaceHolder1_optRegisterYes").checked == true) {
            if (document.getElementById("ContentPlaceHolder1_txtPassword").value == '') { sMsg = sMsg + 'Please enter your password.\n'; }
            if (document.getElementById("ContentPlaceHolder1_txtPasswordConfirm").value == '') { sMsg = sMsg + 'Please confirm your password.\n'; }
            if (document.getElementById("ContentPlaceHolder1_txtPassword").value != document.getElementById("ContentPlaceHolder1_txtPasswordConfirm").value) { sMsg = sMsg + 'Please ensure your passwords match.\n'; }
        }
    } catch (err) { }

    if (sMsg == '') { return true; } else { alert(sMsg); return false; }
}

function CheckCustomerLogin() {
    var sMsg = '';
    if (document.getElementById("ContentPlaceHolder1_txtEmailLogin").value == '') { sMsg = sMsg + 'Please enter your email address.\n'; }
    if (document.getElementById("ContentPlaceHolder1_txtPasswordLogin").value == '') { sMsg = sMsg + 'Please enter your password.\n'; }

    if (sMsg == '') { return true; } else { alert(sMsg); return false; }
}

function SummaryGiftWrap() {
    if (document.getElementById("GiftWrapBox").checked == true) {
        __doPostBack('ADDGIFTWRAP', 'ADDGIFTWRAP');
    } else {
        __doPostBack('REMOVEGIFTWRAP', 'REMOVEGIFTWRAP');
    }
}

function CheckCustomerEmail() {
    var sMsg = '';
    if (document.getElementById("ContentPlaceHolder1_txtEmail").value == '') { sMsg = sMsg + 'Please enter your email address.\n'; }

    if (sMsg == '') { return true; } else { alert(sMsg); return false; }
}

/* **************************************** STATIC PAGES **************************************** */

function CheckMailingList() {
    var sMsg = '';
    if (document.getElementById("firstname").value == '') { sMsg = sMsg + 'Please enter your first name.\n'; }
    if (document.getElementById("surname").value == '') { sMsg = sMsg + 'Please enter your surname.\n'; }
    if (document.getElementById("email").value == '') { sMsg = sMsg + 'Please enter your email address.\n'; }

    if (sMsg == '') { return true; } else { alert(sMsg); return false; }
}

function SiteMap_ShowProducts(Character) {
    $('.SiteMap_Character').css('display', 'none');
    $('#SiteMap_' + Character + '').css('display', 'block');
}

/* **************************************** CATALOGUE REQUEST **************************************** */

function AjaxGetDataStatic(url, responseHandler) {
    if (window.XMLHttpRequest) {
        // browser has native support for XMLHttpRequest object          
        reqMail = new XMLHttpRequest();
    }
    else if (window.ActiveXObject) {
        // try XMLHTTP ActiveX (Internet Explorer) version          
        reqMail = new ActiveXObject("Microsoft.XMLHTTP");
    }
    if (reqMail) {
        reqMail.onreadystatechange = responseHandler;
        reqMail.open('get', url, true);
        reqMail.setRequestHeader("If-Modified-Since", "Thu, 1 Jan 1970 00:00:00 GMT");
        reqMail.setRequestHeader("Cache-Control", "no-cache");
        reqMail.setRequestHeader("content-type", "application/x-www-form-urlencoded");
        reqMail.send('');
    }
    else { alert('Your browser does not seem to support XMLHttpRequest.'); }
}

function AjaxHandler_CatalogueRequest() {
    try {
        if (reqMail.readyState == 4 ||
            reqMail.readyState == 'complete') {
            location.href = "/Pages/SendCatalogue";
        }
    }
    catch (e) {
        alert('Error in Ajax respone:' + reqMail.readyState);
    }
}

function SubmitCatalogueRequest() {
    var Message = "";
    var Action = "";
    var Title = document.getElementById("cboTitle").value;
    var FirstName = document.getElementById("txtFirstName").value;
    var LastName = document.getElementById("txtLastName").value;
    var Address1 = document.getElementById("txtAddress1").value;
    var Address2 = document.getElementById("txtAddress2").value;
    var Address3 = document.getElementById("txtAddress3").value;
    var Address5 = document.getElementById("txtAddress5").value;
    var PostCode = document.getElementById("txtPostCode").value;
    var Country = document.getElementById("txtCountry").value;
    var Telephone = document.getElementById("txtTelephone").value;
    var Where = document.getElementById("txtWhere").value;

    if (Title == "") { Message = Message + "Please select your title\n"; }
    if (FirstName == "") { Message = Message + "Please enter your First Name\n"; }
    if (LastName == "") { Message = Message + "Please enter your Last Name\n"; }
    if (Address1 == "") { Message = Message + "Please enter your Address\n"; }
    if (Address3 == "") { Message = Message + "Please enter your Town/City\n"; }
    if (PostCode == "") { Message = Message + "Please enter your Zipcode\n"; }
    if (Where == "") { Message = Message + "Please tell us where you heard about Pure\n"; }
    if (Message == "") { Action = "True"; } else { Action = "False"; }
    if (Action == "True") { AjaxGetDataStatic("/WS/RequestCatalogue.aspx?Title=" + Title + "&FirstName=" + FirstName + "&LastName=" + LastName + "&Address1=" + Address1 + "&Address2=" + Address2 + "&Address3=" + Address3 + "&Address5=" + Address5 + "&PostCode=" + PostCode + "&Country=" + Country + "&Telephone=" + Telephone + "&Where=" + Where, AjaxHandler_CatalogueRequest); } else { alert(Message); }
}

/* **************************************** SWATCH REQUEST **************************************** */

function GetSwatchColours() {
    AjaxGetData("/Custom/SwatchList.aspx", AjaxHandlerSwatch);
}
function AjaxHandlerSwatch() {

    try {
        if (req.readyState == 4 ||
            req.readyState == 'complete') {
            document.getElementById('SwatchSelects').innerHTML = req.responseText;
        }
    }
    catch (e) {
        alert('Error in Ajax respone:' + req.readyState);
    }
}

function SubmitSwatchRequest() {
    var Message = "";
    var Action = "";
    var Title = document.getElementById("cboTitle").value;
    var FirstName = document.getElementById("txtFirstName").value;
    var LastName = document.getElementById("txtLastName").value;
    var Address1 = document.getElementById("txtAddress1").value;
    var PostCode = document.getElementById("txtPostCode").value;
    var Country = document.getElementById("txtCountry").value;
    var Telephone = document.getElementById("txtTelephone").value;
    var Email = document.getElementById("txtTelephone").value;

    if (Title == "") { Message = Message + "Please select your title\n"; }
    if (FirstName == "") { Message = Message + "Please enter your First Name\n"; }
    if (LastName == "") { Message = Message + "Please enter your Last Name\n"; }
    if (Address1 == "") { Message = Message + "Please enter your Address\n"; }
    if (PostCode == "") { Message = Message + "Please enter your Postcode\n"; }
    if (Telephone == "") { Message = Message + "Please enter your Phone Number\n"; }
    if (Email == "") { Message = Message + "Please enter your Email Address\n"; }
    if (Message == "") { Action = "True"; } else { Action = "False"; }
    if (Action == "True") {
        __doPostBack('SUBMITFORM', 'SUBMITFORM');
    } else {
        alert(Message); 
    }
}
function SubmitSwatchRequest2(){
    document.forms[0].action = "/Custom/SubmitSwatchRequest.aspx";
    document.forms[0].method = "post";
    document.forms[0].submit();
}

/* **************************************** EMAIL BASKET **************************************** */

function AjaxHandler_EmailBasket() {
    try {
        if (reqMail.readyState == 4 ||
            reqMail.readyState == 'complete') {
            location.href = "/UserPages/Themes/Theme1/Templates/Static/EmailBasketSave.htm";
        }
    }
    catch (e) {
        alert('Error in Ajax respone:' + reqMail.readyState);
    }
}

function SubmitEmailBasket() {
    var Message = "";
    var Action = "";
    var Name = document.getElementById("txtName").value;
    var Email = document.getElementById("txtEmail").value;
    var SignUp = document.getElementById("SignUp").value;
    var FriendEmail = document.getElementById("txtEmailFriend").value;
    var YourMessage = document.getElementById("Message").value;

    if (Name == "") { Message = Message + "Please select your Name\n"; }
    if (Email == "") { Message = Message + "Please enter your Email adderss\n"; }
    if (Message == "") { Action = "True"; } else { Action = "False"; }
    if (Action == "True") { AjaxGetDataStatic("/WS/EmailBasket.aspx?Name=" + Name + "&Email=" + Email + "&SignUp=" + SignUp + "&FriendEmail=" + FriendEmail + "&Message=" + YourMessage, AjaxHandler_CatalogueRequest); } else { alert(Message); }
}

function ApplyMediaCode() {
    var Message = "";
    var Action = "";
    var MediaCode = document.getElementById("txtMediaCodeEmpty").value;

    if (MediaCode == "") { Message = Message + "Please enter a media code\n"; }
    if (Message == "") { Action = "True"; } else { Action = "False"; }
    if (Action == "True") { AjaxGetDataStatic("/WS/ApplyMediaCode.aspx?MediaCode=" + MediaCode, AjaxHandler_ApplyMediaCode); } else { alert(Message); }
}

function RemoveMediaCode() {
    var Message = "";
    var Action = "";
    if (Message == "") { Action = "True"; } else { Action = "False"; }
    if (Action == "True") { AjaxGetDataStatic("/WS/ApplyMediaCode.aspx?MediaCode=", AjaxHandler_RemoveMediaCode); } else { alert(Message); }
}

function AjaxHandler_RemoveMediaCode() {
    try {
        if (reqMail.readyState == 4 ||
            reqMail.readyState == 'complete') {
            var url = location.href;
            if (url.indexOf("mc") != -1) {
                var url_parts = url.split('?');
                var main_url = url_parts[0];
                location.href = main_url;
            }
            else {
                setTimeout("location.reload(true);", 2000);
            }
        }
    }
    catch (e) {
        alert('Error in Ajax respone:' + reqMail.readyState);
    }
}

function AjaxHandler_RemoveMediaCode() {
    try {
        if (reqMail.readyState == 4 ||
            reqMail.readyState == 'complete') {
            var url = location.href;
            if (url.indexOf("mc") != -1) {
                var url_parts = url.split('?');
                var main_url = url_parts[0];
                location.href = main_url;
            }
            else {
                setTimeout("location.reload(true);", 2000);
            }
        }
    }
    catch (e) {
        alert('Error in Ajax respone:' + reqMail.readyState);
    }
}

function AjaxHandler_ApplyMediaCode() {
    try {
        if (reqMail.readyState == 4 ||
            reqMail.readyState == 'complete') {
            setTimeout("location.reload(true);", 2000);
        }
    }
    catch (e) {
        alert('Error in Ajax respone:' + reqMail.readyState);
    }
}

/*************** IntelliTrack ******************************/
function IntelliTracking() {
    IntelliTracking_AjaxGetData("/WS/IntelliTrack.aspx", IntelliTracking_AjaxHandler);
}
function IntelliTracking_AjaxGetData(url, responseHandler) {
    if (window.XMLHttpRequest) {
        // browser has native support for XMLHttpRequest object          
        req2 = new XMLHttpRequest();
    }
    else if (window.ActiveXObject) {
        // try XMLHTTP ActiveX (Internet Explorer) version          
        req2 = new ActiveXObject("Microsoft.XMLHTTP");
    }
    if (req2) {
        req2.onreadystatechange = responseHandler;
        req2.open('get', url, true);
        req2.setRequestHeader("If-Modified-Since", "Thu, 1 Jan 1970 00:00:00 GMT");
        req2.setRequestHeader("Cache-Control", "no-cache");
        req2.setRequestHeader("content-type", "application/x-www-form-urlencoded");
        req2.send('');
    }
    else { alert('Your browser does not seem to support XMLHttpRequest.'); }
}

function IntelliTracking_AjaxHandler() {

    try {
        if (req2.readyState == 4 ||
            req2.readyState == 'complete') {
            document.getElementById("IntelliTracking").innerHTML == parseScript(req2.responseText);
            return false;
        }
    }
    catch (e) {
        alert('Error in Ajax respone:' + req2.readyState);
        return false;
    }
}

function parseScript(_source) {
    var source = _source;
    var scripts = new Array();

    // Strip out tags
    while (source.indexOf("<script") > -1 || source.indexOf("</script") > -1) {
        var s = source.indexOf("<script");
        var s_e = source.indexOf(">", s);
        var e = source.indexOf("</script", s);
        var e_e = source.indexOf(">", e);

        // Add to scripts array
        scripts.push(source.substring(s_e + 1, e));
        // Strip from source
        source = source.substring(0, s) + source.substring(e_e + 1);
    }

    // Loop through every script collected and eval it
    for (var i = 0; i < scripts.length; i++) {
        try {
            eval(scripts[i]);
        }
        catch (ex) {
            // do what you want here when a script fails
        }
    }

    // Return the cleaned source
    return source;
}

function FlashInstalled() {
    result = false;
    if (navigator.mimeTypes && navigator.mimeTypes["application/x-shockwave-flash"]) {
        result = navigator.mimeTypes["application/x-shockwave-flash"].enabledPlugin;
    }
    else if (document.all && (navigator.appVersion.indexOf("Mac") == -1)) {
        eval('try {var xObj = new ActiveXObject("ShockwaveFlash.ShockwaveFlash");if (xObj) result = true; xObj = null; } catch (e) {}');
    }
    return result;
}

function FlashWrite(url, width, height) {
    document.write('<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=10,0,0,0" width="' + width + '" height="' + height + '" id="Object1" align="middle">');
    document.write('    <param name="allowScriptAccess" value="sameDomain" />');
    document.write('    <param name="allowFullScreen" value="false" />');
    document.write('    <param name="WMode" value="Transparent">');
    document.write('    <param name="movie" value="' + url + '" />');
    document.write('    <param name="quality" value="high" />');
    document.write('    <param name="bgcolor" value="#ffffff" />');
    document.write('    <param name="background-image" value="" />');
    document.write('    <embed src="' + url + '" wmode="transparent"  quality="high" bgcolor="#ffffff" width="' + width + '" height="' + height + '" name="ProductScroller" align="middle" allowScriptAccess="sameDomain" allowFullScreen="false" type="application/x-shockwave-flash" pluginspage="http://www.adobe.com/go/getflashplayer" />');
    document.write('</object>');
}

function SwapCursor(objImg) {
    if (document.getElementById("Template").value == '1') {
        objImg.style.cursor = 'pointer'
    }
}

function SwapCutOut(objImg) {
    if (document.getElementById("Template").value == '1') {
        document.getElementById("ProductDetail_CutOut_MainImage").src = objImg;
        document.getElementById("ProductDetail_CutOut").style.display = '';
    }
}

function SwapCutOutHide(objImg) {
    document.getElementById("ProductDetail_CutOut").style.display = 'none';
}

/* **************************************** GARMENT COLOURS **************************************** */

function SwapMainGarment(Code,Colour) {
    document.getElementById("GarmentColours_MainImage").src = "/StockImg/" + Code + "_" + Colour + "_3.jpg"
    document.getElementById("GarmentColours_Popup").style.display = ''
}

function CloseGarmentPopup() { document.getElementById("GarmentColours_Popup").style.display = 'none' }

function GetHPDynamicContent() {
    AjaxGetData_HP("/WS/HomePage_DynamicContent.aspx", AjaxHandler_HP);
}
function AjaxGetData_HP(url, responseHandler) {
    if (window.XMLHttpRequest) {
        // browser has native support for XMLHttpRequest object          
        req = new XMLHttpRequest();
    }
    else if (window.ActiveXObject) {
        // try XMLHTTP ActiveX (Internet Explorer) version          
        req = new ActiveXObject("Microsoft.XMLHTTP");
    }
    if (req) {
        req.onreadystatechange = responseHandler;
        req.open('get', url, true);
        req.setRequestHeader("If-Modified-Since", "Thu, 1 Jan 1970 00:00:00 GMT");
        req.setRequestHeader("Cache-Control", "no-cache");
        req.setRequestHeader("content-type", "application/x-www-form-urlencoded");
        req.send('');
    }
    else { alert('Your browser does not seem to support XMLHttpRequest.'); }
}
function AjaxHandler_HP() {

    try {
        if (req.readyState == 4 ||
            req.readyState == 'complete') {
            document.getElementById('HPDynamicContent').innerHTML = req.responseText;
        }
    }
    catch (e) {
        alert('Error in Ajax respone:' + req.readyState);
    }
}

function CheckCustomerDetail() {
    try {
        if (document.getElementById("ContentPlaceHolder1_optRegisterYes").checked == true) {
            var sMsg = "";
            if (document.getElementById("ContentPlaceHolder1_txtPassword").value == '') { sMsg = sMsg + 'Please enter your password.\n'; }
            if (document.getElementById("ContentPlaceHolder1_txtPasswordConfirm").value == '') { sMsg = sMsg + 'Please confirm your password.\n'; }
            if (document.getElementById("ContentPlaceHolder1_txtPassword").value != document.getElementById("ContentPlaceHolder1_txtPasswordConfirm").value) { sMsg = sMsg + 'Please ensure your passwords match.\n'; }
            if (document.getElementById("ContentPlaceHolder1_txtEmailConfirm").value == '') { sMsg = sMsg + 'Please confirm your email.\n'; }
            if (document.getElementById("ContentPlaceHolder1_txtEmailConfirm").value == '') { sMsg = sMsg + 'Please confirm your email address.\n'; }
            if (document.getElementById("ContentPlaceHolder1_txtEmailConfirm").value != document.getElementById("ContentPlaceHolder1_txtEmail").value) { sMsg = sMsg + 'Please ensure your email adrdesses match.\n'; }
            if (sMsg == "") {
                return true;
            } else {
                alert(sMsg);
                return false;
            };
        } else {
            return true;
        }
    }
    catch (e) { }
}
