/* declare holder for SWFobjects */
var so = new Array();
var focusedAlready = false;
var redosearch = 1;
var productlistajax = true;
var doInlineCartAdd = true;
/*  Journal Signup Code */
function valform(){
	if(document.journal.email.value.search("^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})$") == -1) {
		showthismessage = "Please enter a valid e-mail address";
		messaging.showwarning(showthismessage);
		return false
	} else {
		namevalue=document.journal.name.value
		document.journal.submitted.value = 1
		document.journal.camefrom.value=this.location.href
		return true
	}
}
function proceedJournalSignup(obj) {
	if(!document.journalsignupright) return false;
	
	var mydata = formData2QueryString(obj)+"&jsview=1";
	var emailaddr = document.journalsignupright.email.value;
	if(!(emailaddr.search("^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})$") == -1)) {
		customerEmail = emailaddr;
		var shipurl="/commonDSP/dsp_popup_journalsignup.cfm?"+mydata;
		var usetitle = "Journal Signup";
		var usewidth = 250;
		var clickedPos = Position.cumulativeOffset(obj);
		myLeft = clickedPos[0] - usewidth;
		displayShipping.preproxy(shipurl,usetitle,usewidth,clickedPos[1]+"-*-*-"+myLeft);
		document.journalsignupright.email.value = "";
	} else {
		showthismessage = "Please enter a valid email address";
		var clickedPos = Position.cumulativeOffset(obj);
		myLeft = clickedPos[0] - 300;
		messaging.showwarning(showthismessage,clickedPos[1]+"-*-*-"+myLeft);
	}
	return false;
}
function getemailandverify(emailaddr,isNS) {
	if (isNS == 1) {
		winPOPnomenu(jsRoot+'commonDSP/dsp_popup_journalsignup.cfm','journalsignup',400,200,0);
	} else {
		if(!(emailaddr.search("^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})$") == -1)) {
			document.journalsignupright.email.value = "";
			customerEmail = emailaddr;
			popURL ="/commonDSP/dsp_popup_journalsignup.cfm?email=" + 
					customerEmail + 
					"&emailtype=html&subscribe.x=1";
			winPOPnomenu(popURL,'journalsignup',400,200,0);
		} else {
			alert("Please enter a valid email address");
		}
	}
}
function openRingChart() {
		window.open("/art_expert/ringchart_selector.cfm","RingChart","width=350,height=200,toolbar=no,menubar=no,status=no,scrollbars=no,resizable=no");
}
	
function winPOPnomenu(url,windowName,winWidth,winHeight,ScrollYes) {
	if(ScrollYes != 1) {
		ScrollYes = 0;
	}
	if(url.indexOf("dsp_popup_largepic.cfm") >= 0 || url.indexOf("largePicture.cfm") >= 0) {
		ScrollYes = 1;
	}
	if(url.indexOf("/")==0) {
		url = jsRoot + url.substring(1,url.length);
	}
	var etcString = 
		"toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=" + 
		ScrollYes + 
		",copyhistory=0,width=" + 
		winWidth + 
		",height=" + 
		winHeight +
		",top=10,left=10,resizable=1";
	var popWin = window.open(url,windowName,etcString);
	popWin.focus()
}
function writeWidth(backgroundImg,bgColor,subtractWidth,classTag,alignTag) {
	var tdStr = "<td valign=top";
	if (backgroundImg) tdStr = tdStr + " background=" + backgroundImg;
	else if (bgColor) tdStr = tdStr + " bgcolor=" + bgColor;
	if (classTag) tdStr = tdStr + " class=" + classTag;
	if (alignTag) tdStr = tdStr + " align=" + alignTag;
	
	if (Winwidth > 0) {
		var tdWidth = Winwidth - subtractWidth;
		if(tdWidth < 420) tdWidth = 420;
		tdStr = tdStr + " width=" + tdWidth + ">";
		}
	else tdStr = tdStr + " width=99%>";
	
	return tdStr;
}
	
function redirect(selectedval) {
	location.href = selectedval;
}
	
function setPermCookie(name,value,setPerm) {
	if(setPerm==1) {
		var never = new Date()
		never.setTime(never.getTime() + 2000*24*60*60*1000);
		var expString = "; expires=" + never.toGMTString();
	} else {
		var expString = "";
	}
	extraCookieString = ";path=/;domain=.novica.com";
	document.cookie = name.toUpperCase() + "=" +escape(value) + extraCookieString + expString;
	var currentUrl = unescape(document.location).toLowerCase();
}
var ajaxURL = "/CFC/wrapperCommon.cfm";
var addingDot;
var dots = 0;
var relocateOK = true;
function reloadNoRefresh() {
	/*
	messaging.showprogress(1);
	var myCurrentWin = window.location.href;
	if(myCurrentWin.indexOf('#')>=0) {
		myCurrentWin = myCurrentWin.split('#')[0];
	}
	location.href = myCurrentWin;
	alert(myCurrentWin);
	*/
	reloadProductPrices();
}
function reloadMiddleContent() {
	reloadNoRefresh();
}
function justreload() {
	messaging.showprogress(1);
	var myCurrentWin = window.location.href;
	if(myCurrentWin.indexOf('#')>=0) {
		myCurrentWin = myCurrentWin.split('#')[0];
	}
	location.href = myCurrentWin;
}
function reloadMe() {
	window.location.reload();
}
function restoreBtn() {
	if(document.getElementById('addtocartbutton')) {
		document.getElementById('addtocartbutton').className = 'btnBlue';
		document.getElementById('addtocartbutton').disabled = false;
	} else if(document.getElementsByTagName('input')) {
		var ad = document.getElementsByTagName('input');
		for(var i=0;i<ad.length;i++) {
			if(ad[i].className.indexOf('btnLoading')>=0) {
				ad[i].className = ad[i].className.replace('btnLoading','btnBlue');
			}
		}
	}
}
function ajaxResultSuccess(jsonData) {
	var jsonObj = eval('('+jsonData.responseText+')');
	var reloadOnloadFunctions=false;
	var movetotop = false;
	if(jsonObj.namecheck) {
		messaging.hide();
		if(document.getElementById('checkstatus')) {
			if(jsonObj.urlname) {
				if(document.getElementById('displayurl')) {
					document.getElementById('displayurl').value = jsonObj.urlname;
				}
			}
			if(jsonObj.success) {
				document.getElementById('checkstatus').innerHTML = "Page name you selected is available!";
				document.getElementById('checkstatus').className = 'tadsmaller nameOK';
				document.getElementById('checkstatus').style.display = "block";
			} else if(jsonObj.errormessage) {
				document.getElementById('checkstatus').innerHTML = jsonObj.errormessage;
				document.getElementById('checkstatus').className = 'tadsmaller nameNOK';
				document.getElementById('checkstatus').style.display = "block";
			}
		}
	} else {
		if(jsonObj.targets) {
			for(var y in jsonObj.targets) {
				if(document.getElementById(y)) {
					if(y=='productlistmain') {
						//movetotop = true;
					}
					document.getElementById(y).innerHTML = jsonObj.targets[y];
				}
			}
			reloadOnloadFunctions=true;
		}
		if(jsonObj.donext) {
			eval(jsonObj.donext+"()");
		}
	
	
		if(jsonObj.relocate) {
			if(jsonObj.wrapperaction) {
				if(jsonObj.wrapperaction=='search') {
					document.location.replace("#");
					if(document.forms['dosearchfilter']) {
						if(document.forms['dosearchfilter']['keyword']) {
							document.forms['dosearchfilter']['keyword'].value = '';
						}
					}
				}
			}
			location.href=jsonObj.relocate;
		} else {
			restoreBtn();
		}
		if(document.getElementById('itemRemaining')) {
			var r = document.getElementById('itemRemaining');
			if(jsonObj.soldout) {
				jsonObj.newqty = -1;
			}
			if(jsonObj.newqty) {
				if(jsonObj.newqty < 1 || jsonObj.newqty > 15) {
					r.style.display = 'none';
				} else {
					r.innerHTML = 'Items Remaining: ' + jsonObj.newqty;
					if(document.getElementById('qtyselect')) {
						var s = document.getElementById('qtyselect');
						var o = '';
						for(var i=1;i<=jsonObj.newqty;i++) {
							o += '<option value="'+i+'">'+i+'</option>';
						}
						s.innerHTML = '<select name="qty_0" class="searchboxtop">' + o + '</select>';
					}
				}
			}
		}
		
		if(jsonObj.newattrib && document.getElementById('attribSelection')) {
			document.getElementById('attribSelection').innerHTML = jsonObj.newattrib;
			var s2 = document.getElementsByTagName('select');
			for(var zz=0;zz<s2.length;zz++) {
				if(s2[zz].className.indexOf('attribselect')>=0) {
					/*enableBtnNow = false;
					d.className = 'btnGrey';*/
					var attribselect = s2[zz];
					populateAttribQty.getQty(attribselect);
					attribselect.onchange=function() {
						populateAttribQty.getQty(this);
					}
				}
			}
		}
		if(jsonObj.soldout && document.getElementById('cartbtn')) {
			document.getElementById('cartbtn').style.display = 'none';
			if(document.getElementById('backordercartbtn')) {
				document.getElementById('backordercartbtn').style.display = 'none';
			}
		}
		if(jsonObj.secondary && jsonObj.secondarytarget) {
			if(jsonObj.secondarytarget=='rightNavCart') {
				document.getElementById(jsonObj.secondarytarget).innerHTML = jsonObj.secondary;
			} else {
				document.getElementById(jsonObj.secondarytarget).innerHTML = jsonObj.secondary;
			}
			if(jsonObj.secondarytarget=='wrapSearchError'&&jsonObj.secondary!=' ') {
				document.location.replace("#");
			}
			if(jsonObj.targetshow) {
				document.getElementById(jsonObj.secondarytarget).style.display = "block";
			}
			if(jsonObj.targethide) {
				document.getElementById(jsonObj.secondarytarget).style.display = "none";
			}
		}
		if(jsonObj.content && jsonObj.target && document.getElementById(jsonObj.target)) {
			var t = document.getElementById(jsonObj.target);
			
			var newcartinner = document.getElementById(jsonObj.target);
			if(jsonObj.targetshow) {
				t.innerHTML = jsonObj.content;
				if(jsonObj.targetclass) t.className = jsonObj.targetclass;
				t.style.display = "block";
				if(document.getElementById('cntrAssociatedProductsInner')) { 
					if(document.getElementById('loadingmsg')) {
						showassociateditems(document.getElementById('cntrAssociatedProductsInner'),1);
					}
					//toolTipBubble.init('cntrAssociatedProductsInner');
				}
			} else if(jsonObj.target=='detailInCart') {
				fadeInOut.setIt(t,0);
				t.innerHTML = jsonObj.content;
				if(jsonObj.targetclass) t.className = jsonObj.targetclass;
				var myfade = new fadeInOut.init(t,1);
				if(jsonObj.targetclass=='justAdded') {
					reloadOnloadFunctions=true;
					iHaveCartItems = 1;
				}
				if(document.all) {
					isinputfocused = false;
				}
			}
			
			if(addingDot) {
				clearTimeout(addingDot);
				dots = 0;
			}
			if(document.getElementById('productdetail-attriberror')) {
				document.getElementById('productdetail-attriberror').style.display = 'none';
			}
		}
		if(jsonObj.displaykeyword && document.getElementById('labelSearch')) {
			if(jsonObj.displaykeywordlink) {
				document.getElementById('labelSearch').innerHTML = '<span style="font-weight:normal;">Search results for </span>' + jsonObj.displaykeywordlink;
			} else {
				document.getElementById('labelSearch').innerHTML = '<span style="font-weight:normal;">Search results for </span>' + jsonObj.displaykeyword;
			}
			
			document.forms['dosearchfilter'].keyword.value = '';
			document.forms['dosearchfilter'].keywordoriginal.value = jsonObj.displaykeyword;
		}
		if(jsonObj.sectionspecific && jsonObj.sectionspecificcontent && document.getElementById('leftNavSectionSpecific')) {
			var ss = document.getElementById('leftNavSectionSpecific');
			document.forms['dosearchfilter'].filterbyprice.value='';
			document.forms['dosearchfilter'].filterbyregion.value='';
			if(jsonObj.sectionspecificcontent=='*') {
				ss.style.display = "none";
			} else {
				ss.innerHTML = jsonObj.sectionspecificcontent;
				ss.style.display = "block";
				if(jsonObj.resetfilterprice) {
					document.forms['dosearchfilter'].filterbyprice.value=jsonObj.resetfilterprice;
				}
				if(jsonObj.resetfilterregion) {
					document.forms['dosearchfilter'].filterbyregion.value=jsonObj.resetfilterregion;
				}
			}
		}
		if(jsonObj.newfilterbycategory) {
			if(document.getElementById('wrapSearchFilterCategory')) {
				var targetCatFilter = document.getElementById('wrapSearchFilterCategory');
				targetCatFilter.innerHTML = jsonObj.newfilterbycategory;
			}
		}
		if(jsonObj.target) {
			if(jsonObj.target.indexOf('search')>=0) {
				var t = document.getElementById(jsonObj.target);
				t.className = t.className.replace('dimmed','');
			}
			if(jsonObj.target.toLowerCase().indexOf('phonedisplay')<0) {
				reloadOnloadFunctions=true;
			}
		}
		messaging.showprogress(0);
		if(jsonObj.linkscrawl) {
			reloadOnloadFunctions = true;
		}
		if(reloadOnloadFunctions) {
			getLinks.init();
			//toolTipBubble.init();
		}
		if(document.getElementById('navigationpaginationtop')) {
			document.getElementById('navigationpaginationtop').className="navigationPagination";
		}
		if(document.getElementById('navigationpaginationbottom')) {
			document.getElementById('navigationpaginationbottom').className="navigationPagination";
		}
		if(document.getElementById('navigationpaginationtop')||document.getElementById('navigationpaginationbottom')) {
			inlineProductList.init();
		}
		if(movetotop) document.location.replace("#top");
	}
	
}
function ajaxResultError(jsonData) {
	restoreBtn();
	var showthismessage = "We're sorry but there has been an error while processing your request. Please try it again and if the problem persists, contact our customer service.";
	messaging.showwarning(showthismessage);
}
function ajaxDoNothing(jsonData) {
	var donothing = true;
}
var ajaxFunctions = {
	makeCall: function(data, goWhere) {
		var myDate = new Date();
		if(!goWhere) {
			goWhere = "ajaxResultSuccess";
		}
		var sendtodefaulterror = true;
		if(data=='wrapperaction=mynovicamenu'||data=='wrapperaction=homenewcustomerincentive') {
			sendtodefaulterror = false;
		}
		var url = ajaxURL + "?" + data + "&rt=" + myDate.getTime();
		var data = "";
		if(sendtodefaulterror) {
			var myAjax = new Ajax.Request(url,{asynchronous:true, method: 'get', parameters: data, onComplete: ajaxResultSuccess, onFailure: ajaxResultError});
		} else {
			var myAjax = new Ajax.Request(url,{asynchronous:true, method: 'get', parameters: data, onComplete: ajaxResultSuccess, onFailure: ajaxDoNothing});
		}
	}
};
function doAjax(data, goWhere) {
	ajaxFunctions.makeCall(data,goWhere);
}
function addDot() {
	if(document.getElementById('addingDot')) {
		dots++;
		var dt = document.getElementById('addingDot');
		if(dots>=10) {
			dt.innerHTML = '';
			dots=0;
		}
		dt.innerHTML += '.';
		addingDot = setTimeout("addDot()",100);
	}
}
function addToCart(frm) {
	var myDate = new Date();
	var goWhere = "ajaxResultSuccess";
	var url = ajaxURL + "?wrapperAction=addtocart";
	var data = formData2QueryString(frm);
	if(document.getElementById('inCartInner')) {
		var d = document.getElementById('inCartInner');
		d.innerHTML = '<p class="iconInCart">Adding item to your cart<span id="addingDot"></span></p>';
		addDot();
	}
	//document.write(data);
	var myAjax = new Ajax.Request(url,{asynchronous:true, method: 'post', parameters: data, onComplete: ajaxResultSuccess, onFailure: ajaxResultError});
}
/* The following is for larger pictures */
function getLargePic(){
	if(document.getElementById('iamlargepic')) {
		var myI = document.getElementById('iamlargepic');
		w = myI.width + 200;
		if(document.getElementById('giftboxinsertpic')) {
			h = myI.height + 450;
		} else {
			h = myI.height + 220;
		}
		window.resizeTo(w,h);
		if(document.getElementById('iamlargepictable')) {
			var myT = document.getElementById('iamlargepictable');
			myT.className = 'loadingDone';
		}
	}
}
function relocateNclose(whichPage,ID,isMyNOVICA) {
	if (whichPage == 'artist') {
		if (isMyNOVICA == 1) newURL = whichPage + "&aid=" + ID;
		else newURL = "/artistdetail/index.cfm?faid=" + ID;
	} else {
		if (isMyNOVICA == 1) newURL = whichPage + "&pid=" + ID;
		else newURL = ID;
	}
	if(opener) {
		opener.document.location = newURL;
		window.close();
	}
}
				
