var allChecked=false;

function addImage(fileUrl) {
	findObj('previewImage').src = fileUrl;
	findObj('imageName').value = fileUrl;
}

function addRows(parent, quantity) {
	var qty			= document.getElementById(quantity).value;
	var rowCount	= document.getElementById('rowCount').value;
	var parentNode	= document.getElementById(parent);

	qty = (qty >= 1)  ? qty: 1;
	qty = (qty <= 20) ? qty: 20;

	for (i=0; i<qty; i++) {
		var newRow		= document.createElement('tr');
		newRow.setAttribute('id', 'orderRow_'+rowCount);
		parentNode.appendChild(newRow);
		newRow.innerHTML = '<td valign="top"><a href="" onclick="return delRow(\'orderRow_'+rowCount+'\')"><img src="admin/images/del.gif" alt="" /></a></td><td valign="top"><input type="hidden" name="id['+rowCount+']" value="" /><input type="text" name="prodName['+rowCount+']" class="textbox" value="" /></td><td valign="top"><input name="productCode['+rowCount+']" type="text" class="textbox" value="" size="15" /></td><td valign="top"><textarea name="product_options['+rowCount+']" cols="30" rows="1" class="textbox"></textarea></td><td align="center" valign="top"><input id="quantity" name="quantity['+rowCount+']" type="text" class="textbox" style="text-align:center;"  onChange="updateTotals(\'all\');" value="" size="3" /></td><td valign="top"><input id="price" name="price['+rowCount+']" onChange="updateTotals(\'all\');" type="text" class="textbox" style="text-align:right;" value="" size="7" /></td>';
		rowCount++;
	}
	document.getElementById('rowCount').value = rowCount;
	return false;
}

//function addValue(parentId) {
//	var parent = document.getElementById(parentId);
//	if (!parent) return false;
//	var valueCount = document.getElementById('numValues'+parentId).value;
//	var newRow = document.createElement('div');
//	newRow.setAttribute('id','newValue'+valueCount);
//	parent.appendChild(newRow);
//	newRow.innerHTML = 'anchor(this);">';
//	valueCount++;
//	document.getElementById('numValues'+parentId).value = valueCount;
//}

function checkAll(fieldName,val) {
	var checks = findObj(fieldName)
	for (i=0; i<checks.length; i++) {
		if(val == 'true') {
			checks[i].checked = true;
		} else {
			checks[i].checked = false;
		}
	}
}

function checkUncheck(parent, className) {
	var elements = $(parent).getElementsByClassName(className);
	for (i=0;i<elements.length;i++) {
		var ele = elements[i];
		(allChecked==false) ? ele.checked='checked' : ele.checked='';
	}
	(allChecked!=true) ? allChecked=true : allChecked=false;
	return false;
}

function compareInputbox(idNo) {
	if (findObj('custom_'+idNo) != findObj('default_'+idNo)) {
		// show revert buttons
		findObj('revertLink_'+idNo).style.display = '';
		findObj('revAllLink').style.display='';
		var tds = findObj('tr_'+idNo).getElementsByTagName('td');
		for (var i = 0; i <= 2; i++) {
			tds[i].className = 'tdModified';
		}
	}
}

function decision(message, url) {
	if(confirm(message)) location.href = url;
}

function delRow(element) {
	var node	= document.getElementById(element);
	var parent	= node.parentNode;
	parent.removeChild(node);
	return false;
}

function disableSubmit(obj,msg) {
	obj.value=msg;
	obj.disabled=true;
	obj.disabled=true;
	obj.className='submitDisabled';
}

function displayStatusMsg(msgStr) { //v1.0
	status=msgStr;
	document.returnValue = true;
}

function editVal(id,val) {
	findObj(id).value = val;
}

function 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=findObj(n,d.layers[i].document);
	if (!x && d.getElementById) x=d.getElementById(n);
	return x;
}

function flashBasket(flashes) {
	setTimeout("flash("+flashes+")", 500);
}

function flash(flashes) {
	var targetBtn = findObj('flashBasket');
	if (flashes<=0) return;
	if ((flashes%2) == 0) {
		targetBtn.className="flashBasket";
	} else {
 		targetBtn.className="txtviewCart";
	}
	setTimeout("flash("+(flashes-1)+")", 300);
	return;
}

function getImage(imageName) {
	findObj('img').src = imageName;
}

function goToURL() { //v3.0
  var i, args=goToURL.arguments; document.returnValue = false;
  for (i=0; i<(args.length-1); i+=2) eval(args[i]+".location='"+args[i+1]+"'");
}

function jumpMenu(target, object, restore) {
	eval(target+".location='"+object.options[object.selectedIndex].value+"'");
	if (restore) object.selectedIndex=0;
}

function menuBlinds() {

}

function openPopUp(url, windowName, w, h, scrollbar) {
	var winl = (screen.width - w) / 2;
	var wint = (screen.height - h) / 2;
	winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scrollbar+',resizable=1';
	win = window.open(url, windowName, winprops);
	if (parseInt(navigator.appVersion) >= 4) {
		win.window.focus();
	}
}

