
var cacheID;
var securePages;
function checkSecure(script){
	scriptName=script.split("?")[0];
	if (securePages==null){
		securePages = "";
		}
	return ((securePages).indexOf(scriptName)>=0);
	}

function showPage(pageName,scriptParameters, isSecure, isJava){
	isSecure = isSecure || checkSecure(pageName)
	var URL = isSecure ? secureUrl : nonSecureUrl
	var AppName = isJava ? javaAppName : jsAppName
	var form=document.forms["genericForm"];
	var sep="?"
	var pageCacheID=cacheID;
	with (form){
		if ((navigator.appName== "Netscape") && (navigator.appVersion.substr(0,1)=="4")){
			pageName = pageName.split("?")[0];
			URL += AppName;
			URL += pageName;
			for (i=0 ; i<form.elements.length ; i++){
				URL += sep + form.elements[i].name + "=" + form.elements[i].value
				sep="&";
				}
			URL += "&" + scriptParameters;
			regexp=new RegExp("&&","g");
			while (URL.match(regexp)){
				URL=URL.replace(regexp,"&");
				}
			self.location.href=URL
			}
		else{
			reset()
			setFormParams(scriptParameters, form)
			target="";
			if (pageName.indexOf("?")>0){ sep = "&" }
			action= URL + AppName + pageName + sep + pageCacheID ;
			submit()
			}
		}
	}

var newWinCounter=0;
function showPopUpPage(pageName, scriptParameters, windowName, windowParams, isSecure, isJava){
	isSecure = isSecure || checkSecure(pageName)
	if (windowName==null || windowName==""){
		windowName = "_rswwwPopUp_" + newWinCounter++;
		}
	var newWin=window.open("", windowName, windowParams );
	var URL = isSecure ? secureUrl : nonSecureUrl
	var AppName = isJava ? javaAppName : jsAppName
	var form=document.forms["genericForm"];
	var sep="?";
	var pageCacheID=cacheID;
	with (form){
		if ((navigator.appName== "Netscape") && (navigator.appVersion.substr(0,1)=="4")){
			pageName = pageName.split("?")[0];
			URL += AppName;
			URL += pageName;
			for (i=0 ; i<form.elements.length ; i++){
				URL += sep + form.elements[i].name + "=" + form.elements[i].value
				sep="&";
				}
			URL += "&" + scriptParameters;
			regexp=new RegExp("&&","g");
			while (URL.match(regexp)){
				URL=URL.replace(regexp,"&");
				}
			newWin.location.href=URL;
			}
		else{
			reset()
			setFormParams(scriptParameters + "&popup=Y", form)
			target=windowName;
			if (pageName.indexOf("?")>0){ sep = "&" }
			action= URL + AppName + pageName + sep + pageCacheID ;
			submit()
			}
		}
	newWin.focus()
	}

function scriptLink(scriptName, scriptParameters) {
    showPage(scriptName, scriptParameters,false,false)
	}

function secureScriptLink(scriptName, scriptParameters) {
    showPage(scriptName, scriptParameters,true,false)
	}

function scriptWindowLink(scriptName, scriptParameters, windowName, windowParameters) {
    showPopUpPage(scriptName, scriptParameters, windowName, windowParameters,false,false)
	}

function secureScriptWindowLink(scriptName, scriptParameters, windowName, windowParameters) {
    showPopUpPage(scriptName, scriptParameters, windowName, windowParameters,true,false)
	}

function showScriptPage(pageName,scriptParameters, isSecure){
	showPage(pageName,scriptParameters, isSecure, false)
	}

function showJavaPage(pageName,scriptParameters, isSecure){
	showPage(pageName,scriptParameters, false, true)
	}

function showPopUpJavaPage(pageName, scriptParameters, windowName, windowParams, isSecure){
	showPopUpPage(pageName, scriptParameters, windowName, windowParams, isSecure, true)
	}

function showPopUpScriptPage(pageName, scriptParameters, windowName, windowParams, isSecure){
	showPopUpPage(pageName, scriptParameters, windowName, windowParams, isSecure, false)
	}

