﻿
var IsIE; var arrItemsAdding = new Array(); function DeleteItem(prodid) {
    if (confirm("Are you sure you want to delete product id " + prodid + " from the shopping cart ? "))
    { ChangeClass('divDeleteimgindicator' + prodid, "divDeleteimgindicatorVisible"); var url = "ShoppingCartService.aspx?action=Delete&productid=" + prodid + "&time=" + new Date().getTime(); CreateObject(url); } 
}
function UpdateItem(prodid, newqty, newqtyid, CorrespPId) {
    var ActualQtyId = GetSiblingId(newqtyid, 'ActualQty'); var oldqty = GetValueById(ActualQtyId); var url; if (oldqty != null && newqty != null && newqty != '' && parseInt(oldqty) != parseInt(newqty)) {
        if (($('divUpdateimgindicator' + prodid)) != null)
        { ChangeClass('divUpdateimgindicator' + prodid, "divUpdateimgindicatorVisible"); url = "ShoppingCartService.aspx?action=Update&productid=" + prodid + "&oldqty=" + oldqty + "&newqty=" + newqty + "&time=" + new Date().getTime(); }
        else
        { ChangeClass('divUpdateimgindicator' + CorrespPId, "divUpdateimgindicatorVisible"); url = "ShoppingCartService.aspx?action=Update&productid=" + CorrespPId + "&oldqty=" + oldqty + "&newqty=" + newqty + "&time=" + new Date().getTime(); }
        CreateObject(url);
    } 
}
function AddItem(prodid, qty)
{ arrItemsAdding.push(prodid); ChangeClass("divAddimgindicator", 'clsShow'); var url = "ShoppingCartService.aspx?action=Add&productid=" + prodid + "&quantity=" + qty + "&time=" + new Date().getTime(); CreateObject(url); }
function UpdateCartDescription() {
    ChangeClass("divDescimgindicator", 'clsShow'); var cartdesc; if (document.getElementById("ctl00_ContentPlaceHolder1_txtDesc") != null)
    { cartdesc = GetValueById("ctl00_ContentPlaceHolder1_txtDesc"); }
    else
    { cartdesc = document.getElementById("ctl00_ContentPlaceHolder1_lblCartDesc").innerHTML; }
    var SpecialInstructions = GetValueById("ctl00_ContentPlaceHolder1_txtSpecialInstructions"); var index = ""; var shipto = ""; if ($("ctl00_ContentPlaceHolder1_ddlShipto") != null) {
        index = $("ctl00_ContentPlaceHolder1_ddlShipto").selectedIndex
        //shipto = $("ctl00_ContentPlaceHolder1_ddlShipto").options[index].value;
      
        shipto = $("ctl00_ContentPlaceHolder1_ddlShipto").options[index].innerHTML;
           for (var i = 0; i < 30; i++) {
        shipto = shipto.replace('&nbsp;', ' ');//.replace('#', '%23').replace('&amp;','%20');
    }
  
    }
    var url; url = "ShoppingCartService.aspx?action=updatecartdesc&shipto=" + escape(shipto) + "&cartdesc=" + cartdesc + "&SpecialInstructions=" + escape(SpecialInstructions); CreateObject(url);
}
function UpdateAddress() {
    ChangeClass("divDescimgindicator", 'clsShow'); var index = $("ctl00_ContentPlaceHolder1_ddlShipto").selectedIndex
    //var shipto = $("ctl00_ContentPlaceHolder1_ddlShipto").options[index].value;
   
    var shipto = $("ctl00_ContentPlaceHolder1_ddlShipto").options[index].innerHTML;
    for (var i = 0; i < 30; i++) {
        shipto = shipto.replace('&nbsp;', ' ');//.replace('#', '%23').replace('&amp;', '%20');
    }
     var url; url = "ShoppingCartService.aspx?action=updateaddress&shipto=" +escape( shipto);  CreateObject(url);
}
function GetTotal()
{ ChangeClass("divTotalimgindicator", 'clsShow'); var url; url = "ShoppingCartService.aspx?action=gettotal"; CreateObject(url); }
function CheckAddOrUpdate() {
    var newqtyid; var prodid = GetValueById("ctl00_ContentPlaceHolder1_txtItem"); var qty = GetValueById("ctl00_ContentPlaceHolder1_txtCases"); prodid = prodid.toUpperCase(); if (prodid == '' || qty == '')
    { return; }
    var MaxSpeedEntryCodeLength = document.getElementById('MaxSpeedEntryCodeLength').value; if (prodid.length <= MaxSpeedEntryCodeLength) {
        prodid = RemovingLeadingZeros(prodid); if (prodid == "0")
        { alert('Invalid Item: ' + prodid); return; } 
    }
    if (!CheckProductExistence(prodid))
    { $("ctl00_ContentPlaceHolder1_txtItem").value = ''; $("ctl00_ContentPlaceHolder1_txtCases").value = ''; $("ctl00_ContentPlaceHolder1_txtItem").focus(); AddItem(prodid, qty); }
    else {
        var updateimg = $('divUpdateimgindicator' + prodid) != null ? $('divUpdateimgindicator' + prodid) : ($('divCatalogLineNo' + prodid) != null ? $('divCatalogLineNo' + prodid) : $('divUpcCode' + prodid)); var CorrespPId; var children = updateimg.parentNode.childNodes; for (var i = 0; i < children.length; i++) {
            if (children[i].type == "text")
            { newqtyid = children[i].id; }
            if (window.ActiveXObject || (IsIE7 == true)) {
                if (children[i].id == "divPid") {
                    CorrespPId = children[i].value;
                    if (CorrespPId == "-1" || CorrespPId == "" || CorrespPId == null)
                    { CorrespPId = children[i].innerHTML; } 
                 } 
                
            }
            else {
                if (children[i].nodeName == "DIV") {
                    if (children[i].getAttribute('id') == "divPid") {
                        CorrespPId = children[i].getAttribute('value'); if (CorrespPId == "-1" || CorrespPId == "" || CorrespPId == null)
                        { CorrespPId = children[i].innerHTML; } 
                    } 
                } 
            } 
        }
        $("ctl00_ContentPlaceHolder1_txtItem").focus(); $("ctl00_ContentPlaceHolder1_txtItem").value = ''; $("ctl00_ContentPlaceHolder1_txtCases").value = ''; prodid = trimAll(prodid); CorrespPId = trimAll(CorrespPId); UpdateItem(prodid, qty, newqtyid, CorrespPId); ChangeClass("divAddimgindicator", 'clsHidden');
    } 
}
function trimAll(sString) {
    if (sString != null) {
        return ltrim(rtrim(sString));
    }
    else
        return null;
}

