

/* JavaScript Browser Sniffer. Eric Krok, Andy King, Michel Plungjan Jan. 31, 2002 */
function inAgt(str){return agt.indexOf(str);}

var objClient = new Object();
var agt=navigator.userAgent.toLowerCase();
var appVer = navigator.appVersion.toLowerCase();
var isT = true;
var isF = false;

var intMinor = parseFloat(appVer);
var intMajor = parseInt(intMinor);

objClient.isOpera = (inAgt("opera") != -1);
objClient.intOperaVer = (objClient.isOpera ? agt.substr(inAgt("opera")+6) : 0);

var iePos = appVer.indexOf('msie');
if (iePos !=-1) {
  intMinor = parseFloat(appVer.substring(iePos+5,appVer.indexOf(';',iePos)))
  intMajor = parseInt(intMinor);
}

objClient.isKonq = isF;
var kqPos = inAgt('konqueror');
if (kqPos !=-1) {
  objClient.isKonq  = isT;
  intMinor = parseFloat(agt.substring(kqPos+10,inAgt(';',kqPos)));
  intMajor = parseInt(intMinor);
}

objClient.isSafari = ((inAgt('safari')!=-1)&&(inAgt('mac')!=-1))?isT:isF;
objClient.isKhtml  = (objClient.isSafari || objClient.isKonq);

objClient.isGecko = ((!objClient.isKhtml)&&(navigator.product)&&(navigator.product.toLowerCase()=="gecko"))?isT:isF;
objClient.intGver  = 0;
if (objClient.isGecko) objClient.intGver=Number(navigator.productSub);

objClient.isMoz = ((inAgt('mozilla/5')!=-1) && (inAgt('spoofer')==-1) && (inAgt('compatible')==-1) &&
          (inAgt('opera')==-1) && (inAgt('webtv')==-1) && (inAgt('hotjava')==-1) &&
          (objClient.isGecko) && ((navigator.vendor=="")||(navigator.vendor=="Mozilla")||(navigator.vendor=="Debian")));
objClient.isFb = ((inAgt('mozilla/5')!=-1) && (inAgt('spoofer')==-1) &&
          (inAgt('compatible')==-1) && (inAgt('opera')==-1)  &&
          (inAgt('webtv')==-1) && (inAgt('hotjava')==-1)     &&
          (objClient.isGecko) && (navigator.vendor=="Firebird"));
objClient.isFx = ((inAgt('mozilla/5')!=-1) && (inAgt('spoofer')==-1) &&
          (inAgt('compatible')==-1) && (inAgt('opera')==-1)  &&
          (inAgt('webtv')==-1) && (inAgt('hotjava')==-1)     &&
          (objClient.isGecko) && (navigator.vendor=="Firefox"));

if ((objClient.isMoz)||(objClient.isFb)||(objClient.isFx)) {  // 032504 - dmr
  objClient.intMozVer = (navigator.vendorSub)?navigator.vendorSub:0;
  if(!(objClient.intMozVer)) {
    objClient.intMozVer = inAgt('rv:');
    objClient.intMozVer = agt.substring(objClient.intMozVer+3);
    is_paren   = objClient.intMozVer.indexOf(')');
    objClient.intMozVer = objClient.intMozVer.substring(0,is_paren);
  }
  intMinor = objClient.intMozVer;
  intMajor = parseInt(objClient.intMozVer);
}
objClient.intFbVer = objClient.intMozVer;
objClient.intFxVer = objClient.intMozVer;

objClient.isNav  = ((inAgt('mozilla')!=-1) && (inAgt('spoofer')==-1)
          && (inAgt('compatible') == -1) && (inAgt('opera')==-1)
          && (inAgt('webtv')==-1) && (inAgt('hotjava')==-1)
          && (!objClient.isKhtml) && (!(objClient.isMoz)) && (!objClient.isFb) && (!objClient.isFx));

if ((navigator.vendor)&&((navigator.vendor=="Netscape6")||(navigator.vendor=="Netscape"))&&(objClient.isNav)) {
  intMajor = parseInt(navigator.vendorSub);
  intMinor = parseFloat(navigator.vendorSub);
}

objClient.isNav7   = (objClient.isNav && intMajor == 7);
objClient.isNav7up = (objClient.isNav && intMinor >= 7);

