//YOU CAN'T EVAL FORM FIELDS IN IE

function loadprods()
{
	var prodIndexText = "{";
	var comma = "";

	for (var i=0; i < products.length; i++)
	{
		var key = products[i].name;
		var prodDiv = this.document.getElementById(key);
		if (prodDiv != null)
		{
			fillInAttributes(products[i], prodDiv);
			prodDiv.style.display = "block";
			prodIndexText += comma + '"' + key + '": ' + i;
			comma = ",";
		}
	}
	prodIndexText += "}";
	eval("productIndex = " + prodIndexText);
}

function fillInAttributes(product, node)
{
	var childNodes = node.childNodes;
	var tot_height = 0;
	var img_width = 0;
	var dept = product.dept;
	
	for (var i=0; i< childNodes.length; i++)
	{
		var element = childNodes[i];
		var id = element.className;
		var tagName = element.tagName;
		if (id != null && id.length > 0)
		{
			var value =  eval("product." + id);
			if (id == 'price')
			{
				element.innerHTML  = '$' + value + '.00';
			}
			else if (tagName == 'IMG')
			{
				if (value != null)
					element.src  = '/images/giftshop/' + dept + '/' + value;
			}
			else if (tagName == 'SELECT' && value != null && value.length > 0)
			{
				for (var j=0; j < value.length; j++)
				{
  					var opt = document.createElement("option");
  					var txt = eval(id + "." + value[j]);
  					opt.appendChild(document.createTextNode(txt));
  					opt.value=value[j];
					element.appendChild(opt);
				}
				element.name += '_' + product.name;
				element.parentNode.style.visibility = "visible";
			}
			else if (value != null)
				element.innerHTML  = eval("product." + id);
		}

		if (element.hasChildNodes() && childNodes.length > 0)
		{
			fillInAttributes(product, element);
		}
	}
}

function getOptionValue(name, selectName)
{
	var selectInput = findFormInput(this.document.cartForm, selectName + '_' + name);
	if (selectInput == null || selectInput.selectedIndex == null 
			|| selectInput.selectedIndex == 0 )
	{
		return null;
	}
	return selectInput.options[selectInput.selectedIndex].value;
}



function addToCart(node)
{
	var product = findProduct(node);
	var name = product.name;
	
	var form = this.document.cartForm;
	
	var opts = 0;
	if (name.indexOf("Donation") == 0)
	{
		var price = getCheckedValue(form.rad_amount);
		var honoring = 	form.honoring.options[form.honoring.selectedIndex].value;;
		var honoree = form.honoree.value;;

		form.item_name.value = name + " " + honoring;
		form.item_number.value = name;
		form.no_shipping.value="2";
		form.cmd.value = '_donations';
		if (honoring != null && honoring != '')
		{
			form.on0.value = "Honoring";
			form.os0.value = honoring;
		}
		if (honoree != null && honoree != '')
		{
			form.on1.value = "Honoree";
			form.os1.value = honoree;
		}
		if (price == 'other')
		{
			price = form.other.value;
		}
		if (price == null || price == '' || price <= 0)
		{
			alert("Please specify an amount for your donation.");
			return false;
		}
		form.amount.value = price;
		form.weight.value = 0;


	}
	else
	{
		if (product.colors != null && product.colors.length > 0)
		{
			var color = getOptionValue(name, 'color');
			if (color == null)
			{
				alert('Please select a color for this selection');
				return false;
			}
			form.on0.value = "Color";
			form.os0.value = color;
			opts++;
		}
		
		if (product.sizes != null && product.sizes.length > 0)
		{
			var size = getOptionValue(name, 'size');
			if (size == null)
			{
				alert('Please select a size for this selection');
				return false;
			}
			eval('form.on' + opts + '.value = "Size"');
			eval('form.os' + opts + '.value = size');
			opts++;
		}
		form.item_name.value = product.title;
		form.item_number.value = product.name;
		form.amount.value = product.price;
		form.weight.value = 1;

	}
	form.submit();
}

var clwin;
var clHeight;
var clWidth;
function openDetailView(node, imgName)
{
	var dept = findProduct(node).dept;
	var url = "/images/giftshop/" + dept + "/" + imgName;
	
	var width = 351;
	var height = 444;
	if (imgName.indexOf('people') != -1)
	{
		width = 444;
		height = 351;
	}
	if (clWidth != width)
	{	
		if (clwin != null)
			clwin.close();
		clWidth = width;
		clHeight = height;
	}
	var features = "menubar=no,location=no,resizable=yes,scrollbars=no,status=no,toolbar=no,dialog=yes,height=" + height + ",width=" + width;


	clwin = window.open (url, "detail", features); 
}


function findProduct(node)
{
	var parentNode = node.parentNode;
	if (parentNode.className == 'item')
	{
		var id = parentNode.id;
		var i = eval ("productIndex." + id); 
		return products[i];
	}
	else
	{
		return findProduct(parentNode);
	}
}

function findFormInput(form, name)
{
	var inputs = form.elements;
	for (var i=0; i< inputs.length; i++)
	{
		if (inputs[i].name == name)
			return inputs[i];
	}
	return null;
}

function getCheckedValue(radioObj) {
	if(!radioObj)
		return "";
	var radioLength = radioObj.length;
	if(radioLength == undefined)
		if(radioObj.checked)
			return radioObj.value;
		else
			return "";
	for(var i = 0; i < radioLength; i++) {
		if(radioObj[i].checked) {
			return radioObj[i].value;
		}
	}
	return "";
}

function viewCart()
{
	document.viewForm.submit();
}

function adoptARaptor()
{
	var name = 'Adopt-A-Raptor: ';
	
	var form = this.document.cartForm;
	
	var price = getCheckedValue(form.rad_amount);
	
	if (price == null || price == '' || price <= 0)
	{
		alert("Please select an adoption category.");
		return false;
	}
	else if (price < 150) name += 'Small Raptor';
	else if (price < 225) name += 'Medium Raptor';
	else if (price < 750) name += 'Large Raptor';
	else if (price > 749) name += 'Eagle';
	
	var honoring = 	form.honoring.options[form.honoring.selectedIndex].value;;
	var honoree = form.honoree.value;;

	form.item_name.value = name; // + " " + honoring;
	form.item_number.value = 'AAR' + price;
	//form.no_shipping.value="1";
	if (honoring != null && honoring != '')
	{
		form.on0.value = "Honoring";
		form.os0.value = honoring;
	}
	if (honoree != null && honoree != '')
	{
		form.on1.value = "Honoree";
		form.os1.value = honoree;
	}
	form.amount.value = price;
	form.weight.value = 0;
	form.submit();
}
