﻿var _webSiteName = ''; '/bp'; '/byggplast-batprylar.se';
var LOADING_IMAGE = "<img src='App_Themes/Default/Images/ProgressIndicator.gif' title='Laddar' />";
var _categoryID = 0;
var _customerID;
var _webSiteID;
var _ddlJQuery;
var _articleNo;
var _sender;
var _quantity;
var _loading = false;
var _storesExists = false;
var _languageID;
var _menuID;
var _isFirstLoad;
var _nodePath;

//function Testar() {

////feel free to add querystring vars to this
//var myurl="http://www.seasea.se/";
////make the call to YQL 
//$.getJSON("http://query.yahooapis.com/v1/public/yql?"+
//                "q=select%20*%20from%20html%20where%20url%3D%22"+
//                encodeURIComponent(myurl)+
//                "%22&format=xml'&callback=?",
//        function(data){
//          if(data.results[0]){
//            //this data.results[0] is the return object you work with, 
//            //if you actually want to do something with the returned json
//            alert(data.results[0]);
//          } 
//        }
//      );
//}

function isArray(obj) {
    return obj.constructor == Array;
}
DisableBackground();
function ExecuteAjax(paramArray, method, successCallBack, errorCallBack) {

    //Create list of parameters in the form:
    var paramList = '';
    if (paramArray.length > 0) {
        for (var i = 0; i < paramArray.length; i += 2) {
            if (paramList.length > 0) {
                paramList += ',';
            }
            paramList += '"' + paramArray[i] + '":'
            paramList += '"' + paramArray[i + 1] + '"';
        }
    }

    paramList = '{' + paramList + '}';

    $.ajax({
        type: "POST",
        url: "SeaSeaService.svc/" + method,
        data: paramList,
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: successCallBack,
        error: errorCallBack
    });
}

function LoadCart() {

    //var cartGrid = document.getElementById('divAjaxCartGrid');
    ClearAjaxDivElements(false);

    var isCheckoutPage = document.getElementById("isCartGridPage") != null;
    var isCartGridPage = document.getElementById("isCartGridPage") != null;

    Loading('divAjaxCartGrid');

    ExecuteAjax(["customerID", _customerID, "webSiteID", _webSiteID, "loadGrid", isCartGridPage, "loadCheckout", isCheckoutPage], "LoadCart", OnDocumentUpdated, OnError);
}

function TEST(data) {
    alert(data);
}
function errr(xhr, ajaxOptions, thrownError) {
    _loading = false;
    if (badBrowser() == false)
        $("#ajaxDisable").hide();
    alert("Något gick fel:" + xhr.status + " " + xhr.responseText);
}
function GetPopularArticlesByCategory(categoryID) {
    if (_loading)
        return false;
    _loading = true;

    _categoryID = categoryID;
    Loading(_categoryID);
    ExecuteAjax(["categoryID", categoryID], "GetPopularArticlesByCategory", OnControlLoadedFromCategory, OnError);
}

// bad name not extended
function SearchExtendedArticlesFromCategory(sender, searchText, categoryID, categoryName, showRefine, isCategorySearch) {
    _categoryID = categoryID;

    // close if open
    if ($("#" + _categoryID).is(":visible")) {
        $("#" + _categoryID).slideUp("slow");
        //$(".slideUpDown").val() = "Visa träffarna i denna varugrupp";
        return false;
    }

    //$(".slideUpDown").val() = "Dölj träffarna i denna varugrupp";

    if (_loading)
        return false;

    if (searchText.trim().length > 2) {
        _loading = true;
        //ClearAjaxDivElements(true, true);
        //alert($get(sender.id).innerHTML);

        var div = document.getElementById(_categoryID);
        Loading(div.id);
        ExecuteAjax(["searchExtended", false, "searchText", searchText, "categoryID", categoryID, "maxCount", 500, "headerText", categoryName, "showRefine", showRefine, "isCategorySearch", isCategorySearch, "groupResult", true], "SearchArticles", OnControlLoadedFromCategory, OnError);
    }

    return false;
}

function LoadSectionListFromCategory(categoryID) {
    _categoryID = categoryID;
    CreateBreadCrumb(_node, _categoryID);

    if ($("#" + _categoryID).is(":visible")) {
        $("#" + _categoryID).slideUp("slow");
        return false;
    }

    scroll(0, 0);
    var headerRow = $("#" + _categoryID + "Header").html();
    var resultRow = "<tr style='border: none;'><td colspan='4'><div id='" + _categoryID + "' class='categoryResult' style='display: none;' /></td></tr>";

    $("#" + _categoryID + "Header").remove();
    $(".categoryTable").prepend("<tr onmouseover='HandleOver(this);' onmouseout='HandleOut(this);' id='" + _categoryID + "Header'>" + headerRow + "</tr>" + resultRow);

    scroll(0, 0);

    //ClearAjaxDivElements(true, true);
    //scroll(0, 0);
    Loading(_categoryID);
    method = "LoadSectionList";

    //CreateBreadCrumb(_node, _categoryID);

    ExecuteAjax(["webSiteID", _webSiteID, "categoryID", _categoryID, "customerID", _customerID, "hideRefine", true], method, OnControlLoadedFromCategory, OnError);
    return false;
}

function SearchExtendedArticles(searchText, categoryID) {
    if (_loading)
        return false;
    if (searchText.trim().length > 2) {
        ClearAjaxDivElements(true, true);
        Loading('divAjaxContent');
        ExecuteAjax(["searchExtended", true, "searchText", searchText, "categoryID", categoryID, "maxCount", 500, "headerText", "Förfina din sökning med ytterligare sökord:", "showRefine", true, "groupResult", true], "SearchArticles", OnControlLoaded, OnError);
    }

    return false;
}

function SearchAllArticles(searchText, categoryID, maxCount) {

    return DoSearch(searchText, categoryID, maxCount, true, "Sök produkter:");

}

function DoSearch(searchText, categoryID, maxCount, groupResult, headerText) {
    if (_loading)
        return false;
    if (searchText.trim().length > 2 || categoryID > 0) {
        ClearAjaxDivElements(true, true);
        //document.getElementById('divAjaxContent').innerHTML = LOADING_IMAGE;
        Loading('divAjaxContent');
        scroll(0, 0);
        ExecuteAjax(["searchExtended", false, "searchText", searchText, "categoryID", categoryID, "maxCount", maxCount, "headerText", headerText, "groupResult", groupResult, "showRefine", true], "SearchArticles", OnControlLoaded, OnError);
    }
    return false;
}

function SearchAllArticlesFromTradeMark(searchText, categoryID, maxCount) {
    var title = searchText;
    var crumb = "<a style='cursor:pointer' onclick='return SearchAllArticles2(\"" + searchText + "\"," + categoryID + "," + 500 + ");'>" + title + "</a>";
    var divBreadCrumb = document.getElementById("divBreadCrumb");
    divBreadCrumb.innerHTML = "";  //crumb;
    return DoSearch(searchText, categoryID, maxCount, false, "Artiklar från " + title);
}

