// Cookie Toolbox Javascript copyright 4th September 2002, by Stephen Chapman, Felgall Pty Ltd
// You have permission to copy and use this javascript provided that the content of the script is not changed in any way.
// For instructions on how to use these functions see  http://www.felgall.com/
var dbug = 0; function d_a(ary) {var beg = next_entry(ary) - 1; for (var i = beg ; i > -1; i--) {ary[i] = null;}} function init_array() {if (dbug) alert('init_cookie');  var ary = new Array(null); return ary;} function set_cookie(name,value,expires) {if (dbug) alert('set_cookie'); if (!expires) expires = new Date();
document.cookie = name + '=' + escape(value) + '; expires=' + expires.toGMTString() + '; path=/';} function get_cookie(name) {if (dbug) alert('get_cookie'); var dcookie = document.cookie; var cname = name + "="; var clen = dcookie.length; var cbegin = 0; while (cbegin < clen) {var vbegin = cbegin + cname.length;
if (dcookie.substring(cbegin, vbegin) == cname) {var vend = dcookie.indexOf (";", vbegin); if (vend == -1) vend = clen; return unescape(dcookie.substring(vbegin, vend));} cbegin = dcookie.indexOf(" ", cbegin) + 1; if (cbegin == 0) break;} return null;} function del_cookie(name) {if (dbug) alert('del_cookie');
document.cookie = name + '=' + '; expires=Thu, 01-Jan-70 00:00:01 GMT; path=/';} function get_array(name, ary) {if (dbug) alert('get_array'); d_a(ary); var ent = get_cookie(name); if (ent) {i = 1; while (ent.indexOf('^') != '-1') {ary[i] = ent.substring(0,ent.indexOf('^')); i++;
ent = ent.substring(ent.indexOf('^')+1, ent.length);}}} function set_array(name, ary, expires) {if (dbug) alert('set_array'); var value = ''; for (var i = 1; ary[i]; i++) {value += ary[i] + '^';} set_cookie(name, value, expires);} function del_entry(name, ary, pos, expires) {if (dbug) alert('del_entry');
var value = ''; get_array(name, ary); for (var i = 1; i < pos; i++) {value += ary[i] + '^';} for (var j = pos + 1; ary[j]; j++) {value += ary[j] + '^';} set_cookie(name, value, expires);} function next_entry(ary) {if (dbug) alert('next_entry'); var j = 0; for (var i = 1; ary[i]; i++) {j = i} return j + 1;}
function debug_on() {dbug = 1;} function debug_off() {dbug = 0;} function dump_cookies() {if (document.cookie == '') document.write('No Cookies Found'); else {thisCookie = document.cookie.split('; '); for (i=0; i<thisCookie.length; i++) {document.write(thisCookie[i] + '<br \/>');}}}

var expdate = new Date();
expdate.setTime (expdate.getTime() +  (24 * 60 * 60 * 1000 * 365)); 

//toggle used by the tab menu for the expand-collapse category portion
function tD(thisID)
{
	if (document.getElementById(thisID).style.display == "" || document.getElementById(thisID).style.display == "none")
	{
		myprefs[4] = thisID;
		jQuery("#pix" + thisID).attr("src","/images/close.gif");
		setPrefs();
	}
	else
	{
		myprefs[4] = "none";
		jQuery("#pix" + thisID).attr("src","/images/open.gif");
		setPrefs();
	}
	jQuery("div.sub:visible").not(("#"+thisID)).animate({height:'hide'}, "fast");
	jQuery("img.sI").not(("#pix"+thisID)).attr("src","/images/open.gif");
	jQuery(("#"+thisID)).animate({height:'toggle'}, "slow");
}

//update the users preferences inside of a cookie
function updatePref(pos,val){
	myprefs[1] =  val;
	setPrefs();
	return true;
}

//set the users preferencesg
function setPrefs(){
	set_array('userPrefs', myprefs, expdate);
}