function setFormParams(formParameters, form){
	if (formParameters==null || formParameters==""){
		return
		}
	var param, thisItem, elem
	var found=false;
	var params = formParameters.split("&");
	var iLen=params.length;
	if (form==null){
		form = document.forms["genericForm"];
		}
	var thisItem = new Array("","")
	for (var i=0 ; i<iLen ; i++){
		param = new String(params[i])
		if (param!=null && param!=""){
			j=param.indexOf("=")
			if (j<0) {
				thisItem[0] = param;
				thisItem[1] = "";
				}
			else {
				thisItem[0] = param.substr(0,j);
				thisItem[1] = param.substr(j+1);
				}
			thisItem[1] = unescape(thisItem[1]);
			found=false;
			for (var j=0; j<form.elements.length ; j++){
				elem=form.elements[j];
				if (elem.name==thisItem[0]){
					found=true;
					break;
					}
				}
			if (found){
				elem.value=thisItem[1];
				}
			else {
				var inputvalue = document.createElement('INPUT');
				inputvalue.setAttribute('type', 'hidden');
				inputvalue.setAttribute('name', thisItem[0]);
				inputvalue.setAttribute('value',thisItem[1]);
				form.appendChild(inputvalue);
				}
			}
		}
	}

function genericMessage(wTitle, wBody, wHeight, wWidth){
	var width, height;
	if (wHeight==null){ height=300 } else {height=wHeight}
	if (wWidth==null){ width=400 } else {width = wWidth }
	var params = "title=" + (wTitle || "") + "&labelID=" + (wBody || "")
    var winparams="width=" + width + ",height=" + height + ",left=100,top=100,resizable=yes,scrollbars=yes,toolbar=no"
	showPopUpPage("/info/GenericMessage.jsp", params, "genericMessage", winparams, false, false)
	}

function openWindow(script,args,name) {
	var popupWindow = window.open(script,name,args);
	}

// sets focus on form fields
function lookatMe() {
	if ((navigator.jsAppName!="Microsoft Internet Explorer") || (parseInt(navigator.appVersion)>=4)) {
		focus();
		if (document.forms["loginForm"])
			document.forms["loginForm"].username.focus();
		else if (document.forms["simpleSearch"])
			document.forms["simpleSearch"].SearchText.focus();
		}
	}

function showHome(params){
	showPage(homePage,params,false,false)
	}

function allProdBrowse(path2Add) {
	browseProd(path2Add);
	}
function featRangeBrowse(path2Add) {
	browseRange(path2Add);
	}
function browseProd(path2Add,extraParms) {
	showCategoryName( browsePage,path2Add,"allprod",extraParms)
	}
function browseRange(path2Add,extraParms) {
	showCategoryName(browsePage,path2Add, "range",extraParms)
	}
function quickProd(path2Add,extraParms) {
	showCategoryName(quickViewPage,path2Add, "allprod",extraParms)
	}
function quickRange(path2Add,extraParms) {
	showCategoryName(quickViewPage, path2Add, "range",extraParms)
	}
function showCategoryName(scriptName, categoryName, categoryType, scriptParameters) {
	if (scriptName == null || scriptName == "")
		scriptName = browsePage;
	if (scriptParameters == null){ scriptParameters = ""; }
	categoryPath = "";
	switch (categoryType ) {
		case "range" :
			categoryPath = featuredRangePath;
			break;

		case "allprod" :
			categoryPath = allProductsPath;
			break;
		}
	showPage(scriptName, "catpath=" + escape(categoryPath + categoryName)  + "&" + scriptParameters, false,false);
	}

function showSearchHistory() {
	showPopUpPage("/search/SearchHistory.jsp", "", "SearchHistory", "height=400,width=627,resizable=yes,scrollbars=yes", false, false)
	}

// jump to the module page for stocknum
function showProduct(stockNbr) {
	params = "stockNo=" + stockNbr + "&prmstocknum=" + stockNbr;
	showPage(subrangePage, params);
	}


function showPrice(stocknum, readonly) {
    params = "stocknum=" + stocknum
	if (readonly=="Y")
		params += "&mode=infoOnly";
	showPopUpPage("/browse/PriceInfoPopUp.jsp", params, "price", addToOrderArgs, false, false)
	}

// jump to the browse page for category
function showCategory(category, level, brandName, newProducts, campaignName, logObs, rohs) {
	showCatalogue(browsePage, category, level, brandName, newProducts, campaignName, logObs, rohs)
    }

function showQuickView(category, level, brandName, newProducts, campaignName, rohs) {
	showCatalogue(quickViewPage, category, level, brandName, newProducts, campaignName, '', '', rohs)
	}

