var xmlDoc;
var gbutton,gcat,gsubcat;
var flagcat,flagsubcat,flagbutton;
var moz,ie,safari;
var offeraux;

var BrowserDetect = {
	init: function () {
		this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
		this.version = this.searchVersion(navigator.userAgent)
			|| this.searchVersion(navigator.appVersion)
			|| "an unknown version";
		this.OS = this.searchString(this.dataOS) || "an unknown OS";
	},
	searchString: function (data) {
		for (var i=0;i<data.length;i++)	{
			var dataString = data[i].string;
			var dataProp = data[i].prop;
			this.versionSearchString = data[i].versionSearch || data[i].identity;
			if (dataString) {
				if (dataString.indexOf(data[i].subString) != -1)
					return data[i].identity;
			}
			else if (dataProp)
				return data[i].identity;
		}
	},
	searchVersion: function (dataString) {
		var index = dataString.indexOf(this.versionSearchString);
		if (index == -1) return;
		return parseFloat(dataString.substring(index+this.versionSearchString.length+1));
	},
	dataBrowser: [
		{ 	string: navigator.userAgent,
			subString: "OmniWeb",
			versionSearch: "OmniWeb/",
			identity: "OmniWeb"
		},
		{
			string: navigator.vendor,
			subString: "Apple",
			identity: "Safari"
		},
		{
			prop: window.opera,
			identity: "Opera"
		},
		{
			string: navigator.vendor,
			subString: "iCab",
			identity: "iCab"
		},
		{
			string: navigator.vendor,
			subString: "KDE",
			identity: "Konqueror"
		},
		{
			string: navigator.userAgent,
			subString: "Firefox",
			identity: "Firefox"
		},
		{
			string: navigator.vendor,
			subString: "Camino",
			identity: "Camino"
		},
		{		// for newer Netscapes (6+)
			string: navigator.userAgent,
			subString: "Netscape",
			identity: "Netscape"
		},
		{
			string: navigator.userAgent,
			subString: "MSIE",
			identity: "Explorer",
			versionSearch: "MSIE"
		},
		{
			string: navigator.userAgent,
			subString: "Gecko",
			identity: "Mozilla",
			versionSearch: "rv"
		},
		{ 		// for older Netscapes (4-)
			string: navigator.userAgent,
			subString: "Mozilla",
			identity: "Netscape",
			versionSearch: "Mozilla"
		}
	],
	dataOS : [
		{
			string: navigator.platform,
			subString: "Win",
			identity: "Windows"
		},
		{
			string: navigator.platform,
			subString: "Mac",
			identity: "Mac"
		},
		{
			string: navigator.platform,
			subString: "Linux",
			identity: "Linux"
		}
	]

};
BrowserDetect.init();

if (BrowserDetect.browser=="Safari") safari=true;
 else
  if (BrowserDetect.browser=="Firefox" || BrowserDetect.browser=="Mozilla" || BrowserDetect.browser=="Netscape" || BrowserDetect.browser=="Opera" ) moz=true;
   else
    if (BrowserDetect.browser=="Explorer" ) ie=true;


//----------------------------------------------------------------//				
function importcategory()
{
var d;
 if (moz) {
     xmlDoc = document.implementation.createDocument("", "", null)
     xmlDoc.onload = fillcategory;
   }
   else if (ie) {
    xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
    xmlDoc.async = false;
    xmlDoc.onreadystatechange = function() {
    if (xmlDoc.readyState == 4) fillcategory(); };
   }
   else if(safari){
      d = new XMLHttpRequest();
  	  d.open("GET","category.xml",false);
	  d.send("");
	  xmlDoc=d.responseXML;
	  if (d.readyState == 4) fillcategory(); 
   }
   if(moz || ie) xmlDoc.load("category.xml");
}