objClient.isIE   = ((iePos!=-1) && (!objClient.isOpera) && (!objClient.isKhtml));
objClient.isIE5_5  = (objClient.isIE && (inAgt("msie 5.5") !=-1)); // 020128 new - abk
objClient.isIE5_5up =(objClient.isIE && intMinor >= 5.5);                // 020128 new - abk
objClient.isIE6 = (objClient.isIE && intMinor == 6);
objClient.isIE6up = (objClient.isIE && intMinor >= 6);

objClient.isAOL   = (inAgt("aol") != -1);
objClient.isAOL5  = (inAgt("aol 5") != -1);
objClient.isAOL6  = (inAgt("aol 6") != -1);
objClient.isAOL7  = ((inAgt("aol 7")!=-1) || (inAgt("aol7")!=-1));
objClient.isAOL8  = ((inAgt("aol 8")!=-1) || (inAgt("aol8")!=-1));

objClient.isWin   = ( (inAgt("win")!=-1) || (inAgt("16bit")!=-1) );
objClient.isWin95 = ((inAgt("win95")!=-1) || (inAgt("windows 95")!=-1));

objClient.isWinME = ((inAgt("win 9x 4.90")!=-1));    // new 020128 - abk
objClient.isWin2k = ((inAgt("windows nt 5.0")!=-1) || (inAgt("windows 2000")!=-1)); // 020214 - dmr
objClient.isWinXP = ((inAgt("windows nt 5.1")!=-1) || (inAgt("windows xp")!=-1)); // 020214 - dmr
objClient.isWin98 = ((inAgt("win98")!=-1) || (inAgt("windows 98")!=-1));
objClient.isWinNT = ((inAgt("winnt")!=-1) || (inAgt("windows nt")!=-1) && !objClient.isWinXP);

objClient.isMac    = (inAgt("mac")!=-1);
if (objClient.isMac) objClient.isWin = !objClient.isMac; // dmr - 06/20/2002

objClient.isJava = (navigator.javaEnabled());

objClient.isFlash = isF;
objClient.intFlashVer = 0;

if ((objClient.isNav||objClient.isOpera||objClient.isMoz||objClient.isFb||objClient.isFx)||(objClient.isMac&&objClient.isIE5up)) {
  var plugin = (navigator.mimeTypes &&
        navigator.mimeTypes["application/x-shockwave-flash"] &&
        navigator.mimeTypes["application/x-shockwave-flash"].enabledPlugin) ?
        navigator.mimeTypes["application/x-shockwave-flash"].enabledPlugin : 0;
  if (plugin) {
    objClient.isFlash = isT;
    objClient.intFlashVer = parseInt(plugin.description.substring(plugin.description.indexOf(".")-1));
  }
}

if (objClient.isWin&&objClient.isIE4up) {
  document.write(
    '<scr' + 'ipt language=VBScript>' + '\n' +
    'Dim hasPlayer, playerversion' + '\n' +
    'hasPlayer = false' + '\n' +
    'playerversion = 10' + '\n' +
    'Do While playerversion > 0' + '\n' +
    'On Error Resume Next' + '\n' +
    'hasPlayer = (IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash." & playerversion)))' + '\n' +
    'If hasPlayer = true Then Exit Do' + '\n' +
    'playerversion = playerversion - 1' + '\n' +
    'Loop' + '\n' +
    'objClient.intFlashVer = playerversion' + '\n' +
    'objClient.isFlash = hasPlayer' + '\n' +
    '<\/sc' + 'ript>');
}

function returnImg(strSrc) {
  var objImg = new Image();
  objImg.src = strSrc;
  return objImg;
}

function returnObjById(strId) {
  var tempObj = document.getElementById(strId);
  return tempObj;
}

function setImgSrc(targetID, strSrc) {
  if (typeof targetID == "string") var objImg = returnObjById(targetID);
  else if (typeof targetID == "object") var objImg = targetID;
  objImg.setAttribute("src",strSrc);
}

function setObjInnerHTML(objLayer,strHTML) {
  objLayer.innerHTML = strHTML;
}

function setObjPosition(objLayer,intX,intY) {
  strX = String(intX);
  strY = String(intY);
  objLayer.style.top = intY + (strY.indexOf("px") == -1 ? "px" : "");
  objLayer.style.left = intX + (strX.indexOf("px") == -1 ? "px" : "");
}

function setObjVisibility(objLayer,strState) {
  objLayer.style.visibility = strState;
}

function setObjDisplay(objLayer,strState) {
  objLayer.style.display = strState;
}