function showCatalogue(page, category, level, brandName, newProducts, campaignName, fromHeader, rohsStas) {
	params = "catoid=" + category
	params += (level!=null && level!="") ? "&level=" + level : "";
	params += brandName!=null ? "&brand=" + escape(brandName) : "";
	params += newProducts!=null ? "&showNew=" + newProducts: "";
	params += campaignName!=null ? "&name=" + campaignName : "";
	params += fromHeader!=null ? "&header=" + fromHeader : "";
	params += rohsStas!=null ? "&rohsStas=" + rohsStas : "";
	switch (level){
		case '5':
			showPage(rangePage + "?catoid=" + category, params, false,false);
			break;
		case '6':
			showPage(subrangePage + "?catoid=" + category, params, false,false);
			break;
		default:
			showPage(page + "?catoid=" + category, params, false,false)
        }
	}

// jump to an AboutRS page
function showAbout(labelID) {
	params = "labelID=" + labelID
	showPage("/info/AboutRS.jsp", params, false,false)
	}

function showLogin(uName, uPswd){
	var URL = secureUrl
	var AppName = jsAppName
	var scriptParameters="popup=Y"
	var pageName = "/home/LoginDialog.jsp"
	if (uName!=null || uPswd!=null){
		newWin=window.open("/" + locale + "/html/loginMessage.html", "Login", loginArgs);
	}
	else {
		newWin=window.open("", "Login", loginArgs);
		}

	if (uName!=null && uName!=""){
		scriptParameters += "&username=" + escape(uName) + "&mode=doLogin"
		}
	if (uPswd!=null && uPswd!=""){
		scriptParameters += "&password=" + escape(uPswd) + "&mode=doLogin"
		}
	var form=document.forms["genericForm"]
	with (form){
		if ((navigator.appName== "Netscape") && (navigator.appVersion.substr(0,1)=="4")){
			pageName = pageName.split("?")[0];
			URL += AppName;
			URL += pageName;
			sep="?";
			for (i=0 ; i<form.elements.length ; i++){
				URL += sep + form.elements[i].name + "=" + form.elements[i].value
				sep="&";
				}
			newWin.location.href=URL + "&" + scriptParameters;
			}
		else{
			reset();
			target="Login"
			action=URL + AppName + pageName
			setFormParams(scriptParameters);
			submit();
			}
		}
	newWin.focus()
	}

function logOut(){
	showScriptPage("/home/Logout.jsp")
	}

function showRegister(target){
	var param="";
	if (target!=null && target!=""){
		param= "targetscript=" + target;
		}
	showPopUpPage("/browse/GuestRegister.jsp", param, "Register", guestRegArgs, false, false)
	}

function goRegister(obsLogType, obsLogText){
	var params = "";
	if (obsLogType!=null && obsLogType!=""){
		params += "obsLogType=" + obsLogType;
		}
	if (obsLogText!=null && obsLogText!=""){
		params += "obsLogText=" + obsLogText;
		}
	showPage("/registerUserName.do",params, true, true)
	}

function showSecure(linkFrom, linkTarget){
    var params  = "originalLinkFrom=" + linkFrom + "&secureTarget=" + linkTarget;
    winparams = 'width=600,height=310,left=100,top=100,resizable=no,scrollbars=yes,toolbar=no,status=yes'
	showPopUpPage("/info/Secure.jsp", params, "password", winparams, false, false)
	}

function forgotPassword(){
    params  = "";
    winparams = "width=500,height=330,left=100,top=100,resizable=no,toolbar=no,scrollbars=yes";
	showPopUpPage("/browse/EmailRequestPassword.jsp", params, "password", winparams, false, false)
	}


function showOrgMap(addNew){
	var windowSettings= "width=550,height=" + (screen.height-100) + ",scrollbars=1,top=10,left=10,resizable=yes,status=1";
	showPopUpPage("/bfe/bfeOrgMap.jsp", addNew, "orgMap", windowSettings, false, false)
	}

function showCompareWindow(comparisonType){
	var windowSettings= "width=" + (screen.width-30) + ",height=" + (screen.height-200) + ",scrollbars=1,top=10,left=10,resizable=yes,status=1";
	showPopUpPage("/browse/ComparisonTable.jsp", comparisonType, "comparisonTable",windowSettings, false, false);
	}


function deliveryAddresses(){
	winparams="width=650,height=400,left=100,top=50,resizable=no,scrollbars=yes,toolbar=no";
	showPopUpPage("/edit/DisplayDeliveryAddresses.jsp", "", "deliveryAddress", winparams, false, false);
	}

function showPartsLists(){
	showPage("/parts/PartSearch.jsp","",false,false)
	}