function fillcategory()
{
 var data=xmlDoc.getElementsByTagName("category");
 var totalelements = data.length;

 if(totalelements>0)
 {
  var description=data[0].getElementsByTagName("description");
  
  var cont=1;
  var aux="<table class=font12boldwhite border=0 cellpadding=0 cellspacing=0>";
   for(var i=0; i<description.length; i++)
      {
        var descrip=description[i].childNodes[0].nodeValue;
        
        aux=aux+"<tr><td>";
        aux=aux+"<a href='#none' onclick=changetext(0,"+cont+",0,0); onmouseover=mouseover(0,"+cont+",0,0); onmouseout=mouseout(0,"+cont+",0,0); class='a'>";
       
        aux=aux+"<div id=b"+cont+" class='buttonbackground'>";
        aux=aux+descrip+"&nbsp;&nbsp;&nbsp;</div></a></td></tr>";
        
        aux=aux+"<tr><td id='b"+cont+"_'></td></tr>";
        cont++;
      }
   document.getElementById('buttoncategory').innerHTML=aux+"</table>";
  }
}
//---------------------------------------------------------------//
function importb()
{
 var d;
 var filename="b"+flagcat+".xml";

 if (moz) {
     xmlDoc = document.implementation.createDocument("", "", null)
     xmlDoc.onload = fill;
   }
   else if (ie) {
    xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
    xmlDoc.async = false;
    xmlDoc.onreadystatechange = function() {
    if (xmlDoc.readyState == 4) fill(); };
   }
   else if(safari){
      d = new XMLHttpRequest();
  	  d.open("GET",filename,false);
	  d.send("");
	  xmlDoc=d.responseXML;
	  if (d.readyState == 4) fill(); 
   }
  
   if(moz || ie) xmlDoc.load(filename);
}

function fill()
{
 
 var filename="b"+flagcat;
 
 var data=xmlDoc.getElementsByTagName(filename);
 var totalelements = data.length;
 if(totalelements>0)
 {
  var description=data[0].getElementsByTagName("description");
  var cont=1;
  var aux="<table class=font12boldwhite border=0 cellpadding=0 cellspacing=0>";
   for(var i=0; i<description.length; i++)
      {
        var descrip=description[i].childNodes[0].nodeValue;
          aux=aux+"<tr><td>";
          
        aux=aux+"<a href='#none' onclick=changetext(1,"+flagcat+","+cont+",0); onmouseover=mouseover(1,"+flagcat+","+cont+",0); onmouseout=mouseout(1,"+flagcat+","+cont+",0); class='a'>";
       // aux=aux+"<a href='#none' onclick=changetext(1,"+flagcat+","+cont+",0); class='ablue'>";
        aux=aux+"<div id='"+filename+"_"+cont+"' class='sbuttonbackground' style='padding:0px 0px 0px 20px;'>";
        aux=aux+descrip+"&nbsp;&nbsp;&nbsp;</div></a>";
           
        aux=aux+"	<tr><td id="+filename+"_"+cont+"_></td></tr>";
        cont++;
      }
   document.getElementById(filename+"_").innerHTML=aux+"</table>";
  }

}
//-------------------------------------------------------------//
//---------------------------------------------------------------//
function importproduct()
{

var filename="b"+flagcat+"_"+flagsubcat+".xml";
var d;
 if (moz) {
     xmlDoc = document.implementation.createDocument("", "", null)
     xmlDoc.onload = fillproduct;
   }
   else if (ie) {
    xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
    xmlDoc.async = false;
    xmlDoc.onreadystatechange = function() {
    if (xmlDoc.readyState == 4) fillproduct(); };
   }
   else if(safari){
      d = new XMLHttpRequest();
  	  d.open("GET",filename,false);
	  d.send("");
	  xmlDoc=d.responseXML;
	  if (d.readyState == 4) fillproduct(); 
   }
   if(moz || ie) xmlDoc.load(filename);
}

