//header hovers
if (document.images)
{
	storesOff = new Image();
	storesOff.src = "/images/topnav/storesup.gif";
	storesOn = new Image();
	storesOn.src = "/images/topnav/storesdn.gif";
	
	cartOff = new Image();
	cartOff.src = "/images/topnav/cartup.gif";
	cartOn = new Image();
	cartOn.src = "/images/topnav/cartdn.gif";
	
	searchOff = new Image();
	//searchOff.src = "/images/topnav/searchup.gif";
	searchOff.src = "/images/topnav/nav_search_new.gif";
	searchOn = new Image();
	searchOn.src = "/images/topnav/nav_search_new_on.gif";
}

function doMenuHoverOn(imgName){
	if (document.images)
	{
		img = document.getElementById(imgName);
		img.src = eval(imgName + "On.src");
	}
}

function doMenuHoverOff(imgName){
	if (document.images)
	{
		img = document.getElementById(imgName);
		img.src = eval(imgName + "Off.src");
	}
}
// openPopUp: opens a pop-up window
// imageLocation: the relative path to the image
// imageHeight: the height of the pop-up window
// imageWidth: the width of the pop-up window
// imageTitle: the title bar text for the pop-up window
function openPopUp(imageLocation, imageHeight, imageWidth, imageTitle) {
    popUp = window.open('', '', 'location=0,titlebar=no,height='+ imageHeight +',width=' + imageWidth + '');

    with (popUp.document) {
        writeln('<html>');
        writeln('<head>');
        writeln('<title>Loading...</title>');
        writeln('<script>');
        writeln('function doTitle(){document.title="'+imageTitle+'";}');
        writeln('</script>');
        writeln('</head>');
        writeln('<body style="margin: 0; padding: 0;" onload="doTitle(); self.focus()" onblur="self.close()">');
        //writeln('<body scroll="no" onload="doTitle();self.focus()">');
        writeln('<img style="display: block; margin: auto;" src="'+imageLocation+'">');
        writeln('</body>');
        writeln('</html>');
        close();
    }
}

function openCSCPopUp () {
    window.open('/store/csc.jsp', '','menubar=0,resizable=0,width=435,height=275');
}

function openKtownStorePopUp () {
    window.open('/store/stores/ktown/index.jsp', '','resizable=1,menubar=0,toolbar=0,status=0,location=0');
}

function openPopUpWindow(url) {
	window.open(url, '','resizable=1,menubar=0,toolbar=0,status=0,location=0,width=400,height=600');
}

function openBOGOPopUp(url) {
	window.open(url, '','resizable=1,menubar=0,toolbar=0,status=0,location=0,width=450,height=150');
}

function adjustSize() {
    var content = document.getElementById("popUpContent");
    window.resizeTo(625, document.documentElement.offsetHeight + 100);
}

function submitStateForm() {
    var form = document.getElementById("stateForm");
    form.submit();
}

function submitOrderForm() {
    var form = document.getElementById("orderForm");
    form.submit();
}

function setStateName() {
    var form = document.getElementById("stateForm");
    var state = document.getElementById("state");
    var index = state.selectedIndex;

    form.stateName.value = state[index].text;
}

function submitCountryForm() {
    var form = document.getElementById("countryForm");
    form.submit();
}

function submitShippingCostForm() {
    var form = document.getElementById("shippingCostForm");
    form.submit();
}

function setCountryName() {
    var form = document.getElementById("countryForm");
    var country = document.getElementById("country");
    var index = country.selectedIndex;

    form.countryName.value = country[index].text;
}