function showOrder(TC){
	if (document.forms["orderForm"]
		&& document.forms["orderForm"].SubmitFrom
		&& document.forms["orderForm"].SubmitFrom.value=="OrderPad"){
		if (TC!=null && TC!=""){
			document.forms["orderForm"].DespatchPoint.value=TC
			}
		doSubmit();
		}
	else {
		params="";
		if (TC!=null && TC!=""){
			params= "DespatchPoint=" + TC
			}
		showPage(orderPadPage, params,false,false);
		}
	}

function orderHistory(orderNbr, orderOID, pmMode){
	var params = "";
	if (pmMode!=null)
		params += "mode=" + pmMode + "&Mode=" + pmMode;
	if (orderNbr!=null && orderOID!=null && orderNbr!="" && orderOID!=""){
		script = "/order/OrderHistoryView.jsp"
		params += "&OIDOrder=" + orderOID + "&orderNumber=" + orderNbr;
		}
	else {
		script = "/order/OrderHistorySearch.jsp"
		}
	showPage(script, params,false,false)
	}

function reOrder(orderRef){
	newWin=window.open("", "reorder", "width=500,height=400,left=100,top=100,resizable=no,scrollbars=yes,toolbar=no");
	with (document.forms["reOrderForm"]){
		reset();
	    orderNo.value=orderRef;
		target="reorder"
		submit()
		}
	newWin.focus()
	}

function showParcelTracking(Ref){
	params = Ref ? "orderRef=" + Ref : "";
	showPage("/info/ParcelTrackDialog.jsp",params,false,false)
	}

function openAccount(){
	showPage("/browse/Campaign.jsp",'&Name=openAccount&showForm=openAccount/openAccount.html',false,false)
	}

function bfeMenu(){
	showPage("/bfe/bfeMenu.jsp","",false,false)
	}

function showZoom(img, cat_OID, modulename, brand, campaign) {
    params = "&zoomImage=" + img + "&catoid=" + cat_OID + "&moduleName=" + modulename + "&Brand=" + brand + "&name=  " + campaign;
	winparams=moduleImageArgs;
	showPopUpPage("/zoomImage.do", params, "rswwwZoom", winparams, false, true);
    }

function SetTicked(formName, elementName, value) {
	var form=document[formName];
	var n = form.elements.length;
	for(i=0; i<n; i++) {
		var matchedElement = form.elements[i].name.indexOf(elementName) != -1 ? true : false;
		if ( form.elements[i].type == "checkbox" && matchedElement ) {
			form.elements[i].checked=value;
			}
		}
	}

function updateCompareCount(count)
{
	for (i=0;i< document.forms.length;i++)
		{
			var formName = document.forms[i];
			var n = formName.elements.length;
				for(l=0; l<n; l++)
				{
					if (formName.elements[l].name == "comparecount")
					{
						 formName.elements[l].value = count;
						 break;
					}
				}
		}
}



function openCompare(formName) {
	window.open("",'comrswwwComparisonTable','toolbars=0,menubar=0,scrollbars=1,width=780,height=470,top=10,left=10,resizable');
	var theForm = document[formName];
    theForm.action=nonSecureUrl + javaAppName + "/comparisonAction.do";
    theForm.target="comrswwwComparisonTable";
    theForm.submit();
	}

function MenuChangerCatChild(tableid,state) {
    if (state == "over") {
        tableid.style.backgroundColor="#e5e5e5";
        }
    if (state == "out") {
        tableid.style.backgroundColor="#F7F7F7";
        }
    }

function compareAlternate(productNo1, productNo2)
{
	var st = "&compareProduct_0="+productNo1+"&compareProduct_1="+productNo2+"&alternate=Y";
	var windowSettings= "width=" + (screen.width-30) + ",height=" + (screen.height-200) + ",scrollbars=1,top=10,left=10,resizable=yes,status=1";
	showPopUpPage( '/comparisonAction.do', st, 'comparisonTable', windowSettings, false, true);
}

function brandSearch(brand, name)
{
	var parameters = "";
    parameters += (name != null && name != "") ? "&name="+ name : "";
     parameters += "&searchText=-1&brand="+escape(brand)+"&callingPage=searchresults";
    showPage("/searchAction.do", parameters , false,true);
}

function technologySearch(technology, name)
{
	var parameters = "";
    parameters += (name != null && name != "") ? "&name="+ name : "";
    parameters += "&searchText=-1&technology="+escape(technology)+"&callingPage=searchresults";
    showPage("/searchAction.do", parameters, false,true);
}


