// JavaScript by Marcin Koczorowski

var current = readCookie("VAT");
if (current == null||current!="INC1"&&current!="EXC1"){
	createCookie("VAT","INC1",99);
	current="INC1";
}

if(typeof(window.external) != 'undefined'){

//yes, this is evil browser sniffing, but only IE has this bug

document.getElementsByName = function(name, tag){
    if(!tag){
        tag = '*';
    }
    var elems = document.getElementsByTagName(tag);
    var res = []
    for(var i=0;i<elems.length;i++){
        att = elems[i].getAttribute('name');
        if(att == name) {
            res.push(elems[i]);
        }
    }
    return res;
}

}

function basket2(items) {
	var price="";
	if(current=="INC1"){
		price=calculateTotal(document.getElementById("pricenoVat").innerHTML);		
	}else if(current=="EXC1"){
		price=document.getElementById("pricenoVat").innerHTML;
	}
	if(items > 0){
		document.getElementById("viewBasketButton").src = "images/v2/header/checkout1.jpg";
		document.getElementById("topBasketText").innerHTML = "<span>Items :</span>"+items+"<br><span>Total :</span>" + price;
	}
	
//	if(items==0){
//		document.getElementById("topBasketText").innerHTML="Basket is Empty :-(";
//		document.getElementById("viewBasketButton").style.display="none";
//	}else{
//		var price="";
///		if(current=="INC1"){
//			price=calculateTotal(document.getElementById("pricenoVat").innerHTML);		
//		}else if(current=="EXC1"){
//			price=document.getElementById("pricenoVat").innerHTML;
//		}
//		document.getElementById("topBasketText").innerHTML="Items: <b>"+items+"</b> | Total: <b><span id='totalprice'>"+price+"<span></b>";
//		document.getElementById("basketicon").className="items";
//	}
}

function tempFixHeader(){
	var topImgs = document.getElementById("header").getElementsByTagName("img");
		for(var i=0; i<topImgs.length; i++){	
			topImgs[i].setAttribute("hspace",0);
			topImgs[i].setAttribute("vspace",0);
		}
}

function displayNav(onpage, total) {
		if(total<=onpage){
			var navig = document.getElementsByName('nav');
			if (nav.length>0){
				for(var i=0; i<navig.length;i++){
					navig[i].style.display = "hidden";
				}
			}
		}
}

function swapName(){
	var names = new Array("Total storage capacity","OS","Clock speed","Processor clock speed","Operating System provided","Hard disk drive capacity","Operating system provided","Colour of product");
	var names1 = new Array("Hard Disk Drive","Operating System","Processor","Processor","Operating System","Hard Disk Drive","Operating System","Color");
	var txt = document.getElementById("searchboxAllaslist").innerHTML;
	for(var i=0;i<names.length;i++){
		txt = txt.replace(names[i] ,names1[i]);	
	}
	document.getElementById("searchboxAllaslist").innerHTML = txt;
}

function displayStock(st) {
		if(st==0){
			document.write('<div class="nostock">Contact Us</div>');	
		}else {
			document.write('<div class="instock"><b>'+st+' </b><span>in stock</span></div>');	
		}
}