function setSubTypeForSearch() {
    var element = document.getElementById("subType");
    var type = document.getElementById("typeSelect");
    var subType = document.getElementById("subTypeSelect");
    var selection = type.selectedIndex;

	//unselected or brooch or ring 
    if (selection == 0 || selection == 4 || selection == 5) {
        element.style.display = 'none';
        subType.options.length = 0;

        return;
    } else {
        subType.options.length = 0;

        if (selection == 1) { //necklaces
            subType.options[0] = new Option("Sub-Type", "0");
            subType.options[1] = new Option("Classic", "4");
            subType.options[2] = new Option("Bibs", "6");
            subType.options[3] = new Option("Pendant", "7");
            subType.options[4] = new Option("Long Strand", "9");
        }

        if (selection == 2) { //earrings
            subType.options[0] = new Option("Sub-Type", "0");
            subType.options[1] = new Option("French Wire", "1");
            subType.options[2] = new Option("Clip", "2");
            subType.options[3] = new Option("Post", "3");
        }

        if (selection == 3) { //bracelets
            subType.options[0] = new Option("Sub-Type", "0");
            subType.options[1] = new Option("Classic", "4");
            subType.options[2] = new Option("Cuff", "5");
        }

		if (selection == 6) { //other
            subType.options[0] = new Option("Sub-Type", "0");
            subType.options[1] = new Option("Extender", "8");
            subType.options[2] = new Option("Barrette", "10");
            subType.options[3] = new Option("Tooth Fairy Box", "11");
            subType.options[4] = new Option("Belt", "12");
        }

        element.style.display = 'block';
    }
}

function setIntlAddress() {
    document.getElementById('intlCityState').style.display = '';
    document.getElementById('intlCountryZip').style.display = '';
    document.getElementById('usCityStateZip').style.display = 'none';
}

function setUsAddress() {
    document.getElementById('intlCityState').style.display = 'none';
    document.getElementById('intlCountryZip').style.display = 'none';
    document.getElementById('usCityStateZip').style.display = '';
}

function checkAddressType() {
    var us = document.getElementById('US');

    if (us.checked == true) {
        setUsAddress();
    } else {
        setIntlAddress();
    }
}

//enables or disables all controls on form except the one specified
//param control: checkbox that is not disabled, also specifies whether to enable or disable depending on whether it's checked
/*var saved_info = new Object();
var new_info = new Object();
var checked_items_saved = new Array();
var checked_items_new = new Array();
function toggleEnableControls(control)
{ 
	var count = document.forms[0].elements.length;
	//loop over controls once to save state
	//don't get fancy and save/set state on same loop...(since radio buttons depend on each other, can't save/set them at same time)
	for (i=0; i<count; i++) 
	{
		var element = document.forms[0].elements[i]; 
		
		if (control.checked == true && element != control
			&& element.type != "submit") //DISABLE
		{
			//when disabling, save typed-in info and replace with saved info 
			if (element.type == "radio")
			{
				new_info[element.name] = element.value;
				checked_items_new.push(element.checked);
			}
			else
			{	new_info[element.name] = element.value;	}
			
		//	element.readonly=true;
		}
		else if (element != control && element.type != "submit") //ENABLE
		{ 
			//when enabling, save saved info and replace with typed-in info
			if (element.type == "radio")
			{
				saved_info[element.name] = element.value;
				checked_items_saved.push(element.checked);
			}
			else
			{	saved_info[element.name] = element.value;	}
			
		//	element.readonly=false; 
		}
	}
	
	//now loop over again to recall the previously saved state
	for (i=0; i<count; i++) 
	{
		var element = document.forms[0].elements[i]; 
		
		if (control.checked == true && element != control
			&& element.type != "submit") //DISABLE
		{
			if (element.type == "radio")
			{
				if (saved_info[element.name] != null)
				{	element.checked = checked_items_saved.shift();	}
			}
			else
			{	
				if (saved_info[element.name] != null)
				{	element.value = saved_info[element.name];	}	
			}
			
			//element.readOnly=true;
			//element.className="inputDisabled";
			element.disabled=true;
		
		}
		else if (element != control && element.type != "submit") //ENABLE
		{ 
			if (element.type == "radio")
			{
				if (new_info[element.name] != null)
				{	element.checked = checked_items_new.shift();	}
			}
			else
			{	
				if (new_info[element.name] != null)
				{	element.value = new_info[element.name];	}	
			}
			
			//element.readOnly=false;
			//element.className="inputEnabled";
			element.disabled=false;
		}
	}
}

function enableBeforeSubmit()
{
	var count = document.forms[0].elements.length;
	for (i=0; i<count; i++) 
	{
		var element = document.forms[0].elements[i]; 
		element.disabled=false;
	}
	return true;
}*/