function SearchAllArticles2(searchText, categoryID, maxCount) {

    if (_loading)
        return false;
    ClearAjaxDivElements(true, true);
    //document.getElementById('divAjaxContent').innerHTML = LOADING_IMAGE;
    Loading('divAjaxContent');
    ExecuteAjax(["searchExtended", false, "searchText", searchText, "categoryID", categoryID, "maxCount", maxCount, "headerText", "Sök produkter:", "showRefine", true, "groupResult", true], "SearchArticles", OnControlLoaded, OnError);

    var title = "Sök";
    var crumb = "<a style='cursor:pointer' onclick='return SearchAllArticles2(\"" + searchText + "\"," + categoryID + "," + 500 + ");'>" + title + "</a>";
    var divBreadCrumb = document.getElementById("divBreadCrumb");
    divBreadCrumb.innerHTML = "";  //crumb;

    return false;
}

// Iterate through the cart and save all articles
function SaveWholeCart(tableID) {

    var articleNos = "";
    var quantitys = "";

    $('#' + tableID + ' TR').each(function () {
        var tr = $(this);
        var articleNo = "";
        var quantity;
        var idx = 0;
        tr.find('TD').each(function () {
            var col = $(this);
            if (idx == 0) {
                articleNo = col.text().trim();
            }
            if (idx == 4) {
                quantity = col.find('INPUT').val();
            }
            idx++
        });

        if (articleNo.length > 0 && IsNumeric(quantity)) {
            articleNos += articleNo + '_';
            quantitys += quantity + '_';
        }
    });

    UpdateCart(articleNos, quantitys)
    return false;
}
function AddToCart(sender, articleNo, quantity) {
    if (articleNo == null)
        return;
    if (_loading)
        return false;
    try {
        quantity = quantity.replace('.', ',');
    }
    catch (e)
{ }
    if (IsNumeric(quantity)) {
        if (_isFirstLoad == "1" && _webSiteID == 14) {
            _isFirstLoad = "0";
            DisableBackground();

            $("#divWebShopQuestion").centerInClient();
            $("#divWebShopQuestion").show();

            //_sender = sender;
            _articleNo = articleNo;
            _quantity = quantity;
            _first = false;
            //return;
        }

        _loading = true;

        var isCheckoutPage = document.getElementById("isCheckoutPage") != null;
        var isCartGridPage = document.getElementById("isCartGridPage") != null;

        if (sender != null) {
            $(sender).effect("transfer", { to: $("#divAjaxCart") }, 500, ExecuteAjax(["customerID", _customerID, "webSiteID", _webSiteID, "articleNo", articleNo, "quantity", quantity, "loadGrid", isCartGridPage, "loadCheckout", isCheckoutPage], "AddToCart", OnArticleAdded, OnError), OnError);
        }
        else
            ExecuteAjax(["customerID", _customerID, "webSiteID", _webSiteID, "articleNo", articleNo, "quantity", quantity, "loadGrid", isCartGridPage, "loadCheckout", isCheckoutPage], "AddToCart", OnArticleAdded, OnError);
    }
    else {
        alert("Välj antal artiklar!");
        return false;
    }
}



function GetCheckout3(txtFirstName, txtLastName, txtAddress, txtZipCode,
                    txtCity, txtEmail, txtEmail2, txtPhone, txtDelAddress,
                    txtDelZipCode, txtDelCity, txtCountry, chkSameAsInvoice) {

    if (_loading)
        return false;
    //alert(txtFirstName + " " + txtLastName  + txtAddress);
    var alert1 = "Epost-adressen är inte korrekt.";
    if (_webSiteID == 16)
        alert1 = "E-postadressen er ikke riktig.";

    var alert2 = "Epost-adresserna översstämmer inte.";
    if (_webSiteID == 16)
        alert2 = "E-postadresser ikke lik.";

    scroll(0, 0);
    //    if (!ValidateField(txtFirstName, "förnamn"))
    //        return false;
    if (!ValidateField(txtLastName, "efternamn")) {

        return false;

    }
    if (!ValidateField(txtAddress, "adress"))
        return false;
    if (!ValidateField(txtZipCode, "postnummer"))
        return false;
    if (!ValidateField(txtCity, "postort"))
        return false;
    if (!ValidateField(txtEmail, "e-post"))
        return false;

    if (txtEmail.indexOf("@") < 1) {
        alert(alert1);
        return false;
    }
    //    if (!ValidateField(txtPhone, "telefonnummer"))
    //        return false;
    if (txtEmail != txtEmail2) {
        alert(alert2);
        return false;
    }
    if (!chkSameAsInvoice) {
        if (!ValidateField(txtDelAddress, "leveransadress"))
            return false;
        if (!ValidateField(txtDelZipCode, "leverans-postnummer"))
            return false;
        if (!ValidateField(txtDelCity, "leverans-postort"))
            return false;
        //        if (!ValidateField(txtDelPhone, "leverans-telefonnummer"))
        //            return false;
    }
    else {
        if (txtDelAddress.length == 0)
            txtDelAddress = txtAddress;
        if (txtDelZipCode.length == 0)
            txtDelZipCode = txtZipCode;
        if (txtDelCity.length == 0)
            txtDelCity = txtCity;
    }
    ClearAjaxDivElements(true, true);

    //This should be a generic method
    Loading('divAjaxContent');

    ExecuteAjax(["customerID", _customerID,
   "firstName", txtFirstName, "lastName", txtLastName, "address", txtAddress,
   "zipCode", txtZipCode, "city", txtCity, "email", txtEmail, "phone", txtPhone,
   "delAddress", txtDelAddress, "delZipCode", txtDelZipCode, "delCity", txtDelCity
   , "country", txtCountry, "useInvAddress", chkSameAsInvoice],
   "GetCheckOut3", OnCheckout3Loaded, OnError);
    return false;
}

function BackToCheckout3() {
    if (_loading)
        return false;
    ExecuteAjax([], "BackToCheckOut3", OnCheckout3Loaded, OnError);
    return false;
}


function GetCheckout4(paymentDropDown, postDropDown) {
    if (_loading)
        return false;

    var error = $("#error").html();
    //    if (error)
    //    {
    //        alert(error)
    //        return false;
    //    }

    //   //Get shipping price text from CheckoutCart.ascx, in will get parsed in the service
    var shippingPrice = $('.hiddenFreightPrice').val().replace(',', '.');

    if (shippingPrice == "")
        shippingPrice = 0;

    if (postDropDown.val() == "0") {
        alert("Velg leveringsaltenativ!");
        return;
    }
    var isCardPayment = paymentDropDown.val() == "1";

    var shipItems = postDropDown.val() == "1";
    ExecuteAjax(["customerID", _customerID, "isCardPayment", isCardPayment, "shipItems", shipItems, "shippingPrice", shippingPrice], "CreateOrder", OnCheckout4Loaded, OnError);

}
//Order has been created
function OnOrderCreated(data) {

    if (data.d == "ERROR") {
        _loading = false;
        alert("Något gick fel!");
    }
    else {

        LoadCart();
        OnControlLoaded(data);

    }
}



