﻿function setStyle(objId, style, value) {
    document.getElementById(objId).style[style] = value;
}

function setClassName(objId, className) {
    document.getElementById(objId).className = className;
}

function toggle_item(item_off, item_on) {
    document.getElementById(item_off).style['display'] = 'none';
    document.getElementById(item_on).style['display'] = 'inline';
}

function activate_item(item_on) {
    setClassName(item_on, 'inputbox reg2')
}

function TrimString(sInString) {
    sInString = sInString.replace(/^\s+/g, ""); // strip leading
    return sInString.replace(/\s+$/g, ""); // strip trailing
}

 //Help item expand
function switchMenu(obj) {
    var el = document.getElementById(obj);
    if (el.style.display != "none") {
        el.style.display = 'none';
    }
    else {
        el.style.display = 'block';
    }

    return false;
}

function checkEmail(myForm) {
    if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(myForm)) {
        return true;
    }
    return false;
}

function openloginwindow(divID) {

    window.onscroll = function() {
        document.getElementById(divID).style.top = ($(window).scrollTop() - 300) + 'px';
    };

    document.getElementById(divID).style.top = ($(window).scrollTop() - 300) + 'px';
    document.getElementById(divID).style.display = "block";

    var formname = document.login;
    if (formname != 'undefined' && formname != null) {
        formname.login_email_address.value = "";
        formname.login_password.value = "";
        formname.login_email_address_forgotten.value = "";
    }

    document.getElementById("errormessage").innerHTML = "";

    return false;
}

function loguserin() {

    var frm = document.login;

    if (frm != 'undefined' && frm != null) {
        if (frm.login_email_address.value == "") {
            document.getElementById('errormessage').innerHTML = "<p>please enter your email address.</p>";
            frm.login_email_address.focus();
            return false;
        }
        
        if (frm.login_password.value == "") {
            document.getElementById('errormessage').innerHTML = "<p>please enter your password.</p>";
            frm.login_password.focus();
            return false;
        }
        
        if (window.XMLHttpRequest)
            {xmlHttp = new XMLHttpRequest();}
        else // for older IE 5/6
        { xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");}

        var url = "wcs_ajax.html?wcs_request=validate_user&wcs_user_name=" + frm.login_email_address.value;
        url = url + "&wcs_password=" + frm.login_password.value;
        xmlHttp.open("GET", url, false);
        xmlHttp.send(null);

        var resp = xmlHttp.responseXML;

        if (resp.getElementsByTagName("return_code")[0].childNodes[0].nodeValue == 'true') {
            document.getElementById('errormessage').innerHTML = '';
            frm.submit();
        }
        else {
            document.getElementById('errormessage').innerHTML = '<p>' + resp.getElementsByTagName("message")[0].childNodes[0].nodeValue + '</p>';
            return false;
        }
    }
}

function loguserin_sub() {

    var frm = document.login_sub;

    if (frm != 'undefined' && frm != null) {
        if (frm.login_email_address_sub.value == "") {
            document.getElementById('errormessage_sub').innerHTML = "<p>please enter your email address.</p>";
            frm.login_email_address_sub.focus();
            return false;
        }

        if (frm.login_password_sub.value == "") {
            document.getElementById('errormessage_sub').innerHTML = "<p>please enter your password.</p>";
            frm.login_password_sub.focus();
            return false;
        }

        if (window.XMLHttpRequest)
        { xmlHttp = new XMLHttpRequest(); }
        else // for older IE 5/6
        { xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); }

        var url = "wcs_ajax.html?wcs_request=validate_user&wcs_user_name=" + frm.login_email_address_sub.value;
        url = url + "&wcs_password=" + frm.login_password_sub.value;
        xmlHttp.open("GET", url, false);
        xmlHttp.send(null);

        var resp = xmlHttp.responseXML;

        if (resp.getElementsByTagName("return_code")[0].childNodes[0].nodeValue == 'true') {
            document.getElementById('errormessage_sub').innerHTML = '';
            frm.submit();
        }
        else {
            document.getElementById('errormessage_sub').innerHTML = '<p>' + resp.getElementsByTagName("message")[0].childNodes[0].nodeValue + '</p>';
            return false;
        }
    }
}