function resizeOuterTo(w,h) {
	if (parseInt(navigator.appVersion)>3) {
		if (navigator.appName=="Netscape") {
			top.outerWidth=w;
			top.outerHeight=h;
		} else {
			top.resizeTo(w,h);
		}
	}
}

function revert(idNo,className) {
	var tds = findObj('tr_'+idNo).getElementsByTagName('td');
	for (var i = 0; i <= 2; i++) {
		tds[i].className = className;
	}
	findObj('custom_'+idNo).value = findObj('default_'+idNo).value;
	findObj('revertLink_'+idNo).style.display = 'none';
}

function revertAll(maxId) {
	for (var idNo = 1; idNo < maxId; idNo++) {
		// find array of TD's
		var tds = findObj('tr_'+idNo).getElementsByTagName('td');
		var binary = idNo.toString(2);
		for (var j = 0; j <= 2; j++) {
			// restore class
			if (binary.charAt(binary.length - 1) == "1") {
				tds[j].className = 'tdOdd';
			} else {
				tds[j].className = 'tdEven';
			}
		}
		// set default value back
		findObj('custom_'+idNo).value = findObj('default_'+idNo).value;
		// hide revert button
		findObj('revertLink_'+idNo).style.display = 'none';
	}
	// hide revert all button
	findObj('revAllLink').style.display='none';
}

function setTextOfLayer(objName,x,newText) {
	if ((obj=findObj(objName))!=null) with (obj)
		if (document.layers) {document.write(unescape(newText)); document.close();}
		else innerHTML = unescape(newText);
}

function submitDoc(formName) {
	var obj=findObj(formName);
	if (obj!=null) {
		obj.submit();
	} else {
		alert('The form you are attempting to submit called \'' + formName + '\' couldn\'t be found. Please make sure the submitDoc function has the correct id and name.');
	}
}

function reloadPage(init) {  //reloads the window if Nav4 resized
	if (init==true) with (navigator) {
		if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    		document.pgW=innerWidth; document.pgH=innerHeight;
			onresize=reloadPage;
		}
	} else if (innerWidth!=document.pgW || innerHeight!=document.pgH) location.reload();
}
reloadPage(true);

function showHideLayers() { //v6.0
  var i,p,v,obj,args=showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
    obj.visibility=v; }
}

function stars(rating, pathImg) {
	/* Positive Stars */
	for (var i = 0; i <= rating; i++) {
		if (i>0) findObj("star"+i).src = pathImg+'1.gif';
	}
	/* Negative Stars */
	for (var i = rating+1; i <= 5; i++) {
		findObj("star"+i).src = pathImg+'0.gif';
	}
	findObj('rating_val').value=rating;
}

function toggleReg() {
	var password = findObj('password');
	var passwordConf = findObj('passwordConf');
	if (password.disabled == false && passwordConf.disabled==false) {
		password.disabled=true;
		passwordConf.disabled=true;
		password.className="textboxDisabled";
		passwordConf.className="textboxDisabled";
	} else {
		password.disabled=false;
		passwordConf.disabled=false;
		password.className="textbox";
		passwordConf.className="textbox";
	}
	password.value="";
	passwordConf.value="";
}

function toggleProdStatus(i,messageRemove, messageNotRemoved,removeImgSrc,noRemoveImgSrc){
	if(findObj('delId['+i+']').value==1) {
		var result = false;
		var className = 'textbox';
		findObj('del['+i+']').src = removeImgSrc;
		findObj('delId['+i+']').value = 0;
		// change class
		findObj('prodName['+i+']').className = "textbox";
		findObj('productCode['+i+']').className = "textbox";
		findObj('product_options['+i+']').className = "textbox";
		findObj('quantity['+i+']').className = "textbox";
		findObj('price['+i+']').className = "textbox";
		alert(messageNotRemoved);
	} else {
		var result = true;
		var className = 'textboxDisabled';
		findObj('del['+i+']').src = noRemoveImgSrc;
		findObj('delId['+i+']').value = 1;
		// change class
		findObj('prodName['+i+']').className = "textboxDisabled";
		findObj('productCode['+i+']').className = "textboxDisabled";
		findObj('product_options['+i+']').className = "textboxDisabled";
		findObj('quantity['+i+']').className = "textboxDisabled";
		findObj('price['+i+']').className = "textboxDisabled";
		alert(messageRemove);
	}

	findObj('name['+i+']').disabled = result;
	findObj('name['+i+']').className = className;

	findObj('productCode['+i+']').disabled = result;
	findObj('productCode['+i+']').className = className;

	findObj('product_options['+i+']').disabled = result;
	findObj('product_options['+i+']').className = className;

	findObj('quantity['+i+']').disabled = result;
	findObj('quantity['+i+']').className = className;

	findObj('price['+i+']').disabled = result;
	findObj('price['+i+']').className = className;
}