function ValidateField(value, field) {
    if (value.length == 0) {
        alert("Du måste ange " + field + ".");
        return false;
    }
    else
        return true;
}
//Gets the cart grid, the loadQuickSearch should be loaded the first time, not when something is addeto
//cart from the quicksearch
function GetCart(loadQuickSearch) {


    ClearAjaxDivElements(true, loadQuickSearch);
    scroll(0, 0);
    Loading("divAjaxContent");

    if (loadQuickSearch)
        ExecuteAjax(["customerID", _customerID, "searchText", ""], "LoadCartGridSearch", OnTopControlLoaded, OnError);

    ExecuteAjax(["customerID", _customerID, "webSiteID", _webSiteID], "LoadGridCart", OnControlLoaded, OnError);

    //title = "Kundvagnen";
    //    var crumb = "<a style='cursor:pointer' onclick='return GetCart(\"" + _customerID + "\"," + loadQuickSearch + ");'>" + title + "</a>";
    //    var divBreadCrumb = document.getElementById("divBreadCrumb");
    //    divBreadCrumb.innerHTML =  crumb;

    return false;
}

function SearchByArticleNo(searchText) {
    if (_loading)
        return false;

    ExecuteAjax(["customerID", _customerID, "searchText", searchText], "LoadCartGridSearch", OnTopControlLoaded, OnError);
    return false;
}
function PrintArticle(articleNo) {
    window.open('/PrintArticle.aspx?ArticleNo=' + articleNo, 'printWindow', 'status=0, toolbar=0, resizable=0, width = 700, height = 730'); return false;
}


function ShowEmailFriend() {

    //  ExecuteAjax(["customerID", _customerID, "searchText", searchText], "LoadCartGridSearch", OnTopControlLoaded, OnError);
    $('#divThankYou').html("");
    $('#divEMailFriend').slideToggle();
    return false;
}
function EmailFriend(articleNo, from, toEmail, message, fromEmail) {

    if (from.trim().length < 2) {
        alert("Ange ditt namn");
        return;

    }
    if (toEmail.indexOf("@") < 2 || toEmail.indexOf(".") < 1) {
        alert("Ange mottagarens epost-adress");
        return;
    }
    ExecuteAjax(["articleNo", articleNo, "from", from, "toEmail", toEmail, "message", message, "fromEmail", fromEmail, "webSiteID", _webSiteID], "EmailFriend", OnEmailSent, OnError);
    $('#divThankYou').html("Skickar...");
    $('#divEMailFriend').hide();
    return false;
}
function OnEmailSent(articleNo, fromEmail) {
    $('#divThankYou').html("Meddelandet har skickats!");
    return false;
}

function GetCheckout() {
    //return GetCheckout2();
    if (_loading)
        return false;

    ClearAjaxDivElements(true, true);
    scroll(0, 0);
    //This should be a generic method

    Loading("divAjaxContent");
    document.getElementById("divBreadCrumb").innerHTML = '';

    ExecuteAjax([], "GetCheckout1", OnCheckout1Loaded, OnError);
    return false;
}

function GetCheckout2(accepted) {

    if (_loading)
        return false;

    ClearAjaxDivElements(true, true);
    scroll(0, 0);
    //This should be a generic method

    Loading("divAjaxContent");

    if (accepted)
        ExecuteAjax(["customerID", _customerID], "GetCheckout2", OnCheckout2Loaded2, OnError);
    else
        ExecuteAjax(["customerID", _customerID], "GetCheckout2", OnCheckout2Loaded, OnError);
    return false;
}



function OnCheckout1Loaded(data) {
    $('#divAjaxContent').html(data.d);
    if (typeof sIFR == "function") {
        // This is the preferred "named argument" syntax
        sIFR.replaceElement("h1", named({ sFlashSrc: "sIFR/SeaSea_sifr.swf", sColor: "#333333", sWmode: "transparent" }));
    };
    _loading = false;
}

function OnCheckout2Loaded2(data) {
    OnCheckout2Loaded(data);
    $("#chkTerms").attr("checked", true);
    $(".nextButton").show();
}

function OnCheckout2Loaded(data) {
    //alert("OnCheckout2Loaded");

    document.getElementById('divAjaxContent').innerHTML = data.d[0];
    document.getElementById('txtFirstName').value = data.d[1];
    document.getElementById('txtLastName').value = data.d[2];
    document.getElementById('txtAddress').value = data.d[3];
    document.getElementById('txtZipCode').value = data.d[4];
    document.getElementById('txtCity').value = data.d[5];
    document.getElementById('txtEmail').value = data.d[6];
    document.getElementById('txtEmail2').value = data.d[6];
    document.getElementById('txtPhone').value = data.d[7];
    document.getElementById('txtDelAddress').value = data.d[8];
    document.getElementById('txtDelZipCode').value = data.d[9];
    document.getElementById('txtDelCity').value = data.d[10];
    document.getElementById('txtCountry').value = data.d[11];

    if (data.d[12] == "1" || data.d[12] == "2")
        document.getElementById('divShippingType').style.display = "none";
    if (data.d[12] != "2")
        document.getElementById('divGetfromStoreOnly').style.display = "none";

    ToggleCart(false);
    _loading = false;

    //    $("#divCheckout :a").attr("disabled", "disabled");
    //  $("#divCheckout :href").attr("disabled", "disabled");
    //$("#divCheckout").hide();

    //    $("#divAjaxCart :a").each(function() {
    //        alert($(this).html());
    //        $(this).attr("disabled", "disabled");
    //    });

    //    $("#divAjaxCart :href").each(function() {
    //        alert($(this).html());
    //        $(this).attr("disabled", "disabled");
    //    });
    //        
    //$("#divAjaxCart :href").attr("disabled", "disabled");

    //var title = "Kassan";
    //var crumb = "<a style='cursor:pointer' onclick='return GetCheckout(\"" + _customerID + "\");'>" + title + "</a>";
    //var divBreadCrumb = document.getElementById("divBreadCrumb");
    //divBreadCrumb.innerHTML = crumb;

    if (typeof sIFR == "function") {
        // This is the preferred "named argument" syntax
        sIFR.replaceElement("h1", named({ sFlashSrc: "sIFR/SeaSea_sifr.swf", sColor: "#333333", sWmode: "transparent" }));
        sIFR.replaceElement("h2", named({ sFlashSrc: "sIFR/SeaSea_sifr.swf", sColor: "#333333", sWmode: "transparent" }));
        sIFR.replaceElement("h3", named({ sFlashSrc: "sIFR/SeaSea_sifr.swf", sColor: "#333333", sWmode: "transparent" }));
    };

    GetCheckoutCart(false, false);
    _loading = false;

}