function ltrim(str) {
    for (var k = 0; k < str.length && isWhitespace(str.charAt(k)); k++);
    return str.substring(k, str.length);
}
function rtrim(str) {
    for (var j = str.length - 1; j >= 0 && isWhitespace(str.charAt(j)); j--);
    return str.substring(0, j + 1);
}

function isWhitespace(charToCheck) {
    var whitespaceChars = " \t\n\r\f";
    return (whitespaceChars.indexOf(charToCheck) != -1);
}

function CheckProductExistence(prodid) {
    if (($('ctl00_ContentPlaceHolder1_MyList__tr' + prodid.toUpperCase()) != null) || ($('divUpcCode' + prodid.toUpperCase()) != null) || ($('divCatalogLineNo' + prodid.toUpperCase()) != null))
    { return true; }
    else
    { return false; } 
}
function RemovingLeadingZeros(z) {
    while (z.charAt(0) == "0")
    { z = z.substring(1, z.length); }
    if (z.charAt(0) == ".")
        z = "0" + z; if (z.length == 0)
        z = "0"; return z;
}
function CreateObject(url)
{ var objAjax = new Ajax(); objAjax.doGet(url, ResponseHandler); }
function $(id)
{ return document.getElementById(id); }
function ShowElementById(id, bln) {
    if (bln)
        $(id).style.display = ''; else
        $(id).style.display = 'none';
}
function ChangeClass(id, cls) {
    if ($(id) != null)
    { $(id).className = cls; } 
}
function GetValueById(id) {
    if ($(id))
    { return $(id).value; } 
}
function GetSiblingId(id, replacement)
{ var parentid = GetParentId(id); return parentid + replacement; }
function GetParentId(elementid)
{ return (elementid.substring(0, elementid.lastIndexOf('_') + 1)); }
function ResponseHandler(strResp) {
    var result; var objXmlDom; var action; var prodid; var qty; var colname; var cataloglineno; var upccode; var comparevalue; var address1; var address2; var TopORBottom; var totallines; var totalcases; var subtotal;
    if (IsIE) {

        result = strResp.responseText; objXmlDom = new ActiveXObject("Microsoft.XMLDOM"); objXmlDom.loadXML(result); if (objXmlDom.documentElement == null)
        { action = "paging"; TopORBottom = getTopORBottom(objXmlDom, 'hidId'); }
        else {
            if (objXmlDom.documentElement.getElementsByTagName('action')[0] != null)
            { action = objXmlDom.documentElement.getElementsByTagName('action')[0].text; }
            else
            { action = "paging"; TopORBottom = getTopORBottom(objXmlDom, 'hidId'); }
            if (objXmlDom.documentElement.getElementsByTagName('productid')[0] != null)
            { prodid = objXmlDom.documentElement.getElementsByTagName('productid')[0].text; }
            if (objXmlDom.documentElement.getElementsByTagName('quantity')[0] != null)
            { qty = objXmlDom.documentElement.getElementsByTagName('quantity')[0].text; }
            if (objXmlDom.documentElement.getElementsByTagName('colname')[0] != null)
            { colname = objXmlDom.documentElement.getElementsByTagName('colname')[0].text; }
            if (objXmlDom.documentElement.getElementsByTagName('cataloglineno')[0] != null)
            { cataloglineno = objXmlDom.documentElement.getElementsByTagName('cataloglineno')[0].text; }
            if (objXmlDom.documentElement.getElementsByTagName('upccode')[0] != null)
            { upccode = objXmlDom.documentElement.getElementsByTagName('upccode')[0].text; }
            if (objXmlDom.documentElement.getElementsByTagName('address1')[0] != null)
            { address1 = objXmlDom.documentElement.getElementsByTagName('address1')[0].text; }
            if (objXmlDom.documentElement.getElementsByTagName('address2')[0] != null)
            { address2 = objXmlDom.documentElement.getElementsByTagName('address2')[0].text; }
            if (objXmlDom.documentElement.getElementsByTagName('totallines')[0] != null)
            { totallines = objXmlDom.documentElement.getElementsByTagName('totallines')[0].text; }
            if (objXmlDom.documentElement.getElementsByTagName('totalcases')[0] != null)
            { totalcases = objXmlDom.documentElement.getElementsByTagName('totalcases')[0].text; }
            if (objXmlDom.documentElement.getElementsByTagName('subtotal')[0] != null)
            { subtotal = objXmlDom.documentElement.getElementsByTagName('subtotal')[0].text; }
        }


    }
    else {
        
            result = strResp.responseText; objXmlDom = strResp.responseXML; if (objXmlDom.documentElement == null)
            { action = "paging"; TopORBottom = getTopORBottom(objXmlDom, 'hidId'); }
            else {
                if (objXmlDom.documentElement.getElementsByTagName('action')[0] != null)
                { action = objXmlDom.documentElement.getElementsByTagName('action')[0].textContent; }
                else
                { action = "paging"; TopORBottom = getTopORBottom(objXmlDom, 'hidId'); }
                if (objXmlDom.documentElement.getElementsByTagName('productid')[0] != null)
                { prodid = objXmlDom.documentElement.getElementsByTagName('productid')[0].textContent; }
                if (objXmlDom.documentElement.getElementsByTagName('quantity')[0] != null)
                { qty = objXmlDom.documentElement.getElementsByTagName('quantity')[0].textContent; }
                if (objXmlDom.documentElement.getElementsByTagName('colname')[0] != null)
                { colname = objXmlDom.documentElement.getElementsByTagName('colname')[0].textContent; }
                if (objXmlDom.documentElement.getElementsByTagName('cataloglineno')[0] != null)
                { cataloglineno = objXmlDom.documentElement.getElementsByTagName('cataloglineno')[0].textContent; }
                if (objXmlDom.documentElement.getElementsByTagName('upccode')[0] != null)
                { upccode = objXmlDom.documentElement.getElementsByTagName('upccode')[0].textContent; }
                if (objXmlDom.documentElement.getElementsByTagName('address1')[0] != null)
                { address1 = objXmlDom.documentElement.getElementsByTagName('address1')[0].textContent; }
                if (objXmlDom.documentElement.getElementsByTagName('address2')[0] != null)
                { address2 = objXmlDom.documentElement.getElementsByTagName('address2')[0].textContent; }
                if (objXmlDom.documentElement.getElementsByTagName('totallines')[0] != null)
                { totallines = objXmlDom.documentElement.getElementsByTagName('totallines')[0].textContent; }
                if (objXmlDom.documentElement.getElementsByTagName('totalcases')[0] != null)
                { totalcases = objXmlDom.documentElement.getElementsByTagName('totalcases')[0].textContent; }
                if (objXmlDom.documentElement.getElementsByTagName('subtotal')[0] != null)
                { subtotal = objXmlDom.documentElement.getElementsByTagName('subtotal')[0].textContent; }
            }
        
       

    }
    action = action.toLowerCase(); if (colname == "cataloglineno")
    { comparevalue = cataloglineno; }
    else if (colname == "productid")
    { comparevalue = prodid; }
    else if (colname == "upccode")
    { comparevalue = upccode; }
    switch (action) {
        case 'updatecartdesc': ChangeClass('divDescimgindicator', 'clsHidden'); break; case 'updateaddress': ChangeAddress(address1, address2); break; case 'gettotal': UpdateTotal(totallines, totalcases, subtotal); break; case 'paging': if (TopORBottom == 'top')
            { document.getElementById('ctl00_ContentPlaceHolder1_TopPaging').innerHTML = result; }
            else if (TopORBottom == 'bottom')
            { document.getElementById('ctl00_ContentPlaceHolder1_BottomPaging').innerHTML = result; }
            break; case 'delete': GetTotal(); RemoveRow(prodid); break; case 'update': GetTotal(); UpdateRow(prodid, qty); break; case 'add': GetTotal(); var idx; for (var i = 0; i < arrItemsAdding.length; i++) {
                if (arrItemsAdding[i] == comparevalue)
                { idx = i; break; } 
            }
            arrItemsAdding.splice(i, 1); if (arrItemsAdding.length == 0)
            { ChangeClass('divAddimgindicator', 'clsHidden'); }
            AddRow(objXmlDom); break; case 'invalidproduct': var idx; for (var i = 0; i < arrItemsAdding.length; i++) {
                if (arrItemsAdding[i] == prodid)
                { idx = i; break; } 
            }
            arrItemsAdding.splice(i, 1); if (arrItemsAdding.length == 0)
            { ChangeClass('divAddimgindicator', 'clsHidden'); }
            ShowInvalidProduct(prodid); break; case 'zeroentry': GetTotal(); var idx; for (var i = 0; i < arrItemsAdding.length; i++) {
                if (arrItemsAdding[i] == prodid)
                { idx = i; break; } 
            }
            arrItemsAdding.splice(i, 1); if (arrItemsAdding.length == 0)
            { ChangeClass('divAddimgindicator', 'clsHidden'); }
            break;
    } 
}
function UpdateTotal(totallines, totalcases, subtotal)
{ $("ctl00_ContentPlaceHolder1_lbltotallines").innerHTML = totallines; $("ctl00_ContentPlaceHolder1_lbltotalcases").innerHTML = totalcases; $("ctl00_ContentPlaceHolder1_lblsubtotal").innerHTML = "$" + (AddCommas(roundValue2Decimals(subtotal))); ChangeClass('divTotalimgindicator', 'clsHidden'); }
function ChangeAddress(address1, address2) {
    address2 = address2.replace("##", "<br>")
    $("ctl00_ContentPlaceHolder1_lblShipto1").innerHTML = address1; $("ctl00_ContentPlaceHolder1_lblshiptoaddress").innerHTML = address2;
}
function AddRow(objXmlDom) {
    var prodid, anchorpid, itemdesc, casepack, cataloglineno, available, txtQty, unitprice, caseprice, total, deleteimg, txtActualQty; if (IsIE)
    { prodid = objXmlDom.documentElement.getElementsByTagName('productid')[0].text; anchorpid = objXmlDom.documentElement.getElementsByTagName('anchorpid')[0].xml; itemdesc = objXmlDom.documentElement.getElementsByTagName('itemdesc')[0].text; casepack = objXmlDom.documentElement.getElementsByTagName('casepack')[0].text; cataloglineno = objXmlDom.documentElement.getElementsByTagName('cataloglineno')[0].text; available = objXmlDom.documentElement.getElementsByTagName('available')[0].text; txtQty = objXmlDom.documentElement.getElementsByTagName('txtQty')[0].xml; unitprice = objXmlDom.documentElement.getElementsByTagName('unitprice')[0].text; caseprice = objXmlDom.documentElement.getElementsByTagName('caseprice')[0].text; total = objXmlDom.documentElement.getElementsByTagName('total')[0].xml; deleteimg = objXmlDom.documentElement.getElementsByTagName('deleteimg')[0].xml; txtActualQty = objXmlDom.documentElement.getElementsByTagName('txtActualQty')[0].xml; }
    else
    { prodid = objXmlDom.documentElement.getElementsByTagName('productid')[0].textContent; anchorpid = getHtmlContent(objXmlDom.documentElement.getElementsByTagName('anchorpid')[0]); itemdesc = objXmlDom.documentElement.getElementsByTagName('itemdesc')[0].textContent; casepack = objXmlDom.documentElement.getElementsByTagName('casepack')[0].textContent; cataloglineno = objXmlDom.documentElement.getElementsByTagName('cataloglineno')[0].textContent; available = objXmlDom.documentElement.getElementsByTagName('available')[0].textContent; txtQty = getHtmlContentBigger(objXmlDom.documentElement.getElementsByTagName('txtQty')[0]); unitprice = objXmlDom.documentElement.getElementsByTagName('unitprice')[0].textContent; caseprice = objXmlDom.documentElement.getElementsByTagName('caseprice')[0].textContent; total = getHtmlContent(objXmlDom.documentElement.getElementsByTagName('total')[0]); deleteimg = getHtmlContent(objXmlDom.documentElement.getElementsByTagName('deleteimg')[0]); txtActualQty = getHtmlContent(objXmlDom.documentElement.getElementsByTagName('txtActualQty')[0]); }
    var refTable = $('ctl00_ContentPlaceHolder1_MyList'); if (refTable.rows.length == 2)
    { var newRow = refTable.insertRow(1); newRow.id = "ctl00_ContentPlaceHolder1_MyList__tr" + prodid; }
    else
    { var newRow = refTable.insertRow(1); newRow.id = "ctl00_ContentPlaceHolder1_MyList__tr" + prodid; }
    var ShoppingCartItemsPerPage = document.getElementById('ShoppingCartItemsPerPage').value; var itemToDelete = parseInt(ShoppingCartItemsPerPage) + parseInt("1")
    if (refTable.rows.length - 2 > ShoppingCartItemsPerPage)
    { refTable.deleteRow(itemToDelete); TopPagingBar(); BottomPagingBar(); }
    InsertText(newRow, anchorpid, itemdesc, casepack, cataloglineno, available, txtQty, unitprice, caseprice, total, deleteimg, txtActualQty); $("ctl00_ContentPlaceHolder1_DetailsPanel").style.display = ''; $("ctl00_ContentPlaceHolder1_CheckoutBtn").style.display = ''; if (IsIE)
    { $('ctl00_ContentPlaceHolder1_MyError').innerText = ''; }
    else
    { $('ctl00_ContentPlaceHolder1_MyError').textContent = ''; }
    RepaintGrid(); ResetTotal();
}
function TopPagingBar() {
    if (document.getElementById('CurrentPage') != null)
    { var page = document.getElementById('CurrentPage').value; CreateObject("TopPagingBar.aspx?page=" + page); } 
}
function BottomPagingBar() {
    if (document.getElementById('CurrentPage') != null)
    { var page = document.getElementById('CurrentPage').value; CreateObject("BottomPagingBar.aspx?page=" + page); } 
}
function selectSingleNode(xmlDoc, elementPath) {
    if (window.ActiveXObject)
    { return xmlDoc.selectSingleNode(elementPath); }
    else
    { var xpe = new XPathEvaluator(); var nsResolver = xpe.createNSResolver(xmlDoc.ownerDocument == null ? xmlDoc.documentElement : xmlDoc.ownerDocument.documentElement); var results = xpe.evaluate(elementPath, xmlDoc, nsResolver, XPathResult.FIRST_ORDERED_NODE_TYPE, null); return results.singleNodeValue; } 
}
function getTopORBottom(xmlDomObject, Id) {
    var elementPath = '//input[@id="' + Id + '"]'; if (window.ActiveXObject)
    { return (xmlDomObject.documentElement.selectSingleNode(elementPath).getAttribute("value")); }
    else
    { var xpe = new XPathEvaluator(); var nsResolver = xpe.createNSResolver(xmlDomObject.ownerDocument == null ? xmlDomObject.documentElement : xmlDomObject.ownerDocument.documentElement); var results = xpe.evaluate(elementPath, xmlDomObject, nsResolver, XPathResult.FIRST_ORDERED_NODE_TYPE, null); return results.singleNodeValue.getAttribute("value"); } 
}
function InsertText() {
    for (var i = 1; i < arguments.length; i++) {
        var newCell = arguments[0].insertCell(arguments[0].cells.length); newCell.innerHTML = ''; newCell.innerHTML = arguments[i]; if (i == arguments.length - 1)
        { newCell.className = 'clsHidden'; } 
    } 
}
function RemoveRow(pid)
{ var elem = $('ctl00_ContentPlaceHolder1_MyList__tr' + pid); elem.parentNode.removeChild(elem); RepaintGrid(); ResetTotal(); }
function UpdateRow(pid, qty) {
    var elem = $('ctl00_ContentPlaceHolder1_MyList__tr' + pid); var imgref = $('divUpdateimgindicator' + pid); var QtyId; var ActualQtyId; var SubTotalId; var tds; var CasePrice; 
    {
        tds = imgref.parentNode.childNodes; for (var i = 0; i < tds.length; i++) {
            if (tds[i].type == "text")
            { QtyId = tds[i].id; } 
        } 
    }
    ActualQtyId = GetSiblingId(QtyId, "ActualQty"); SubTotalId = GetSiblingId(QtyId, "Total"); if (IsIE)
    { CasePrice = imgref.parentNode.nextSibling.nextSibling.innerText; }
    else
    { CasePrice = imgref.parentNode.nextSibling.nextSibling.textContent; }
    var CasePriceWithoutDollar = RemoveSign(CasePrice, "$"); var Subtotal = parseFloat(qty) * parseFloat(RemoveSignFromAnyWhere(CasePriceWithoutDollar, ',')); Subtotal = roundValue2Decimals(Subtotal); Subtotal = "$" + AddCommas(Subtotal); $(QtyId).value = qty; $(ActualQtyId).value = qty; if (IsIE)
    { $(SubTotalId).innerText = Subtotal; }
    else
    { $(SubTotalId).textContent = Subtotal; }
    ChangeClass("divUpdateimgindicator" + pid, "divDeleteimgindicatorInvisible"); ResetTotal();
}
function ShowInvalidProduct(pid)
{ alert("Invalid item : " + pid); }
function roundValue2Decimals(Subtotal) {
    var strSubTotal = Subtotal.toString(); var strDecimal = strSubTotal.split('.'); if (strDecimal.length == 1)
    { strDecimal[1] = "00"; }
    else if (strDecimal[1].length == 1)
    { strDecimal[1] = strDecimal[1] + "0"; }
    else if (strDecimal[1].length > 2)
    { strDecimal[1] = strDecimal[1].substring(0, 2); }
    strSubTotal = strDecimal.join('.'); return strSubTotal;
}
function RemoveSign(strValue, sign) {
    var arrSignRemoved; var arr = strValue.split(''); for (var i = 0; i < arr.length; i++) {
        if (arr[i] == sign)
        { arrSignRemoved = arr.slice(i + 1, arr.length); break; } 
    }
    return arrSignRemoved.join('');
}
function RemoveSignFromAnyWhere(strValue, sign)
{ var arr = strValue.split(sign); return arr.join(''); }
function AddCommas(strValue) {
    var strOutput = ''; var arr = strValue.split('.'); if (arr[0].length <= 3)
    { return strValue; }
    else {
        var j = 0; for (var i = arr[0].length - 1; i >= 0; i--) {
            strOutput = arr[0].charAt(i) + strOutput; j++; if (j == 3 && i > 0)
            { strOutput = "," + strOutput; j = 0; } 
        } 
    }
    return strOutput + "." + arr[1];
}
function RepaintGrid() {
    var parent = $('ctl00_ContentPlaceHolder1_MyList'); var trs = parent.getElementsByTagName("tr"); for (var i = 1; i < trs.length - 1; i++) {
        var tr_id = trs[i].getAttribute('id'); if (i % 2 > 0)
        { ChangeClass(tr_id, 'CartListItem'); }
        else
        { ChangeClass(tr_id, 'CartListItemAlt'); } 
    }
    if (trs.length == 2) {
        $("ctl00_ContentPlaceHolder1_DetailsPanel").style.display = 'none'; $("ctl00_ContentPlaceHolder1_CheckoutBtn").style.display = 'none'; if (IsIE)
        { $('ctl00_ContentPlaceHolder1_MyError').innerText = 'Your shopping cart is empty.'; }
        else
        { $('ctl00_ContentPlaceHolder1_MyError').textContent = 'Your shopping cart is empty.'; } 
    } 
}
function ResetTotal() {
    var parent = $('ctl00_ContentPlaceHolder1_MyList'); var trs = parent.getElementsByTagName("tr"); var total = parseFloat("0"); for (var i = 1; i < trs.length; i++) {
        var tr_id = trs[i].getAttribute('id'); if (IsIE) {
            if (trs[i].childNodes.item(8).childNodes.item(0).nodeName.toLowerCase() == "span")
            { var strValue = trs[i].childNodes.item(8).childNodes.item(0).innerText; strValue = RemoveSign(strValue, "$"); strValue = RemoveSignFromAnyWhere(strValue, ','); total += parseFloat(strValue); } 
        }
        else
        { var strValue = trs[i].cells[8].textContent; strValue = RemoveSign(strValue, "$"); strValue = RemoveSignFromAnyWhere(strValue, ','); total += parseFloat(strValue); } 
    } 
}
function Ajax() {
    this.req = null; this.url = null; this.method = 'Get'; this.async = true; this.handleResp = null; this.handleErr = null; this.init = function() {
        if (!this.req) {
            try {
                this.req = new XMLHttpRequest(); if (this.req.overrideMimeType)
                { IsIE = false; this.req.overrideMimeType('text/xml'); }
                else
                { IsIE = true; } 
            }
            catch (e) {
                try
{ this.req = new ActiveXObject("MSXML2.XMLHTTP"); IsIE = true; }
                catch (e) {
                    try
{ this.req = new ActiveXObject("Microsoft.XMLHTTP"); IsIE = true; }
                    catch (e)
{ return false; } 
                } 
            }
            return this.req;
        }
        return this.req;
    }; this.doReq = function() {
        if (!this.init())
        { alert("Could not create an object of XMLHttp"); return; }
        this.req.open(this.method, this.url, this.async); var self = this; this.req.onreadystatechange = function() {
            var resp = null; if (self.req.readyState == 4) {
                resp = self.req; if (self.req.status >= 200 && self.req.status <= 299)
                { self.handleResp(resp); }
                else
                { self.handleErr(resp); } 
            } 
        }; this.req.send(this.postData);
    }; this.doGet = function(url, hand)
    { this.url = url; this.handleResp = hand; this.doReq(); };
}
function testOutput(result)
{ $('ctl00_ContentPlaceHolder1_txtoutput').innerText = result; }
IsIE7 = function() {
    if (window.XMLHttpRequest) {
        if (document.epando)
        { return true; } 
    } 
}; function CheckValidCharaters(evt) {
    evt = (evt) ? evt : ((event) ? event : null); if (evt) {
        var charCode; if (evt && evt.which)
        { charCode = evt.which; }
        if (evt.keyCode)
        { charCode = evt.keyCode; }
        if (evt.charCode)
        { charCode = evt.charCode; }
        if (charCode > 12 && (charCode < 48 || charCode > 57)) {
            if (evt.returnValue)
            { evt.returnValue = false; return false; }
            else if (evt.preventDefault)
            { evt.preventDefault(); }
            else if (IsIE7)
            { evt.returnValue = false; }
            else
            { return false; } 
        } 
    } 
}
function getHtmlContent(str) {
    var html = ''; if (str.hasChildNodes()) {
        for (var i = 0; i < str.childNodes.length; i++)
        { html += getNodeText(str.childNodes[i]); }
        return html;
    } 
}
function getHtmlContentBigger(str) {
    var html = ''; if (str.hasChildNodes()) {
        for (var i = 0; i < str.childNodes.length; i++)
        { html += getNodeTextBigger(str.childNodes[i]); }
        return html;
    } 
}
function getNodeText(node) {
    if (node.tagName) {
        var txt = "<" + node.tagName; var attributes = node.attributes; for (var i = 0; i < attributes.length; i++) { txt += " " + attributes[i].nodeName + "=\"" + node.attributes[i].nodeValue + "\""; }
        if (node.hasChildNodes()) {
            txt += ">"; for (var i = 0; i < node.childNodes.length; i++) { txt += getNodeText(node.childNodes[i]); }
            txt += "</" + node.tagName + ">";
        } else { txt += "/>"; }
        return txt;
    }
    if (node.data) { return node.data; }
    return "";
}
function getNodeTextBigger(node) {
    if (node.tagName) {
        var txt = "<" + node.tagName; var attributes = node.attributes; for (var i = 0; i < attributes.length; i++) { txt += " " + attributes[i].nodeName + "=\"" + node.attributes[i].nodeValue + "\""; }
        if (node.hasChildNodes()) {
            txt += ">"; for (var i = 0; i < node.childNodes.length; i++) { txt += getNodeText(node.childNodes[i]); }
            txt += "</" + node.tagName + ">";
        } else { txt += "></" + node.tagName + ">"; }
        return txt;
    }
    if (node.data) { return node.data; }
    return "";
}
function ChangefocusTo(evt, ToId) {
    evt = (evt) ? evt : ((event) ? event : null); var charCode = ""; if (evt) {
        if (evt && evt.which)
        { charCode = evt.which; }
        if (evt.keyCode)
        { charCode = evt.keyCode; }
        if (evt.charCode)
        { charCode = evt.charCode; }
        if (charCode == 13) {
            $("ctl00_ContentPlaceHolder1_" + ToId).focus(); if (evt.returnValue)
            { evt.returnValue = false; return false; }
            else if (evt.preventDefault)
            { evt.preventDefault(); }
            else if (IsIE7)
            { evt.returnValue = false; }
            else
            { return false; } 
        }
        if (charCode == 9)
        { $("ctl00_ContentPlaceHolder1_" + ToId).focus(); } 
    } 
}
function ChangeFocusOnEnter(evt, ToId) {
    evt = (evt) ? evt : ((event) ? event : null); if (evt) {
        var charCode; if (evt && evt.which)
        { charCode = evt.which; }
        if (evt.keyCode)
        { charCode = evt.keyCode; }
        if (evt.charCode)
        { charCode = evt.charCode; }
        if (charCode > 12 && (charCode < 48 || charCode > 57)) {
            if (charCode = 13)
            { $("ctl00_ContentPlaceHolder1_" + ToId).focus(); }
            if (evt.returnValue)
            { evt.returnValue = false; return false; }
            else if (evt.preventDefault)
            { evt.preventDefault(); }
            else if (IsIE7)
            { evt.returnValue = false; }
            else
            { return false; } 
        } 
    } 
}
function AllowAlphanumeric(evt, ToId) {
    evt = (evt) ? evt : ((event) ? event : null); if (evt) {
        var charCode; if (evt && evt.which)
        { charCode = evt.which; }
        if (evt.keyCode)
        { charCode = evt.keyCode; }
        if (evt.charCode)
        { charCode = evt.charCode; }
        if (charCode > 12 && (charCode < 33 || charCode > 125)) {
            if (charCode = 13)
            { $("ctl00_ContentPlaceHolder1_" + ToId).focus(); }
            if (evt.returnValue)
            { evt.returnValue = false; return false; }
            else if (evt.preventDefault)
            { evt.preventDefault(); }
            else if (IsIE7)
            { evt.returnValue = false; }
            else
            { return false; } 
        } 
    } 
}
function GetOptions() {
    if ($('ctl00_ContentPlaceHolder1_tblOption').style.display == '')
    { $('ctl00_ContentPlaceHolder1_tblOption').style.display = 'none'; $('imgoption').src = 'images/optiondown.gif'; }
    else {
        $('ctl00_ContentPlaceHolder1_tblOption').style.display = ''; $('imgoption').src = 'images/optionup.gif'; var txt = document.getElementById("ctl00_ContentPlaceHolder1_txtSpecialInstructions").value; if (txt != '') {
            for (var i = 0; i < txt.length; i++)
            { var res = txt.replace('~', ''); txt = res; }
            document.getElementById("ctl00_ContentPlaceHolder1_txtSpecialInstructions").value = res;
        } 
    } 
}
function limitLength() {
    var previousValue; var txt = GetValueById("ctl00_ContentPlaceHolder1_txtSpecialInstructions"); if (txt.length > 250)
    { alert('Maximum limit is 250 characters'); return false; } 
}
function InvalidShipToAddress(ShipTo)
{ alert(ShipTo); }