function fillproduct()
{
var filename="b"+flagcat+"_"+flagsubcat;
 var data=xmlDoc.getElementsByTagName(filename);
 var totalelements = data.length;
 if(totalelements>0)
 {
  var description=data[0].getElementsByTagName("description");
  
  var cont=1;
  var aux="";
   for(var i=0; i<description.length; i++)
      {
        var descrip=description[i].childNodes[0].nodeValue;
     
        aux=aux+"<a href='#none' onclick=importproducts("+cont+") onmouseover=mouseover(2,"+flagcat+","+flagsubcat+","+cont+"); onmouseout=mouseout(2,"+flagcat+","+flagsubcat+","+cont+"); class='a'>";
//aux=aux+"<a href='#none' onclick=importproducts("+cont+") class='ablue'>";
        aux=aux+"<div id="+filename+"_"+cont+" class='ssbuttonbackground' style='padding:0px 0px 0px 40px;'>";
        aux=aux+descrip+"&nbsp;&nbsp;&nbsp;</div></a>";
        cont++;
      }
      
   document.getElementById(filename+"_").innerHTML=aux;
   
  }
  //document.getElementById('des').innerHTML="";
 // toggleVisibility("paneoffer");
}

//-------------------------------------------------------------//
function importproducts(cont)
{
var auxflag=flagbutton;
flagbutton=cont;

if((auxflag!=0)&(flagbutton!=auxflag)){clearbutton(2,flagcat,flagsubcat,auxflag)};
var aux=document.getElementById("b"+flagcat+"_"+flagsubcat+"_"+flagbutton).innerHTML;
var aux1=document.getElementById("b"+flagcat+"_"+flagsubcat).innerHTML;
var aux2=document.getElementById("b"+flagcat).innerHTML;
aux=aux2+"> "+aux1+"> "+aux;
document.getElementById('refine').innerHTML="<div align=left><font class=font16boldblue>"+aux+"</font></div>";


var filename="b"+flagcat+"_"+flagsubcat+"_"+flagbutton+".xml";
var d;
 if (moz) {
     xmlDoc = document.implementation.createDocument("", "", null)
     xmlDoc.onload = fillproducts;
   }
   else if (ie) {
    xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
    xmlDoc.async = false;
    xmlDoc.onreadystatechange = function() {
    if (xmlDoc.readyState == 4) fillproducts(); };
   }
   else if(safari){
      d = new XMLHttpRequest();
  	  d.open("GET",filename,false);
	  d.send("");
	  xmlDoc=d.responseXML;
	  if (d.readyState == 4) fillproducts(); 
   }
   if(moz || ie) xmlDoc.load(filename);
}

function fillproducts()
{
//if (moz)fadeMozilla();

//if (ie)fadeExplorer();

 var name,description,specs,netprice,vatprice,pic,stock,rate;
var filename="b"+flagcat+"_"+flagsubcat+"_"+flagbutton;
 var data=xmlDoc.getElementsByTagName('body');
 var totalelements = data.length;
 var aux="<table border=0 cellpadding=0 cellspacing=0>";
 
 if(totalelements>0)
 {
 
   for (var i=0;i<totalelements;i++)
   {
    name=data[i].getElementsByTagName("name");
    name=name[0].childNodes[0].nodeValue;
    description=data[i].getElementsByTagName("description");
    description=description[0].childNodes[0].nodeValue;
    specs=data[i].getElementsByTagName("specs");
    specs=specs[0].childNodes[0].nodeValue;
    netprice=data[i].getElementsByTagName("netprice");
    netprice=netprice[0].childNodes[0].nodeValue;
    vatprice=data[i].getElementsByTagName("vatprice");
    vatprice=vatprice[0].childNodes[0].nodeValue;
    pic=data[i].getElementsByTagName("pic");
    pic=pic[0].childNodes[0].nodeValue;
    stock=data[i].getElementsByTagName("stock");
    stock=stock[0].childNodes[0].nodeValue;
    rate=data[i].getElementsByTagName("rate");
    rate=rate[0].childNodes[0].nodeValue;
  //class=tableproduct;
  aux=aux+"<tr bgcolor=black class=tableproduct><td height=120 width=340 valign=top style='padding:10px 10px 10px 10px;' ><font class=font14boldwhiteunder>"+name+"</font><br><br><br>Price inc VAT:&nbsp;&nbsp;<font class=font20boldblue>&#0128;"+vatprice+"</font><br>Stock:&nbsp;&nbsp;<font class=font12boldblue>"+stock+"</font>";
  if(pic!="none") aux=aux+"</td><td align=left width=110><img border=0 src='"+pic+"' height=100 width=100>";
   else
    aux=aux+"</td><td align=left width=110>";
  aux=aux+"</td></tr><tr><td colspan=2 height=10></td></tr>";
        }

    document.getElementById('des').innerHTML=aux+"</table>";
  }
}