function showLine(productOid, catOid, showPrintable, newWindow, campaignName){
    var parameters = "";
    parameters += (productOid != null && productOid != "") ? "&productOid="+ productOid : "";
    parameters += (catOid != null && catOid != "") ? "&catoid=" + catOid : "";
    parameters += (showPrintable != null && showPrintable != "") ? "&showPrintable=" + showPrintable : "";
    parameters += (campaignName != null && campaignName != "") ? "&name=" + campaignName : "";
    if (newWindow == true) {
        showPopUpPage("/lineAction.do", parameters, "rswwwLineAlt", lineLevelArgs, false, true);
        }
    else {
        showPopUpPage("/lineAction.do", parameters, "rswwwLine", lineLevelArgs, false, true);
        }
    }

function MenuChangerProd(tableid,state)
	{
	if (state == "over")
		{
		var e=document.getElementsByName(tableid)   ;
			for(var i=0;i<e.length;i++)
			{
				e[i].style.backgroundColor="#e7ecff";
			}
		}
	if (state == "out")
		{
			var e=document.getElementsByName(tableid) ;
			for(var i=0;i<e.length;i++)
			{
				e[i].style.backgroundColor='transparent';
			}
		}
	}

function searchNav(oldSearchString, catoid, rNavCatId, brandId, tfgId, bSetName, bSetValue, requestingPage, key, rname, obs, queryNo, searchText, name, callingPage, showNew, freeSearch, newWindow, mainSearchString, range, rohsStas)
{
	params = "&oldSearchString=" + escape(oldSearchString);
	params += (rNavCatId!=null && rNavCatId!="") ? "&rNavCatId=" + rNavCatId : "";
	params += (catoid!=null && catoid!="") ? "&catoid=" + catoid : "";
	params += (brandId!=null && brandId!="") ? "&brandId=" + escape(brandId) : "";
	params += (tfgId!=null  && tfgId!="") ? "&tfgId=" + escape(tfgId): "";
	params += (bSetName!=null  && bSetName!="") ? "&bSetName=" + escape(bSetName) : "";
	params += (bSetValue!=null  && bSetValue!="") ? "&bSetValue=" + escape(bSetValue) : "";
	params += (requestingPage!=null  && brandId!="") ? "&requestingPage=" + requestingPage : "";
	params += (key!=null  && key!="") ? "&key=" + key : "";
	params += (rname!=null  && rname!="") ? "&rname=" + escape(rname) : "";
	params += (obs!=null  && obs!="") ? "&obs=" + obs : "";
	params += (queryNo!=null  && queryNo!="") ? "&queryNo=" + queryNo : "";
	params += (searchText!=null  && searchText!="") ? "&searchText=" + searchText : "";
	params += (name!=null  && name!="") ? "&name=" + name : "";
	params += (callingPage!=null  && callingPage!="") ? "&callingPage=" + callingPage : "";
	params += (showNew!=null  && showNew!="") ? "&showNew=" + showNew : "";
	params += (freeSearch!=null  && freeSearch!="") ? "&freeSearch=" + freeSearch : "";
	params += (mainSearchString!=null  && mainSearchString!="") ? "&mainSearchString=" + mainSearchString : "";
	params += (range!=null  && range!="") ? "&range=" + range : "";
	params += (rohsStas!=null  && rohsStas!="") ? "&rohsStas=" + rohsStas : "";

	//showPage('/searchNavAction.do', params, false, true);
	if (newWindow == true) {
        showPopUpPage('/searchNavAction.do', params, 'searchBrands' ,'toolbars=0,menubar=0,scrollbars=1,width=400,height=300,top=100,left=100,resizable', false, true);
        }
    else {
        showPage('/searchNavAction.do', params, false, true);
        }
}

function uncheckall(elementName)
{
	document.forms
	for (i=0; i<document.forms.length; i++) {
		var form = document.forms[i]
	    for (k=0; k<form.length; k++) {
		    if (elementName!=null)	{
		    var matchedElement = form[k].value.indexOf(elementName) != -1 ? true : false;
		        if (matchedElement) {
			    	if(form[k].type == "checkbox" && form[k].checked) {
				    	form[k].checked = false;
					    }
				}
		    }
	        else
			{
	        if(form[k].type == "checkbox" && form[k].checked) {
		        form[k].checked = false;
		        }
	        }
        }
	 }
}