//macromedias rollover functions
function MM_swapImgRestore(){var i,x,a=document.MM_sr;for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++)x.src=x.oSrc}function MM_preloadImages(){var d=document;if(d.images){if(!d.MM_p)d.MM_p=new Array();var i,j=d.MM_p.length,a=MM_preloadImages.arguments;for(i=0;i<a.length;i++)if(a[i].indexOf("#")!=0){d.MM_p[j]=new Image;d.MM_p[j++].src=a[i]}}}function MM_findObj(n,d){var p,i,x;if(!d)d=document;if((p=n.indexOf("?"))>0&&parent.frames.length){d=parent.frames[n.substring(p+1)].document;n=n.substring(0,p)}if(!(x=d[n])&&d.all)x=d.all[n];for(i=0;!x&&i<d.forms.length;i++)x=d.forms[i][n];for(i=0;!x&&d.layers&&i<d.layers.length;i++)x=MM_findObj(n,d.layers[i].document);if(!x&&d.getElementById)x=d.getElementById(n);return x}function MM_swapImage(){var i,j=0,x,a=MM_swapImage.arguments;document.MM_sr=new Array;for(i=0;i<(a.length-2);i+=3)if((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x;if(!x.oSrc)x.oSrc=x.src;x.src=a[i+2]}}

//CART FUNCTIONS
function addItem(sk,x,y,z){
	//showIt();
	$(("prog" + sk)).innerHTML = '<img src="/_controlbridge/images/indicator.gif" />';
	//new Ajax.Updater($(("prog" + sk)), carturl + '?method=init&function=add&qty=' + $(("qty" + sk)).value + '&sku_cd=' + sk + '&htmlResponse=true', {onComplete:updateCartBar(x,y,z)});
	new Ajax.Updater($(("prog" + sk)), carturl + '?method=init&function=add&qty=' + $(("qty" + sk)).value + '&sku_cd=' + sk + '&htmlResponse=true', {onComplete:window.parent.rI("0")});
}

function addItem2(sk){
	showIt();
	$(("prog" + sk)).innerHTML = '<img src="/_controlbridge/images/indicator.gif" />';
	new Ajax.Updater('rmprog', carturl + '?method=init&function=addSml&qty=' + $(("qty" + sk)).value + '&sku_cd=' + sk + '&htmlResponse=true', {onComplete:function(){updateCartBar();}});
}

function testAdd()
{
	sk = "235100023";
	x = "";
	y ="";
	z = "";
	new Ajax.Updater('prog', carturl + '?method=init&function=add&qty=3&sku_cd=' + sk + '&htmlResponse=true', {onComplete:updateCartBarTest(x,y,z)});
}

function updateCartBarTest(x,y,z) {
	myAjaxFunction = new mxAjax.Data({
		executeOnLoad:true,
		paramArgs: new mxAjax.Param(carturl,{cffunction:"updateCartBar"}),
		postFunction: handleDataTest});
}

function handleDataTest(response) {
		alert('1');

	var myQuery= JSON.parse(response);
	var a = myQuery['DATA']['CARTBAR'][0];
	var b = myQuery['DATA']['SUBTOTAL'][0];
	var c =  myQuery['DATA']['TOTALITEMS'][0]; 
handleData2(a,b,c);

}



function rI(sk){
	//testAdd();
	showIt();
	new Ajax.Updater('rmprog', carturl + '?method=init&function=remove&sku_cd=' + sk + '&htmlResponse=true', {onComplete:updateCartBar});
	
}

function getQueryVariable(variable) {
var query = window.location.search.substring(1);
var vars = query.split("&");
for (var i=0;i<vars.length;i++) {
var pair = vars[i].split("=");
if (pair[0] == variable) {
return pair[1];
}
}
//alert('Query Variable ' + variable + ' not found');

}
function updateCartBar(x,y,z) {
//document.location = 'http://www.yahoo.com';
////alert('Shopping Cart Updated.');
//alert(document.location);
//alert("Shopping Cart Updated.");
urlstr= '';
if (getQueryVariable('cat1') != undefined){
	urlstr = urlstr + "cat1=" + getQueryVariable('cat1') + "&";
}
if (getQueryVariable('cat2') != undefined){
	urlstr = urlstr + "cat2=" + getQueryVariable('cat2') + "&";
}
if (getQueryVariable('cat3') != undefined){
	urlstr = urlstr + "cat3=" + getQueryVariable('cat3') + "&";
}

//alert(getQueryVariable('cat1o'));
//window.parent.document.location = '/store/list_products/index.cfm?' + urlstr + "&cat1=" + x + "&cat2=" + y + "&cat3=" + z;
	myAjaxFunction = new mxAjax.Data({
		executeOnLoad:true,
		paramArgs: new mxAjax.Param(carturl,{cffunction:"updateCartBar"}),
		postFunction: handleData});
	hideIt();
}



function handleData(response) {

	var myQuery= JSON.parse(response);
	var a = myQuery['DATA']['CARTBAR'][0];
	var b = myQuery['DATA']['SUBTOTAL'][0];
	var c =  myQuery['DATA']['TOTALITEMS'][0]; 
	handleData2(a,b,c);

}
function handleData2(a,b,c) {

	$('cartBarContents').innerHTML = a; 
	$('cBarSubTotal').innerHTML = b; 
	$('cBarItems').innerHTML = c;
}
	
// add an item to the users favorites list
function addFav(sk,zone){
	showIt();
	if (zone.length == 0)
	{
		$((zone + "fav" + sk)).innerHTML = '<img src="/_controlbridge/images/indicator.gif" />';
	}
	new Ajax.Updater($((zone + "fav" + sk)), favurl + '?method=init&function=add&sku_cd=' + sk + '&htmlResponse=true', {onComplete:hideIt});
	
}

// add to cart from favorites
function addItemFav(sk){
	//showIt();
	document.getElementById("favProg" + sk).innerHTML = '<img src="/_controlbridge/images/indicator.gif" />';
	//$("favProg" + sk).innerHTML = '<img src="/_controlbridge/images/indicator.gif" />';
	new Ajax.Updater(document.getElementById("favProg" + sk), carturl + '?method=init&function=addF&qty=' + $(("fqty" + sk)).value + '&sku_cd=' + sk + '&htmlResponse=true', {onComplete:updateCartBar});
	setTimeout("document.getElementById('favProg" + sk + "').innerHTML = '<img src=/images/add.png border=0>';",500);
}


/* FAVORTIES */
// remove an item to the users favorites list
function removeFav(sk){
	//$(("favEdt" + sk)).innerHTML = '<img src="/_controlbridge/images/indicator.gif" />';
	//document.getElementById('favEdt" + sk').innerHTML = '<img src="/_controlbridge/images/indicator.gif" />';
	new Ajax.Updater($(("favEdt" + sk)), favurl + '?method=init&function=remove&sku_cd=' + sk + '&htmlResponse=true', {onComplete:function(){updateFavTable(sk);}});
	document.location.href("?resetapp=1");
}

function updateFavTable(sk){
	document.getElementById("favRow" + sk).style.display = 'none';
	document.getElementById("fTabRow" + sk).style.display = 'none';
	//$(("favRow" + sk)).style.display = 'none';
	//$(("fTabRow" + sk)).style.display = 'none';
	hideIt();
}

editFavName = function(sku){
	thisEl = $(('edt' + sku));
	document.getElementById('edt' + sku).readOnly = false;
	document.getElementById('edt' + sku).style.border = "solid";
	document.getElementById('edt' + sku).style.borderWidth = "1px";
	document.getElementById('sv' + sku).style.display='';
	document.getElementById('favRow' + sku).style.background='#D6DAC7';
}

/*
editFavName = function(sku){
	thisEl = $(('edt' + sku));
	thisEl.readOnly = false;
	thisEl.style.border = "solid";
	thisEl.style.borderWidth = "1px";
	$(('sv' + sku)).style.display='';
	$(('favRow' + sku)).style.background='#D6DAC7';
}*/


saveFavName = function(sku){
	
	if (document.getElementById('edt' + sku).readOnly == false){
		//showIt();
		document.getElementById('sv' + sku).style.display='none';
		thisEl = $(('edt' + sku));
		document.getElementById('sv' + sku).readOnly = true;
		document.getElementById('sv' + sku).style.border = "none";
		document.getElementById('edt' + sku).style.border = "none";
		thisEl = $(('rs' + sku)).innerHTML = '<img src="/_controlbridge/images/indicator.gif" />';
		new Ajax.Updater('rs' + sku, favurl + '?method=init&function=update&sku_cd=' + sku + '&name=' + $('edt' + sku).value + '&qty=' + $('mfqty' + sku).value + '&htmlResponse=true',{onComplete:hideIt});
		document.getElementById('favRow' + sku).style.background='#FFFFFF';
	}
}

/*
saveFavName = function(sku){
	if (document.getElementById('edt' + sku).readOnly == false){
		showIt();
		$('sv' + sku).style.display='none';
		thisEl = $(('edt' + sku));
		thisEl.readOnly = true;
		thisEl.style.border = "none";
		thisEl = $(('rs' + sku)).innerHTML = '<img src="/_controlbridge/images/indicator.gif" />';
		new Ajax.Updater('rs' + sku, favurl + '?method=init&function=update&sku_cd=' + sku + '&name=' + $('edt' + sku).value + '&qty=' + $('mfqty' + sku).value + '&htmlResponse=true',{onComplete:hideIt});
		$(('favRow' + sku)).style.background='#FFFFFF';
	}
}
*/

saveFavQty = function(sku){
	//showIt();
	//thisEl = $(('rs' + sku)).innerHTML = '<img src="/_controlbridge/images/indicator.gif" />';
	thisEl = document.getElementById('rs' + sku).innerHTML = '<img src="/_controlbridge/images/indicator.gif" />';
	new Ajax.Updater('rs' + sku, favurl + '?method=init&function=update&sku_cd=' + sku + '&name=' + $('edt' + sku).value + '&qty=' + $('mfqty' + sku).value + '&htmlResponse=true',{onComplete:hideIt});
	$('fqty' + sku).value = $('mfqty' + sku).value;
}

/* SHOW HIDE PROGRESS DIV */
function hideIt(){
	//setTimeout("$('disabledZone').style.visibility = 'hidden';",500);
	setTimeout("document.getElementById('disabledZone').style.visibility = 'hidden';",500);
	//window.parent.location.reload();
}

function showIt(){
	document.getElementById('disabledZone').style.visibility = 'visible';
	//$('disabledZone').style.visibility = 'visible';
}

/*BOTTOM CART PREFERENCES*/
function cartHide(){
	 $('CartSum').style.display='none';
	 $('cartMin').style.display='none';
	 $('cartMax').style.display='';
	 myprefs[2] = 2;
	 setPrefs();
}
function cartShow(){
	$('CartSum').style.display='';
	$('cartMax').style.display='none';
	$('cartMin').style.display='';
	myprefs[2] = 1;
	setPrefs();
}