function createCookie(name,value,days) {
	if (days) {
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function eraseCookie(name) {
	createCookie(name,"",-1);
}



function VATtoggle(){
	if (current=="INC1"){
		document.getElementById("VATswitch").innerHTML='Show ex vat prices';
		createCookie("VAT","EXC1",99);
		current="EXC1";
	
	}else if(current=="EXC1"){
		document.getElementById("VATswitch").innerHTML='Show inc vat prices';
		createCookie("VAT","INC1",99);
		current="INC1";
	}
	setPrices(true);
}

function setVAT(){
		if (current=="INC1"){
			document.getElementById("VATswitch").innerHTML='Show ex vat prices';
		}else if(current=="EXC1"){
			document.getElementById("VATswitch").innerHTML='Show inc vat prices';
		}
		setPrices(true);
}

function getPurePrice(str){
	str = str.replace(",","");
	return parseFloat(str.slice(1));
}

function calculateTotal(total) {
	total = total.replace(",","");
	total = total.slice(1);
	var tot = parseFloat(total);
	
		tot=tot+(0.175*tot);
	var newtotal="&pound;"+tot.toFixed(2);	
	return newtotal;
}

function setPrices(update) {
	var inc = document.getElementsByName("inc");
	var exc = document.getElementsByName("exc");
	
	if(update){
		if(current=="INC1"){
			if(exc&&inc&&exc.length==inc.length){
				for(var i=0;i<exc.length;i++){
					exc[i].style.display="none";
					inc[i].style.display="block";
					//alert("inc");
				}	
			}
			if(document.getElementById("totalprice")){
				document.getElementById("totalprice").innerHTML=calculateTotal(document.getElementById("pricenoVat").innerHTML);
			}
		}
	}
	if(current=="EXC1"){
		if(exc&&inc&&exc.length==inc.length){
			for(var i=0;i<exc.length;i++){
				exc[i].style.display="block";
				inc[i].style.display="none";
				//alert("exc");
			}
			
		}
		if(document.getElementById("totalprice")){
			document.getElementById("totalprice").innerHTML=document.getElementById("pricenoVat").innerHTML;
		}
	}
}



function short(str,n){ 

  if(str.length > n){  
	var s = str.substr(0, n);
    var words = s.split(' '); 
    words[words.length-1] = '';
    str = words.join(' ') + '&hellip;'
  }
//document.write(str);
return str;
}

function freeDelivery(noVAT,VAT,prod){
	var rate=45.99;
	if (current=="INC1"&&getPurePrice(VAT)>=rate){
			document.write('<img src="images/v2/boxes/freed.gif" width="47" height="50" class="freeDelivery">');
			if(prod&&document.getElementById("rightFree")){
				document.getElementById("rightFree").innerHTML= '<span>Free delivery<br>avaialbe!</span><img src="images/v2/spec/spec2_r3_c2.jpg">'
			}
	}
	if (current=="EXC1"&&getPurePrice(noVAT)>=rate){
			document.write('<img src="images/v2/boxes/freed.gif" width="47" height="50" class="freeDelivery">');
			if(prod&&document.getElementById("rightFree")){
				document.getElementById("rightFree").innerHTML= '<span>Free delivery<br>avaialbe!</span><img src="images/v2/spec/spec2_r3_c2.jpg">'
			}
	}	
}

function showAltPrice(str){
	if(str!="£0.00"){
		if(document.getElementById("deal2")){
			document.getElementById("deal2").style.display="block";
		}
		
		var price="";
		if(current=="EXC1"){
			document.write("was <b>"+str+"</b>");
		}else if(current=="INC1"){
			price = calculateTotal(str);
			document.write("was <b>"+price+"</b>");
		}
	}
}

function setTableSpecs(){
	var tables = document.getElementById("productSpecs").getElementsByTagName("table");
	if(tables.length!=0){
		
		var rows = tables[0].getElementsByTagName("tr");
		//rows[0].style.display="none";
		//rows[1].style.display="none";
		//tables[0].setAttribute("width","99%");
		tables[0].deleteRow(0);
		tables[0].deleteRow(0);
		var cols;
		for(var i=0;i<rows.length;i++){
				cols=rows[i].getElementsByTagName("td");
				if(cols!=null){
					if(cols.length>1){
						for(var j=0;j<cols.length;j++){
							if(j%2!=0){
								cols[j].style.padding = "0px 5px 0px 5px";
								if (cols[j].innerHTML.length==1){
									cols[j].setAttribute("align","center");	
								}
								if(cols[j].innerHTML=="Y"){
									cols[j].innerHTML='<img src="images/v2/spec/yes.gif">';
								}else if(cols[j].innerHTML=="N"){
									cols[j].innerHTML='<img src="images/v2/spec/no.gif">';
								}else if(cols[j].innerHTML=="0"){
									cols[j].innerHTML="-"
								}
							}else{
								if(cols[j].innerHTML=="Source data-sheet"){
									tables[0].deleteRow(i);
								}else{
									cols[j].className="fname";
								}
							}
						}
					}
					if(i%2!=0&&cols.length>1){
						rows[i].className="odd";
					}
				}
				   
		}
	}
	
}

function adjustSpec(){
	if(document.getElementById("rel").getElementsByTagName("table")[0].rows.length==0){
			document.getElementById("rightpanel").style.display="none";
			document.getElementById("leftside").style.width="815px";
			var frames = document.getElementsByName("cont");
			var footers = document.getElementsByName("cfooter");
			for(var i=0; i<frames.length; i++){
				frames[i].style.backgroundImage = "url('images/final/spec/hbody.jpg')";
				footers[i].style.width ="815px"
				footers[i].style.backgroundImage = "url('images/final/spec/hfooter.jpg')";
				footers[i].style.backgroundPosition = "bottom";
				//footers[i].className = "fieldnameLongFooter";
			}
	}
	if(document.getElementById("productSpecs").getElementsByTagName("table").length!=0){
			if	(document.getElementById("productSpecs").getElementsByTagName("table")[0].rows.length<=3){
				document.getElementById("spec2").style.display="none";		
			}
	}else{
			document.getElementById("spec2").style.display="none";
			
	}
	if(document.getElementById("desc2").innerHTML.toString()=="&nbsp;"||document.getElementById("desc2").innerHTML==""){
			document.getElementById("desc1").style.display="none";
			document.getElementById("desc2").style.display="none";
	}
		
}

function reImages(){	
	imgs= document.getElementsByName('mainimg');
	var val = 1;
	for(var i=0; i<imgs.length;i++){
		if(imgs[i].width>imgs[i].height){
			val = 140/imgs[i].width;
			imgs[i].width = imgs[i].width*val;
		}
		else {
			val = 140/imgs[i].height;
			imgs[i].height = imgs[i].height*val;
		}
	}
			itemHome('computers','notebooks / laptops');
			itemHome('av','MP3 players & recorders');
			itemHome('monitors','flat panel displays');
			itemHome('components','video cards');
			itemHome('inputdevices','keyboards & desktops');
			itemHome('datastorage','hard disk drives');
			itemHome('print','inkjet printers');
			itemHome('software','operating systems');
			itemHome('networks','routers');
			itemHome('bags','notebook bags & cases');
			itemHome('cameras','digital cameras');
			itemHome('office','paper shredders');
			if(document.getElementById("loading")) document.getElementById("loading").style.display = "none";
			if(document.getElementById("allCat")) document.getElementById("allCat").style.display="block";
			prepeareSlider();
}


function itemHome(box,cat){
	var tables = document.getElementById(box).getElementsByTagName('table')[0];
	if(tables){	
		var hid;
		for(var i=0; i<tables.rows.length; i++){
			hid = tables.rows[i].getElementsByTagName("input");
			if(hid){
				if(cat == hid[1].value){
					tables.rows[i].style.display = "";
				}else{
					if(cat == hid[0].value && (hid[1].value!="Apple"||box!="computers")){
						tables.rows[i].style.display = "";
					}else{
						tables.rows[i].style.display = "none";
					}
				}
			}
		}
	}
	//alert(document.getElementById(box).style.visibility);
	document.getElementById(box).style.visibility = "visible";
}

function switchSort(){
	window.location = document.getElementById("mySort").value;
}
function selectSort(){
	var ind;
	if(document.DoMoveNext.sortname1!=null){
	switch(document.DoMoveNext.sortname1.value){
		case "price" :
			ind = 1;
			break;
		case "partno" :
			if(document.DoMoveNext.sortdirection1.value == "asc"){
				ind =2;
			}else{ind=3};
			break;
		case "prodvalue1":
			if(document.DoMoveNext.sortdirection1.value == "asc"){
				ind =4;
			}else{ind=5};
			break;
		case "prodname":
			if(document.DoMoveNext.sortdirection1.value == "asc"){
				ind =6;
			}else{ind=7};
			break;
		default:
			ind =0;	
	}
	var sorts = document.getElementsByName("mySort");
	for (var i=0; i<sorts.length;i++){
		sorts[i].options[ind].selected = "true";
	}
	}
}
function noProd(){
	var txt = document.getElementById("leftside").innerHTML;
	txt = txt.replace("No Records Found","<b>Please select one of the subcategories</b>");
	document.getElementById("leftside").innerHTML = txt;
	if(document.getElementById("searchbox1_label"))document.getElementById("searchbox1_label").style.display ="none";
}

function addCat(cats){
	if(cats!=""&&cats!="{lowercategory}"){
		var low = document.getElementsByName("lower");
		if(low){
			for (var i=0;i<low.length;i++){
				low[i].style.display = "";
			}
		}
		if(document.getElementById("addCat")){
			document.getElementById("addCat").style.display = "none";
		}
	}
}

function revDesc(cat,lower){
	if(cat == "computers"){
		if(lower=="" || lower==	"{lowercategory}" || lower==" "){
			var longdesc = document.getElementsByName("info");
			var details = document.getElementsByName("comp");
			if(longdesc.length == details.length){
				for(var i=0; i<details.length; i++){
					longdesc[i].style.display = "none";
					details[i].style.display = "block";
				}
			}
		}
	}
}

function prepeareSlider(){
	document.getElementById("gallery").innerHTML ="";
	document.getElementById("excerpt").innerHTML ="";
	var prows = document.getElementById("hpreserved").getElementsByTagName("table")[0].rows;
	var li1;
	var li2;
	for(var i=0;i<prows.length;i++){
		li1 = document.createElement("li");
		li2 = document.createElement("li");
		li1.appendChild(prows[i].firstChild.getElementsByTagName("img")[0]);
		var content = prows[i].firstChild.getElementsByTagName("p")[0];
		content.innerHTML = short(content.innerHTML,190);
		li1.appendChild(prows[i].firstChild.getElementsByTagName("div")[0]); //inside
		var pVAT = prows[i].firstChild.getElementsByTagName("div")[0].innerHTML;
		var pNoVAT = prows[i].firstChild.getElementsByTagName("div")[1].innerHTML;
		var alt = prows[i].firstChild.getElementsByTagName("div")[2].innerHTML;
		if(alt!="£0.00"){
			var price="";
			if(current=="EXC1"){
				alt = "was <b>"+alt+"</b>";
			}else if(current=="INC1"){
				price = calculateTotal(alt);
				alt = "was <b>"+price+"</b>";
			}
		}else{
			alt= " ";
			
		}
		li2.innerHTML = '<div class="priceBox"><div class="was">' + alt + '</div><div class="priceVAT" name="inc">' + pVAT + '<br><span>inc. VAT</span></div><div class="priceNoVAT" name="exc">' + pNoVAT + '<br><span>ex. VAT</span></div></div>';
		
		document.getElementById("gallery").appendChild(li1);
		document.getElementById("excerpt").appendChild(li2);
	}
hpfeatured();
}

function oc(a)
{
  var o = {};
  for(var i=0;i<a.length;i++)
  {
    o[a[i]]='';
  }
  return o;
}

function showIco(name){
	var manuf = ['hp', 'lenovo'];
	if(name.toLowerCase() in oc(manuf)){
		document.write('<img src="images/v2/logos/' + name + '.gif" class="logo">');
	}
}