function confirmWSsignout() {
	var wholesaleloggedin = 0;
	if(document.cookie) {
		var ca = document.cookie.split(';');
		for(var i=0;i < ca.length;i++) {
			if (ca[i].toLowerCase().indexOf('wholesalecustomer') >= 0) {
				wholesaleloggedin=1;
			}
		}
	}
	if(wholesaleloggedin&&iHaveCartItems) {
		return confirm("You will not be able to receive wholesale pricing\non items currently in your cart.\n\nDo you wish to continue?\n\n");
	} else {
		return true;
	}
}
function swapMeasurementUnits(newunit) {
	targetunitshow = newunit;
	if(newunit=='us') {
		targetphrasehide = 'metric';
	} else {
		targetphrasehide = 'us';
	}
	var unitP = document.getElementsByTagName('p');
	for(var z=0;z<unitP.length;z++) {
		if(unitP[z].className.indexOf('units'+targetphrasehide)>=0) {
			unitP[z].style.display='none';
		}
		if(unitP[z].className.indexOf('units'+targetunitshow)>=0) {
			unitP[z].style.display='block';
		}
	}
}
function detailExtraWin(which) {
	if(document.getElementById('windowExtra')) {
		var w = document.getElementById('windowExtra');
		if(which==0) {
			w.style.display = 'none';
		} else {
			ajaxFunctions.makeCall("wrapperaction=exchangetoggler","");
			w.style.display = 'block';
		}
	}
}
function getnewexchangerate(x) {
	ajaxFunctions.makeCall("wrapperaction=exchangetoggler&wrapperactionsubmitted=1&myLocale="+x,"reloadMe");
}
function flagMe(onoff) {
	/*
	if(document.getElementById('cntrMessages')) {
		var mn = document.getElementById('cntrMessages');
		if(onoff==1) {
			mn.style.zIndex="500";
			mn.style.height="5000px";
			mn.style.overflow="hidden";
			mn.style.display="block";
		}
	}
	*/
}
function prepFlashMovie() {
	var z = document.getElementsByTagName('div');
	for(var i=0;i<z.length;i++) {
		if(z[i].className=='swfholder') {
			useID = z[i].id;
			cID = z[i].id.split('-')[1];
			so[cID].write(useID);
		}
	}
}
function focusme() {
	focusedAlready = true;
}
/*
Sign out functions
*/
var signMeOut = {
	signoutLeft: function(which,isMN,isWS) {
		which.onclick=function() {
			confirmedSignout = confirmWSsignout();
			if(confirmedSignout) {
				messaging.showprogress(1);
				ajaxFunctions.makeCall("wrapperaction=leftsignout&isMN="+isMN+"&isWS="+isWS,"reloadMe");
			} 
			return false;
		}
	},
	signoutMyNovica: function(which,isMN) {
		
		which.onclick=function() {
			messaging.showprogress(1);
			ajaxFunctions.makeCall("wrapperaction=signoutMynovica&isMN="+isMN,"reloadMe");
			return false;
		}
	},
	signoutWholesale: function(which,isWS) {
		var appendThis = "";
		which.onclick=function() {
			confirmedSignout = confirmWSsignout();
			if(confirmedSignout) {
				messaging.showprogress(1);
				if(this.className.indexOf('preview')>=0) {
					appendThis = "&endwholesalepreview=true";
				} else {
					appendThis = "&wholesalesignout=true";
				}
				ajaxFunctions.makeCall("wrapperaction="+this.className+"&isWS="+isWS+appendThis,"reloadMe");
			}
			return false;
		}
	},
	signoutPending: function(which,isWS) {
		which.onclick=function() {
			messaging.showprogress(1);
			ajaxFunctions.makeCall("pendingsignout=true&wrapperaction=pendingsignout&isWS="+isWS,"reloadMe");
			return false;
		}
	}
};
/*
get all links that will trigger some sort of
javascript actions when hover/clicked
*/
var getLinks = {
	iconic: function(which) {
		which.onclick=function() {
			if(this.id) {
				var useIconPid = this.id.split("-")[0];
				setPermCookie("catIcon",useIconPid);
			}
		}
	},
	
	searchsubmit: function(which) {
		which.onclick=function() {
			var myL = this.href.split('?')[1];
			validateAndSearch(myL);
			return false;
		}
	},
	
	largerpicpopup: function(which) {
		which.onmouseover=function() {
			var imgName = 'largepic' + this.id.split('-')[1].split('/')[1];
			document.getElementById(imgName).src = '/images/p_etc/shadowlargepic102b.gif';
		}
		which.onmouseout=function() {
			var imgName = 'largepic' + this.id.split('-')[1].split('/')[1];
			document.getElementById(imgName).src = '/images/p_etc/shadowlargepic102.gif';
		}
		which.onclick=function() {
			var thisProductID = this.id.split('-')[1].split('/')[1];
			var thisRegionID = this.id.split('-')[1].split('/')[0];
			var imgSrc = '/commonDSP/dsp_popup_largepic.cfm?pic=http://pics.novica.com/pictures/' + thisRegionID + '/p' + thisProductID + '_2.jpg' + '&extra=1&alink=/itemdetail/index.cfm?pid=' + thisProductID;	
			winPOPnomenu(imgSrc,'LargePicture',250,250,0);
			return false;
		}
	},
	
	doXbox: function(which) {
		which.onmouseover=function() {
			var childImg = this.childNodes[0];
			childImg.setAttribute("src","/images/xBoxRed.gif");
		}
		which.onmouseout=function() {
			var childImg = this.childNodes[0];
			childImg.setAttribute("src","/images/xBoxDark.gif");
		}
	},
	
	swapMeasurement: function(which) {
		which.onclick=function() {
			var myNewUnit = this.id.replace('unit_','');
			if(myNewUnit == 'us' || myNewUnit == 'metric') {
				var myNewCval = 'wtMode:' + myNewUnit;
				swapMeasurementUnits(myNewUnit);
				ajaxFunctions.makeCall("wrapperaction=setcookie&newCname=sitepreferences&newCval="+myNewCval,"");
			}
			return false;
		}
	},
	
	currencyChanger: function(which) {
		which.onclick=function() {
			return false;
		}
	},
	changeCurrencyInline: function(which) {
		which.onclick=function() {
			ajaxFunctions.makeCall("wrapperaction=exchangetoggler&wrapperactionsubmitted=1&myLocale="+this.id,"");
			if(document.getElementById('currencydropdownmain')) document.getElementById('currencydropdownmain').style.display='none';
			if(document.getElementById('currencychangestaus')) { 	
				document.getElementById('currencychangestaus').style.display='block';
				addDot();
			}
			return false;
		}
	},
	markPriority: function(which) {
		if(document.forms['wishlistdetail']) {
			var f = document.forms['wishlistdetail'];
			var selected1 = f.detail_priority_init.value;
		}
		which.onclick=function() {
			if(document.forms['wishlistdetail']) {
				var f = document.forms['wishlistdetail'];
				var selectedPriority = this.id.replace('priority-','');
				switch(selectedPriority) {
					case "1":
						selectedPriorityDisplay = 3;
						break;
					case "3":
						selectedPriorityDisplay = 1;
						break;
					default:
						selectedPriorityDisplay = selectedPriority;
				}
				if(selectedPriorityDisplay!=f.detail_priority_init.value) {
					alert(selectedPriorityDisplay);
				}
			}
			return false;
		}
	},
	init: function() {
		var z = document.getElementsByTagName('a');
		var isMN = 0;
		var isWS = 0;
		var appendThis;
		var confirmedSignout = 0;
		if(unescape(document.location).toLowerCase().indexOf('/mynovica')>=0) isMN=1;
		if(unescape(document.location).toLowerCase().indexOf('/wholesale/')>=0) isWS=1;
		for(var i=0;i<z.length;i++) {
			if(z[i].className.indexOf('iconic')>=0)	this.iconic(z[i]);
			if(z[i].className.indexOf('searchsubmit')>=0) this.searchsubmit(z[i]);
			if(z[i].className.indexOf('largepicpop')>=0) this.largerpicpopup(z[i]);
			if(z[i].className.indexOf('wlpriority')>=0) wishStars.init(z[i]);
			if(z[i].className.indexOf('unitLink')>=0) this.swapMeasurement(z[i]);
			if(z[i].className.indexOf('storypop')>=0) longText.init(z[i]);
			else if(z[i].className.indexOf('leftsignout')>=0) signMeOut.signoutLeft(z[i],isMN,isWS);
			else if(z[i].className.indexOf('mynovicasignout')>=0) signMeOut.signoutMyNovica(z[i],isMN);
			else if(z[i].className.indexOf('wholesalesignout')>=0) signMeOut.signoutWholesale(z[i],isWS);
			else if(z[i].className.indexOf('pendingsignout')>=0) signMeOut.signoutPending(z[i],isWS);
			//else if(z[i].className.indexOf('currencychanger')>=0) this.currencyChanger(z[i]);
			else if(z[i].className.indexOf('changecurrency')>=0) this.changeCurrencyInline(z[i]);
			else if(z[i].className.indexOf('signinline')>=0) signMeIn.init(z[i]);
			else if(z[i].className.indexOf('shippingwindow')>=0) displayShipping.init(z[i]);
			else if(z[i].className.indexOf('iconFreeShip')>=0) displayShipping.init(z[i]);
			else if(z[i].className.indexOf('premiumbox')>=0) displayShipping.init(z[i]);
			else if(z[i].className.indexOf('jewelrybox-')>=0) displayShipping.init(z[i]);
			else if(z[i].className.indexOf('giftwrap-')>=0) displayShipping.init(z[i]);
			else if(z[i].className.indexOf('about-')>=0) displayShipping.init(z[i]);
			else if(z[i].className.indexOf('forgotpassword')>=0) displayShipping.init(z[i]);
			else if(z[i].className.indexOf('currencychanger')>=0) displayShipping.init(z[i]);
			else if(z[i].className.indexOf('signin')>=0) signInLeft.init(z[i]);
			else if(z[i].className.indexOf('ecard')>=0) displayShipping.init(z[i]);
			else if(z[i].className.indexOf('socialBookmarks')>=0) socialBookmarkFn.init(z[i]);
			else if(z[i].className.indexOf('livechat')>=0) {
				novicachat.init(z[i]);
			}
			if(z[i].className.indexOf('removemyprofilepic')>=0) {
				profilepics.init(z[i],"delete");
			} else if(z[i].className.indexOf('uploadmyprofilepic')>=0) {
				profilepics.init(z[i],"add");
			}
			if(z[i].className.indexOf('detail2checkout')>=0) {
				checkoutoverride(z[i]);
			}
			if(z[i].className.indexOf('apNav')>=0) {
				doInlineNav.init(z[i]);
			}
			if(z[i].className.indexOf('showmore')>=0) {
				expandFilter.init(z[i]);
			}
			if(z[i].className.indexOf('showless')>=0) {
				expandFilter.hideMore(z[i]);
			}
		}
		var im = document.images;
		for(var j=0;j<im.length;j++) {
			if(im[j].src.indexOf('iconFreeShipping')>=0) {
				im[j].title = "";
				im[j].className = 'iconFreeShipProdList';
				displayShipping.init(im[j]);
			}
		}
	}
};
var expandFilter = {
	hideMore: function(el) {
		var self = expandFilter;
		el.onclick=function() {
			var myParent = this.parentNode;
			self.showMore(myParent,0);
			return false;
		}
	},
	showMore: function(el,onoff) {
		var targetu;
		var targetScroll;
		var u;
		var browser=navigator.appName;
		var b_version=navigator.appVersion;
		var version=parseFloat(b_version);
		var useLegacy = false;
		if(document.all) {
			var tempstr = b_version.split(';');
			for(var zz=0;zz<tempstr.length;zz++) {
				if(tempstr[zz].indexOf('MSIE')>=0) {
					myVersion = parseFloat(tempstr[zz].replace('MSIE ',''));
					if(myVersion < 7) {
						useLegacy = true;
					}
					break;
				}
			}
		}
		if(onoff==1) {
			thisDisplay = 'block';
		} else {
			thisDisplay = 'none';
		}
		if(useLegacy) {
			u = el.getElementsByTagName('ul');
		} else {
			u = el.getElementsByTagName('div');
		}
		var l = el.getElementsByTagName('li');
		l_len = l.length;
		for(var i=0;i<l.length;i++) {
			if(l[i].className.indexOf('overMax')>=0) {
				l[i].style.display=thisDisplay;
			}
		}
		targetu = u[0];
		if(!useLegacy) {
			targetu.className='holder';
			var s = el.getElementsByTagName('ul');
			for(var j=0;j<s.length;j++) {
				if(s[j].className.indexOf('reg')>=0) {
					targetScroll = s[j];
					break;
				}
			}
		}
		if(onoff==1) {
			targetu.style.width='164px';
			if(l_len<=7) {
				targetu.style.position='relative';
				targetu.style.marginTop = '5px';
			} else if(useLegacy) {
				targetu.style.height='120px';
				targetu.style.position='relative';
				targetu.style.overflowY='auto';
				targetu.style.overflowX='hidden';
			} else {
				targetScroll.className+=' scroll-pane';
				if(document.all) {
					targetu.style.height='135px';
					targetu.style.paddingBottom='10px';
					targetScroll.style.height='150px';
				} else {
					targetu.style.height='122px';
					targetScroll.style.height='120px';
				}
				targetu.style.background = 'url(/images/bgExpandedNav.gif) bottom right no-repeat';
				if(document.all) {
					targetScroll.style.width='164px';
				} else {
					targetScroll.style.width='181px';
				}
				$(targetScroll).jScrollPane({showArrows:true, scrollbarWidth:15, scrollbarMargin:10});
			}
			
			targetu.style.zIndex = 1;
		} else {
			if(document.all) {
				targetu.style.position='relative';
			} else {
				targetu.style.width = 'auto';
			}
			targetu.style.height='auto';
			targetu.style.overflow='visible';
		}
		
	},
	ieFixPadding: function() {
		var u = document.getElementsByTagName('ul');
		for(var i=0;i<u.length;i++) {
			if(u[i].className.indexOf('selected')>=0) {
				var l = u[i].getElementsByTagName('li');
				for(var j=0;j<l.length;j++) {
					l[j].style['paddingRight']=0;
				}
				break;
			}
		}
	},
	hideClicked: function(el) {
		var immediateUL = el.parentNode.parentNode;
		el.innerHTML = '';
		el.parentNode.style.background='none';
		/*
		immediateUL.style.height = '2px';
		immediateUL.style.overflow = 'hidden';
		immediateUL.style.margin = 0;
		*/
	},
	manualclick: function(el) {
		var self = expandFilter;
		if(document.all) {
			self.ieFixPadding();
		}
		self.hideClicked(el);
		var myParent = el.parentNode.parentNode.parentNode;
		self.showMore(myParent,1);
		return false;
	},
	init: function(el) {
		var self = expandFilter;
		//el.parentNode.style.display='block';
		if(document.all) {
			self.ieFixPadding();
		}
		el.onclick=function() {
			//this.parentNode.style.display='none';
			//this.parentNode.innerHTML = '';
			self.hideClicked(this);
			var myParent = this.parentNode.parentNode.parentNode;
			self.showMore(myParent,1);
			return false;
		}
	}
};
function showChoices(el) {

}
function showassociateditems(el,onoff) {
	if(onoff==0) {
		if(document.getElementById('loadingmsg')) {
			document.getElementById('loadingmsg').style.display = 'block';
		}
		el.style.filter="alpha(opacity:40)";
		el.style.KHTMLOpacity="0.40";
		el.style.MozOpacity="0.40";
		el.style.opacity="0.40";
		
	} else {
		if(document.getElementById('loadingmsg')) {
			document.getElementById('loadingmsg').style.display = 'none';
		}
		el.style.filter="alpha(opacity:100)";
		el.style.KHTMLOpacity="1";
		el.style.MozOpacity="1";
		el.style.opacity="1";
		
	}
}
var doInlineNav = {
	hovering: function(el) {
		alert(el.id);
		toolTipBubble.init(el.id.replace('apN','n'));
	},
	init: function(el) {
		var self = doInlineNav;
		el.onclick=function() {
			if(document.getElementById('cntrAssociatedProductsInner')) showassociateditems(document.getElementById('cntrAssociatedProductsInner'),0);
			var useHref = this.href + "&jsview=1";
			var data = "";
			var myAjax = new Ajax.Request(useHref,{asynchronous:true, method: 'get', parameters: data, onComplete: ajaxResultSuccess, onFailure: ajaxResultError});
			
			return false;
		}
	}
};
function checkoutoverride(el) {
	if(typeof _proxy_jslib_THIS_HOST != 'undefined') {
		el.onclick=function() {
			if(el.sesh2) {
				el.href = el.href+"?"+el.sesh2;
				el.target = "_top";
			}
		}
	}
}
var profilepics = {
	checkackbox: function(el) {
		var returnwhat = false;
		if(el.displayphotodisclaimer) {
			if(el.displayphotodisclaimer.checked) {
				returnwhat = true;
			}
		}
		if(returnwhat) {
			if(document.getElementById('uploadForm')&&document.getElementById('uploadProgress')) {
				document.getElementById('uploadForm').style.display = 'none';
				document.getElementById('uploadProgress').style.display = 'block';
			}
			if(document.forms['profilebasic']) {
				var oldF = document.forms['uploadmypic'];
				var myF = document.forms['profilebasic'];
				for(var i=0;i<myF.elements.length;i++) {
					formElem = myF.elements[i];
					formElemName = formElem.name;
					formElemValue = formElem.value;
					if (formElem.type=='hidden'||formElem.type=='text'||formElem.type=='textarea') {
						if(!document.forms['uploadmypic'][formElemName] && formElemValue.length) {
							var eltemp=document.createElement('input');
							eltemp.type="hidden";
							eltemp.name=formElemName;
							eltemp.value=formElemValue;
							oldF.appendChild(eltemp);
						}
					} else if (formElem.type=='checkbox') {
						if (formElem.checked) {
							if(!document.forms['uploadmypic'][formElemName] && formElemValue.length) {
								var eltemp=document.createElement('input');
								eltemp.type="hidden";
								eltemp.name=formElemName;
								eltemp.value=formElemValue;
								oldF.appendChild(eltemp);
							}
						}
					}
				}
			}
		} else {
			if(document.getElementById('uploaderror')) {
				document.getElementById('uploaderror').innerHTML = "Please make sure to check the box to indicate you agree to the Terms of Use.";
				document.getElementById('uploaderror').style.display = "block";
			}
			
		}
		return returnwhat;
	},
	deletepic: function(el) {
		var self = profilepics;
		el.onclick = function() {
			messaging.showprogress(1);
			ajaxFunctions.makeCall("wrapperaction=removeprofilepic&profilepicid="+self.profileid,"");
			return false;
		}
	},
	addpic: function(el) {
		var self = profilepics;
		var shipurl="/mynovica/uploadprofilepic.cfm?profileid="+self.profileid;
		var usetitle = "Upload a new photo";
		el.onclick = function() {
			displayShipping.preproxy(shipurl,usetitle,275);
			return false;
		}
	},
	init: function(el,type) {
		var self = profilepics;
		if(document.getElementById('myprofilepic')) {
			self.profileid = document.getElementById('myprofilepic').className.split(' ')[1].replace('p','');
		}
		if(self.profileid.length) {
			if(type=='delete') {
				self.deletepic(el);
			} else if(type=='add') {
				self.addpic(el);
			}
		}
	}
}
var novicachat = {
	toggleIcon: function(onoff) {
		if(onoff==1) newstate = 'block';
		else newstate = 'none';
		if(document.getElementById('cntrChatWin')) {
			document.getElementById('cntrChatWin').style.display = newstate;
		}
	},
	openchatwindow: function(agentcount) {
		var myurl = '/customerservice/chat.cfm?agentcount='+agentcount;
		window.open(myurl,"two","width=455,height=310,toolbar=no,menubar=no,location=no,status=no"); 
	},
	init: function(el) {
		var self = novicachat;
		if(typeof _proxy_jslib_THIS_HOST == 'undefined') {
			if(typeof iHaveCartItems == 'undefined') {
				iHaveCartItems = 0;
			}
			if(iHaveCartItems==1) {
				if(typeof enable_novica_livechat == 'undefined') {
					self.toggleIcon(0);
				} else {
					if(enable_novica_livechat==1) {
						if(typeof agentCount == 'undefined') agentCount = 0;
						el.onclick=function() {
							self.openchatwindow(agentCount);
							return false;
						}
						self.toggleIcon(1);
					} else {
						self.toggleIcon(0);
					}
				}
			} else { // no cart - don't show
				self.toggleIcon(0);
			}
		}
	}
};
var socialBookmarkFn = {
	browsermode: function(title,url) {
		var ua=navigator.userAgent.toLowerCase();
		var isKonq=(ua.indexOf('konqueror')!=-1);
		var isSafari=(ua.indexOf('webkit')!=-1);
		var isMac=(ua.indexOf('mac')!=-1);
		var buttonStr=isMac?'Command/Cmd':'CTRL';
		var showMessage = "";
		if(window.external && (!document.createTextNode || (typeof(window.external.AddFavorite)=='unknown'))) {
			window.external.AddFavorite(url,title);
		} else if(isKonq) {
			showMessage = "You need to press CTRL + B to bookmark our site.";
			alert(showMessage);
		} else if(window.home || isSafari || window.opera) {
			showMessage = "You need to press "+buttonStr+" + D to bookmark our site.";
			alert(showMessage);
		} else if(!window.print || isMac) {
			showMessage = "You need to press Command/Cmd + D to bookmark our site.";
			alert(showMessage);    
		} else {
			showMessage = "In order to bookmark this site you need to do so manually through your browser.";
			alert(showMessage);
		}	
	},
	sendAway: function(el) {
		var myWinName = el.className.replace('socialBookmarks bookmark','win');
		window.open(el.href,myWinName,'location=yes,toolbar=yes,resizable=1,scrollbars=1,width=700,height=400');
	},
	init: function(el) {
		var self = socialBookmarkFn;
		self.docUrl = window.location.href;
		self.docTitle = document.title;
		if(el.className.indexOf('bookmarkBrowser')>=0) {
			el.onclick=function() {
				self.browsermode(self.docTitle,self.docUrl);
				return false;
			}
		} else {
			el.onclick=function() {
				self.sendAway(this);
				return false;
			}
		}
	}
};
var getDateString = {
	init: function() {
		var myDate = new Date();
		return "&rt=" + myDate.getTime();
	}
};
function reloadProductPrices() {
	//||document.getElementById('wrapperCart')
	/*if(document.getElementById('productList')) {
		var currenturl = window.location.href;
		if(currenturl.indexOf('#')>=0) {
			currenturl = currenturl.split('#')[0];
		}
		var newurl;
		if(currenturl.indexOf('/cart/')>=0) {
		} else if(currenturl.indexOf('/index.cfm')>=0) {
			newurl = currenturl;
		} else if(currenturl.indexOf('/filter.htm')>=0) {
			newurl = currenturl;
		} else {
			newurl = currenturl + "/filter.htm";
		}
		
		newurl = newurl.replace('http://','~');
		newurl = newurl.replace('//','/');
		newurl = newurl.replace('~','http://');
		if(newurl.indexOf('?')>=0) {
			newurl = newurl + '&jsview=1';
		} else {
			newurl = newurl + '?jsview=1';
		}
		data = "";
		alert(newurl);
		var myAjax = new Ajax.Request(newurl,{asynchronous:true, method: 'get', parameters: data, onComplete: ajaxResultSuccess, onFailure: ajaxResultError});
	} else {
		justreload(0);
	}*/
	justreload(0);
}
var signInLeft = {
	getfmready: function() {
		var self = signInLeft;
		var myfrm;
		var frmType = "";
		var submiturl = "/mynovica/index.cfm";
		if(document.forms['mnLogin']) {
			myfrm = document.forms['mnLogin'];
			frmType = "mynovica";
		} else if(document.forms['wholesalelogin']) {
			myfrm = document.forms['wholesalelogin'];
			submiturl = "/wholesale/signin.cfm";
			frmType = "wholesale";
		} 
		if(frmType!="") {
			myfrm.onsubmit=function() {
				var submitinline = false;
				try {
					if(frmType=='mynovica') {
						if(myfrm.loginmode.value=='return') {
							var mydata = formData2QueryString(myfrm)+"&jsview=1";
							submitinline = true;
						} else {
							submitinline = false;
							myfrm.jsview.value="";
						}
					} else if(frmType=='wholesale') {
						var mydata = formData2QueryString(myfrm)+"&jsview=1";
						submitinline = true;
					}
				} catch(e) {
					submitinline = false;
				}
				if(submitinline) {
					var sendurl=submiturl+"?"+mydata+"&"+getDateString.init();
					self.sendproxy(sendurl);
					return false;
				}
			}
		}
	},
	sendproxy: function(sendurl) {
		var self = signInLeft;
		messaging.hide();
		messaging.showprogress(1);
		self.send(sendurl);
	},
	send: function(sendurl) {
		data="";
		var self = signInLeft;
		sendurl+="&"+getDateString.init();
		var myAjax = new Ajax.Request(sendurl,{asynchronous:true, method: 'get', parameters: data, onComplete: self.showsignin, onFailure: ajaxResultError});
	},
	swapLogo: function() {
		var myAjax = new Ajax.Request("/CFC/wrapperCommon.cfm?wrapperaction=swaplogo",{asynchronous:true, method: 'get', parameters: '', onComplete: ajaxResultSuccess, onFailure: ajaxResultError});
	},
	showsignin: function(jsonData) {
		var self = signInLeft;
		var jsonObj = eval('('+jsonData.responseText+')');
		if(jsonObj.target && document.getElementById(jsonObj.target)) {
			var hideProgress = true;
			document.getElementById(jsonObj.target).innerHTML = jsonObj.content;
			if((document.getElementById('productlistWrapper')||document.getElementById('wrapperCart'))&&self.signinmode=='wholesale') {
				reloadProductPrices();
				hideProgress = false;
			}
			if(self.signinmode=='wholesale') {
				self.swapLogo();
			}
			if(hideProgress) {
				messaging.showprogress(0);
			}
			getLinks.init();
		} else {
			var self = signInLeft;
			var newpos = "";
			var usewidth = 350;
			messaging.showprogress(0);
			messaging.showmsg(jsonObj.content,self.useTitle,newpos,usewidth);
			getLinks.init();
			self.getfmready();
		}
	},
	init: function(el) {
		var self = signInLeft;
		el.onclick=function() {
			self.useTitle = "Please sign in below";
			usethis = this.href.toLowerCase();
			usethis = usethis.replace('http://www.novica.com','');
			usethis = usethis.replace('https://secure.novica.com','');
			usethis = usethis.replace('//','/');
			self.signinmode = "";
			
			if(usethis.indexOf('/mynovica/')>=0) {
				self.signinmode = "mynovica";
			} else if(usethis.indexOf('/wholesale/')>=0) {
				self.signinmode = "wholesale";
			}
			var sendOK = false;
			if(self.signinmode == "mynovica") {
				if(window.location.href.indexOf('/mynovica/')<0) {
					self.submiturl = usethis + "?";
					messaging.hide();
					messaging.showprogress(1);
					var sendurl = self.submiturl+"action=login&jsview=1&"+getDateString.init();
					var data = "";
					sendOK = true;
				}
			} else if(self.signinmode == "wholesale") {
				if(window.location.href.indexOf('/wholesale/')<0) {
					self.submiturl = usethis + "?";
					messaging.hide();
					messaging.showprogress(1);
					var sendurl = self.submiturl+"action=login&jsview=1&"+getDateString.init();
					var data = "";
					sendOK = true;
				}
			}
			if(sendOK) {
				self.send(sendurl);
				return false;
			}
		}
	}
};
var ecardfunctions = {
	closewindow: function() {
		messaging.hide();
	},
	checkAllEcardFields: function(f,previewmode) {
		var self = ecardfunctions;
		if (f.sendername.value=="" || f.senderemail.value=="" || f.recipientname.value=="" || f.recipientemail.value=="" || f.message.value=="") {
			return false
		} else {
			if(previewmode!=1) {
				f.action.value="send";
			}
			return true;
		}
	},
	displayerror: function(m) {
		if(document.getElementById('ecarderror')) {
			document.getElementById('ecarderror').innerHTML = m;
			document.getElementById('ecarderror').style.display = "block";
		} else {
			alert(m);
		}
	},
	sendecard: function(f) {
		var mydata = formData2QueryString(f)+"&jsview=1";
		var myurl = "/ecard/ecard.cfm?"+mydata;
		displayShipping.preproxy(myurl,"",500,"","noframe");
	},
	sendPreview: function(f,isedit) {
		var self = ecardfunctions;
		var checked=self.checkAllEcardFields(f,1);
		if(checked) {
			if(isedit==1) {
				f.action.value='edit';
			} else {
				f.action.value='preview';
			}
			self.sendecard(f);
		} else {
			self.displayerror("Please complete all fields and try again.");
		}
	},
	init: function() {
		var self = ecardfunctions;
		if(document.forms['ecard']) {
			var frm = document.forms['ecard'];
			frm.onsubmit=function() {
				var checkedFrm = self.checkAllEcardFields(frm);
				if(checkedFrm) {
					self.sendecard(frm);
				} else {
					self.displayerror("Please complete all fields and try again.");
				}
				return false;
			}
		}
	}
};
var displayShipping = {
	showrates: function(jsonData) {
		var jsonObj = eval('('+jsonData.responseText+')');
		var self = displayShipping;
		messaging.showprogress(0);
		usewidth="";
		if(self.overrideposition) {
			newpos=self.overrideposition;
		} else {
			newpos="";
		}
		if(self.fixedwidth) {
			usewidth=self.fixedwidth;
		}
		if(self.frameclass) {
			useaswindowclass = self.frameclass;
		} else {
			useaswindowclass = "";
		}
		messaging.showmsg(jsonObj.content,self.useTitle,newpos,usewidth,useaswindowclass);
		if(document.forms['ecard']) {
			ecardfunctions.init();
		}
	},
	send: function(shipurl) {
		data="";
		var self = displayShipping;
		shipurl+="&"+getDateString.init();
		var myAjax = new Ajax.Request(shipurl,{asynchronous:true, method: 'get', parameters: data, onComplete: self.showrates, onFailure: ajaxResultError});
	},
	sendproxy: function(shipurl,usetitle,usewidth) {
		var self = displayShipping;
		messaging.hide();
		messaging.showprogress(1);
		if(usetitle) {
			self.useTitle = usetitle;
		}
		if(usewidth) {
			self.fixedwidth = usewidth;
		}
		self.send(shipurl);
	},
	preproxy: function(s,u,w,p,fr) {
		var self = displayShipping;
		if(p) {
			self.overrideposition = p
		}
		if(fr) {
			self.frameclass = fr;
		}
		self.fixedwidth = w;
		displayShipping.sendproxy(s,u,w)
	},
	showecard: function(eid) {
		var self = displayShipping;
		messaging.showprogress(1);
		shipurl="/ecard/ecardview.cfm?action=viewonpage&ecardid="+eid+"&jsview=1";
		data="";
		self.useTitle = "NOVICA eCard";
		self.send(shipurl);
		self.frameclass="noframe";
	},
	init: function(el) {
		var self = displayShipping;
		el.onclick=function() {
			self.frameclass = "";
			messaging.hide();
			if(this.title) {
				messaging.showprogress(1);
				shipurl = "/commonDSP/dsp_calculateShipping.cfm";
				shipstr = this.title.replace('shipping-','').split('-');
				shipaction = shipstr[0];
				if(shipaction=='product') {
					shippid = shipstr[1];
					shipurl += '?action='+shipaction+'&productID='+shippid;
				} else if(shipaction=='cart') {
					shipurl += '?action=cart';
				}
				shipurl+="&jsview=1";
				data="";
				self.useTitle = "Shipping Calculator";
				self.send(shipurl);
				
			} else if(this.className.indexOf('ecard')>=0) {
				messaging.showprogress(1);
				var mypid = this.id.replace('ecard-','');
				shipurl="/ecard/ecard.cfm?pid="+mypid+"&jsview=1";
				data="";
				self.useTitle = "NOVICA eCard";
				self.send(shipurl);
				self.frameclass="noframe";
			} else if(this.className.indexOf('iconFreeShip')>=0) {
				messaging.showprogress(1);
				shipurl="/ap/freeshipping_detail.cfm?jsview=1";
				data="";
				self.useTitle = "Free Shipping";
				self.send(shipurl);
			} else if(this.className.indexOf('premiumbox')>=0) {
				messaging.showprogress(1);
				shipurl="/commonDSP/premiumgiftbox.cfm?jsview=1";
				data="";
				self.useTitle = "Museum Gift Box";
				self.send(shipurl);
			} else if(this.className.indexOf('jewelrybox-')>=0) {
				messaging.showprogress(1);
				//useR = this.className.split('-')[1];
				useR = this.href.split('?')[1];
				shipurl="/commonDSP/jewelrybox.cfm?"+useR;
				shipurl+="&jsview=1";
				data="";
				self.useTitle = "Free Jewelry Box";
				self.send(shipurl);
			} else if(this.className.indexOf('giftwrap-')>=0) {
				messaging.showprogress(1);
				useR = this.className.split('-')[1];
				shipurl="/commonDSP/giftwrap.cfm?rid="+useR;
				shipurl+="&jsview=1";
				data="";
				self.useTitle = "Free Gift Wrap";
				self.send(shipurl);
			} else if(this.className.indexOf('currencychanger')>=0) {
				messaging.showprogress(1);
				shipurl="/commonDSP/myExchangeRate.cfm?jsview=1";
				data="";
				self.useTitle = "Update Currency";
				self.send(shipurl);
			} else if(this.className.indexOf('about-')>=0) {
				messaging.showprogress(1);
				yy = this.className.split(' ');
				for(var x=0;x<yy.length;x++) {
					if(yy[x].indexOf('about-')>=0) {
						useAction = yy[x].split('-')[1];
						shipurl="/commonDSP/dsp_about.cfm?action="+useAction;
						shipurl+="&jsview=1";
						data="";
						self.fixedwidth = 350;
						if(useAction.indexOf('testimonial')>=0) {
							self.useTitle = "How do I submit a testimonial for an artist?";
						} else {
							self.useTitle = "Larger Picture";
						}
						self.send(shipurl);
					}
				}
			} else if(this.className.indexOf('forgotpassword')>=0) {
				messaging.showprogress(1);
				shipurl="/commonDSP/forgotpassword.cfm?jsview=1";
				var k = document.getElementsByTagName('input');
				for(var l=0;l<k.length;l++) {
					if(k[l].name=='loginemail') {
						if(k[l].value) {
							shipurl+="&email="+k[l].value;
							break;
						}
					}
				}
				data="";
				self.useTitle = "Forgot Password?";
				self.fixedwidth = 350;
				self.send(shipurl);
			}
			return false;
		}
	}
};
var fadeInOut = {
	setIt: function(el,c) {
		var valPercent;
		if(c>0) {
			valPercent = c/100;
		} else {
			valPercent = 0;
		}
		el.style.filter="alpha(opacity:"+c+")";
		el.style.KHTMLOpacity=valPercent;
		el.style.MozOpacity=valPercent;
		el.style.opacity=valPercent;
	},
	setOpacity: function() {
		var self = fadeInOut;
		var stillfading = true;
		self.currentval = self.currentval + self.diff;
		self.setIt(self.target,self.currentval);
		self.target.style.display = 'block';
		if(self.diff>0) {
			if(self.currentval>=self.finalval) stillfading = false;
		} else {
			if(self.currentval<=self.finalval) stillfading = false;
		}
		if(stillfading) {
			self.fading = setTimeout(function(){self.setOpacity()},2);
		} else {
			clearTimeout(self.fading);
			if(self.diff<=0) {
				self.target.style.display = 'none';
			}
		}
	},
	resetZ: function() {
		var mya = document.getElementsByTagName('a');
		for(var i=0;i<mya.length;i++) {
			mya[i].style.zIndex='1';
		}
	},
	init: function(which,onoff) {
		var self = fadeInOut;
		self.target = which;
		if(onoff==1) {
			self.diff = 10;
			self.currentval = 0;
			self.finalval = 100;
		} else {
			self.diff = -10;
			self.currentval = 100;
			self.finalval = 0;
		}
		if(document.all) self.resetZ();
		self.setOpacity();
	}
};
	