function GetCheckoutCart(shipItems, isCOD) {
    //javascript: __doPostBack('ctl00$nextButton', '')
    _loading = true;
    Loading("divAjaxCheckoutCart");

    ExecuteAjax(["shipItems", shipItems, "customerID", _customerID, "isCOD", isCOD], "GetCheckoutCart", OnCheckoutCartLoaded, OnError);

}

function OnCheckoutCartLoaded(data) {
    $("#divAjaxCheckoutCart").html("");
    $('#divAjaxCheckoutCart').html(data.d);
    _loading = false;
}

function OnCheckout3Loaded(data) {
    $('#divAjaxContent').html(data.d);

    if (typeof sIFR == "function") {
        // This is the preferred "named argument" syntax
        sIFR.replaceElement("h1", named({ sFlashSrc: "sIFR/SeaSea_sifr.swf", sColor: "#333333", sWmode: "transparent" }));
        sIFR.replaceElement("h2", named({ sFlashSrc: "sIFR/SeaSea_sifr.swf", sColor: "#333333", sWmode: "transparent" }));
        sIFR.replaceElement("h3", named({ sFlashSrc: "sIFR/SeaSea_sifr.swf", sColor: "#333333", sWmode: "transparent" }));
    };
}

function OnCheckout4Loaded(data) {
    if (data.d.indexOf('PayForm.aspx') > -1)
        location.href = data.d;

    $('#divAjaxContent').html(data.d);

    if (typeof sIFR == "function") {
        // This is the preferred "named argument" syntax
        sIFR.replaceElement("h1", named({ sFlashSrc: "sIFR/SeaSea_sifr.swf", sColor: "#333333", sWmode: "transparent" }));
        sIFR.replaceElement("h2", named({ sFlashSrc: "sIFR/SeaSea_sifr.swf", sColor: "#333333", sWmode: "transparent" }));
        sIFR.replaceElement("h3", named({ sFlashSrc: "sIFR/SeaSea_sifr.swf", sColor: "#333333", sWmode: "transparent" }));
    };
}

function OnCheckoutAcceptChange(sender) {

    if ($(sender).attr('checked')) {

        $("#divCheckout :a").attr("disabled", false);
        $("#divCheckout :href").attr("disabled", false);
    }
    else {
        $("#divCheckout :a").attr("disabled", true);
        $("#divCheckout :href").attr("disabled", true);
    }
}
function ToggleCart(enable) {

    if (document.getElementById("hiddenCustomerHasNoArtices") != null)
        enable = false;

    $("#divAjaxCart :input").attr("disabled", !enable);
    $("#divAjaxCart :a").attr("disabled", !enable);
    $("#divAjaxCart :href").attr("disabled", !enable);
    //    $("#divAjaxCart :input").attr("disabled", "disabled");
    //    $("#divAjaxCart :a").attr("disabled", "disabled");
    //    $("#divAjaxCart :href").attr("disabled", "disabled");

    //if (enable) {
    //  $("#ajaxDisable").hide();
    //}
    //else{
    //$("#ajaxDisable").css("height", $("#divAjaxCart").css("height"));
    //$("#ajaxDisable").css("width", $("#divAjaxCart").css("width"));
    //$("#ajaxDisable").css("position", "absolute");
    //$("#ajaxDisable").css("top", $("#divAjaxCart").css("top"));        
    //$("#ajaxDisable").css("left", $("#divAjaxCart").css("left"));

    //$("#ajaxDisable").css("opacity", "0.1");

    //$("#ajaxDisable").show();
    //}
}

function UpdateCart(articleNo, quantity) {
    if (_loading)
        return false;
    try {
        quantity = quantity.replace('.', ',');
    }
    catch (e) { }
    var hasMany = !IsNumeric(quantity) && quantity.indexOf('_') > 0;
    if (IsNumeric(quantity) || hasMany) {
        ToggleCart(false);
        var isCheckoutPage = document.getElementById("isCheckoutPage") != null;
        var isCartGridPage = document.getElementById("isCartGridPage") != null;
        ExecuteAjax(["customerID", _customerID, "webSiteID", _webSiteID, "articleNo", articleNo, "quantity", quantity, "loadGrid", isCartGridPage, "loadCheckout", isCheckoutPage], "UpdateCart", OnDocumentUpdated, OnError);
    }

}


function ClearCart() {

    if (_loading)
        return false;

    var text = "Ta bort alla artiklar?";
    if (_webSiteID == 16)
        text = "Fjern alle varer?";

    if (confirm(text)) {
        ToggleCart(false);
        var isCheckoutPage = document.getElementById("isCheckoutPage") != null;
        var isCartGridPage = document.getElementById("isCartGridPage") != null;
        ExecuteAjax(["customerID", _customerID, "webSiteID", _webSiteID, "loadGrid", isCartGridPage, "loadCheckout", isCheckoutPage], "ClearCart", OnDocumentUpdated, OnError);
    }
}

function OnDocumentUpdated(data) {

    $("#ajaxDisable").hide();
    if (data.d[0] != null) {
        var smallCart = document.getElementById('divAjaxCart');
        if (smallCart != null) {
            smallCart.innerHTML = data.d[0];
            var cartHeight = $("#divAjaxCart").height();
            var cartTop = $("#divAjaxCart").css("top");
            var nTop = cartTop.substring(0, cartTop.length - 2);
            var top = (cartHeight + parseInt(nTop) + 10) + "px";
            $(".divDynamicBoxes").css("top", top);
            ToggleCart(true);
            if (typeof sIFR == "function") {
                sIFR.replaceElement("h3", named({ sFlashSrc: "sIFR/SeaSea_sifr.swf", sColor: "#333333", sWmode: "transparent", sBgColor: "yellow" }));
            }

            $(".divDynamicBoxes").show();
        }
    }

    if (data.d[1] != null && data.d[1].length > 0) {

        var cartGrid = document.getElementById('divAjaxContent');
        if (cartGrid != null)
            cartGrid.innerHTML = data.d[1];

    }
    _loading = false;
}

// Do onthing with result
function OnOk(data) {
    _loading = false;
}

function ShakeCart() {
    $("#divAjaxCart").effect("shake", { times: 1, direction: "up" }, 300);
}

function OnError(xhr, ajaxOptions, thrownError) {
    _loading = false;
    if (badBrowser() == false)
        $("#ajaxDisable").hide();
    alert("Något gick fel:" + xhr.status + " " + xhr.responseText);
}
function IsNumeric(sText) {
    var ValidChars = "0123456789,";
    var IsNumber = true;
    var Char;

    if (sText.length == 0)
        return false;

    for (i = 0; i < sText.length && IsNumber == true; i++) {
        Char = sText.charAt(i);
        if (ValidChars.indexOf(Char) == -1) {
            IsNumber = false;
        }
    }
    return IsNumber;

}