function toggleProductStatus() {
	return false;
}

function goUrl(element) {
	var url = document.getElementById(element).options[document.getElementById(element).selectedIndex].value;
	window.location = url;
}



/* Start Cross-Browser DHTML Menu */
function showSubMenu() {
	var objThis = this;
	for (var i = 0; i  < objThis.childNodes.length; i++) {
		if (objThis.childNodes.item(i).nodeName == "UL")	{
			objThis.childNodes.item(i).style.display = "block";
		}
	}
}

function hideSubMenu() {
	var objThis = this;
	for (var i = 0; i  < objThis.childNodes.length; i++) {
		if (objThis.childNodes.item(i).nodeName == "UL") {
			objThis.childNodes.item(i).style.display = "none";
			return;
		}
	}
}

function initialiseMenu() {
	var objLICollection = document.body.getElementsByTagName("LI");
	for (var i = 0; i < objLICollection.length; i++) {
		var objLI = objLICollection[i];
		for (var j = 0; j  < objLI.childNodes.length; j++) {
			if(objLI.childNodes.item(j).nodeName == "UL") {
				objLI.onmouseover=showSubMenu;
				objLI.onmouseout=hideSubMenu;
				for (var j = 0; j  < objLI.childNodes.length; j++) {
					if(objLI.childNodes.item(j).nodeName == "A") {
						objLI.childNodes.item(j).className = "hassubmenu";
					}
				}
			}
		}
	}
}
/* End Cross-Browser DHTML Menu */


function switchColor(prod, img, price, wasprice, color, size) {
	// TODO: this should probably be an AJAX call..

	var prodid = document.getElementById('add');
	var prodimg = document.getElementById('MainProdImage');
	var waspricediv = document.getElementById('wasprice');
	var pricediv = document.getElementById('price');
	var colordiv = document.getElementById('chosenColor');
	var sizeValue= document.getElementById('value_id').value;
	var url = '/modules/ajax/sizeboxes.php?productId='+prod+'&size='+sizeValue;
//		alert(prod+' '+img+' '+price+' '+wasprice+' '+color+' '+size);

	prodid.value = prod;
	if (img != '') {
		prodimg.src = '/resizec.php?image='+img+'&width=300';
	}



	if (price == '$0.00') {price = wasprice+' '; wasprice = ' '; }
	pricediv.innerHTML  = '<span class="wasprice">'+wasprice+'</span>'+price;
	if (colordiv) colordiv.innerHTML = '<h3 class="boxheading">Selected Color: '+color+'</h3>&nbsp;';

	new Ajax.Updater ('colorSizes', url);
}

function selectSizeBox(boxId, baseprice, addprice ) {
	var waspricediv = document.getElementById('wasprice');
	var pricediv = document.getElementById('price');
	var el = document.getElementById(boxId);
	if (!el) return false;
	var basePrice = parseFloat(baseprice);
	var addPrice = parseFloat(addprice);
	var newPrice = parseFloat(basePrice + addPrice);
	if (isNaN(newPrice)) {

	}
	toggleSelected(el, 'sizeButton');

	//if (price == '$0.00') { price = baseprice+' '; wasprice = ' '; }
	pricediv.innerHTML  = '<span class="wasprice"></span>$'+newPrice.toFixed(2);
}


function toggleSelected(el, classname) {

	var boxes = document.getElementsByClassName(classname+'Selected');
	for (var i=0; i < boxes.length; i++) {
		boxes[i].className = classname;
	}
	el.className = classname+'Selected';

}

function cartLoading() {
	document.getElementById('load').style.background="url(/images/general/loader.gif)";
	document.getElementById('load').innerHTML = '<b>Adding...</b> &nbsp;&nbsp;';

}

//function cartLoaded() {
////	document.getElementById('load').style.background="white";
//	document.getElementById('load').innerHTML = '';
//	document.getElementById('added').innerHTML = document.forms[1].quan.value + ' added to cart. &nbsp;&nbsp;';
//
//}
//

function cartLoaded() {
        var errMessage = document.getElementById('cartError');
        if (!errMessage) {
                document.getElementById('load').style.background="white";
                document.getElementById('load').style.color="black";
                document.getElementById('load').innerHTML = 'Added.';
                document.getElementById('added').innerHTML = document.forms[0].quan.value + ' added to cart. &nbsp;&nbsp;';
        }
}
function checkOptions(){

	var sizefield = document.getElementById('sizeField');
	var colorselected = document.getElementById('colorSelected');


	if (!sizefield && !colorselected) return true;

	if (sizefield && sizefield.value == '') {
		alert ('Please select a size');
		return false;
	}
	return true;
}

function checkRequiredOptions() {
	var requiredOptions = document.getElementsByClassName('requiredOption');
	for (var i=0; i < requiredOptions.length; i++) {

		if (requiredOptions[i].selectedIndex == 0) {
			return false;
		}
	}
	return true;

}

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 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 eraseCookie(name) {
	createCookie(name,"",-1);
}