var longText = {
	hideOthersFirst: function(ex) {
		var self = longText;
		var z=document.getElementsByTagName('div');
		for(var i=0;i<z.length;i++) {
			if(z[i].id.indexOf('cntrFadePop')>=0) {
				var zz = z[i].getElementsByTagName('div');
				for(var j=0;j<zz.length;j++) {
					if(zz[j].id.indexOf('-full')>=0&&zz[j].id!=ex) {
						zz[j].style.display = 'none';
					}
				}
			}
		}
	},
	
	swaptext: function(which,newXY) {
		var showText,hideText;
		var self = longText;
		hideText = which.title;
		if(which.className.indexOf('-product')>=0) {
			showText = "productdetail-longdescription-full";
		} else if(which.className.indexOf('-artist')>=0) {
			showText = "productdetail-artist-story-full";
		}
		mynewX = newXY[0]-20;
		mynewY = newXY[1]-20;
		if(showText) {
			if(document.getElementById(showText)) {
				var sT = document.getElementById(showText);
				myshowtext = sT.innerHTML;
				messaging.showmsg(myshowtext,"hello",mynewY+"-*-*-"+mynewX,471,"longstorypop")
			}
		}
	},
	init: function(which) {
		var self = longText;
		var t = document.getElementsByTagName('div');
		self.fademode = false;
		if(document.getElementById('cntrFadePop')||document.getElementById('cntrFadePop2')) {
			self.fademode = true;
		}
		which.onclick=function() {
			var clickedPos = Position.cumulativeOffset(which.parentNode.parentNode.parentNode);
			messaging.hide();
			self.swaptext(this,clickedPos);
			return false;
		}
	}
};
var locator = {
	getit: function() {
		var myWidth,myHeight;
		if( typeof( window.innerWidth ) == 'number' ) {
			myWidth = window.innerWidth;
			myHeight = window.innerHeight;
		} else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) {
			myWidth = document.documentElement.clientWidth;
			myHeight = document.documentElement.clientHeight;
		} else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
			myWidth = document.body.clientWidth;
			myHeight = document.body.clientHeight;
		}
		return [myWidth,myHeight]
	}
};
var signMeIn = {
	locate: function(e) {
		var posx=0,posy=0;
		var myWidth = 0
		if(e==null) e=window.event;
		if(e.pageX || e.pageY) {
			posx=e.pageX; posy=e.pageY;
		} else if(e.clientX || e.clientY){
		    if(document.documentElement.scrollTop){
		        posx=e.clientX+document.documentElement.scrollLeft;
		        posy=e.clientY+document.documentElement.scrollTop;
		    } else{
		        posx=e.clientX+document.body.scrollLeft;
		        posy=e.clientY+document.body.scrollTop;
		    }
	    }
		if( typeof( window.innerWidth ) == 'number' ) {
			myWidth = window.innerWidth;
		} else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) {
			myWidth = document.documentElement.clientWidth;
		} else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
			myWidth = document.body.clientWidth;
		}
		document.getElementById('cntrSignIn').style.left = (myWidth-350)/2 + 'px';
		document.getElementById('cntrSignIn').style.top = posy-190+'px';
	},
	signin: function(e) {
		var self = signMeIn;
		self.locate(e);
		document.getElementById('cntrSignIn').style.display="block";
		return false;
	},
	hideme: function(e) {
	},
	init: function(which) {
		var self = signMeIn;
		if(!document.getElementById('cntrSignIn')) {
			h=document.createElement("div");
			h.id="cntrSignIn";
			h.setAttribute("id","cntrSignIn");
			h.style.position="absolute";
			document.getElementsByTagName("body")[0].appendChild(h);
		}
	}
}
/* end	wishlist star toggle */
var wishStars = {
	highlight: function() {
		var self = wishStars;
		var i = 0;
		for(var z=3;z>=1;z--) {
			i++;
			if(self.selectedPriorityDisplay>=z) {
				document.getElementById('starpower-'+i).src = '/images/star1.gif';
			} else {
				document.getElementById('starpower-'+i).src = '/images/star0.gif';
			}
		}
	},
	reverseValues: function(val) {
		var rtnVal;
		switch(val) {
			case "1":
				rtnVal = 3;
				break;
			case "3":
				rtnVal = 1;
				break;
			default:
				rtnVal = val;
		}
		return rtnVal;
	},
	getPriority: function(el,check) {
		var self = wishStars;
		if(check==1) {
			self.selectedPriorityDisplay = self.selectedval.value;
			self.selectedPriority = self.reverseValues(self.selectedPriorityDisplay);
		} else {
			self.selectedPriority = el.id.replace('priority-','');
			self.selectedPriorityDisplay = self.reverseValues(self.selectedPriority);
		}
	},
	overme: function(el) {
		var self = wishStars;
		self.getPriority(el);
		if(self.selectedPriorityDisplay!=self.selectedval.value) {
			self.highlight();
		}
	},
	ousted: function(el) {
		var self = wishStars;
		var i = 0;
		for(var z=3;z>=1;z--) {
			i++;
			if(self.selectedval.value>=z) {
				document.getElementById('starpower-'+i).src = '/images/star1.gif';
			} else {
				document.getElementById('starpower-'+i).src = '/images/star0.gif';
			}
		}
	},
	clicked: function(el) {
		var self = wishStars;
		self.getPriority(el);
		self.selectedval.value = self.selectedPriorityDisplay;
		self.highlight();
		self.f.detail_priority.value = self.selectedval.value;
		return false;
	},
	init: function(which) {
		var self = wishStars;
		if(document.forms['wishlistdetail']) {
			wishlistdetailupdate.init();
			self.f = document.forms['wishlistdetail'];
			self.selectedval = self.f.detail_priority_init;
			which.onmouseover = function() {
				self.overme(this);
			}
			which.onmouseout = function() {
				self.ousted(this);
			}
			which.onclick = function() {
				self.clicked(this);
			}
		}
	}
};
var wishlistdetailupdate = {
	showprogress: function() {
		var a = document.getElementsByTagName('a');
		for(var i=0;i<a.length;i++) {
			if(a[i].className.indexOf('iconWishlist')>=0) {
				a[i].innerHTML = a[i].innerHTML + '<span class="addingDot">.</span>';
				addDot();
			}
		}
	},
	init: function() {
		var self = wishlistdetailupdate;
		self.form = document.forms['wishlistdetail'];
		self.form.onsubmit=function() {
			self.showprogress();
		}
	}
};
/* 
reload productlist page using ajax
only available on pages where productlistajax is set to true
*/
var inlineProductList = {
	toggleBG: function(which) {
		var d = document.getElementsByTagName('div');
		var self = inlineProductList;
		for(var i=0;i<d.length;i++) {
			if(d[i].id.toLowerCase().indexOf('navigationpagination')>=0) {
				if(!self.containerdiv) {
					self.containerdiv = d[i].parentNode;
				}
				if(which) {
					addMyClass.init(d[i], which);
				} else {
					addMyClass.init(d[i], "navigationPagination");
				}
			}
		}
	},
	dimContainerDiv: function() {
		var self = inlineProductList;
		if (self.containerdiv.filters && self.containerdiv.filters[0]) {
			if (typeof self.containerdiv.filters[0].opacity=="number") { //IE6+
				self.containerdiv.filters[0].opacity=self.opacitysetting*100;
			} else {
				self.containerdiv.style.filter="alpha(opacity="+self.opacitysetting*100+")";
			}
		} else if (typeof self.containerdiv.style.MozOpacity!="undefined" && self.opacitystring!=""){
			self.containerdiv.style.MozOpacity=self.opacitysetting;
		} else {
			self.opacitysetting=1;
		}
	},
	prep: function(which) {
		var myNavD = which;
		var myNavA = myNavD.getElementsByTagName('a');
		var self = inlineProductList;
		if(!self.containerdiv) {
			self.opacitysetting = 0.5;
			self.containerdiv = which.parentNode;
		}
		for(var j=0;j<myNavA.length;j++) {
			if(myNavA[j].className!='selectedPg') {
				myNavA[j].onclick=function() {
					myUrl = this.href;
					var myUrlSplit = myUrl.split('/');
					var newUrl = '';
					for(var x=0;x<myUrlSplit.length;x++) {
						if(myUrlSplit[x].indexOf('.cfm')>=0||myUrlSplit[x].indexOf('.htm')>=0) {
							var splitTemp = myUrlSplit[x].split('?');
							if(splitTemp.length>=2) {
								newUrl = splitTemp[1];
								break;
							}
						} else if(myUrlSplit[x].indexOf('stz')>=0) {
							newUrl = 'pgnav='+myUrlSplit[x];
							break;
						}
					}
					if(newUrl.length) {
						document.location.replace("#"+newUrl);
						//window.location.hash("#"+newUrl);
						//window.bHistory.src=newUrl;
					}
					//if(movetotop) document.location.replace("#top");
					if(myUrl.indexOf('/artistdetail/')>=0 || typeof doinlinepagination!='undefined') {
						if(myUrl.indexOf('nn/')>=0) {
							myUrl = myUrl + 'filter.htm?viewnow=1';
						}
						if(myUrl.indexOf('jsview')<0) myUrl = myUrl + '&jsview=1';
						var myDate = new Date();
						myUrl = myUrl;
						data = "";
						self.toggleBG('pleasewait');
						var myAjax = new Ajax.Request(myUrl,{asynchronous:true, method: 'get', parameters: data, onComplete: ajaxResultSuccess, onFailure: ajaxResultError});
						return false;
					}
				}
			}
		}
	},
	init: function() {
		if(!productlistajax) return;
		var doinlineswap = false;
		var self = inlineProductList;
		var d = document.getElementsByTagName('div');
		var pageIamOn = unescape(document.location).toLowerCase();
		self.toggleBG();
		for(var i=0;i<d.length;i++) {
			if(d[i].className=='navigationPagination') self.prep(d[i]);
		}
	}
};
/* TICKER */
function domticker(content, divId, divClass, delay, fadeornot){
	this.donealready = 0;
	this.content=content;
	this.tickerid=divId;
	this.delay=delay;
	this.mouseoverBol=0;
	this.pointer=1;
	this.opacitystring=(typeof fadeornot!="undefined")? "width: 100%; filter:progid:DXImageTransform.Microsoft.alpha(opacity=100); -moz-opacity: 1" : ""
	if (this.opacitystring!="") this.delay+=500;
	this.opacitysetting=0.2;
	document.getElementById(divId).innerHTML = '<div style="'+this.opacitystring+'">'+content[0]+'</div>';
	if(divClass) {
		document.getElementById(divId).className = divClass;
	}
	if(delay>0) {
		var instanceOfTicker=this;
		setTimeout(function(){instanceOfTicker.initialize()}, delay)
	}
}
domticker.prototype.initialize=function(){
	var instanceOfTicker=this
	this.contentdiv=document.getElementById(this.tickerid).firstChild;
	document.getElementById(this.tickerid).onmouseover=function(){instanceOfTicker.mouseoverBol=1}
	document.getElementById(this.tickerid).onmouseout=function(){instanceOfTicker.mouseoverBol=0}
	this.rotatemsg();
}
domticker.prototype.rotatemsg=function(){
	this.donealready++;
	if((this.tickerid.indexOf('addtocart')>=0 || this.tickerid == 'detailInCart') && this.donealready>1) {
		if (this.contentdiv.filters && this.contentdiv.filters[0]) {
			if (typeof this.contentdiv.filters[0].opacity=="number") {
				this.contentdiv.filters[0].opacity=100;
			} else {
				this.contentdiv.style.filter="alpha(opacity=100)";
			}
		} else if (typeof this.contentdiv.style.MozOpacity!="undefined"){
			this.contentdiv.style.MozOpacity=1;
		} 
		this.clearTimeout();
	}
	var instanceOfTicker=this
	if (this.mouseoverBol==1) {
		setTimeout(function(){instanceOfTicker.rotatemsg()}, 100)
	} else {
		this.fadetransition("reset")
		this.contentdiv.innerHTML=this.content[this.pointer]
		this.fadetimer1=setInterval(function(){instanceOfTicker.fadetransition('up', 'fadetimer1')}, 100)
		this.pointer=(this.pointer<this.content.length-1)? this.pointer+1 : 0
		setTimeout(function(){instanceOfTicker.rotatemsg()}, this.delay)
	}
}
/* TICKER : fadetransition()- cross browser fade method for IE5.5+ and Mozilla/Firefox */
domticker.prototype.fadetransition=function(fadetype, timerid){
	var contentdiv=this.contentdiv
	if (fadetype=="reset") {
		this.opacitysetting=0.2
	}
	if (contentdiv.filters && contentdiv.filters[0]) {
		if (typeof contentdiv.filters[0].opacity=="number") {
			contentdiv.filters[0].opacity=this.opacitysetting*100
		} else {
			contentdiv.style.filter="alpha(opacity="+this.opacitysetting*100+")"
		}
	} else if (typeof contentdiv.style.MozOpacity!="undefined" && this.opacitystring!=""){
		contentdiv.style.MozOpacity=this.opacitysetting
	} else {
		this.opacitysetting=1
	}
	if (fadetype=="up") {
		this.opacitysetting+=0.2
	}
	if (fadetype=="up" && this.opacitysetting>1) {
		clearInterval(this[timerid])
	}
}
function getTicker() {
	var s,t,to;
	var d = document.getElementsByTagName('div');
	for(var i=0;i<d.length;i++) {
		if(d[i].className.indexOf('tickercomponent-')>=0) {
			s = d[i].className.split("-");
			try {
				t = eval(s[1]);
			} catch(e) {
				t = '';
			}
			if(typeof(t)=='object') {
				if(t.length==1) {
					to = 0;
				} else if(s.length==3) {
					to = Math.round(s[2]);
				} else {
					to = 3000;
				}
				new domticker(t, d[i].id, "", to, "fadeit");
			}
		}
	}
	if(document.getElementById('phoneDisplayHome')) {
		ajaxFunctions.makeCall("wrapperaction=tickerHome");
	}
}
/* myNOVICA */
function showandtell(what) {
	var l = "account,wishlist,artists,regions";
	var la = l.split(',');
	var selectedsection = what.split('?')[1].split('=')[1];
	for(var j=0;j<la.length;j++) {
		collapsediv = document.getElementById('intro'+la[j]+'exp');
		showdiv = document.getElementById('intro'+la[j]);
		if(la[j]==selectedsection) {
			collapsediv.style.display = 'block';
			showdiv.style.display = 'none';
		} else {
			collapsediv.style.display = 'none';
			showdiv.style.display = 'block';
		}
	}
}
function swapExpand() {
	var t = document.getElementsByTagName('a');
	for(var i=0;i<t.length;i++) {
		if(t[i].className=='expand') {
			t[i].onclick=function() {
				showandtell(this.href);
				return false;
			}
		}
	}
}
/* END myNOVICA */
/* Detail page */
var populateAttribQty = {
	populateBox: function(jsonData) {
		var self = populateAttribQty;
		var jsonObj = eval('('+jsonData.responseText+')');
		var ableAddCart = false;
		if(jsonObj.uptoqty) {
			if(document.getElementById("qty_0")) {
				var t = document.getElementById("qty_0");
				if(document.all) {
					t.length=10;
           			t.length=0;
				} else {
					t.innerHTML = '';
				}
				var finalSelect = '';
				for(var j=1;j<=parseInt(jsonObj.uptoqty);j++) {
					if(document.all) {
						o = document.createElement('option');
						o.setAttribute('value',j);
                		o.appendChild(document.createTextNode(j));
						t.appendChild(o);
					} else {
						t.innerHTML += '<option value="'+j+'">'+j+'</option>';
					}
				}
				ableAddCart = true;
			}
		}
		var isbackorderitem = 0;
		if(jsonObj.itemisbackorder) {
			isbackorderitem = jsonObj.itemisbackorder;
		}
		if(document.getElementById("backordercartbtn")) {
			var t = document.getElementById("backordercartbtn");
			if(isbackorderitem==1) {
				document.getElementById('backorderitemname').innerHTML = self.selectedoptionname;
				t.style.display = "block";
			} else {
				t.style.display = "none";
			}
		}
		if(self.btnAdd) {
			if(isbackorderitem==1) {
				self.btnAdd.value = self.btnAdd.value.replace("ADD TO CART","Place Backorder");
			} else {
				self.btnAdd.value = self.btnAdd.value.replace("Place Backorder","ADD TO CART");
			}
		}
		if(document.forms['addtocart']) {
			var f = document.forms['addtocart'];
			if(f["isBackOrder"]) {
				f["isBackOrder"].value = isbackorderitem;
			}
		}
		if(ableAddCart) {
			self.post();
		} else {
			self.prep();
		}
	},
	populateBoxDefault: function() {
		var self = populateAttribQty;
	},
	post: function() {
		messaging.hide();
		var self = populateAttribQty;
		if(self.btnAdd) {
			self.btnAdd.className = 'btnBlue';
			self.btnAdd.disabled = false;
		}
		if(self.divCntr) {
			self.divCntr.style.color = '#000';
			if(self.dropdown) {
				self.dropdown.style.color = '#000';
				self.divCntr.disabled = false;
			}
			self.divCntr.style.display = 'block';
		}
	},
	prep: function() {
		var self = populateAttribQty;
		if(self.btnAdd) {
			self.btnAdd.className = 'btnGrey';
			self.btnAdd.disabled = true;
		}
		if(self.divCntr) {
			if(self.divCntr.style.display=='block') {
				self.divCntr.style.color = '#CCC';
				if(self.dropdown) {
					self.dropdown.style.color = '#CCC';
					self.divCntr.disabled = true;
				}
			} else {
				self.divCntr.style.display = 'none';
			}
			
		}
		if(document.getElementById("backordercartbtn")) {
			document.getElementById("backordercartbtn").style.display = "none";
		}
	},
	getBackorderItemName: function(el) {
		var self = populateAttribQty;
		if(document.getElementById('attribtype')) {
			var attribname = document.getElementById('attribtype');
			try {
				
				self.selectedoptionname = el.options[el.selectedIndex].text.replace('- ','').replace('(Backorder','|').split('|')[0];
				if(self.selectedoptionname) {
					if(attribname.innerHTML) {
						self.selectedoptionname = attribname.innerHTML + ' ' + self.selectedoptionname;
					}
				} else {
					self.selectedoptionname = "This item";
				}
			} catch(e) {
				self.selectedoptionname = "This item";
			}
		}
	},
	getQty: function(el) {
		var self = populateAttribQty;
		self.selectbox = el;
		self.attribID = el.value;
		self.dropdown = "";
		self.selectedoptionname = "This item";
		
		if(document.getElementById('cntrQtySelect')) {
			self.divCntr = document.getElementById('cntrQtySelect');
			self.dropdown = self.divCntr.getElementsByTagName('select')[0];
		} else {
			self.divCntr = "";
		}
		if(document.getElementById('addtocartbutton')) {
			self.btnAdd = document.getElementById('addtocartbutton');
		} else {
			self.btnAdd = "";
		}
		self.prep();
		if(el.value>0) {
			messaging.showprogress(1);
			self.getBackorderItemName(el);
			var myDate = new Date();
			var myUrl = "/detail/getAttribQtySelectBox.cfm?attribID="+el.value+"&rt="+myDate.getTime();
			var data = "";
			var myAjax = new Ajax.Request(myUrl,{asynchronous:true, method: 'get', parameters: data, onComplete: populateAttribQty.populateBox, onFailure: populateAttribQty.populateBoxDefault});
		}
	}
};
function addtocartFn() {
	if(doInlineCartAdd) {
		var safetocontinue = true;
		if(navigator.userAgent) {
			var u = navigator.userAgent.toLowerCase().split(";");
			for(var i=0;i<u.length;i++) {
				if(u[i].indexOf('msie ')>=0) {
					var m = u[i].replace('msie ','');
					if(m<5.5) {
						safetocontinue = false;
					}
					break;
				}
			}
		}
		if(safetocontinue) {
			if(document.getElementsByTagName('input')) {
				var ad = document.getElementsByTagName('input');
				for(var i=0;i<ad.length;i++) {
					if(ad[i].className.indexOf('multiSubmit')>=0) {
						var myFrm = document.forms['wishlistitems'];
						ad[i].onclick=function() {
							var eData = this.id.replace('p-','').split("-");
							myFrm.pid.value = eData[0];
							myFrm.attribYes.value = eData[1];
							myFrm.attb.value = eData[2];
							myFrm.qaattribid.value = eData[3];
							myFrm.shippingOverrideType.value = eData[4];
							myFrm.shippingOverride.value = eData[5];
							myFrm.wishlist_wishlistID.value = eData[6];
							myFrm.action.value = "add";
							this.className = this.className.replace('btnBlue','btnLoading');
							addToCart(myFrm);
							return false;
						}
					}
				}
			}
			if(document.getElementById('addtocartbutton')) {
				var d = document.getElementById('addtocartbutton');
				var s = document.getElementsByTagName('select');
				enableBtnNow = true;
				for(var zz=0;zz<s.length;zz++) {
					if(s[zz].className.indexOf('attribselect')>=0) {
						enableBtnNow = false;
						d.className = 'btnGrey';
						var attribselect = s[zz];
						if(attribselect.value) {
							populateAttribQty.getQty(attribselect);
						}
						attribselect.onchange=function() {
							populateAttribQty.getQty(this);
						}
					}
				}
				if(enableBtnNow) d.disabled = false;
				
				if(document.getElementById('addtocart')) {
					var myFrm = document.forms['addtocart'];
					myFrm.onsubmit=function() {
						oktoContinue = true;
						if(myFrm.AttribYes.value==1) {
							if(myFrm.attb.value < 0) {
								if(document.getElementById('attribtype')) {
									showthismessage = "Please select " + document.getElementById('attribtype').innerHTML.replace(':','').toLowerCase() + " and try again.";
								} else {
									showthismessage = "Please select an option and try again.";
								}
								messaging.showwarning(showthismessage);
								oktoContinue = false;
							}
						}
						if(oktoContinue) {
							d.className = 'btnLoading';
							d.disabled = true;
							addToCart(myFrm);
						}
						return false;
					}
				}
			}
		}
	}
}
var addMyClass = {
	addstyles: function(el,str) {
		var str = str.split(";");
		for(var i=0;i<str.length;i++) {
			if(str[i].length) {
				tempstylename = str[i].split(":")[0];
				tempstylevalue = str[i].split(":")[1];
				el.style[tempstylename] = tempstylevalue;
			}
		}
	},
	add: function(el,cl) {
		Element.addClassName(el, cl);
	},
	init: function(el,cl) {
		var self = addMyClass;
		//self.add(el,cl);
		el.className+=' '+cl;
		if(isIE6less) {
			if(myIEclasses[cl]) self.addstyles(el,myIEclasses[cl]);
		} 
	}
};
var messaging = {
	toggleselectbar: function(onoff) {
		var newstate;
		if(isIE6less) {
			if(onoff) newstate = "block";
			else newstate = "none";
			var z = document.getElementsByTagName('select');
			for(var i=0;i<z.length;i++) {
				if(z[i].name!='ship2regiont') z[i].style.display = newstate;
			}
		}
	},
	showprogress: function(onoff) {
		var self = messaging;
		if(!document.getElementById('cntrMessages')) self.create();
		var z = document.getElementById('cntrMessages');
		if(onoff==1) {
			self.toggleselectbar(0);
			addMyClass.init(z, "temp");
			XYpos = locator.getit();
			Xpos = (XYpos[0]-174)/2;
			z.style.left = Xpos+"px";
			var myfade = new fadeInOut.init(z,1); 
		} else {
			self.hide();
		}
	},
	showmsg: function(m,t,p,newsize,winclassname) {
		var self = messaging;
		if(!document.getElementById('cntrMessages')) self.create();
		var z = document.getElementById('cntrMessages');
		if(!t) {
			t = "Please review the following:";
		}
		if(winclassname) {
			addMyClass.init(z, winclassname);
		} else {
			addMyClass.init(z, "msg");
		}
		if(!winclassname)
		z.innerHTML = "<div id='msgHead'><p class='msgClose'><a href='javascript:void(0)' onclick='messaging.hide();'><img src='/images/iconcloseboxtext.gif' width='42' height='13' border='0' /></a></p><p>" + t + "</p></div>";
		z.innerHTML = z.innerHTML + "<div id='msgBody'>" + m + "</div>";
		var leftSet = false;
		var mywidth = 500;
		if(newsize) {
			mywidth = newsize;
			z.style.width = mywidth+"px";
		}
		if(p) {
			var pp = p.split("-");
			for(var i=0;i<pp.length;i++) {
				if(pp[i]!='*') {
					switch (i) {
						case 0:
							z.style.top = pp[i]+"px";
							break;
						case 1:
							z.style.right = pp[i]+"px";
							leftSet = true;
							break;
						case 2:
							z.style.bottom = pp[i]+"px";
							break;
						case 3:
							z.style.left = pp[i]+"px";
							leftSet = true;
							break;
					}
				}
			}
			z.style.position="absolute";
		} 
		if(!leftSet) {
			XYpos = locator.getit();
			Xpos = (XYpos[0]-mywidth)/2;
			z.style.left = Xpos+"px";
		}
		self.toggleselectbar(0);
		var myfade = new fadeInOut.init(z,1); 
	},
	showwarning: function(m,p) {
		var self = messaging;
		if(!document.getElementById('cntrMessages')) self.create();
		var z = document.getElementById('cntrMessages');
		addMyClass.init(z, "warning");
		z.innerHTML = "<div id='msgHead'><p class='msgClose'><a href='javascript:void(0)' onclick='messaging.hide();'><img src='/images/iconcloseboxtext.gif' width='42' height='13' border='0' /></a></p><p class='iconMessageWarning'>Please review the following:</p></div>" + "<div id='msgBody'>" + m + "</div>";
		var leftSet = false;
		if(p) {
			var pp = p.split("-");
			for(var i=0;i<pp.length;i++) {
				if(pp[i]!='*') {
					switch (i) {
						case 0:
							z.style.top = pp[i]+"px";
							break;
						case 1:
							z.style.right = pp[i]+"px";
							leftSet = true;
							break;
						case 2:
							z.style.bottom = pp[i]+"px";
							break;
						case 3:
							z.style.left = pp[i]+"px";
							leftSet = true;
							break;
					}
				}
			}
			z.style.position="absolute";
		} 
		if(!leftSet) {
			XYpos = locator.getit();
			Xpos = (XYpos[0]-300)/2;
			z.style.left = Xpos+"px";
		}
		self.toggleselectbar(0);
		var myfade = new fadeInOut.init(z,1); 
	},
	showerror: function(m) {
		var self = messaging;
		if(!document.getElementById('cntrMessages')) self.create();
		var z = document.getElementById('cntrMessages');
		addMyClass.init(z, "error");
		z.innerHTML = m;
		XYpos = locator.getit();
		Xpos = (XYpos[0]-300)/2;
		z.style.left = Xpos+"px";
		self.toggleselectbar(0);
		z.style.display = "block";
		
	},
	hide: function() {
		var self = messaging;
		if(document.getElementById('cntrMessages')) {
			var d=document.getElementById("cntrBody");
			d.removeChild(document.getElementById('cntrMessages'));
			self.toggleselectbar(1);
		}
	},
	create: function(m) {
		if(document.getElementById('cntrCheckout')) {
			var b = document.getElementById('cntrCheckout');
		} else {
			var b = document.getElementById('cntrBody');
		}
		var m=document.createElement("div");
		m.id="cntrMessages";
		m.setAttribute("id","cntrMessages");
		m.style.display = "none";
		b.appendChild(m);
		if(document.getElementById('productdetail-attriberror')) document.getElementById('productdetail-attriberror').style.display="none";
	}
};
/* END Detail page */
var cssAdjusted = false;
function adjustCSS() {
	if(document.getElementById('wrapMenuItems') && !cssAdjusted) {
		cssAdjusted = true;
		var wm = document.getElementById('wrapMenuItems');
		var wmL = wm.getElementsByTagName('li');
		for(var x=0;x<wmL.length;x++) {
			wmL[x].style.paddingTop = '4px';
		}
	}
	cssAdjusted = true;
}
function eCardMe() {
	if(typeof eCardID!='undefined') {
		if(eCardID.length) {
			window.open("/ecard/ecard.cfm?ecardID="+eCardID+"&action=popup", "eCard", "width=500,height=480,toolbar=no,resizable=no,scrollbars=no,left=10,top=10");
		}
	}
}
function doWSswap(country) {
	var wfState = document.getElementById('signUpState');
	var wfProvince = document.getElementById('signUpProvince');
	if(country=='US') {
		wfState.style.display = 'block';
		wfProvince.style.display = 'none';
	} else {
		wfState.style.display = 'none';
		wfProvince.style.display = 'block';
		if(typeof EUcountries != 'undefined') {
			var EUlist = EUcountries.split(",");
			var showDiv = false;
			for(var i=0;i<EUlist.length;i++) {
				if(EUlist[i]==country) {
					showDiv = true;
				}
			}
			if(showDiv) {
				document.getElementById('vat').style.display = "block";
				document.getElementById('idnum').style.display = "none";
			} else {
				document.getElementById('vat').style.display = "none";
				document.getElementById('idnum').style.display = "block";
			}
		}
	}
}
function doWSsignup() {
	if(document.getElementById('wsSignUpWrapper')) {
		var w = document.getElementById('wsSignUpWrapper');
		if(document.forms['signup']) {
			var wf = document.forms['signup'];
			if(wf.signupcountry) {
				if(document.getElementById('signUpState') && document.getElementById('signUpProvince')) {
					doWSswap(wf.signupcountry.value);
					wf.signupcountry.onchange=function() {
						doWSswap(this.value);
					}
				}
			}
		}
	}
}
/* 
Bubble Tooltip 
*/
var alerted = 0;
var toolTipBubble = {
	Locate: function(e) {
		var posx=0,posy=0;
		if(e==null) e=window.event;
		if(e.pageX || e.pageY) {
			posx=e.pageX; posy=e.pageY;
		} else if(e.clientX || e.clientY){
		    if(document.documentElement.scrollTop){
		        posx=e.clientX+document.documentElement.scrollLeft;
		        posy=e.clientY+document.documentElement.scrollTop;
		    } else{
		        posx=e.clientX+document.body.scrollLeft;
		        posy=e.clientY+document.body.scrollTop;
		    }
	    }
		document.getElementById("btc").style.top=(posy+10)+"px";
		document.getElementById("btc").style.left=(posx-70)+"px";
	},
	showTooltip: function(e) {
		var self = toolTipBubble;
		document.getElementById("btc").appendChild(this.tooltip);
		document.getElementById("btc").style.zIndex="450";
		self.Locate(e);
	},
	hideTooltip: function(e) {
		var d=document.getElementById("btc");
		if(d.childNodes.length>0) d.removeChild(d.firstChild);
	},
	setOpacity: function(el) {
		el.style.filter="alpha(opacity:95)";
		el.style.KHTMLOpacity="0.95";
		el.style.MozOpacity="0.95";
		el.style.opacity="0.95";
		el.style.zIndex='400';
	},
	CreateEl: function(t,c) {
		var x=document.createElement(t);
		x.className=c;
		x.style.display="block";
		return(x);
	},
	Prepare: function(el) {
		var tooltip,t,b,s,l,useclassname;
		t=el.getAttribute("title");
		if(t==null || t.length==0) t="link:";
		el.removeAttribute("title");
		
		if(el.className.indexOf('shipguarbox')>=0) {
			useclassname = el.className.replace('xBoxBubble ','').replace('shipguarbox','');
			tooltip=this.CreateEl("span",useclassname);
			
		} else {
			tooltip=this.CreateEl("span","tooltip");
		}
		/*tooltip=this.CreateEl("span","guargreen");*/
		s=this.CreateEl("span","top");
		s.appendChild(document.createTextNode(t));
		tooltip.appendChild(s);
		b=this.CreateEl("b","bottom");
		l=el.getAttribute("href");
		l="";
		if(l.length>28) l=l.substr(0,25)+"...";
		tooltip.appendChild(b);
		this.setOpacity(tooltip);
		el.tooltip=tooltip;
		el.onmouseover=this.showTooltip;
		el.onmouseout=this.hideTooltip;
		el.onmousemove=this.Locate;
	},
	AddCss: function() {
		var l=this.CreateEl("link");
		l.setAttribute("type","text/css");
		l.setAttribute("rel","stylesheet");
		l.setAttribute("href","/css/bt.css");
		l.setAttribute("media","screen");
		document.getElementsByTagName("head")[0].appendChild(l);
	},
	init: function(id) {
		var links,i,h;
		if(!document.getElementById || !document.getElementsByTagName) return;
		this.AddCss();
		h=document.createElement("span");
		h.id="btc";
		h.setAttribute("id","btc");
		h.style.position="absolute";
		document.getElementsByTagName("body")[0].appendChild(h);
		linksTemp = document.getElementsByTagName("a")
		if(id==null) links=document.getElementsByTagName("a");
		else links=document.getElementById(id).getElementsByTagName("a");
		for(i=0;i<links.length;i++){
			if(links[i].className.indexOf('xBoxBubble')>=0) this.Prepare(links[i]);
	    }
	}
};
/* 2007.11.29 JWL : myNovica javascript functions */
var myInputClass = new Object();
function mnShowSignInError(onoff) {
	if(document.getElementById('signinError')) {
		document.getElementById('signinErrorItem').style.display = "none";
		if(onoff) {
			document.getElementById('signinErrorHeading').innerHTML = "Please complete all required fields highlighted in red below and try again";
			document.getElementById('signinError').style.display = "block";
		} else {
			document.getElementById('signinError').style.display = "none";
		}
	}
}
function mnHighlightError(field,onoff) {
	if(onoff) {
		if(field.className.indexOf('myInputError')<0) {
			field.className = "myInputError" + field.className.replace('mnInput','');
		}
	} else {
		if(myInputClass[field.name].indexOf('myInputError')>=0) {
			field.className = "mnInput" + myInputClass[field.name].replace('myInputError','');
		} else {
			field.className = myInputClass[field.name];
		}
	}
}
function mnValidateReq(frm) {
	var myReqFields;
	mnShowSignInError(0);
	if(frm.reqFields) {
		myReqFields = frm.reqFields.value;
	}
	if(frm.switching) {
		if(frm.switching.value) {
			myReqFields = '';
		}
	}
	if(myReqFields) {
		var errorExists = 0;
		var mF = myReqFields.split(',');
		for(var i=0;i<mF.length;i++) {
			var myVal = frm[mF[i]];
			if(!myVal.value.replace(/^\s+|\s+$/g, "")) {
				errorExists = 1;
				mnHighlightError(frm[mF[i]],1);
			} else {
				mnHighlightError(frm[mF[i]],0);
			}
		}
		if(errorExists) {
			mnShowSignInError(1);
			return false;
		} else {
			return true;
		}
	} else {
		return true;
	} 
}
/*
myNOVICA functions
*/
var myNOVICA = {
	expandCollapse: function(which) {
		var slink = which.getElementsByTagName('a');
		for(var i=0;i<slink.length;i++) {
			if(slink[i].className == 'showDetail') {
				slink[i].onclick=function() {
					mnSectionDetail(this.id);
					return false;
				}
			}
		}
	},
	init: function() {
		if(document.getElementById('myNovicaSections')) this.expandCollapse(document.getElementById('myNovicaSections'));
	}
};
function mnPrepDetail() {
	/*
	if(document.getElementById('sectionAccount')||document.getElementById('accountExpanded')||document.getElementById('accountTopMenu')) {
		if(document.getElementById('sectionAccount')) var z = document.getElementById('sectionAccount');
		else if(document.getElementById('accountTopMenu')) var z = document.getElementById('accountTopMenu');
		else var z = document.getElementById('accountExpanded');;
		var zz = z.getElementsByTagName('a');
		for(var i=0;i<zz.length;i++) {
			if(zz[i].className.indexOf('account')>=0 && zz[i].className.indexOf('Selected')<0) {
				zz[i].onmouseover=function() {
					this.className = this.className + 'Hovering';
				}
				zz[i].onmouseout=function() {
					this.className = this.className.replace('Hovering','');
				}
			}
		}
	}
	*/
	if(document.forms['mnLogin']) {
		var mnF = document.forms['mnLogin'];
		var mnInput = mnF.getElementsByTagName('input');
		for(var j=0;j<mnInput.length;j++) {
			if(mnInput[j].className) {
				myInputClass[mnInput[j].name] = mnInput[j].className;
			}
			mnInput[j].onblur=function() {
				if(this.className.indexOf('myInputError')>=0) {
					if(this.value.replace(/^\s+|\s+$/g, "")) {
						mnHighlightError(this,0);
					}
				}
			}
		}
		mnF.onsubmit=function() {
			return mnValidateReq(this);
		}
	}
}
function mnSectionDetail(which) {
	var m = document.getElementById('myNovicaSections');
	var s = m.getElementsByTagName('span');
	var showSpan = which + '1';
	var hideSpan = which + '0';
	for(var i=0;i<s.length;i++) {
		if(s[i].className=='notShown') {
			s[i].style.display='none';
		}
		if(s[i].className=='firstShown') {
			s[i].style.display='block';
		}
	}
	document.getElementById(hideSpan).style.display = 'none';
	document.getElementById(showSpan).style.display = 'block';
	
}
function checkAttribSelection(checkfirst) {
	if(checkfirst==1) {
		if(document.addtocart.attb) {
			selectedVal = document.addtocart.attb.options[document.addtocart.attb.selectedIndex].value;
			if(selectedVal < 0) {
				alert("Please select an option and try again.");
				return false;
			}
		}
	}
}
var initMarginTop = "-150";
function homeReposition() {
	if(document.getElementById('cntrHomeStuff')) {
		var targetD = document.getElementById('cntrHomeStuff');
		myCurrentMargin = Math.ceil(targetD.style.marginTop.replace('px',''));
		myCurrentMargin += 5;
		if(myCurrentMargin<0) {
			targetD.style.marginTop = myCurrentMargin+"px";
			setTimeout(function(){homeReposition()}, 5);
		}
	}
}
function getship2region() {
	tval = document.se.ship2regiont;
	t = tval.options[tval.selectedIndex].value.split("|");
	document.se.ship2ctid.value= t[0];
	document.se.ship2region.value= t[1];
	if(document.getElementById('cntrMessages') && document.getElementById('cntrShippingCalculator')) {
		var myElements = formData2QueryString(document.se);
		var shipurl = "/commonDSP/dsp_calculateShipping.cfm?" + myElements + "&jsview=1";
		messaging.hide();
		messaging.showprogress(1);
		displayShipping.send(shipurl);
	} else {
		document.se.submit();
	}
}
function getProductAttribShiprate() {
	if(document.se) {
		if(document.getElementById('cntrMessages') && document.getElementById('cntrShippingCalculator')) {
			var myElements = formData2QueryString(document.se);
			var shipurl = "/commonDSP/dsp_calculateShipping.cfm?" + myElements + "&jsview=1";
			messaging.hide();
			messaging.showprogress(1);
			displayShipping.send(shipurl);
		} else {
			document.se.submit();
		}
	}
}
	