function checkusername() {

    var frm = document.login;

    if (frm != 'undefined' && frm != null) {
        if (frm.login_email_address_forgotten.value == "") {
            document.getElementById('errormessage').innerHTML = "<p>please enter your email address.</p>";
            frm.login_email_address_forgotten.focus();
            return false;
        }

        if (window.XMLHttpRequest)
        { xmlHttp = new XMLHttpRequest(); }
        else // for older IE 5/6
        { xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); }

        var url = "wcs_ajax.html?wcs_request=validate_user_name&wcs_user_name=" + frm.login_email_address_forgotten.value;
        xmlHttp.open("GET", url, false);
        xmlHttp.send(null);

        var resp = xmlHttp.responseXML;

        if (resp.getElementsByTagName("return_code")[0].childNodes[0].nodeValue == 'true') {
            document.getElementById('errormessage').innerHTML = '';
            frm.submit();
        }
        else {
            document.getElementById('errormessage').innerHTML = '<p>' + resp.getElementsByTagName("message")[0].childNodes[0].nodeValue + '</p>';
            return false;
        }
    }
}

function checkusername_sub() {

    var frm = document.login_sub;

    if (frm != 'undefined' && frm != null) {
        if (frm.login_email_address_forgotten_sub.value == "") {
            document.getElementById('errormessage_sub').innerHTML = "<p>please enter your email address.</p>";
            frm.login_email_address_forgotten_sub.focus();
            return false;
        }

        if (window.XMLHttpRequest)
        { xmlHttp = new XMLHttpRequest(); }
        else // for older IE 5/6
        { xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); }

        var url = "wcs_ajax.html?wcs_request=validate_user_name&wcs_user_name=" + frm.login_email_address_forgotten_sub.value;
        xmlHttp.open("GET", url, false);
        xmlHttp.send(null);

        var resp = xmlHttp.responseXML;

        if (resp.getElementsByTagName("return_code")[0].childNodes[0].nodeValue == 'true') {
            document.getElementById('errormessage_sub').innerHTML = '';
            frm.submit();
        }
        else {
            document.getElementById('errormessage_sub').innerHTML = '<p>' + resp.getElementsByTagName("message")[0].childNodes[0].nodeValue + '</p>';
            return false;
        }
    }

}

function closeloginwindow(divID) {

    document.getElementById(divID).style.display = "none";

    return false;
}

function showImage(path, image_no, link) {

    setClassName("thumb" + thumbnailcurrent, 'gallery-image');

    document.getElementById("large_image").src = path;
    thumbnailcurrent = image_no;

    if (document.getElementById("linked" + thumbnailcurrent).innerHTML != '') {
        document.getElementById("see_single_image").href = document.getElementById("linked" + thumbnailcurrent).innerHTML.replace(/&amp;/gi, "&");
        setStyle('see_single_image', 'display', 'block');
    }
    else {
        setStyle('see_single_image', 'display', 'none');
    }

    setClassName("thumb" + thumbnailcurrent, 'gallery-image-highlight');
    feature_show_arrows();
    
    return false;

}

function change_image(step) {

    if ((thumbnailcurrent + step) >= 1 && (thumbnailcurrent + step) <= thumbnailtotal) {
        setClassName("thumb" + thumbnailcurrent, 'gallery-image');

        thumbnailcurrent = thumbnailcurrent + step;
        document.getElementById("large_image").src = document.getElementById("thumb" + thumbnailcurrent).src.replace("thumbnail", "gallery");

        if (document.getElementById("linked" + thumbnailcurrent).innerHTML != '') {
            document.getElementById("see_single_image").href = document.getElementById("linked" + thumbnailcurrent).innerHTML.replace(/&amp;/gi, "&");
            setStyle('see_single_image', 'display', 'block');
        }
        else {
            setStyle('see_single_image', 'display', 'none');
        }

        setClassName("thumb" + thumbnailcurrent, 'gallery-image-highlight');
        feature_show_arrows();
    }
}

