//Emagine Internet Marketing Programmable Retail Engine (EMPIRE) 3.2 
//Client-Side Javascripts

//verify for netscape/mozilla
var isNS4 = (navigator.appName=="Netscape")?1:0;
var isNN = (navigator.appName.indexOf("Netscape")!=-1);

//Left and Right string manipulation functions
function Left(str, n){
	if (n <= 0)
	    return "";
	else if (n > String(str).length)
	    return str;
	else
	    return String(str).substring(0,n);
}
function Right(str, n){
    if (n <= 0)
       return "";
    else if (n > String(str).length)
       return str;
    else {
       var iLen = String(str).length;
       return String(str).substring(iLen, iLen - n);
    }
}

//AJaX Control Script
function open_url(url, target) {
	var day = new Date(); 
	var id = day.getTime(); 
	var randomnumber = String(day+id);
	var rightthree=Right(url,3);
	if (rightthree=="asp"){
		url += "?rnd=" + escape(randomnumber);
	}else{
		url += "&rnd=" + escape(randomnumber);
	}

 	if ( ! document.getElementById) {
  		return false;
 	}

 	if (window.ActiveXObject) {
  		link = new ActiveXObject("Microsoft.XMLHTTP");
 	} else if (window.XMLHttpRequest) {
  		link = new XMLHttpRequest();
 	}

 	if (link == undefined) {
  		return false;
 	}
 	link.onreadystatechange = function() { response(url, target); }
 	link.open("GET", url, true);
 	link.send(null);
}

function aopen_url(url, target) {
	var day = new Date(); 
	var id = day.getTime(); 
	var randomnumber = String(day+id);
	var rightthree=Right(url,3);
	if (rightthree=="asp"){
		url += "?rnd=" + escape(randomnumber);
	}else{
		url += "&rnd=" + escape(randomnumber);
	}

 	if ( ! document.getElementById) {
  		return false;
 	}

 	if (window.ActiveXObject) {
  		link = new ActiveXObject("Microsoft.XMLHTTP");
 	} else if (window.XMLHttpRequest) {
  		link = new XMLHttpRequest();
 	}

 	if (link == undefined) {
  		return false;
 	}
 	link.onreadystatechange = function() { response(url, target); }
 	link.open("GET", url, false);
 	link.send(null);
}


function response(url, target) {
 	if (link.readyState == 4) {
		var data = link.responseText.split("||JavaScriptCode||");
	 	document.getElementById(target).innerHTML = data[0];
		eval(data[1]);
	} 
}

//Text Append to InnerHTML Element
function append_text(target, vtext) {
 	if ( ! document.getElementById) {
  		return false;
 	}
	document.getElementById(target).innerHTML += vtext;
}	
//Text Replace InnerHTML Element
function replace_text(target, vtext) {
 	if ( ! document.getElementById) {
  		return false;
 	}
	document.getElementById(target).innerHTML = vtext;
}	
//Function to Place Focus on form Element
function putFocus(formInst, elementInst) {
	if (document.forms.length > 0) {
	document.forms[formInst].elements[elementInst].focus();
	}
}
//Function to Create New Browser Windows
function createWindow(cUrl,cName,cFeatures) {
	var xWin = window.open(cUrl,cName,cFeatures)
}
//Macromedia JumpMenu Script
function MM_jumpMenu(targ,selObj,restore){ //v3.0
  eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  if (restore) selObj.selectedIndex=0;
}



function autoTab(input,len, e) {
var keyCode = (isNN) ? e.which : e.keyCode; 
var filter = (isNN) ? [0,8,9] : [0,8,9,16,17,18,37,38,39,40,46];
if(input.value.length >= len && !containsElement(filter,keyCode)) {
input.value = input.value.slice(0, len);
input.form[(getIndex(input)+1) % input.form.length].focus();
}
function containsElement(arr, ele) {
var found = false, index = 0;
while(!found && index < arr.length)
if(arr[index] == ele)
found = true;
else
index++;
return found;
}
function getIndex(input) {
var index = -1, i = 0, found = false;
while (i < input.form.length && index == -1)
if (input.form[i] == input)index = i;
else i++;
return index;
}
return true;
}

//Various commonly used Macromedia Dreamweaver Scripts
function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function NumO(object){
	if(!isNS4){
		if(event.keyCode < 45 || event.keyCode > 57) event.returnValue = false;
	}else{
		if(event.which < 45 || event.which > 57) returnfalse;
	}
}

function advselect(selectionid,optionid){
	var slist=document.getElementById("selectionlistforoption_"+optionid).value;
	eval("var x = [ " + slist + " ];");
	for (var i=0; i<x.length; i++) {document.getElementById("adv_op_sel_"+x[i]).className="advoptions_cell";}
	document.getElementById("adv_op_sel_"+selectionid).className="advoptions_cell_selected";
	document.getElementById("option"+optionid).value=selectionid;
	x=[];
}

function calcoptions(productid){
	var olist=document.getElementById("masteroptionlist").value;
	eval("var x = [ " + olist + " ];");
	var os="";
	for (var i=0; i<x.length; i++) {
		os+="&option"+x[i]+"="+document.getElementById("option"+x[i]).value;
	}
	os+="&quantity="+document.getElementById("quantity").value;
	open_url("modules/optioncalculator.asp?productid=" + productid + os, "selectedoptionlist");
	
}
function change_parent_url(url){
	document.location=url;
}		
function setSelectedIndex(s, valsearch)
{
s.value=valsearch
}

function copy(){
	document.getElementById("shippingfirstname").value=document.getElementById("billingfirstname").value;
	document.getElementById("shippinglastname").value=document.getElementById("billinglastname").value;
	document.getElementById("shippingaddress1").value=document.getElementById("billingaddress1").value;
	document.getElementById("shippingaddress2").value=document.getElementById("billingaddress2").value;
	document.getElementById("shippingcity").value=document.getElementById("billingcity").value;
	document.getElementById("shippingzip").value=document.getElementById("billingzip").value;
	setSelectedIndex(document.getElementById("shippingcountry"),document.getElementById("billingcountry").value);
	aopen_url("neworder.asp?load=changestates&target=shipping&countryid="+document.getElementById("billingcountry").value,"shippingstate_area");
	setSelectedIndex(document.getElementById("shippingstate"),document.getElementById("billingstate").value);
}