function DeselectOtherServices(rid,sl,sg) {
	allservicesthisR = eval("document.se.thisregionallservices"+rid+".value");
	allservicesthisR = allservicesthisR.split(",");
	ClickedRadio = eval("document.se.shipServiceLevel" + rid);
	if(ClickedRadio.length) {
		for(x=0;x<ClickedRadio.length;x++) {
			if(ClickedRadio[x].checked) {
				ClickedRadioVal = x;
			}
		}
	} else {
		ClickedRadioVal = 0;
	}
	if(sg) {
		baseDivCss = "col3 padR";
		for(var i=1;i<=3;i++) {
			targetdivname = "radioval"+rid+"_"+i;
			if(document.getElementById(targetdivname)) {
				if(sl==i) {
					document.getElementById(targetdivname).className = baseDivCss+sg;
				} else {
					document.getElementById(targetdivname).className = baseDivCss+" shipguarColor";
				}
			}
		}
	}
	for(zz=0;zz<allservicesthisR.length;zz++) {
		whichRService = "reg" + rid + "service" + allservicesthisR[zz];
		if(document.getElementById(whichRService)) {
			if(ClickedRadioVal==zz) { 
				document.getElementById(whichRService).style.display="block";
			} else {
				document.getElementById(whichRService).style.display="none";
			}
		}
	}
}
function recalculate(r,idf,ar,sl,sg) {
	var d = document.getElementsByTagName('input');
	DeselectOtherServices(r,sl,sg);
	allRegionsTemp = ar.split('-');
	totalThisPage = 0;
	allRegions = ar.split("-");
	totalSaved = 0;
	var divName,whichR,savedDiv;
	for(z=0;z<allRegions.length;z++) {
		newValRegion = 0;
		whichR = allRegions[z];
		thisRegion = eval("document.se.shipServiceLevel"+whichR);
		divName = "regionTotal"+whichR;
		if(thisRegion.length) {
			for(x=0;x<thisRegion.length;x++) {
				if(thisRegion[x].checked) {
					newValRegion = thisRegion[x].value;
				}
			}
		} else {
			newValRegion = thisRegion.value;
		}
		if(newValRegion.indexOf(idf)>=0) {
			newValRegion = newValRegion.replace(idf,'');
		}
		totalThisPage = totalThisPage + newValRegion*100/100;
		if(whichR==r) {
			if(newValRegion <= 0) {
				document.getElementById(divName).innerHTML = "FREE";
			} else {
				document.getElementById(divName).innerHTML = idf + newValRegion;
			}
		}
		savedDiv = 'yousaveamount'+whichR+'-'+sl;
		/*
		if(document.getElementById(savedDiv)) {
			selectedServiceCheck = 'shipServiceLevel'+whichR+'-'+sl;
			if(document.getElementById(selectedServiceCheck)) {
				if(document.getElementById(selectedServiceCheck).checked) {
					totalSaved=totalSaved+parseFloat(document.getElementById(savedDiv).value);
				}
			}
			
		}
		*/
		/*
		if(document.getElementById('actualShownPriceTop')) {
			if(document.getElementById(savedDiv)) {
				totalSaved=totalSaved+parseFloat(document.getElementById(savedDiv).value);
			}
		} else {
			if(document.getElementById(savedDiv)) {
				document.getElementById(divName).innerHTML += '<br /><p id="yousave'+ whichR + '" style="font-size:12px;color:#900;">You save ' + idf + document.getElementById(savedDiv).value + '</p>';
			}
		}
		*/
	}
	for(var i=0;i<d.length;i++) {
		if(d[i].id.indexOf('yousaveamount')>=0) {
			temp1 = d[i].id.replace('yousaveamount','');
			tempregionid = temp1.split('-')[0];
			tempservicelevel = temp1.split('-')[1];
			tempradioname = 'shipServiceLevel'+tempregionid+'-'+tempservicelevel;
			if(document.getElementById(tempradioname)) {
				if(document.getElementById(tempradioname).checked) {
					totalSaved=totalSaved+parseFloat(d[i].value);
				}
			}
		}
	}
	if(document.getElementById('actualShownPriceTop') && document.getElementById('actualShownPriceBottom')) {
		if(totalThisPage <= 0) {
			document.getElementById('actualShownPriceTop').innerHTML = "FREE";
			document.getElementById('actualShownPriceBottom').innerHTML = "FREE";
		} else {
			document.getElementById('actualShownPriceTop').innerHTML = idf + totalThisPage.toFixed(2);
			document.getElementById('actualShownPriceBottom').innerHTML = idf + totalThisPage.toFixed(2);
		}
		if(totalSaved>0) {
			if(document.getElementById('saved-actualShownPriceTop')) {
				document.getElementById('saved-actualShownPriceTop').innerHTML = 'You save '+idf+totalSaved;
			}
			if(document.getElementById('saved-actualShownPriceBottom')) {
				document.getElementById('saved-actualShownPriceBottom').innerHTML = 'You save '+idf+totalSaved;
			}
		} else {
			if(document.getElementById('saved-actualShownPriceTop')) {
				document.getElementById('saved-actualShownPriceTop').innerHTML = '';
			}
			if(document.getElementById('saved-actualShownPriceBottom')) {
				document.getElementById('saved-actualShownPriceBottom').innerHTML = '';
			}
		}
	} else if(savedDiv && divName && whichR) {
		if(document.getElementById(savedDiv)) {
			document.getElementById(divName).innerHTML += '<br /><p id="yousave'+ whichR + '" style="font-size:12px;color:#900;">You save ' + idf + document.getElementById(savedDiv).value + '</p>';
		}
	}
}
var rerouteFrm = {
	init: function() {
		if(document.forms['se']) alert("found!");
		var mF = document.forms['se'];
		alert(mF.name);
		mF.onsubmit=function() {
			return false;
		}
	}
};
var showingPreviewNow = "";
var homefunctions = {
	setmapcoords: function(which) {
		var mapdiv = document.getElementById('cntrHomeMap');
		myclassname = "map" + which;
		addMyClass.init(mapdiv,myclassname);
		mapdiv.className = "map" + which;
	},
	map: function() {
		var self = homefunctions;
		var mapdiv = document.getElementById('cntrHomeMap');
		maplinks = mapdiv.getElementsByTagName('a');
		for(var i=0;i<maplinks.length;i++) {
			if(maplinks[i].className.indexOf('homemap')>=0) {
				maplinks[i].onmouseover=function() {
					self.setmapcoords(this.className.replace('homemap',''));
				}
				maplinks[i].onmouseout=function() {
					self.setmapcoords(0);
				}
			}
		}
	},
	mynovicamenu: function() {
		ajaxFunctions.makeCall("wrapperaction=mynovicamenu");
	},
	rightside: function() {
		grouporderoriginal = "1,2,3,4";
		groupordernew = "";
		for(i=1;i<=4;i++) {
			temp = "";
			groupArray = grouporderoriginal.split(",");
			k = groupArray.length;
			nowR = new Date();
			secR = nowR.getSeconds();
			whichRight = (secR % k);
			for(j=0;j<k;j++) {
				if(j==whichRight) {
					if(groupordernew=="") groupordernew = groupArray[j];
					else groupordernew = groupordernew + "," + groupArray[j];
				} else {
					if(temp=="") temp = groupArray[j];
					else temp = temp + "," + groupArray[j];
				}
			}
			grouporderoriginal = temp;
		}
		masterorder = groupordernew.split(",");
		returnString = "";
		spacer = "<br><img src='/images/trans.gif' width=1 height=20><br>"
		
		for(y=0;y<masterorder.length;y++) {
			whichmain = masterorder[y];
			counter = y + 1;
			getCount = rightIMG[whichmain].length - 1;
			nowtemp = new Date();
			sectemp = nowtemp.getSeconds();
			ranTemp = (sectemp % getCount) + 1;
			itemcounttemp = masterorder[y].length;
			useThisImage = rightIMG[whichmain][ranTemp];
			returnString = returnString + useThisImage;
		}
	return returnString;
	},
	newcustomerincentive: function() {
		ajaxFunctions.makeCall("wrapperaction=homenewcustomerincentive");
	}
};
var prodlistFn = {
	makePreview: function() {
		var self = prodlistFn;
		if(!document.getElementById('quickpreview')) {
			q=document.createElement("span");
			q.id="quickpreview";
			q.setAttribute("id","quickpreview");
			q.style.position="absolute";
			q.style.display="none";
			document.getElementsByTagName("body")[0].appendChild(q);
		}
	},
	startPrep: function(el) {
		var self = prodlistFn;
		if(!self.showing) {
			parent = Position.offsetParent(el);
			delta = Position.page(parent);
			if (parent == document.body) {
				delta[0] -= document.body.offsetLeft;
				delta[1] -= document.body.offsetTop;
			}
			var p = Position.page(el);
			newX  = (p[0]-5);
    		newY = (p[1] - delta[1]+50);
			var oldHref = el.childNodes[0].href;
			var oldImg = el.childNodes[0].childNodes[0].src;
			var newImg = oldImg.replace('_4.jpg','_1.jpg');
			var q = document.getElementById('quickpreview');
			var z1 = document.createElement("a");
			z1.href=oldHref;
			z1.setAttribute("href",oldHref);
			var z2 = document.createElement("img");
			z2.src=newImg;
			z2.style.width="200px";
			z2.style.height="200px";
			z2.setAttribute("src",newImg);
			z2.className = 'pic100bordered';
			z1.appendChild(z2);
			q.style.top = newY + "px";
			q.style.left = newX + "px";
			q.appendChild(z1);
			q.style.display="block";
			q.style.zIndex="400";
			self.showing = true;
			self.registerOut();
		}
	},
	registerOut: function() {
		var self = prodlistFn;
		if(document.getElementById('quickpreview')) {
			var q = document.getElementById('quickpreview').firstChild;
			q.onmouseout = self.endPreview;
		}
	},
	endPreview: function() {
		var self = prodlistFn;
		if(document.getElementById('quickpreview')) {
			var q = document.getElementById('quickpreview');
			if(q.childNodes.length>0) {
				q.removeChild(q.firstChild);
				q.style.display="none";
			}
			self.showing = false;
		}
	},
	init: function() {
		var self = prodlistFn;
		self.makePreview();
		self.showing = false;
		if(document.getElementById('productlistmain')) {
			var z = document.getElementById('productlistmain');
			var zz = z.getElementsByTagName('p');
			for(var i=0;i<zz.length;i++) {
				if(zz[i].className.indexOf('pListPic')>=0) {
					zz[i].onmouseover=function() {
						self.startPrep(this);
					}
					zz[i].onmouseout=function() {
						self.endPreview;
					}
				}
			}
		}
	}
};
/*
window.dhtmlHistory.create({
	toJSON: function(o) {
		return Object.toJSON(o);
	}, 
	fromJSON: function(s) {
		return s.evalJSON();
	}
});
var yourListener = function(newLocation, historyData) {        
}
*/
var getNovicaUrl = {
	init: function() {
		//alert(document.location);
	}
};
var logoHighlited = false;
var isIE6less = false;
function imSpecial(discriminate) {
	if(navigator.userAgent.indexOf('MSIE')) {
		if(parseFloat(navigator.userAgent.substring(navigator.userAgent.indexOf('MSIE')+4,navigator.userAgent.indexOf('MSIE')+8))<7) {
		isIE6less = true;
		}
	}
	if(document.getElementById('cntrHomeMap')) {
		homefunctions.map();
	}
	if(document.forms['myfriends']) {
		mynovicafriends.init();
		//getmyfriends();
	}
	if(typeof _proxy_jslib_THIS_HOST != 'undefined') {
		doInlineCartAdd = false;
		if(document.getElementById('cntrFooterSesh')) {
			document.getElementById('cntrFooterSesh').style.display = 'block';
		}
		if(document.getElementById('gotosesh')) {
			document.getElementById('gotosesh').style.display = 'none';
		}
		if(document.getElementById('seshbutton')) {
			//document.getElementById('startseshform').style.display = 'none';
			document.getElementById('seshbutton').disabled = true;
		}
		if(document.getElementById('seshbutton2')) {
			//document.getElementById('startseshform').style.display = 'none';
			document.getElementById('seshbutton2').disabled = true;
		}
		/*
		if(document.getElementById('btnPaypalCheckout')) {
			document.getElementById('btnPaypalCheckout').style.display = 'none';
		}
		*/
	}
	if(typeof _proxy_jslib_THIS_HOST == 'undefined') magicword.init();
	if(typeof jsRoot=='undefined') jsRoot = "/";
	var currentUrl = unescape(document.location).toLowerCase();
	if(typeof currentlyInCheckout=='undefined') treasuresOfTheWorld.init();
	if(document.getElementById('cntrMyNovicaHome')) {
		homefunctions.mynovicamenu();
	}
	if(document.getElementById('cntrNewCustomerIncentive')) {
		homefunctions.newcustomerincentive();
	}
	if(typeof menuhover!='undefined') menuhover.init();
	if(typeof currentlyInCheckout!='undefined') checkoutOnload();
	if(typeof disabledInitSearch=='undefined') disabledInitSearch = 1;
	if(!disabledInitSearch) redosearch = 0;
	addtocartFn();
	prepFlashMovie();
	getLargePic();
	getLinks.init();
	toolTipBubble.init();
	getNovicaUrl.init();
	if(typeof currentlyInCheckout=='undefined') {
		if(typeof getKeyword!='undefined') getKeyword();
	}
	doWSsignup();
	disabledInitSearch = 0;
	swapExpand();
	mnPrepDetail();
	myNOVICA.init();
	if(document.getElementById('cntrFundraising')) gettb();
	if(typeof displayecardid != 'undefined') displayShipping.showecard(displayecardid);
	if(document.getElementById('displaysupportreason')||document.getElementById('displayaboutme')||document.getElementById('newphotodescription')) {
		showMaxTyped.init();
	}
	if(typeof addanchor != 'undefined') location.replace('#'+addanchor);
	if(document.getElementById('updatedPhoto')) {
		myIcon = setTimeout("hideIcons()",2000);
	}
	if(typeof listmissingfields != 'undefined') markerrorfields();
	if(document.getElementById('cntrFriends')) {
		window.resizeTo(650,600);
	}
	var xx = document.getElementsByTagName('input');
	for(var l=0;l<xx.length;l++) {
		if(xx[l].className.indexOf('autosuggestit')>=0) {
			var as_json = new AutoSuggest(xx[l].id, options);
		}
	}
}
function markerrorfields() {
	var mylist = listmissingfields.split(',');
	for(var i=0;i<mylist.length;i++) {
		var myel = 't-'+mylist[i];
		if(document.getElementById(myel)) {
			document.getElementById(myel).style.color = '#900';
		}
	}
}
function checkphotoupload(f) {
	var myF = f;
	if(myF.displayphotodisclaimer.checked && myF.newphoto.value) {
		return true;
	} else {
		messaging.showwarning("Please complete all required fields and try again.");
		return false;
	}
}
function hideIcons() {
	var el = document.getElementById('updatedPhoto');
	var hideEl = new fadeInOut.init(el,-1);
}
var showMaxTyped =  {
	trackTyped: function(el) {
		var self = showMaxTyped;
		remainingchar = self.charLimit - el.value.length;
		if(el.value.length>remainingchar) {
			el.value = el.value.substring(0,self.charLimit-1);
		}
		if(document.getElementById('typedlen-'+el.id)) {
			targetspan = document.getElementById('typedlen-'+el.id);
			targetspan.innerHTML = remainingchar;
		}
		
	},
	init: function() {
		var self = showMaxTyped;
		self.charLimit = 1000;
		if(document.getElementById('displaysupportreason')) {
			document.getElementById('displaysupportreason').onkeyup = function() {
				self.trackTyped(this);
			}
		}
		if(document.getElementById('displayaboutme')) {
			document.getElementById('displayaboutme').onkeyup = function() {
				self.trackTyped(this);
			}
		}
		if(document.getElementById('newphotodescription')) {
			document.getElementById('newphotodescription').onkeyup = function() {
				self.trackTyped(this);
			}
		}
	}
}
function lightLogo() {
	if(!document.getElementById('headerLogo')) return false;
	var logoImg = document.getElementById('headerLogo');
	logoImg.src = "/images/logoTopLighted.gif";
	logoHighlited = true;
}
function processforgotpassword(frm) {
	var mydata = formData2QueryString(frm)+"&jsview=1";
	var shipurl="/commonDSP/forgotpassword.cfm?"+mydata;
	var usetitle = "Forgot Password?";
	var usewidth = 350;
	displayShipping.sendproxy(shipurl,usetitle,usewidth);
}
window.onload=imSpecial;
function addandsubmit(a,b) {
	document.updateCart.submit();
}
function popUp(url) {
	sealWin=window.open(url,"win",'toolbar=0,location=0,directories=0,status=1,menubar=1,scrollbars=1,resizable=1,width=560,height=450');
	self.name = "mainWin";
}
/* eCard scripts */
function checkAllEcardFields(previewmode) {
	var myF = document.ecard;
	if (myF.sendername.value=="" || myF.senderemail.value=="" || myF.recipientname.value=="" || myF.recipientemail.value=="" || myF.message.value=="") {
		showecardError("Please complete all fields and try again")
		return false
	} else {
		if(previewmode!=1) {
			myF.action.value="send";
		}
		return true;
	}
}
function sendPreview(f,isedit) {
	checked=checkAllEcardFields(1);
	if(checked) {
		if(isedit==1) {
			f.action.value='compose';
		} else {
			f.action.value='preview';
		}
		f.submit();
	}
}
function showecardError(eT) {
	messaging.showwarning(eT);
}
function closeecardwindow() {
	messaging.hide();
}	
/* END eCard scripts */