function setNewCust(e) {
	//document.getElementById("loginForm").action = "/user/register.do";
	var keynum

	if(window.event) // IE
	{	keynum = e.keyCode;	}
	else if(e.which) // Netscape/Firefox/Opera
	{	keynum = e.which;	}
	
	if (keynum != 9) //ignore tabs
	{	document.getElementById("newCust").checked = true;	}
	
	return true;
}

function setReturningCust(e) {
	var keynum

	if(window.event) // IE
	{	keynum = e.keyCode;	}
	else if(e.which) // Netscape/Firefox/Opera
	{	keynum = e.which;	}
	
	if (keynum != 9) //ignore tabs
	{
		document.getElementById("oldCust").checked = true;
	//	document.getElementById("loginForm").action = "j_security_check";
	}
	return true;
}

function setLoginFocus()
{
	var emailBox = document.getElementById("loginEmail");
	if (emailBox.value == "")
	{	emailBox.focus();	}
	else
	{	document.getElementById("loginPass").focus();	}
}

function submitNumResultsPerPageForm()
{
	document.searchForm.submit();
}

/***********************************
	New Search Page functions 
*/
function submitNewNumResultsForm()
{
	document.newSearchForm.submit();
} 

function checkAll(fieldname) {
	field = document.getElementsByName(fieldname);
	for (i = 0; i < field.length; i++)
	{	field[i].checked = true;	}	
}

function uncheckAll(fieldname) {
	field = document.getElementsByName(fieldname);
	for (i = 0; i < field.length; i++)
	{	field[i].checked = false;	}	
}

function checkCurrentColors() {
	uncheckAll("color");
	field = document.getElementsByName("color");
	for (i = 0; i < field.length; i++)
	{	
		if (isCurrentColor(field[i].value))
		{	field[i].checked = true;	}
	}
}

function checkClassicColors() {
	uncheckAll("color");
	field = document.getElementsByName("color");
	for (i = 0; i < field.length; i++)
	{	
		if (isClassicColor(field[i].value))
		{	field[i].checked = true;	}
	}
}

function checkSaleColors() {
	uncheckAll("color");
	field = document.getElementsByName("color");
	for (i = 0; i < field.length; i++)
	{	
		if (isSaleColor(field[i].value))
		{	field[i].checked = true;	}
	}
}

function isCurrentColor(color) {
	color = color.toLowerCase();
	if (color == "aqb" ||
		color == "bi" ||
		color == "pnp" ||
		color == "kd")
	{	return true;	}
	
	return false;
}

function isClassicColor(color) {
	color = color.toLowerCase();
	if (color == "wbr" ||
		color == "ci" ||
		color == "pco")
	{	return true;	}
	
	return false;
}

function toggleVisibility(id, display)
{
	if ($(id).style.display == "none")
	{
		$(id).style.display = display;
	}
	else
	{
		$(id).style.display = "none";
	}
}

function toggleSearchOptions()
{
	toggleVisibility("theOptions", "block");
	toggleVisibility("moreOptions", "block");
	toggleVisibility("moreOptionsOn", "block");
	
	if ( $('showMoreOptions').value == "true" )
	{	$('showMoreOptions').value = "false";	}
	else
	{	$('showMoreOptions').value = "true";	}
}

function hideShowSubTypes()
{
	//uncheckAll("subtype");
	disableAll("subtype");
	hideAllByClass("subTypeDiv");
	
	field = document.getElementsByName("type");
	//loop over selected product types and show or hide the appropriate sub types
	for (i = 0; i < field.length; i++)
	{
		if (field[i].checked)
		{
			showSubTypesForProductType(field[i].value);
		}		
	}
}

function disableAll(fieldname) {
	field = document.getElementsByName(fieldname);
	for (i = 0; i < field.length; i++)
	{	field[i].disabled = true;	}	
}

function enableAll(fieldname) {
	field = document.getElementsByName(fieldname);
	for (i = 0; i < field.length; i++)
	{	field[i].disabled = false;	}	
}