function returnObjPosition(target){
  var x = 0;
  var y = 0;
  var tempObj = new Object();
  var obj = (typeof target == "object" ? target : returnObjById(target));
  while (obj.offsetParent != null) {
    x += obj.offsetLeft;
    y += obj.offsetTop;
    obj = obj.offsetParent;
  }
  x += obj.offsetLeft;
  y += obj.offsetTop;
  tempObj.x = x;
  tempObj.y = y;
  return tempObj;
}

function clearBox(box) {
 if(box.value==box.defaultValue) {
    box.value = "";
 }
}

function setObjClassName(objLayer, strClassName) {
  if (objLayer == 'body') {
    document.getElementsByTagName('body')[0].className = strClassName;
  }
  else objLayer.className = strClassName;
}

function getPreviousSibling(startBrother){
  endBrother=startBrother.previousSibling;
  while(endBrother.nodeType!=1){
    endBrother = endBrother.previousSibling;
  }
  return endBrother;
}

function getFirstChild(startBrother){
  endBrother=startBrother.firstChild;
  while(endBrother && endBrother.nodeType!=1){
    endBrother = endBrother.firstChild;
  }
  return endBrother;
}

function getNextSibling(startBrother){
  endBrother=startBrother.nextSibling;
  while(endBrother.nodeType!=1){
    endBrother = endBrother.nextSibling;
  }
  return endBrother;
}

var numProdOptions = 0;
var arrProdOptions = null;
var selectedProductOptions = 0;
var ArrayNodesSelected = new Array();
var ArrSelectedItem = new Array();
var ArrSelectedProductOptions = new Array();

function initProductDetails() {
    arrProdOptions = document.getElementsByClassName('optionsList');
    numProdOptions = arrProdOptions.length;

}

function submitSubRequest(formName, buttonName, divBefore){

  document.getElementById(divBefore).innerHTML = '';

  var hiddenInput = document.createElement('input');
  hiddenInput.type = 'hidden';
  hiddenInput.name = buttonName;
  hiddenInput.value = 'Will not be used';

  var bmHidden = document.createElement('input');
  bmHidden.type = 'hidden';
  bmHidden.name = 'bmHidden';
  bmHidden.value = buttonName;

  var submitInput = document.createElement('input');
  submitInput.type = 'submit';
  submitInput.name = buttonName;
  submitInput.value = 'Will not be used';
  submitInput.style.visibility = 'hidden';

  var bmSubmit = document.createElement('input');
  bmSubmit.type = 'hidden';
  bmSubmit.name = 'bmSubmit';
  bmSubmit.value = buttonName;

  document.getElementById(divBefore).appendChild(bmHidden);
  document.getElementById(divBefore).appendChild(hiddenInput);
  document.getElementById(divBefore).appendChild(bmSubmit);
  document.getElementById(divBefore).appendChild(submitInput);

  document.forms[formName].submit();
}

 function browseProducts(){

  var instrFocus = document.lfsh_product_browse['filterListInstructionalFocus'].value;
  var price = document.lfsh_product_browse['filterListPrice'].value;
  var grades = document.lfsh_product_browse['filterListGrades'].value;

  document.lfsh_product_browse['instrFocusFilter'].value =
     instrFocus.substring(instrFocus.indexOf("=")+1);

   document.lfsh_product_browse['priceFilter'].value =
     price.substring(price.indexOf("=")+1);

   document.lfsh_product_browse['gradeFilter'].value =
       grades.substring(grades.indexOf("=")+1);

     submitSubRequest('lfsh_product_browse', 'browseProducts', 'browseProductsSubmitDiv');
}

function openNavPopup(href) {
  var args = 'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,width=600,height=480,top=100,left=100';
  var name = 'Popup';
  return windowOpener(href, name, args);
}

function windowOpener(url, name, args) {
	if (typeof(popupWin) != "object"){
			popupWin = window.open(url,name,args);
		} else {
		if (!popupWin.closed){
			popupWin.location.href = url;
		} else {
			popupWin = window.open(url, name,args);
		}
	}
	popupWin.focus();
}

function removePromptText(promptText){
   var searchValue = document.getElementById('input_text_globalSearch').value;
   
   if(searchValue == promptText){
   	document.getElementById('input_text_globalSearch').value = "";
   }

}

function enterCheckFunction(currentForm, e)
{
	if(e && e.which){ //Support moth IE and Firefox
		characterCode = e.which; 
	}else{
		characterCode = e.keyCode; 
	}
	
	if(characterCode == 13){ //if generated character code is equal to ascii 13 (if enter key)
		eval(currentForm); //Execute String
		return false;
	}
	return true;
}