function flickrCart() {
    $("#divAjaxCart").slideUp();
    $("#divAjaxCart").slideDown();
}

function ClearAjaxDivElements(clearStrd, clearTop) {
    var items = $(".ajaxDiv");
    var i;
    for (i = 0; i < items.length; i++) {
        if (clearStrd == true || items[i].id != "divContentPlaceHolder")
            items[i].innerHTML = "";
    }
    if (clearTop) {
        $("#divAjaxTopContent").html("");

    }

}
var _node;
//treeview

function PriceGuaranteeMenuClicked(sender, eventArgs) {
    if (_loading)
        return false;
    var divBreadCrumb = document.getElementById("divBreadCrumb");
    var menuItem = eventArgs.get_item();
    var parent = menuItem.get_parent();
    scroll(0, 0);
    if (parent.get_parent() != null) {
        if (parent.get_text().toLowerCase() == "prisgaranti" || parent.get_text().toLowerCase() == "beste pris") {
            var pid = menuItem.get_value();
            var title = menuItem.get_text();
            _loading = true;
            ClearAjaxDivElements(true, true);
            Loading('divAjaxContent');

            var crumb = "<a style='cursor:pointer' onclick='return GetPriceGuranteeList(" + pid + ");'>Prisgaranterade " + title + "</a> > ";
            divBreadCrumb.innerHTML = '';
            ExecuteAjax(["webSiteID", _webSiteID, "languageID", _languageID, "pid", pid, "customerID", _customerID], "LoadPriceGuaranteeList", OnPriceGuaranteeListLoaded, OnError);
        }
        else {
            divBreadCrumb.innerHTML = '';
            _loading = true;
            ClearAjaxDivElements(true, true);
            Loading('divAjaxContent');
            ExecuteAjax(["pageID", menuItem.get_value()], "GetContentPage", OnPriceGuaranteeListLoaded, OnError);
        }
    }
    else {

        if (menuItem.get_text().toLowerCase() != "prisgaranti" && menuItem.get_text().toLowerCase() != "beste pris") {
            divBreadCrumb.innerHTML = '';
            _loading = true;
            ClearAjaxDivElements(true, true);
            Loading('divAjaxContent');
            ExecuteAjax(["pageID", menuItem.get_value()], "GetContentPage", OnPriceGuaranteeListLoaded, OnError);
        }
    }
}
function OnPriceGuaranteeListLoaded(data) {
    //SearchAllArticles("", _categoryID, 20);
    var divSection = document.getElementById('divAjaxContent');

    if (divSection != null)
        divSection.innerHTML = data.d;

    var searchBoxSections = $("#sectionSearchTextBox");
    if (searchBoxSections != null) {
        searchBoxSections.focus();
    }

    if (typeof sIFR == "function") {
        // This is the preferred "named argument" syntax
        sIFR.replaceElement("h1", named({ sFlashSrc: "sIFR/SeaSea_sifr.swf", sColor: "#950000", sWmode: "transparent" }));
        sIFR.replaceElement("h2", named({ sFlashSrc: "sIFR/SeaSea_sifr.swf", sColor: "#333333", sWmode: "transparent" }));
    };

    ToggleCart(true);
    _loading = false;
}

function OnClientNodeExpanded(sender, eventArgs) {
    return OnTreeNodeClicked(sender, eventArgs);
}

function OnTreeNodeClicked(sender, eventArgs) {
    if (_loading)
        return false;

    try {
        eventArgs.set_cancel(true);

    }
    catch (x) { }
    treeCollapseAllNodes(sender);
    var node = eventArgs.get_node();
    var ul = node.get_childListElement();
    if (ul != null) {
        ul.style.background = "#E8E8E8";

        //ul.style.border = "solid 1px red";
    }

    _loading = true;

    scroll(0, 0);
    _node = eventArgs.get_node();

    _categoryID = _node.get_category();
    ClearAjaxDivElements(true, true);
    scroll(0, 0);
    Loading('divAjaxContent');
    var divBreadCrumb = document.getElementById("divBreadCrumb");

    var isLowest = _node._getChildren().get_count() == 0;

    if (divBreadCrumb != null) {
        CreateBreadCrumb(_node, _categoryID);
    }

    if (isLowest)
        ExecuteAjax(["webSiteID", _webSiteID, "categoryID", _categoryID, "customerID", _customerID], "LoadSectionList", OnSectionLoaded, OnError);
    else
        ExecuteAjax(["webSiteID", _webSiteID, "categoryID", _categoryID, "customerID", _customerID, "breadCrumb", _nodePath], "LoadAList", OnSectionLoaded, OnError);


    treeExpandAllNodes(node);


    return false;
}
function treeExpandAllNodes(node) {

    while (node.get_parent() != null) {


        if (node.get_parent() == node.get_treeView())
            break;
        else
            node = node.get_parent();
    }
    node.expand();
    var nodes = node.get_nodes();

    for (var i = 0; i < nodes.get_count(); i++) {
        nodes.getItem(i).expand();
    }

}
function treeCollapseAllNodes(treeView) {

    var nodes = treeView.get_allNodes();

    for (var i = 0; i < nodes.length; i++) {
        if (nodes[i].get_nodes() != null) {
            nodes[i].collapse();
        }
    }
}

//treeview
function LoadSectionList(categoryID, isLowest) {
    scroll(0, 0);
    var item = $(".divServerBreadCrumb");
    item.html("");
    _categoryID = categoryID;
    ClearAjaxDivElements(true, true);
    scroll(0, 0);
    Loading('divAjaxContent');
    CreateBreadCrumb(_node, _categoryID);
    if (isLowest)
        ExecuteAjax(["webSiteID", _webSiteID, "categoryID", _categoryID, "customerID", _customerID, ], "LoadSectionList", OnSectionLoaded, OnError);
    else
        ExecuteAjax(["webSiteID", _webSiteID, "categoryID", _categoryID, "customerID", _customerID, "breadCrumb", _nodePath], "LoadAList", OnSectionLoaded, OnError);





}
function CreateBreadCrumb(node, categoryID) {
    //alert('CreateBreadCrumb');
    if (node == null)
        return;
    var divBreadCrumb = document.getElementById("divBreadCrumb");
    var crumb = "";
    _nodePath = ''
    while (node.get_parent() != null) {

        if (node.get_category() <= categoryID) {
            var isLowest = node._getChildren().get_count() == 0;
            var path = node.get_text();
            _nodePath = path + ">" + _nodePath;
            crumb = "<a style='cursor:pointer' onclick='return LoadSectionList(" + node.get_category() + "," + isLowest + ");'>" + path + "</a> > " + crumb;
        }
        node = node.get_parent();
    }
    var startText = "Du är här: ";
    if (_webSiteID == 16)
        startText = "Du er her: ";
    divBreadCrumb.innerHTML = startText + crumb.substring(0, crumb.length - 2);
}