function openExternalTrackingWin(where) {
	window.open(where,"trackwin");
}
function checkdisplayname(profileid) {
	messaging.showprogress(1);
	if(document.getElementById('displayurl')) {
		if(document.getElementById('checkstatus')) {
			document.getElementById('checkstatus').style.display = "none";
		}
		if(document.getElementById('displayurl').value.length) {
			var data = "wrapperaction=checkdisplayname&displayurl="+document.getElementById('displayurl').value+"&profID="+profileid;
			ajaxFunctions.makeCall(data);
		} else {
			messaging.hide();
			messaging.showwarning("Please select a page name and try again.");
		}
	} else {
		messaging.hide();
		messaging.showwarning("There was an error. Please try again.");
	}
	
}

var cookieMe = {
	read: function(cookieName) {
		var theCookie=""+document.cookie;
		theCookie = theCookie.toLowerCase();
		cookieName = cookieName.toLowerCase();
 		var ind=theCookie.indexOf(cookieName);
 		if (ind==-1 || cookieName=="") return ""; 
 		var ind1=theCookie.indexOf(';',ind);
 		if (ind1==-1) ind1=theCookie.length; 
		return unescape(theCookie.substring(ind+cookieName.length+1,ind1));
	}
};

magicwordkey = "help";
wordsinitialized = false;
isinputfocused = false;
document.wordtyped = new Array(1);
document.wordtyped[0] = 0;
document.wordtyped[1] = 0;
document.wordtyped[2] = 0;