//-------------------------------------------------------------//
function toggleVisibility(me){
//me=document.getElementById('me');
		if (me=="show"){
			document.getElementById('paneoffer').style.visibility="visible";
			}
		else {
			document.getElementById('paneoffer').style.visibility="hidden";
			}
		}

function checkoffer()
{
document.getElementById('refine').innerHTML="<div align=center><font class=font20boldblue>Special offers</font></div>";
toggleVisibility("show");
document.getElementById('des').innerHTML="&nbsp;";
flagcat=0;
flagsubcat=0;
flagbutton=0;
}

//-------------------------------------------------------------//
												flagcat=0;
												flagsubcat=0;
												flagbutton=0;
												
																					
												function mouseover(level,cat,subcat,button)
												{
												if (level==0){document.getElementById("b"+cat).className ='bbuttonbackground';}
												if (level==1){document.getElementById("b"+cat+"_"+subcat).className ='bbuttonbackground25';}
												if (level==2){document.getElementById("b"+cat+"_"+subcat+"_"+button).className ='bbuttonbackground50'};
												}
												
												function mouseout(level,cat,subcat,button)
												{
												if (level==0){if (flagcat!=cat){document.getElementById("b"+cat).className ='buttonbackground'}};
												if (level==1){if (flagsubcat!=subcat){document.getElementById("b"+cat+"_"+subcat).className ='sbuttonbackground'}};
											    if (level==2){if (flagbutton!=button){document.getElementById("b"+cat+"_"+subcat+"_"+button).className ='ssbuttonbackground'}};
												}
												
																																	
												function clearbutton(level,cat,subcat,button)
												{
												if ((level==0)&(flagcat==cat)){document.getElementById("b"+cat).className ='buttonbackground';};
												if ((level==1)&(flagsubcat==subcat)){document.getElementById("b"+cat+"_"+subcat).className ='sbuttonbackground'};
											    if (level==2){document.getElementById("b"+cat+"_"+subcat+"_"+button).className ='ssbuttonbackground'};
											   
											    
												}
												
												function changetext(level,cat,subcat,button)
												{
												//alert ("l:"+level+" c:"+cat+" sc:"+subcat+" b:"+button+" flag:"+flagcat);
												// alert("flag:"+flagcat+"cat:"+cat)
												//alert("cat:"+cat+" flag:"+flagcat);
												 if (level==0)
												 {
												  if (cat==flagcat)
												  {
												   document.getElementById("b"+flagcat+"_").innerHTML="";
												   clearbutton(0,flagcat,0,0);
												   //toggleVisibility("show");
												   checkoffer();
												   
												  }
												  else
												  { 
												   document.getElementById("b"+cat).className ='bbuttonbackground';
												   document.getElementById('des').innerHTML="";
												  toggleVisibility("false");
												   if (flagcat!=0){document.getElementById('b'+flagcat+"_").innerHTML="";clearbutton(0,flagcat,0,0);}
												   flagcat=cat;
												   flagsubcat=0;
												   importb();
												  // toggleVisibility("paneoffer");
												   var aux=document.getElementById("b"+cat).innerHTML;
												    document.getElementById('refine').innerHTML="<div align=left><font class=font16boldblue>"+aux+"</font></div>";
											      }
												 }
												 
												 if (level==1)
												 {
												 //alert("cat:"+subcat+" flag:"+flagsubcat);
												   if (subcat==flagsubcat)
												  {
												   document.getElementById("b"+cat+"_"+flagsubcat+"_").innerHTML="";
												   //document.getElementById('des').innerHTML="";
												   toggleVisibility("false");
												   clearbutton(1,cat,subcat,0);
												   flagsubcat=0;
												  var aux=document.getElementById("b"+cat).innerHTML;
												    document.getElementById('refine').innerHTML="<div align=left><font class=font16boldblue>"+aux+"</font></div>"
												  }
												  else
												  {
												  if (flagsubcat!=0)
												  {
												   document.getElementById("b"+flagcat+"_"+flagsubcat+"_").innerHTML="";
												   clearbutton(1,flagcat,flagsubcat,0);
												   flagsubcat=0;
												  }
												  var aux=document.getElementById("b"+cat).innerHTML;
												  var aux1=document.getElementById("b"+cat+"_"+subcat).innerHTML;aux=aux+"> "+aux1;
                                                  document.getElementById('refine').innerHTML="<div align=left><font class=font16boldblue>"+aux+"</font></div>";
												  flagsubcat=subcat;
												  importproduct();
												  flagbutton=0;
												  document.getElementById("b"+flagcat+"_"+flagsubcat).className ='bbuttonbackground25';
												  
												  }
												}
											}

