		function hideEnlarged(){			document.getElementById('enlarged').style.visibility = "hidden";			document.getElementById('imageEnlarged').src = "";			document.getElementById('wrapper').className = "";			document.getElementById('mainBody').style.backgroundImage =  bodyBackgroundImage;			document.getElementById('mainBody').className = bodyClassName;		}		function showEnlarged(path,imgWidth,imgHeight){			document.getElementById('wrapper').className = "faded"; // make the entire contet faded in order to see the background's black			bodyBackgroundImage = document.getElementById('mainBody').style.backgroundImage; // record the body background image before			bodyClassName = document.getElementById('mainBody').className; // record the body class before			document.getElementById('mainBody').className = "masked"; // make the new body class			document.getElementById('mainBody').style.backgroundImage = "none"; // hide the body image			windowWidth = (window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth || document.body.scrollWidth);			windowHeight = (window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight || document.body.scrollHeight);			var scroll = 0;			if( typeof( window.pageYOffset ) == 'number' ) {			  //Netscape compliant			  scroll = window.pageYOffset;			} else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {			  //DOM compliant			  scroll = document.body.scrollTop;			} else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {			  //IE6 standards compliant mode			  scroll = document.documentElement.scrollTop;			}			document.getElementById('enlarged').style.height = imgHeight + "px";			document.getElementById('enlarged').style.width = imgWidth + "px";			document.getElementById('enlarged').style.top =  Math.round ( (windowHeight - imgHeight)/2) + scroll + 'px';			document.getElementById('enlarged').style.left =  Math.round ( (windowWidth - imgWidth)/2) +  'px';			document.getElementById('enlarged').style.visibility = "visible";			document.getElementById('imageEnlarged').style.height = imgHeight + "px";			document.getElementById('imageEnlarged').style.width = imgWidth + "px";			document.getElementById('imageEnlarged').src = path;		}function loadBackground() {	var image = document.getElementById('mainBody').style.backgroundImage;	document.getElementById('mainBody').style.backgroundImage = image.replace("low","high");}function createXMLHttpRequest(){	// http://www.w3schools.com/Ajax/ajax_example.asp	var xmlhttp;	if (window.XMLHttpRequest){ // code for IE7+, Firefox, Chrome, Opera, Safari		xmlhttp=new XMLHttpRequest();	}	else if (window.ActiveXObject) { // code for IE6, IE5		xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");	}	else{  		alert("Your browser does not support XMLHTTP!");	}	return xmlhttp;}function selectStar(star){	var handle = star.split("-");	for (i=1;i<=5;i++) document.getElementById(handle[0] + "-" + i).src="/www1/assets/images/misc/starGray.png";	for (i=1;i<=5;i++) if (i <= handle[1]) document.getElementById(handle[0] + "-" + i).src="/www1/assets/images/misc/starBlue.png";	if(handle[1] == 1) document.getElementById('rateCopy').innerHTML = "I hate it.";	if(handle[1] == 2) document.getElementById('rateCopy').innerHTML = "I don't like it.";	if(handle[1] == 3) document.getElementById('rateCopy').innerHTML = "I like it.";	if(handle[1] == 4) document.getElementById('rateCopy').innerHTML = "I like it a lot.";	if(handle[1] == 5) document.getElementById('rateCopy').innerHTML = "It's a favorite.";}function deselectStar(star,rate){	var handle = star.split("-");	document.getElementById('rateCopy').innerHTML = "";	for (i=1;i<=5;i++) document.getElementById(handle[0] + "-" + i).src="/www1/assets/images/misc/starGray.png";	for (i=1;i<=5;i++) if (i <= rate) document.getElementById(handle[0] + "-" + i).src="/www1/assets/images/misc/starBlue.png";}function formatNumber(nStr){	nStr = nStr.toFixed(2);	nStr += '';	x = nStr.split('.');	x1 = x[0];	x2 = x.length > 1 ? '.' + x[1] : '';	var rgx = /(\d+)(\d{3})/;	while (rgx.test(x1)) {		x1 = x1.replace(rgx, '$1' + ',' + '$2');	}	return x1 + x2;}function display(key,item,price, quantity){	var totalNumberOfcalendars = 0;	var oldTotal = 0;	document.getElementById('pri'+item+key).innerHTML = "$" + price;	document.getElementById('val'+item+key).innerHTML = "$" + formatNumber(price * quantity);	if(document.getElementById('grandTotal')){		grid[key]['qty'+item] = quantity;		grid[key]['pri'+item] = price;		grid[key]['val'+item] = price * quantity;		document.getElementById('total'+key).innerHTML = "$" + formatNumber( grid[key]['valCalendar'] + grid[key]['valEnvelope'] + grid[key]['valInsert']);		total = 0;		for(i=0;i<grid.length;i++){			total = total + grid[i]['valCalendar'] + grid[i]['valEnvelope'] + grid[i]['valInsert'];			totalNumberOfcalendars = totalNumberOfcalendars + parseInt(grid[i]['qtyCalendar']);		}				if (totalNumberOfcalendars >= 50){			oldTotal = total;			total = total * 0.9;			document.getElementById('totalRebate').innerHTML = '$' + formatNumber(oldTotal);			document.getElementById('totalRebateNote').innerHTML = "(10% rebate for 50 calendars or more)";			document.getElementById('totalRebate').style.visibility='visible';			document.getElementById('totalRebateNote').style.visibility='visible';					}		else {			document.getElementById('totalRebate').style.visibility='hidden';			document.getElementById('totalRebateNote').style.visibility='hidden';			}		document.getElementById('grandTotal').innerHTML = "$" + formatNumber( total );	}}function calculate(key,item,idItem,quantity,currency,overwrite){	if (item == "Calendar"){				if (  quantity < minQuantityToBePurchased  || validateNums(quantity) == false || quantity==""){					document.getElementById('err'+item+key).style.visibility = "visible";					document.getElementById('pri'+item+key).innerHTML = "$0.00";					document.getElementById('val'+item+key).innerHTML = "$0.00";				}				else {// change here in case of error :) //// 				if(document.getElementById('financials')) document.getElementById('financials').style.backgroundImage = "url('/www1/assets/images/misc/ajaxLoader.gif')";			        xmlhttp = createXMLHttpRequest();					xmlhttp.open("GET","/ajax/price/"+key+","+item+","+idItem+","+quantity+","+currency+","+overwrite,true);					xmlhttp.send(null);					xmlhttp.onreadystatechange=function(){						if(xmlhttp.readyState==4){							display(key,item,xmlhttp.responseText,quantity);			 				if(document.getElementById('financials')) document.getElementById('financials').style.backgroundImage = "none";						}					}					document.getElementById('err'+item+key).style.visibility = "hidden";				}	}	if (item == "Sample"){			        xmlhttp = createXMLHttpRequest();					xmlhttp.open("GET","/ajax/price/"+key+","+item+","+idItem+","+quantity+","+currency+","+overwrite,true);					xmlhttp.send(null);					xmlhttp.onreadystatechange=function(){						if(xmlhttp.readyState==4){							display(key,'Calendar',xmlhttp.responseText,quantity);						}					}	}	if (item == "Envelope" || item == "Insert" ){				if (  validateNums(quantity) == false || quantity==""){					document.getElementById('err'+item+key).style.visibility = "visible";					document.getElementById('pri'+item+key).innerHTML = "$0.00";					document.getElementById('val'+item+key).innerHTML = "$0.00";				}				else {			        xmlhttp = createXMLHttpRequest();					xmlhttp.open("GET","/ajax/price/"+key+","+item+","+idItem+","+quantity+","+currency+","+overwrite,true);					xmlhttp.send(null);					xmlhttp.onreadystatechange=function(){						if(xmlhttp.readyState==4){							display(key,item,xmlhttp.responseText,quantity);						}					}					document.getElementById('err'+item+key).style.visibility = "hidden";				}	}}function recordThemeVotes(path){	        xmlhttp = createXMLHttpRequest();			xmlhttp.open("GET","/ajax/voteThemes/"+path,true);			xmlhttp.send(null);}function recordFormatVotes(path){	        xmlhttp = createXMLHttpRequest();			xmlhttp.open("GET","/ajax/voteFormats/"+path,true);			xmlhttp.send(null);}function recordVotes(id,star,extraVotes){		if(!readCookie("rated"+id)){		    createCookie("rated"+id,"true","30");	        xmlhttp = createXMLHttpRequest();			xmlhttp.open("GET","/ajax/vote/"+id+","+star,true);			xmlhttp.send(null);			xmlhttp.onreadystatechange=function(){				if(xmlhttp.readyState==4){					var recordedVotes = parseInt(xmlhttp.responseText) + extraVotes;					document.getElementById('rateVotes').innerHTML = "based on " + recordedVotes + " votes";				}			}		}		else alert("Your vote has already been recorded. Thank you.");}function createCookie(name,value,days) {	if (days) {		var date = new Date();		date.setTime(date.getTime()+(days*24*60*60*1000));		var expires = "; expires="+date.toGMTString();	}	else var expires = "";	document.cookie = name+"="+value+expires+"; path=/";}function eraseCookie(name) {	createCookie(name,"",-1);}function readCookie(name) {	var nameEQ = name + "=";	var ca = document.cookie.split(';');	for(var i=0;i < ca.length;i++) {		var c = ca[i];		while (c.charAt(0)==' ') c = c.substring(1,c.length);		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);	}	return null;}function toggleSample(key,item,idItem,quantity,currency){	if (document.getElementById('samCalendar'+key).checked == true){		document.getElementById('image').style.visibility = "hidden";		document.getElementById('qtyCalendar'+key).disabled = true;		document.getElementById('qtyCalendar'+key).value = "1";		calculate(key,item,idItem,'1',currency);	}	else{		document.getElementById('image').style.visibility = "visible";		document.getElementById('qtyCalendar'+key).disabled = false;		document.getElementById('qtyCalendar'+key).value = "";		document.financials.qtyCalendar0.focus();		document.getElementById('priCalendar'+key).innerHTML = "$0.00";		document.getElementById('valCalendar'+key).innerHTML = "$0.00";	}}function validateNums(field) {	var valid = "0123456789";	var temp;	for (var i=0; i<field.length; i++) {		temp = "" + field.substring(i, i+1);		if (valid.indexOf(temp) == "-1") return false;		else return true;	}}var bodyBackgroundImage;var bodyClassName;
