function gebi(ele)
{
	return document.getElementById(ele);
}


/* === Top Navbar === */
var topnavbar_timer	= 0;
var topnavbar_selected	= 0;

// open hidden layer
function topnavbar_show(id)
{	
	// close old layer
	topnavbar_stoptimer();
	topnavbar_hide();

	if (id != '')
	{
		// get new layer and show it
		topnavbar_selected = document.getElementById(id);
		topnavbar_selected.style.visibility = 'visible';
	}
}

// close showed layer
function topnavbar_hide()
{
	if (topnavbar_selected)
	{
		topnavbar_selected.style.visibility = 'hidden';
	}
	
	topnavbar_stoptimer();
}

// go close timer
function topnavbar_starttimer()
{
	topnavbar_timer = window.setTimeout(topnavbar_hide, 500);
}

// cancel close timer
function topnavbar_stoptimer()
{
	if (topnavbar_timer)
	{
		window.clearTimeout(topnavbar_timer);
		topnavbar_timer = null;
	}
}

// close layer when click-out
document.onclick = topnavbar_hide;
/* === /Top Navbar === */


/* === Basket === */
function postageRegionOnChange()
{
	var newEle = document.createElement('input');
	newEle.setAttribute('type', 'hidden');
	newEle.setAttribute('name', 'submit_button');
	newEle.setAttribute('value', 'Change');
	
	form = gebi('basketForm');
	form.appendChild(newEle);
	form.submit();
}

function postageRuleOnChange()
{
	var newEle = document.createElement('input');
	newEle.setAttribute('type', 'hidden');
	newEle.setAttribute('name', 'submit_button');
	newEle.setAttribute('value', 'Change');
	
	form = gebi('basketForm');
	form.appendChild(newEle);
	form.submit();
}
/* === /Basket === */


/* Checkout */
function checkoutCopyAddress()
{
	gebi('s_delivery_title').value = gebi('s_customer_title').value;
	gebi('ti_delivery_firstname').value = gebi('ti_customer_firstname').value;
	gebi('ti_delivery_lastname').value = gebi('ti_customer_lastname').value;
	gebi('ti_delivery_postcode').value = gebi('ti_customer_postcode').value;
	gebi('ti_delivery_address1').value = gebi('ti_customer_address1').value;
	gebi('ti_delivery_address2').value = gebi('ti_customer_address2').value;
	gebi('ti_delivery_city').value = gebi('ti_customer_city').value;
	gebi('ti_delivery_county').value = gebi('ti_customer_county').value;
	gebi('s_delivery_country').value = gebi('s_customer_country').value;
}
/* /Checkout */


/* Product List */
function ajaxAddProduct(PIID)
{
	// return true means we dropped out of here so submit the form
	// used in event of error, so the normal submit can handle showing error messages
	if (PIID == '')
	{
		gebi('f_' + PIID).submit();
		return;
	}
	
	if (ajaxIsRunning == true)
	{
		return;
	}
	
/*	gebi('si_' + PIID).src = '/childrensrooms-web/images/adding_to_basket.gif';
	gebi('si_' + PIID).alt = 'Adding';*/
	
	
	var ajax = getAjaxObject();
	
	if (ajax.overrideMimeType)
	{
		ajax.overrideMimeType('text/plain');
	}
	
	ajax.onreadystatechange = function()
	{
		if (ajax.readyState == 4)
		{
			if (ajax.status == 200 && ajax.responseText.length > 0 && ajax.responseText.substring(0, 7) == 'success')
			{
				ajaxIsRunning = false;
				
				gebi('si_' + PIID).src = '/childrensrooms-web/images/added_to_basket.gif';
				gebi('si_' + PIID).alt = 'Added To Basket';
				
				gebi('basket').innerHTML = ajax.responseText.substring(7);
			}
			else
			{
				ajaxIsRunning = false;
				
				gebi('si_' + PIID).src = '/childrensrooms-web/images/add_to_basket.gif';
				gebi('si_' + PIID).alt = 'Add To Basket';
				
				gebi('f_' + PIID).submit();
			}
		}
	}

	ajaxIsRunning = true;
	
	ajax.open('post', addAjaxScript, true);
	var params = 'arg=basket&do=ajaxadd&product_instance_id=' + PIID + '&quantity=' + gebi('s_quantity_' + PIID).value + '&dt=' + new Date().getTime();
	ajax.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	ajax.setRequestHeader("Content-length", params.length);
	ajax.setRequestHeader("Connection", "close");
	ajax.send(params);
}
/* /Product List */

var ajaxIsRunning = false;

function getAjaxObject()
{
	if (window.XMLHttpRequest)
	{
		return new XMLHttpRequest();
	}
	else
	{
		try
		{
			return ActiveXObject("Msxml2.XMLHTTP");
		}
		catch (e)
		{
			try
			{
				return ActiveXObject("Microsoft.XMLHTTP");
			}
			catch (e2) { }
		}
	}	
}

function productDetailImageChange(changeTo)
{
	gebi('productimage').src = '/childrensrooms-web/images/products/detail/' + changeTo + '.jpg';
	gebi('viewlargerlink').innerHTML = '<a href="/childrensrooms-web/images/products/large/' + changeTo + '.jpg" target="viewlarger">View Larger Image</a>';
}

function returnCheckedCharIds()
{
    var ids = "";
	var charnames = "";

    var elements = document.forms[0].elements;
    for (i = 0; i < elements.length; i++)
    {
        if (elements[i].type == "checkbox" && elements[i].checked == true)
       {
			var id = elements[i].id.substring(3);
            ids += "," + elements[i].id.substring(3);

			charnames += gebi(id).value + "<br>";
       }
    }

	opener.document.getElementById('chars').value = (ids != "" ? ids.substring(1) : "");
	opener.document.getElementById('charnames').innerHTML = charnames;
	
	window.close();
}