fadeInPage.speed=50; //Set speed of transition for non-IE, lower numbers are faster, 20 is the minimum safe value
fadeInPage.bg='#000000'; //Set backgroud style (color or color and image) of transition division for non-IE, should match page background or the predominant color of the page

///////////////// Stop Editing /////////////////

function fadeInPage(){

var el=document.getElementById("fadeDiv");
el.style[fadeInPage.prprt] = el.style[fadeInPage.prprt] == ''? 1 : el.style[fadeInPage.prprt];
if (el.style[fadeInPage.prprt] >0.4)
{
el.style[fadeInPage.prprt] = el.style[fadeInPage.prprt] - 0.02;
setTimeout("fadeInPage()", fadeInPage.speed);
}
else 
{
el.style[fadeInPage.prprt] = 1
//el.style[fadeInPage.prprt] = 0;
//if(document.removeChild)
//el.parentNode.removeChild(el);
}
//alert(el.style[fadeInPage.prprt]);
}
var prop



function fadeMozilla()
{
if(document.documentElement&&document.documentElement.style){
fadeInPage.d=document.documentElement, fadeInPage.t=function(o){return typeof fadeInPage.d.style[o]=='string'};
fadeInPage.prprt=fadeInPage.t('opacity')? 'opacity' : fadeInPage.t('MozOpacity')? 'MozOpacity' : fadeInPage.t('KhtmlOpacity')? 'KhtmlOpacity' : null;
}
fadeInPage.set=function(){

prop=fadeInPage.prprt=='opacity'? 'opacity' : fadeInPage.prprt=='MozOpacity'? '-moz-opacity' : '-khtml-opacity';
document.write('\n<style type="text/css">\n#fadeDiv {\nheight:'+window.innerHeight+'px;display:block;position:fixed;'+
'z-index:10000;top:8;left:0;background:'+fadeInPage.bg+';width:100%;\n'+ prop +':1;\n}\n<\/style>\n');
}
fadeInPage.set();
/*
if(window.addEventListener&&fadeInPage.prprt){
fadeInPage.set();
window.addEventListener('load', fadeInPage, false);
}*/
}

function fadeExplorer()
{
var AccessibilityStyleSheet = document.createStyleSheet("change_opacity", "projection,screen,tv")

AccessibilityStyleSheet.insertRule("{filter:alpha(opacity=25)}", 0);
AccessibilityStyleSheet.insertRule("-moz-opacity:.25;", 1);
AccessibilityStyleSheet.insertRule("opacity:.25;", 2);
AccessibilityStyleSheet.insertRule("zoom:1;", 3);

var sheet = document.createStyleSheet();
sheet.addRule('h1', 'background: red;');

document.getElementById("fadeDiv").className ="change_opacity";

}