function SetBreadCrumb(title, link) {
    var divBreadCrumb = document.getElementById("divBreadCrumb");
    divBreadCrumb.innerHTML = "<a href = '" + link + "'>" + title + "</a>";
}
function OnBreadCrumbNodeClicked(category) {

}
function OnSectionLoaded(data) {
    //SearchAllArticles("", _categoryID, 20);
    var divSection = document.getElementById('divAjaxContent');

    if (divSection != null) {
        divSection.innerHTML = data.d;

        if (typeof sIFR == "function") {
            // This is the preferred "named argument" syntax
            sIFR.replaceElement("h1", named({ sFlashSrc: "sIFR/SeaSea_sifr.swf", sColor: "#950000", sWmode: "transparent" }));
            sIFR.replaceElement("h2", named({ sFlashSrc: "sIFR/SeaSea_sifr.swf", sColor: "#333333", sWmode: "transparent" }));
            //sIFR.replaceElement("h3", named({ sFlashSrc: "sIFR/SeaSea_sifr.swf", sColor: "#333333", sWmode: "transparent" }));
        };
    }

    var searchBoxSections = $("#sectionSearchTextBox");

    if (searchBoxSections != null) {
        searchBoxSections.focus();
    }
    ToggleCart(true);
    _loading = false;
}
var _isPopup = false;
function ShowSectionImages(sender, sectionID, isPopup) {
    _isPopup = isPopup;
    var pos = $(sender).offset();
    var width = $(sender).width();
    var height = $(sender).height();
    //alert(pos.left);
    //alert(pos.top);
    //show the menu directly over the placeholder

    var item;
    if (_isPopup) {
        item = $("#divPopupSectionImages");
        item.css({ "left": (90) + "px", "top": 200 + "px" });
    }
    else {
        item = $("#divSectionImages");
        item.css({ "left": (pos.left + width) + "px", "top": (pos.top - 160) + "px" });
    }


    item.css({ "background-color": "#FFFFFF" });
    ExecuteAjax(["sectionID", sectionID], "GetSectionImages", OnSectionImagesLoaded, OnError);

}

function HideSectionImages() {
    var item;
    if (_isPopup)
        item = $("#divPopupSectionImages");
    else
        item = $("#divSectionImages");

    item.html('');
    item.hide();
}

function OnSectionImagesLoaded(data) {
    var item;
    if (_isPopup)
        item = $("#divPopupSectionImages");
    else
        item = $("#divSectionImages");

    item.html(data.d);
    item.show();
    item.css("border", "solid 1px #C4C4C4");
}


function OnControlLoaded(data) {
    var divSection = document.getElementById('divAjaxContent');

    if (divSection != null) {
        divSection.innerHTML = data.d;

        if (typeof sIFR == "function") {
            // This is the preferred "named argument" syntax
            //sIFR.replaceElement("h1", named({ sFlashSrc: "sIFR/SeaSea_sifr.swf", sColor: "#950000", sWmode: "transparent" }));
            sIFR.replaceElement("h2", named({ sFlashSrc: "sIFR/SeaSea_sifr.swf", sColor: "#333333", sWmode: "transparent" }));
            //sIFR.replaceElement("h3", named({ sFlashSrc: "sIFR/SeaSea_sifr.swf", sColor: "#333333", sWmode: "transparent" }));
        };
    }

    var searchBox = document.getElementById("searchTextBoxGrid");
    if (searchBox != null) {
        $("#searchTextBoxGrid").autocomplete('AutoCompleteHandler.ashx');
        $("#searchTextBoxGrid").focus();
    }
    ToggleCart(true);
    _loading = false;


}
function OnTopControlLoaded(data) {
    var divSection = document.getElementById('divAjaxTopContent');

    if (divSection != null) {
        divSection.innerHTML = data.d;

        if (typeof sIFR == "function") {
            // This is the preferred "named argument" syntax
            //sIFR.replaceElement("h1", named({ sFlashSrc: "sIFR/SeaSea_sifr.swf", sColor: "#950000", sWmode: "transparent" }));
            sIFR.replaceElement("h2", named({ sFlashSrc: "sIFR/SeaSea_sifr.swf", sColor: "#333333", sWmode: "transparent" }));
            //sIFR.replaceElement("h3", named({ sFlashSrc: "sIFR/SeaSea_sifr.swf", sColor: "#333333", sWmode: "transparent" }));
        };
    }

    var searchBox = document.getElementById('quickSearchTextBox');
    if (searchBox != null) {
        $("#quickSearchTextBox").autocomplete('ArticleNoHandler.ashx');
        $("#quickSearchTextBox").focus();
    }
    _loading = false;
}

function OnControlLoadedFromCategory(data) {
    //alert("OnControlLoadedFromCategory");
    $(".categoryResult").not("#" + _categoryID).slideUp("slow");
    var div = document.getElementById(_categoryID);
    div.innerHTML = data.d;
    $("#" + _categoryID).slideDown("slow");

    if (typeof sIFR == "function") {
        // This is the preferred "named argument" syntax
        //sIFR.replaceElement("h1", named({ sFlashSrc: "sIFR/SeaSea_sifr.swf", sColor: "#950000", sWmode: "transparent" }));
        //sIFR.replaceElement("h2", named({ sFlashSrc: "sIFR/SeaSea_sifr.swf", sColor: "#333333", sWmode: "transparent" }));
        //sIFR.replaceElement("h3", named({ sFlashSrc: "sIFR/SeaSea_sifr.swf", sColor: "#333333", sWmode: "transparent" }));
    };

    ToggleCart(true);
    _loading = false;
}

function LoadPage(isRetailer, id, title) {
    title = title.trim();
    Loading("divAjaxContent");
    if (isRetailer)
        ExecuteAjax(["pageID", id], "GetRetailerPage", OnControlLoaded, OnError);
    else
        ExecuteAjax(["pageID", id], "GetContentPage", OnControlLoaded, OnError);

    var crumb = "<a style='cursor:pointer' onclick='return LoadPage(" + isRetailer + "," + id + ",\"" + title + "\");'>" + title + "</a>";
    var divBreadCrumb = document.getElementById("divBreadCrumb");
    divBreadCrumb.innerHTML = crumb;
}
function ShowArticleInSection(articleNo) {
    Loading('divAjaxArticle');
    document.getElementById("divAjaxArticle").innerHTML = "";
    _articleNo = articleNo;
    ExecuteAjax(["articleNo", articleNo, "customerID", _customerID], "GetArticle", OnArticleLoaded, OnError);
    return false;
}

function GetArticle(articleNo, notWindow) {
    _articleNo = articleNo;

    ExecuteAjax(["articleNo", articleNo, "customerID", _customerID, "notWindow", notWindow], "GetArticle", OnArticlePageLoaded, OnError);
}
function GetArticleWithoutRelatedArticles(articleNo, notWindow) {
    _articleNo = articleNo;
    ExecuteAjax(["articleNo", articleNo, "customerID", -1, "notWindow", notWindow], "GetArticle", OnArticlePrintPageLoaded, OnError);
}

