// The rollover script for an image
//=================================
function rollImage(imageName,imageScr){
    if(!editMode){
        var i = document.images[imageName]
        i.oSrc = i.src;
        i.src = imageScr;
    }
}
// The restore rollover script for an image
//=========================================
function restoreImage(imageName){
    if(!editMode) {
        var i = document.images[imageName]
        i.src = i.oSrc;
    }
}
// For creating a PopUp window
//============================
function openWindow(pageUrl,pageName,params){
    window.open(pageUrl,pageName,params)
}
// For all forms
//====================================================================
function submitForm(frmObj){
    var errorList = ""
    var elArray = frmObj.elements
    var errorMessage = "Sorry, the following are required:\n"
    if(frmObj.errorMessage) errorMessage = frmObj.errorMessage +"\n"
    for(var i=0; i<elArray.length; i++){
       if(elArray[i].isRequired && elArray[i].isRequired=="yes"){
           if(elArray[i].value==""){
               if(elArray[i].displayName){
                   errorList += elArray[i].displayName +"\n"
                }else{
                   errorList += elArray[i].name +"\n"}
           }
       }
    }
    if(errorList == "") frmObj.submit();
    else alert(errorMessage +""+ errorList);
}
// For Flash Objects
//============================
function writeFlash(swfScr, swfWidth, swfHeight, swfVersion, flashID, bgColor, wmode){
	document.write('<OBJECT width="'+ swfWidth +'" height="'+ swfHeight +'" id="'+ flashID +'" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version='+ swfVersion +'">\n');
	document.write('<PARAM name="movie" value="'+ swfScr  +'">\n');
	document.write('<PARAM name="quality" value="high">\n');
    document.write('<PARAM name="menu" value="false">\n');
	document.write('<PARAM name="wmode" value="'+ wmode +'">\n');
	document.write('<PARAM name="scale" value="exactfit">\n');
    document.write('<PARAM name="bgcolor" value="'+ bgColor +'">\n');
	document.write('<EMBED src="'+ swfScr  +'" width="'+ swfWidth +'" height="'+ swfHeight +'" id="'+ flashID +'" bgcolor="'+ bgColor +'" wmode="'+ wmode +'" quality="high" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash"></EMBED>\n');
	document.write('</OBJECT>');
}
// For Java Objects
//============================
function writeJava(classFile, codeBase, javaWidth, javaHeight){
	document.write('<OBJECT width="'+ javaWidth +'" height="'+ javaHeight +'" classid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93" codebase="http://java.sun.com/products/plugin/1.4/jinstall-14-win32.cab#Version=1,4,0,mn">\n');
	document.write('<PARAM name="code" value="'+ classFile +'">\n');
	document.write('<PARAM name="codebase" value="'+ codeBase +'">\n');
	document.write('<PARAM name="type" value="application/x-java-applet;jpi-version=1.4">\n');
	document.write('<PARAM name="scriptable" value="true">\n');
	document.write('<EMBED code="'+ classFile +'" codebase="'+ codeBase +'" width="'+ javaWidth +'" height="'+ javaHeight +'" type="application/x-java-applet;jpi-version=1.4" pluginspage="http://java.sun.com/j2se/1.4/download.html"></EMBED>\n');
	document.write('</OBJECT>');
}
// For Quicktime Objects
//============================
function writeQuicktime(QTsrc, QTwidth, QTheight){
	document.write('<OBJECT width="'+ QTwidth +'" height="'+ QTheight +'" classid="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B" CODEBASE="http://www.apple.com/qtactivex/qtplugin.cab">\n');
	document.write('<PARAM name="src" value="'+ QTsrc +'">\n');
	document.write('<PARAM name="controller" value="true">\n');
	document.write('<EMBED src="'+ QTsrc +'" width="'+ QTwidth +'" height="'+ QTheight +'" controller="true" pluginspage="http://www.apple.com/quicktime/"></EMBED>\n');
	document.write('</OBJECT>');
}

// For Horizontal Menu
//========================
function build_Menu_h(){
    var menuids=["SoftPageMenu"]
    for (var i=0; i<menuids.length; i++){
        var ultags = document.getElementById(menuids[i]).getElementsByTagName("ul")
        for (var t=0; t<ultags.length; t++){
            if (ultags[t].parentNode.parentNode.id==menuids[i]){
                ultags[t].style.top = ultags[t].parentNode.offsetHeight+"px"
                ultags[t].parentNode.getElementsByTagName("a")[0].className = "mainfoldericon" // NOT so good
            }else{
                ultags[t].style.left = ultags[t-1].getElementsByTagName("a")[0].offsetWidth+"px"
                ultags[t].parentNode.getElementsByTagName("a")[0].className = "subfoldericon"  // NOT so good
            }
            ultags[t].parentNode.onmouseover=function(){
                this.getElementsByTagName("ul")[0].style.visibility = "visible"
            }
            ultags[t].parentNode.onmouseout=function(){
                this.getElementsByTagName("ul")[0].style.visibility = "hidden"
            }
        }
    }
}