function handleKEvent(oEvent) {
	if(!wordsinitialized) {
		magicword.charCodeList(magicwordkey);
	}
	if(!isinputfocused) {
		var k=oEvent.keyCode||oEvent.charCode||oEvent.which;
		var lastMatchingChar = document.magicwords[document.magicwords.length-1].split(',');
		if((k==lastMatchingChar[0] || k == lastMatchingChar[1]) && document.getElementById('intercept')) {
			submitformnow = 1;
			for(var i=0;i<magicwordkey.length-1;i++) {
				curindex = document.magicwords[magicwordkey.length-i-2].split(',');
				if(document.wordtyped[i]==curindex[0] || document.wordtyped[i]==curindex[1]) {
					submitformnow++
				}
			}
			if(submitformnow==magicwordkey.length) {
				seshFrm = document.getElementById('intercept');
				var mytempcookie = cookieMe.read("cartID");
				if(mytempcookie) {
					if(!seshFrm['seshshopsession']) {
						var inputCartID = document.createElement('input');
						inputCartID.setAttribute('type','hidden');
						//inputCartID.setAttribute('name','shopSession');
						inputCartID.setAttribute('name','seshshopsession');
						inputCartID.setAttribute('value',mytempcookie);
						seshFrm.appendChild(inputCartID);
					}
				}
				seshFrm.submit();
			}
		}
		for(var j=magicwordkey.length-1;j>=0;j--) {
			if(j==0) {
				document.wordtyped[j] = k
			} else {
				document.wordtyped[j] = document.wordtyped[j-1]
			}
		}
		oEvent.cancelBubble = true;
	}
}
var magicword = {
	charCodeList: function(str) {
		document.magicwords = new Array(1);
		for(var i=0;i<str.length;i++) {
			character = str.substring(i,i+1);
			document.magicwords[i] = character.charCodeAt(0) + ',' + character.toUpperCase().charCodeAt(0);
		}
		wordsinitialized = true;
	},
	createForm: function() {
		var self = magicword;
		var myMainTarget = document.getElementById('cntrBody');
		var input1 = document.createElement('input');
		var sendAdditionalCartCookie = false;
		input1.setAttribute('type','hidden');
		input1.setAttribute('name','name');
		input1.setAttribute('value',self.username);
		input1.setAttribute('id','intercept_name');

		//var mytempcookie = cookieMe.read("cartID");
		//mytempcookie && 
		if(location.href.indexOf('novica.com')>=0) {
			/*if(mytempcookie) {
				mytempcookie = mytempcookie.toUpperCase();
			}*/
			if(location.href.indexOf('/member/')>=0) {
				myuseUrl = location.href;
				sendAdditionalCartCookie = true;
			} else if(location.href.indexOf('?')>=0) {
				var loc1 = location.href.split('?')[0];
				var loc2 = location.href.split('?')[1].split('&');
				myuseUrl = "";
				for(var i=0;i<loc2.length;i++) {
					if(loc2[i].indexOf('shopSession')<0) {
						myuseUrl = myuseUrl + '&' + loc2[i];
					}
				}
				/*if(mytempcookie) {
					myuseUrl = myuseUrl + '&shopSession=' + mytempcookie;
				}*/
				myuseUrl = myuseUrl.replace('&','?');
				myuseUrl = loc1 + myuseUrl;
			} else if(location.href=='http://www.novica.com/') {
				myuseUrl = location.href;
				/*if(mytempcookie) {
					myuseUrl = myuseUrl + 'home.cfm?shopSession=' + mytempcookie;
				}*/
			} else if(location.href.indexOf('https')>=0) {
				myuseUrl = location.href;
			} else {
				if(location.href.indexOf('.cfm')>=0 || location.href.indexOf('.htm')>=0) {
					myuseUrl = location.href;
					/*if(mytempcookie) {
						myuseUrl = myuseUrl + '?shopSession=' + mytempcookie;
					}*/
				} else {
					var detailcheck = location.href.split('/');
					if(location.href.charAt(location.href.length-1)=='/') {
						isLastNum = detailcheck[detailcheck.length-2];
					} else {
						isLastNum = detailcheck[detailcheck.length-1];
					}
					if(isNaN(isLastNum)) {
						var templocation = location.href.replace("http://","").split('.')[0].toLowerCase();
						if(templocation=='extranet'||templocation=='www') {
							
							myuseUrl = location.href;
							/*if(mytempcookie) {
								myuseUrl = myuseUrl + 'index.cfm?shopSession=' + mytempcookie;
							}*/
						} else {
							myuseUrl = location.href;
							/*if(mytempcookie) {
								myuseUrl = myuseUrl + 'shopSession' + mytempcookie;
							}*/
						}
					} else {
						myuseUrl = location.href;
						sendAdditionalCartCookie = true;
					}
				}
			}
		} else {
			myuseUrl = location.href;
		}
		if(!myuseUrl) {
			myuseUrl = location.href;
			if(mytempcookie) {
				sendAdditionalCartCookie = true;
			}
		}
		var input2 = document.createElement('input');
		input2.setAttribute('type','hidden');
		input2.setAttribute('name','website');
		input2.setAttribute('value',myuseUrl);
		
		//if(sendAdditionalCartCookie) {
			var input3 = document.createElement('input');
			input3.setAttribute('type','hidden');
			input3.setAttribute('name','shopSession');
			input3.setAttribute('value','');
			//input3.setAttribute('value',mytempcookie);
		//}
		/*
		var input4 = document.createElement('input');
		input4.setAttribute('type','hidden');
		input4.setAttribute('name','seshshopsession');
		input4.setAttribute('value','');
		*/
		var form1 = document.createElement('form');
		form1.setAttribute('namespace','/');
		form1.setAttribute('id','intercept');
		form1.setAttribute('action','http://novica.sesh.com/profile/intercept.do');
		form1.setAttribute('method','POST');
		form1.appendChild(input1);
		form1.appendChild(input2);
		//if(sendAdditionalCartCookie) {
			form1.appendChild(input3);
		//}
		//form1.appendChild(input4);
		myMainTarget.appendChild(form1);
	},
	watchformelements: function() {
		var x = document.getElementsByTagName('input');
		var y = document.getElementsByTagName('textarea');
		for(var i=0;i<x.length;i++) {
			if(x[i].type=='text') {
				x[i].onfocus=function() {
					isinputfocused = true;
				}
				x[i].onblur=function() {
					isinputfocused = false;
				}
			}
		}
		for(var j=0;j<y.length;j++) {
			y[j].onfocus=function() {
				isinputfocused = true;
			}
			y[j].onblur=function() {
				isinputfocused = false;
			}
		}
	},
	init: function() {
		var self = magicword;
		if(typeof myfirstname=='undefined') {
			self.username = 'Novica';
		} else {
			self.username = myfirstname;
		}
		self.watchformelements();
		if(document.getElementById('cntrBody')) {
			self.createForm();
			if (document.all) {
				document.body.attachEvent('onkeypress', handleKEvent);
			} else {
				document.body.setAttribute('onKeyPress', 'handleKEvent(event);');
				document.body.setAttribute('onKeyUp', 'void(0);');
			}
		}
	}
};