function GetRandomCampaigns(articleNo) {
    Loading('divAjax');
    ExecuteAjax([], "GetRandomCampaigns", OnArticlePageLoaded, OnError);
}


function GetEngineSearchPage() {
    ClearAjaxDivElements(true, true);
    scroll(0, 0);
    Loading('divAjaxTopContent');
    ExecuteAjax(["customerID", _customerID], "GetEngineSearchPage", OnTopControlLoaded, OnError);

    var title = "Marinmotorsök";
    var crumb = "<a style='cursor:pointer' onclick='return GetEngineSearchPage();'>" + title + "</a>";
    var divBreadCrumb = document.getElementById("divBreadCrumb");
    divBreadCrumb.innerHTML = crumb;

    return false;
}
function BindSectionDropDown(drpCategory) {

    ExecuteAjax(["categoryID", drpCategory.value], "GetSectionsByCategory", OnEngineSectionsLoaded, OnError);
}
function OnEngineSectionsLoaded(data) {
    var i;
    var key = 0;
    var result = data.d;

    var drp = $("#ctl00_drpSection");
    drp.html(""); // Clear the dropdown
    $("<option value='0'>Välj modell</option>").appendTo(drp);
    //Add new values
    for (i = 0; i < result.length; i += 2) {
        $("<option value='" + result[i] + "'>" + result[i + 1] + "</option>").appendTo(drp);
    }
    drp.val(0);
    _loading = false;
}
function SearchEngines(drpSection) {

    //Here we dont clear the divAjaxTopControl, it contains the dropdowns
    ClearAjaxDivElements(true, false);
    Loading('divAjaxContent');
    var sectionID = drpSection.value;
    if (sectionID != "0") {
        ExecuteAjax(["sectionID", sectionID], "GetSection", OnControlLoaded, OnError);
    }
}
function Loading(div) {
    var divAjaxArticle = document.getElementById(div);
    if (divAjaxArticle != null) {
        divAjaxArticle.style.display = "block";
        divAjaxArticle.innerHTML += LOADING_IMAGE;
    }
}

function HideArticle() {
    articleDiv.hide();
    $("#ajaxDisable").hide();
    //$(".RadMenu_Default").show();
    return false;
}

function OnArticleLoaded(data) {
    var divAjaxArticle = $("#divAjaxArticle");
    if (divAjaxArticle != null) {
        $("#divAjaxArticle").html(data.d);

        var popupHeight = $("#divAjaxArticle").height();
        var popupWidth = $("#divAjaxArticle").width();

        //var menu = $find(_menuID);
        //var menuItem = menu.findItemByText("ANNONSER");
        //menuItem.hide();

        //        $("#divAjaxArticle").scrollFollow({
        //            speed: 2000,
        //            offset: 300
        //        });

        articleDiv.show();

        $("#divAjaxArticle").centerInClient();
        $("#divAjaxArticle").css("border", "solid 3px #EEEEEE");
        DisableBackground();
        $("#articleQuantityTextBox").focus();

    }
    if (typeof sIFR == "function") {
        // This is the preferred "named argument" syntax
        sIFR.replaceElement("h1", named({ sFlashSrc: "sIFR/SeaSea_sifr.swf", sColor: "#950000", sWmode: "transparent" }));
        sIFR.replaceElement("h2", named({ sFlashSrc: "sIFR/SeaSea_sifr.swf", sColor: "#333333", sWmode: "transparent" }));
        sIFR.replaceElement("h3", named({ sFlashSrc: "sIFR/SeaSea_sifr.swf", sColor: "#333333", sWmode: "transparent" }));
    };

    _loading = false;
}

function DisableBackground() {
    if (badBrowser() == false) {
        var windowWidth = document.documentElement.clientWidth;
        var windowHeight = document.documentElement.clientHeight;

        $("#ajaxDisable").css({
            "top": 0,
            "left": 0,
            "height": windowHeight,
            "width": windowWidth,
            "position": 'fixed',
            "_position": 'absolute',
            "opacity": 0.5,
            "z-index": 999999
        });
        $("#ajaxDisable").show();
    }
}

function badBrowser() {
    if ($.browser.msie && parseInt($.browser.version) <= 6)
    { return true; }
    return false;
}

function OnArticlePageLoaded(data) {
    var divAjaxArticle = document.getElementById('divAjax');
    if (divAjaxArticle != null) {
        divAjaxArticle.innerHTML = data.d;

        //SetBreadCrumb("Startsidan", "Start.aspx");
        //var item = articleDiv.show();
        //showdeadcenterdiv(800, 800, item);
    }

    if (typeof sIFR == "function") {
        // This is the preferred "named argument" syntax
        sIFR.replaceElement("h1", named({ sFlashSrc: "sIFR/SeaSea_sifr.swf", sColor: "#950000", sWmode: "transparent" }));
        sIFR.replaceElement("h2", named({ sFlashSrc: "sIFR/SeaSea_sifr.swf", sColor: "#333333", sWmode: "transparent" }));
    };

    _loading = false;
}

function OnArticlePrintPageLoaded(data) {
    var divAjaxArticle = document.getElementById('divAjax');
    if (divAjaxArticle != null) {
        divAjaxArticle.innerHTML = data.d;

        //SetBreadCrumb("Startsidan", "Start.aspx");
        //var item = articleDiv.show();
        //showdeadcenterdiv(800, 800, item);
    }

    // no Sifr in print
    //if (typeof sIFR == "function") {
    // This is the preferred "named argument" syntax
    //sIFR.replaceElement("h1", named({ sFlashSrc: "sIFR/SeaSea_sifr.swf", sColor: "#950000", sWmode: "transparent" }));
    //sIFR.replaceElement("h2", named({ sFlashSrc: "sIFR/SeaSea_sifr.swf", sColor: "#333333", sWmode: "transparent" }));
    //};

    _loading = false;
    window.print();
}


function OnArticleAdded(data) {

    if (data.d[0] != null) {
        var smallCart = document.getElementById('divAjaxCart');

        if (smallCart != null) {
            smallCart.innerHTML = data.d[0];
            var cartHeight = $("#divAjaxCart").height();
            var cartTop = $("#divAjaxCart").css("top");
            var nTop = cartTop.substring(0, cartTop.length - 2);
            var top = (cartHeight + parseInt(nTop) + 10) + "px";
            $(".divDynamicBoxes").css("top", top);
            ShakeCart();
        }

        //        if (smallCart != null) {
        //            smallCart.innerHTML = data.d[0];
        //            var cartHeight = $("#divAjaxCart").height() + "px";
        //            ShakeCart();
        //            cartHeight = "-100px";
        //            //$("#divGridHeader2").css("margin-top", cartHeight , ShakeCart(), OnError);
        //        }
    }


    _loading = false;
}