function feature_show_arrows() {
    if (thumbnailcurrent == thumbnailtotal) {
        document.getElementById("arrow_left").src = "";
        document.getElementById("arrow_right").src = "/images/arrow-right-grey.gif";
    }
    else if (thumbnailcurrent == 1) {
        document.getElementById("arrow_left").src = "/images/arrow-left-grey.gif";
        document.getElementById("arrow_right").src = "";
    }
    else if (thumbnailcurrent == 1 && thumbnailcurrent == thumbnailtotal) {
        document.getElementById("arrow_left").src = "/images/arrow-left-grey.gif";
        document.getElementById("arrow_right").src = "/images/arrow-right-grey.gif";
    }
    else {
        document.getElementById("arrow_left").src = "";
        document.getElementById("arrow_right").src = "";
    }
}

function add_to_cart(product_id) {
 
    var frm = document.login;

    if (frm != 'undefined' && frm != null) {
        openloginwindow('login_dialog');
    }
    else {
        if (document.getElementById("link_" + product_id).innerHTML != 'added to cart' && document.getElementById("link_" + product_id).innerHTML != 'ADDED TO CART') {
        if (window.XMLHttpRequest)
        { xmlHttp = new XMLHttpRequest(); }
        else // for older IE 5/6
        { xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); }

        var url = '/my_account/shopping_cart.html?mode=add&pid=' + product_id;
        xmlHttp.open("GET", url, false);
        xmlHttp.send(null);

        if (document.getElementById('link_' + product_id).innerHTML == 'add to cart') {
            document.getElementById('link_' + product_id).innerHTML = 'added to cart';
        }
        else {
            document.getElementById('link_' + product_id).innerHTML = 'ADDED TO CART';
        }
        setClassName('link_' + product_id, 'orange');
        }
    }
}

function add_to_lightbox(light_box, product_id) {

    var frm = document.login;

    if (frm != 'undefined' && frm != null) {
        openloginwindow('login_dialog');
    }
    else {
            if (window.XMLHttpRequest)
            { xmlHttp = new XMLHttpRequest(); }
            else // for older IE 5/6
            { xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); }

            var url = '/my_account/lightbox_' + light_box + '.html?action=add&pid=' + product_id;

            xmlHttp.open("GET", url, false);
            xmlHttp.send(null);

            
            setClassName('box' + light_box + '_' + product_id, 'orange');
    }
}


function open_email_lightbox_window(divID) {

    if (download_check() == true) {
        window.onscroll = function() {
            document.getElementById(divID).style.top = ($(window).scrollTop() - 300) + 'px';
        };

        $('#' + divID).height($(document).height() + 600);
        document.getElementById(divID).style.top = ($(window).scrollTop() - 300) + 'px';

        document.getElementById(divID).style.display = "block";

        var frm = document.email_lightbox;
        if (frm != 'undefined' && frm != null) {
            frm.email1.value = "";
            frm.email2.value = "";
            frm.message.value = "";
        }

        document.getElementById("email_error_message").innerHTML = "";
    }
    return false;
}

function emailLightbox(divID) {

    frm = document.email_lightbox;

    if (frm.email1.value == "" || checkEmail(frm.email1.value) == false) {
        document.getElementById("email_error_message").innerHTML = "<p>sorry, EMAIL 1 is not a valid email address.</p>";
        frm.email1.focus();
        return false;
    }

    if (frm.email2.value != "") {
        if (checkEmail(frm.email2.value) == false) {
            document.getElementById("email_error_message").innerHTML = "<p>sorry, EMAIL 2 is not a valid email address.</p>";
            frm.email2.focus();
            return false;
        }
    }

    frm.submit();
}

function downloadBatch(id) {
    document.getElementById(id).innerHTML = "DOWNLOAD (zipping files, please wait...)";
    var t = setTimeout("downloadBatchClear('" + id + "')", 30000);
}

function downloadBatchClear(id) {
    document.getElementById(id).innerHTML = "DOWNLOAD";
}

function confirm_cart() {
    frm = document.cart;

    if (frm.terms.checked != true) {
        document.getElementById("errormessage").innerHTML = "<p>please ensure you have read and agree to the terms and conditions.</p>";
        return false;
    }
    else {
        return true;
    }
}

function download_check() {

    var frm = document.login;

    if (frm != 'undefined' && frm != null) {
        openloginwindow('login_dialog');
        return false;
    }
    else {
        return true;
    }
}