//mynovica adding friends
var friendslist = "";
/*
function checkandmarkfriends(f) {
	friendslist = "";
	for(var i=0;i<f.elements.length;i++) {
		var mye = f.elements[i];
		if(mye.checked && mye.name == 'emails') {
			friendslist = friendslist + "," + mye.value;
		}
	}
}
function checkandmarkallfriends(f,checked) {
	var myfriendselected = "";
	for(var i=0;i<f.elements.length;i++) {
		var mye = f.elements[i];
		if(mye.name == 'emails') mye.checked = checked; 
		
	}
	checkandmarkfriends(f);
}

function getmyfriends() {
	if(document.forms['myfriends']) {
		var myf = document.forms['myfriends'];
		myf['submit'].disabled=false;
		for(var i=0;i<myf.elements.length;i++) {
			var mye = myf.elements[i];
			if(mye.type == 'checkbox') {
				if(mye.name == 'emails') {
					mye.onclick=function() {
						checkandmarkfriends(myf);
					}
				} else if(mye.name == 'checkEmails') {
					mye.onclick=function() {
						checkandmarkallfriends(myf,this.checked);
					}
				}
			}
		}
		myf.onsubmit=function() {
			if(!friendslist) {
				if(document.getElementById('frienderror')) {
					document.getElementById('frienderror').innerHTML = "Please select at least 1 email address and try again.";
					document.getElementById('frienderror').style.display = "block";
				}
				return false;
			}
			if(window.opener) {
				window.opener.getnewfriends(friendslist);
				window.close();
				return false;
			}
		}
	}
}
*/
function cancelAddFriends() {
	if(window.opener) {
		window.close();
	} else {
		location.href='/mynovica/index.cfm?action=profile.friends';
	}
}