function JoinSeaMail(txtEmail, txtFirstName, txtLastName, txtAddress, txtZipCode, txtCity, txtPhone, txtMobile,
                    drpCountry, drpRegion, drpStore, drpBoatType, drpSize) {

    if (!ValidateField(txtEmail, "E-Post"))
        return false;
    if (txtEmail.indexOf("@") < 1) { // || txtEmail.indexOf(".") < 3) {
        alert("Epost-adressen är inte korrekt.");
        return false;
        if (!ValidateField(txtFirstName, "förnamn"))
            return false;
        if (!ValidateField(txtLastName, "efternamn"))
            return false;

    }
    ExecuteAjax(["email", txtEmail, "firstName", txtFirstName, "lastName", txtLastName, "address", txtAddress,
        "zipCode", txtZipCode, "city", txtCity, "phone", txtPhone, "mobile", txtMobile,
        "country", drpCountry, "region", drpRegion, "store", drpStore, "boatType", drpBoatType, "size", drpSize, "webSiteID", _webSiteID],
        "JoinSeaMail", OnSeaMailJoined, OnError);
    return false;
}

function OnSeaMailJoined(data) {

    $("#divJoinSeaMail").hide();
    $("#divJoinSeaMailConfirm").centerInClient();
    $("#divJoinSeaMailConfirm").show();

}

function ShowJoinSeaMailFormInPage() {

    Loading("divAjax");
    ExecuteAjax(["webSiteID", _webSiteID, "languageID", _languageID, "showInPage", true], "GetJoinSeaMailForm", OnJoinSeaMailInPageLoaded, OnError);
}

function ShowJoinSeaMailForm() {

    ExecuteAjax(["webSiteID", _webSiteID, "languageID", _languageID, "showInPage", false], "GetJoinSeaMailForm", OnJoinSeaMailLoaded, OnError);
}

function OnJoinSeaMailInPageLoaded(data) {
    $("#divAjax").html(data.d);
}
function OnJoinSeaMailLoaded(data) {
    DisableBackground();
    $("#divJoinSeaMail").centerInClient();
    $("#divJoinSeaMail").html(data.d);
    $("#divJoinSeaMail").show();
}


function HideJoinSeaMailForm() {
    $("#divJoinSeaMail").hide();
    $("#divJoinSeaMailConfirm").hide();
    if (badBrowser() == false)
        $("#ajaxDisable").hide();
}
var articleDiv = function () {
    var id2 = 'tt2';
    var top = 3;
    var left = 3;
    var maxw = 600;
    var speed = 25;
    var timer = 20;
    var endalpha = 100;
    var alpha = 0;
    var tt2, h;
    var ie = document.all ? true : false;
    return {
        show: function () {
            if (tt2 == null) {
                tt2 = $get("divAjaxArticle");
                tt2.style.opacity = 0;
                tt2.style.filter = 'alpha(opacity=0)';
            }
            tt2.style.display = 'block';
            tt2.style.visibility = 'visible';
            speed = 20;
            h = parseInt(tt2.offsetHeight) + top;
            clearInterval(tt2.timer);
            tt2.timer = setInterval(function () { articleDiv.fade(1) }, timer);
            return tt2;
        },
        pos: function (e) {

        },
        fade: function (d) {
            var a = alpha;
            if ((a != endalpha && d == 1) || (a != 0 && d == -1)) {
                var i = speed;
                if (endalpha - a < speed && d == 1) {
                    i = endalpha - a;
                } else if (alpha < speed && d == -1) {
                    i = a;
                }
                alpha = a + (i * d);
                tt2.style.opacity = alpha * .01;
                tt2.style.filter = 'alpha(opacity=' + alpha + ')';
            } else {
                clearInterval(tt2.timer);
                if (d == -1) { tt2.style.display = 'none' }
            }
        },
        hide: function () {
            speed = 30;
            if (tt2 != null) {
                clearInterval(tt2.timer);
                tt2.timer = setInterval(function () { articleDiv.fade(-1) }, timer);
            }
        }
    };
} ();


$.fn.centerInClient = function (options) {
    /// <summary>Centers the selected items in the browser window. Takes into account scroll position.
    /// Ideally the selected set should only match a single element.
    /// </summary>    
    /// <param name="fn" type="Function">Optional function called when centering is complete. Passed DOM element as parameter</param>    
    /// <param name="forceAbsolute" type="Boolean">if true forces the element to be removed from the document flow 
    ///  and attached to the body element to ensure proper absolute positioning. 
    /// Be aware that this may cause ID hierachy for CSS styles to be affected.
    /// </param>
    /// <returns type="jQuery" />
    var opt = { forceAbsolute: false,
        container: window,    // selector of element to center in
        completeHandler: null
    };
    $.extend(opt, options);

    return this.each(function (i) {
        var el = $(this);
        var jWin = $(opt.container);
        var isWin = opt.container == window;

        // force to the top of document to ENSURE that 
        // document absolute positioning is available
        if (opt.forceAbsolute) {
            if (isWin)
                el.remove().appendTo("body");
            else
                el.remove().appendTo(jWin.get(0));
        }

        // have to make absolute
        el.css("position", "absolute");

        // height is off a bit so fudge it
        var heightFudge = isWin ? 2.0 : 1.8;

        var x = (isWin ? jWin.width() : jWin.outerWidth()) / 2 - el.outerWidth() / 2;
        var y = (isWin ? jWin.height() : jWin.outerHeight()) / heightFudge - el.outerHeight() / 2;
        if (y < 0) y = 5;
        var newTop = y + jWin.scrollTop();
        if (newTop < 20)
            newTop = 20;
        el.css("left", x + jWin.scrollLeft());
        el.css("top", newTop);

        // if specified make callback and pass element
        if (opt.completeHandler)
            opt.completeHandler(this);
    });
}

// Used by textBoxes (EmptyMessage) 
function clickClear(thisfield, defaulttext) {
    if (thisfield.value == defaulttext) {
        thisfield.value = "";
    }
}

function clickRecall(thisfield, defaulttext) {
    if (thisfield.value == "") {
        thisfield.value = defaulttext;
    }
}


function getInternetExplorerVersion() {
    var rv = 1000;
    // Return value assumes failure.    
    if (navigator.appName == 'Microsoft Internet Explorer') {
        var ua = navigator.userAgent;
        var re = new RegExp("MSIE ([0-9]{1,}[\.0-9]{0,})");
        if (re.exec(ua) != null)
            rv = parseFloat(RegExp.$1);
    } return rv;
}

function GetIEVersionVersion() {
    var msg = "You're not using Windows Internet Explorer.";
    var version = getInternetExplorerVersion();
    return version;
}

function TermsChanged() {
    if ($("#chkTerms").attr("checked"))
        $(".nextButton").show();
    else
        $(".nextButton").hide();
}

function txtLastName_onclick() { return true; }