// For Vertical Menu
//======================
function build_Menu_v(){
    var menuids = ["SoftPageMenu"]
    for (var i=0; i<menuids.length; i++){
        var ultags = document.getElementById(menuids[i]).getElementsByTagName("UL")
        for (var t=0; t<ultags.length; t++){
            ultags[t].parentNode.getElementsByTagName("A")[0].className = "subfolderstyle"
            if (ultags[t].parentNode.parentNode.id == menuids[i]){
                ultags[t].style.left = ultags[t].parentNode.offsetWidth+"px"
            }else{
                ultags[t].style.left = ultags[t-1].getElementsByTagName("A")[0].offsetWidth+"px"
            }
            ultags[t].parentNode.onmouseover = function(){
                this.getElementsByTagName("UL")[0].style.display = "block"
            }
            ultags[t].parentNode.onmouseout = function(){
                this.getElementsByTagName("UL")[0].style.display = "none"
            }
        }
		for (var t=ultags.length-1; t>-1; t--){
		  ultags[t].style.visibility = "visible"
		  ultags[t].style.display = "none"
        }
    }
}

// For Tab Menu
//==================
function build_Menu_t(){
}

// Change CCS on Object
function swapCss(obj, cssName){
    obj.className = cssName;
}

// Functions for the products
//===========================
// uID | productPrice | wasPrice | ProductID | addToBasketLink | productDetailsLink
function setProduct(obj, uID){
    var productDiv = document.getElementById("product_"+uID);
    var values     = String(obj.value).split("|");
    var productPrice       = values[1];
    var wasPrice           = values[2];
    var addToBasketLink    = values[4]+"?basketAction=Add&temCode="+values[3];
    var productDetailsLink = values[5];
    //alert(values)
    var productEl  = productDiv.getElementsByTagName("SPAN"); //SPANS
    for(var i=0; i<productEl.length; i++){
        if(productEl[i].id=="productPrice") productEl[i].innerHTML = productPrice;
        if(productEl[i].id=="wasPrice") productEl[i].innerHTML = wasPrice;
    }
    var productEl  = productDiv.getElementsByTagName("DIV");  //DIVS
    for(var i=0; i<productEl.length; i++){
        if(productEl[i].id=="wasPrice_DIV") productEl[i].style.display = (values[2]=="0.00")? "none" : ""
    }
    var productEl  = productDiv.getElementsByTagName("A");    //LINKS
    for(var i=0; i<productEl.length; i++){
        if(productEl[i].id=="addToBasketLink") productEl[i].href = addToBasketLink;
        if(productEl[i].id=="productDetailsLink") productEl[i].href = productDetailsLink;
    }
}

// Shopping Basket Functions
//===========================
function doUpdateBasket(action,itemCode) {
	document.BasketForm.actionName.value = action;
    document.BasketForm.itemCode.value = itemCode;
	document.BasketForm.submit();
}
function ShowHide(uID,oBj){
	if(oBj.checked){
		doUpdateBasket('ShowProduct',uID)
	} else {
		doUpdateBasket('HideProduct',uID)
	}
}

// Analytics
// =========
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();

function pageHit(){
    function flashEnabled(){
        var f=false,n=navigator;
        if(n.plugins && n.plugins.length){
           for (var i=0;i<n.plugins.length;i++){
               if (n.plugins[i].name.indexOf('Shockwave Flash')!=-1){
                  f = true;
                  break;
               }
           }
        }else if (window.ActiveXObject){
           for(var i=10;i>=2;i--){
               try {
                   var fl=eval("new ActiveXObject('ShockwaveFlash.ShockwaveFlash."+i+"');");
                   if(fl){
                       f = true;
                       break;
                   }
               }catch(e){}
           }
        }
        return f;
    }
    // Information Collection
    var hitSrc = "/SoftPage/stats_RegisterHit.asp?an=hit"
        // URL
        hitSrc = hitSrc+"&pr="+ document.location.protocol;
        hitSrc = hitSrc+"&do="+ document.domain;
        hitSrc = hitSrc+"&pn="+ document.location.pathname;
        // Referer
        hitSrc = hitSrc+"&rf="+ escape(document.referrer);
        // Screen
        hitSrc = hitSrc+"&sw="+ screen.width;
        hitSrc = hitSrc+"&sh="+ screen.height;
        hitSrc = hitSrc+"&cd="+ screen.colorDepth;
        // Navigator
        hitSrc = hitSrc+"&na="+ BrowserDetect.browser +" "+ BrowserDetect.version +" on "+ BrowserDetect.OS;
        hitSrc = hitSrc+"&ce="+ navigator.cookieEnabled;
        hitSrc = hitSrc+"&cu="+ navigator.cpuClass;
        // Language
        hitSrc = hitSrc+"&bl="+ navigator.browserLanguage;
        // Applications
        hitSrc = hitSrc+"&je="+ navigator.javaEnabled();
        hitSrc = hitSrc+"&fe="+ flashEnabled();

    // Log Hit

    var imgObj = new Image(1,1);
    if(document.location.protocol=="https:"){
        imgObj.src = "https://"+ document.domain +""+ hitSrc
    }else if(document.location.protocol=="http:"){
        imgObj.src = "http://"+ document.domain +""+ hitSrc
    }else{
        imgObj.src = "/AdminImages/pixel.gif"
    }
    //location.href = "http://"+ document.domain +""+ hitSrc
    return false;
}