function showSubTypesForProductType(pType)
{
	if (pType == 1) //necklaces
	{
		$('subType' + 4).style.display = "inline"; //Classic
		$('subTypeBox' + 4).disabled = false;
		$('subType' + 6).style.display = "inline"; //Bibs
		$('subTypeBox' + 6).disabled = false;
		$('subType' + 7).style.display = "inline"; //Pendant
		$('subTypeBox' + 7).disabled = false;
		$('subType' + 9).style.display = "inline"; //Long Strand
		$('subTypeBox' + 9).disabled = false;
	}	
	if (pType == 2) { //earrings
		$('subType' + 1).style.display = "inline"; //French Wire
		$('subTypeBox' + 1).disabled = false;
		$('subType' + 2).style.display = "inline"; //Clip
		$('subTypeBox' + 2).disabled = false;
		$('subType' + 3).style.display = "inline"; //Post
		$('subTypeBox' + 3).disabled = false;
	}	
	if (pType == 3) { //bracelets
		$('subType' + 4).style.display = "inline"; //Classic
		$('subTypeBox' + 4).disabled = false;
		$('subType' + 5).style.display = "inline"; //Cuff
		$('subTypeBox' + 5).disabled = false;
	}	
	if (pType == 6) { //other
		$('subType' + 8).style.display = "inline"; //Extender
		$('subTypeBox' + 8).disabled = false;
		$('subType' + 10).style.display = "inline"; //Barrette
		$('subTypeBox' + 10).disabled = false;
		$('subType' + 11).style.display = "inline"; //Tooth Fairy Box
		$('subTypeBox' + 11).disabled = false;
		$('subType' + 12).style.display = "inline"; //Belt
		$('subTypeBox' + 12).disabled = false;
	}
}

function hideAllByClass(fieldname) {
	field = document.getElementsByClassName(fieldname);
	//alert(field.length);
	for (i = 0; i < field.length; i++)
	{	field[i].style.display = "none";	}	
}

function showAllByClass(fieldname) {
	field = document.getElementsByClassName(fieldname);
	for (i = 0; i < field.length; i++)
	{	field[i].style.display =  "inline";	}	
}

function showSearch(search)
{
	//alert("prodIdButton className: " + $('prodIdSearchButton').className);
	//alert("advancedSearchButton className: " + $('advancedSearchButton').className);
	if (search == "advancedSearch")
	{
		$('prodIdSearch').style.display = "none";
		$('advancedSearch').style.display = "block";
		$('quickSearch').style.display = "none";
		
		$('prodIdSearchButton').className = "";
		$('advancedSearchButton').className = "current";
		$('quickSearchButton').className = "";
	}
	else if (search == "prodIdSearch")
	{
		$('advancedSearch').style.display = "none";
		$('prodIdSearch').style.display = "block";
		$('quickSearch').style.display = "none";
		
		$('prodIdSearchButton').className = "current";
		$('advancedSearchButton').className = "";
		$('quickSearchButton').className = "";
	}
	else if (search == "quickSearch")
	{
		$('advancedSearch').style.display = "none";
		$('prodIdSearch').style.display = "none";
		$('quickSearch').style.display = "block";
		
		$('quickSearchButton').className = "current";
		$('prodIdSearchButton').className = "";
		$('advancedSearchButton').className = "";
	}
}

function resetSearchForm()
{
	checkAll('type');
	checkAll('color');
	$('sortBy').value = "alphaZA";
	$('minPrice').value = "any";
	$('maxPrice').value = "any";
	$('minSize').value = "any";
	$('maxSize').value = "any";
	$('useNecklaceWidth').checked = false;
	$('useEarringWidth').checked = false;
	$('useBraceletWidth').checked = false;
	$('onlySaleItems').checked = false;
	checkAll('subtype');
	checkAll('finish');
	hideShowSubTypes();
}

function submitform()
{
  document.myform.submit();
}

/* getElementsByClass function by Dustin Diaz
http://www.dustindiaz.com/getelementsbyclass/ 

whaddaya know...this is built into prototype so i'll use that instead
*/
/*function getElementsByClass(searchClass,node,tag) {
	var classElements = new Array();
	if ( node == null )
		node = document;
	if ( tag == null )
		tag = '*';
	var els = node.getElementsByTagName(tag);
	var elsLen = els.length;
	var pattern = new RegExp("(^|\\\\s)"+searchClass+"(\\\\s|$)");
	for (i = 0, j = 0; i < elsLen; i++) {
		if ( pattern.test(els[i].className) ) {
			classElements[j] = els[i];
			j++;
		}
	}
	return classElements;
}*/