var mynovicafriends = {
	checkandmarkfriends: function(f) {
		var self = mynovicafriends;
		friendslist = "";
		allemailfields = 0;
		allemailfieldschecked = 0;
		for(var i=0;i<f.elements.length;i++) {
			var mye = f.elements[i];
			if(mye.name == 'emails') {
				allemailfields++;
				if(mye.checked) {
					friendslist = friendslist + "," + mye.value;
					allemailfieldschecked++;
				} else {
					f.elements['checkEmails'].checked = false;
				}
			}
		}
		if(allemailfields==allemailfieldschecked && allemailfields>0) {
			f.elements['checkEmails'].checked = true;
		}
	},
	checkandmarkallfriends: function(f,checked) {
		var self = mynovicafriends;
		var myfriendselected = "";
		for(var i=0;i<f.elements.length;i++) {
			var mye = f.elements[i];
			if(mye.name == 'emails') mye.checked = checked; 
			
		}
		self.checkandmarkfriends(f);
	},
	init: function() {
		var self = mynovicafriends;
		var myf = document.forms['myfriends'];
		myf['submit'].disabled=false;
		for(var i=0;i<myf.elements.length;i++) {
			var mye = myf.elements[i];
			if(mye.type == 'checkbox') {
				if(mye.name == 'emails') {
					mye.onclick=function() {
						self.checkandmarkfriends(myf);
					}
				} else if(mye.name == 'checkEmails') {
					mye.onclick=function() {
						self.checkandmarkallfriends(myf,this.checked);
					}
				}
			}
		}
		myf.onsubmit=function() {
			if(!friendslist) {
				self.checkandmarkfriends(myf);
				if(!friendslist) {
					if(document.getElementById('frienderror')) {
						document.getElementById('frienderror').innerHTML = "Please select at least 1 email address and try again.";
						document.getElementById('frienderror').style.display = "block";
					}
					return false;
				}
			}
			if(window.opener) {
				window.opener.getnewfriends(friendslist);
				window.close();
				return false;
			}
		}
	}
};

function swaporder(which) {
	proceednext = false;
	if(document.body.className.indexOf('giftfinder')>=0) {
		if(document.getElementById('topmenu_giftfinder')) {
			var p = document.getElementById('topmenu_giftfinder');
			proceednext = true;
		}
	} else if(document.body.className.indexOf('paintings')>=0) {
		if(document.getElementById('topmenu_paintings')) {
			var p = document.getElementById('topmenu_paintings');
			proceednext = true;
		}
	}
	if(proceednext) {
		var u = p.getElementsByTagName('ul')[0];
		var l = u.getElementsByTagName('li');
		for(var i=0;i<l.length;i++) {
			if(l[i].className.indexOf(which)>=0) {
				l[i].style.display = 'none';
			} else {
				l[i].style.display = 'block';
			}
		}
	}
	return false;
}