var ns=(document.layers); var ie=(document.all); var w3=(document.getElementById && !ie); var calunit=ns? "" : "px" function gup( name ){ name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]"); var regexS = "[\\?&]"+name+"=([^&#]*)"; var regex = new RegExp( regexS ); var results = regex.exec( window.location.href ); if( results == null ) return ""; else return results[1]; } function initAd(){ if(!ns && !ie && !w3) return; if(ie) adDiv=eval('document.all.basketPopup.style'); else if(ns) adDiv=eval('document.layers["basketPopup"]'); else if(w3) adDiv=eval('document.getElementById("basketPopup").style'); if (ie){documentWidth =truebody().offsetWidth/2+truebody().scrollLeft-20; documentHeight =truebody().offsetHeight/2+truebody().scrollTop-20;} else if (ns){documentWidth=window.innerWidth/2+window.pageXOffset-20; documentHeight=window.innerHeight/2+window.pageYOffset-20;} else if (w3){documentWidth=self.innerWidth/2+window.pageXOffset-20; documentHeight=self.innerHeight/2+window.pageYOffset-20;} adDiv.left=documentWidth-200+calunit;adDiv.top =documentHeight-200+calunit; } function truebody(){ return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body } function getBasket(){ var intSubTotal = 0; var intPostageCost = 0; if($("formBasket_strBasket").value.length>0){ dojo.io.bind({ url: "getBasket.aspx?temp=" + Math.random(), formNode: document.getElementById("formBasket"), load: function(type, data, evt){ var j=dojo.json.evalJSON(data); var strReturn = ""; for (var i = 0 ; i < j.length ; i++) { if(parseInt(j[i]["QTY"]) > 1){var strQTY = "
Quantity of " + j[i]["QTY"] + "";}else{strQTY = "";} strReturn = strReturn + "\n" if(j[i]["Image"].length > 0){ strReturn = strReturn + " \""
" }else{ strReturn = strReturn + " " } if(bolCheckout==false){ strReturn = strReturn + "" } strReturn = strReturn + "\n" if(j[i]["bolVATExempt"] == "False"){ strReturn = strReturn + " " + j[i]["Title"] + "
"+ j[i]["Price"] + " +VAT" + strQTY + "\n" }else{ strReturn = strReturn + " " + j[i]["Title"] + "
"+ j[i]["Price"] + " VAT Exempt" + strQTY + "\n" } strReturn = strReturn + "\n" intSubTotal = intSubTotal + j[i]["intSubTotal"]; // intPostageCost = intPostageCost + j[i]["intPostageCost"]; } // intSubTotal = intSubTotal + intPostageCost; if(strReturn.length > 0){strReturn = "" + strReturn + "

\n"} document.getElementById("divBasket").innerHTML = strReturn; document.getElementById("divTotal").innerHTML = intSubTotal.toFixed(2); for (var i = 0 ; i < j.length ; i++) { //new dojo.dnd.HtmlDragSource(document.getElementById("BASKET" + j[i]["Id"]), "BASKET"); } }, error: errorHandler }); }else{ document.getElementById("divBasket").innerHTML = "
Drag products here to
add them to your basket


"; document.getElementById("divTotal").innerHTML = "0.00"; } } var handlerBasketRemove = function(e) { if ("BASKET"==Left(e.dragObject.domNode.id, 6)){ var strSplit = e.dragObject.domNode.id.split("_"); var Id = Right(strSplit[0], strSplit[0].length-6); var strBasket = ""; strBasket = getCookie("Basket"); if(strBasket==null||strBasket.length<1){ //Cannot be null really as we must have something in it in order to drag over to this remove product from basket handler! }else{ var j=dojo.json.evalJSON("[" + strBasket + "]"); strBasket = ""; for (var i = 0 ; i < j.length ; i++) { if(j[i]["Id"]==Id){ //We check to see if quantity is 1. If so, remove product completely otherwise just decrement quantity by 1. if(parseInt(j[i]["QTY"]) > 1){ strBasket = strBasket + "{\"Id\":\"" + j[i]["Id"] + "\",\"QTY\":\"" + (parseInt(j[i]["QTY"])-1) + "\"},"; } }else{ strBasket = strBasket + "{\"Id\":\"" + j[i]["Id"] + "\",\"QTY\":\"" + j[i]["QTY"] + "\"},"; } } strBasket = Left(strBasket, strBasket.length-1) } setCookie("Basket", strBasket ); $("formBasket_strBasket").value = "[" + strBasket + "]"; window.location="basket.aspx"; } } function removeFromBasket(Id) { var strBasket = ""; strBasket = getCookie("Basket"); if(strBasket==null||strBasket.length<1){ //Cannot be null really as we must have something in it in order to drag over to this remove product from basket handler! }else{ var j=dojo.json.evalJSON("[" + strBasket + "]"); strBasket = ""; for (var i = 0 ; i < j.length ; i++) { if(j[i]["Id"]==Id){ // Remove completely }else{ strBasket = strBasket + "{\"Id\":\"" + j[i]["Id"] + "\",\"QTY\":\"" + j[i]["QTY"] + "\"},"; } } strBasket = Left(strBasket, strBasket.length-1) } setCookie("Basket", strBasket ); if(strBasket.length > 0){$("formBasket_strBasket").value = "[" + strBasket + "]";}else{$("formBasket_strBasket").value = "";} getBasket(); } var handlerdropBasket = function(e) { if ("PRODUCT"==Left(e.dragObject.domNode.id, 7)){ var strSplit = e.dragObject.domNode.id.split("_"); var Id = Right(strSplit[0], strSplit[0].length-7); addtobasket(Id, 1); } } function addtobasket(Id, quantity){ var strBasket = ""; initAd() document.getElementById('basketPopup').style.display = 'block'; setTimeout("document.getElementById('basketPopup').style.display = 'none'",1500); //deleteCookie("Basket"); strBasket = getCookie("Basket"); if(strBasket==null||strBasket.length<1){ strBasket = "{\"Id\":\"" + Id + "\",\"QTY\":\"" + quantity + "\"}"; }else{ var bolFound = false; //We now see if this product already exists in the basket in order to increase the quantity var j=dojo.json.evalJSON("[" + strBasket + "]"); strBasket = ""; for (var i = 0 ; i < j.length ; i++) { if(j[i]["Id"]==Id){ strBasket = strBasket + "{\"Id\":\"" + j[i]["Id"] + "\",\"QTY\":\"" + (parseInt(j[i]["QTY"])+parseInt(quantity)) + "\"},"; bolFound = true; }else{ strBasket = strBasket + "{\"Id\":\"" + j[i]["Id"] + "\",\"QTY\":\"" + j[i]["QTY"] + "\"},"; } } if(bolFound==false){ strBasket = strBasket + "{\"Id\":\"" + Id + "\",\"QTY\":\"" + quantity + "\"},"; } strBasket = Left(strBasket, strBasket.length-1) } setCookie("Basket", strBasket ); if(strBasket.length > 0){$("formBasket_strBasket").value = "[" + strBasket + "]";}else{$("formBasket_strBasket").value = "";} getBasket(); } function quickorder(Id, quantity){ if(Id.length>0){ dojo.io.bind({ url: "lookupProductCode.aspx?code=" + Id + "&temp=" + Math.random(), load: function(type, data, evt){ var j=dojo.json.evalJSON(data); if (j[0]["GUID"].length > 0){ $('quickorder_productcode').value = ""; $('quickorder_quantity').value = "1"; if (j[0]["Stock"] > 0){ addtobasket(j[0]["GUID"], quantity); }else{ alert("Out of stock - Call us on (01202) 489489"); } }else{ alert("Sorry, that product code was not recognised or is no longer available to buy"); } }, error: errorHandler }); } } function $(e){ var obj = null; if(document.getElementById){ obj = document.getElementById(e); }else if(document.all){ obj = document.all[e]; } return obj; } function errorHandler( type, error ) { var msg = "Something went horribly wrong ...\n" + error.message; alert( msg ); } function Left(str, n){ if (n <= 0) return ""; else if (n > String(str).length) return str; else return String(str).substring(0,n); } function Right(str, n){ if (n <= 0) return ""; else if (n > String(str).length) return str; else { var iLen = String(str).length; return String(str).substring(iLen, iLen - n); } }