function showHide(name)
{
	var trs = $$("outletHierarchies").elmsByAttribute("name", name, "tr");
	var curDisplay = trs.getStyle("display");
	var display = curDisplay+" ";
	display = display.substring(0,4).toLowerCase();
	
	if(display == "none")
	{
		$$(name).src = "/images/dropdown-open.gif";
		trs.setStyle("display", "table-row");
	}
	else
	{
		$$(name).src = "/images/dropdown-closed.gif";
		trs.setStyle("display", "none");
	}
}







function ToggleDropDown(elementID)
{
	var e;
	e = document.getElementById(elementID + 'Inner');
	var a;
	a = document.getElementById(elementID + 'Link');
	if(e.style.display != 'block')
	{
		e.style.display = 'block';	
		UpdateAllCounts();
		a.innerHTML = '';
	}
	else
	{
		e.style.display = 'none';
		UpdateAllCounts();	
	}
}

function SelAll(fieldPrefix, sel)
{
	for (x = 0; x < document.forms[0].elements.length; x++)
	{
		var form_element = document.forms[0].elements[x];
		if(form_element.name.substring(0, fieldPrefix.length) == fieldPrefix)
			form_element.checked = sel;
	}
	
	if(document.forms.length > 1)
	{
		for (x = 0; x < document.forms[1].elements.length; x++)
		{
			var form_element = document.forms[1].elements[x];
			if(form_element.name.substring(0, fieldPrefix.length) == fieldPrefix)
				form_element.checked = sel;
		}
	}
}

function UpdateAllCounts()
{
	tyreSizeCount = CountSelectedCheckBoxes('tyreSize');
	
	if(tyreSizeCount < 1)
		document.getElementById('tyreSizeLink').innerHTML = '-- All -- ';
	else if(tyreSizeCount == 1)
		document.getElementById('tyreSizeLink').innerHTML = '1 tyre size selected';
	else
		document.getElementById('tyreSizeLink').innerHTML = tyreSizeCount +' tyre sizes selected';
		
	
	if(document.forms.length > 1)
	{
		tyreSizeCount = CountSelectedCheckBoxes('favTyreSize');
		
		if(tyreSizeCount < 1)
			document.getElementById('favTyreSizeLink').innerHTML = '0 tyre sizes selected';
		else if(tyreSizeCount == 1)
			document.getElementById('favTyreSizeLink').innerHTML = '1 tyre size selected';
		else
			document.getElementById('favTyreSizeLink').innerHTML = tyreSizeCount +' tyre sizes selected';
	}
}



function CountSelectedCheckBoxes(prefix)
{
	checkCount = 0;
	
	for(i = 0; i < document.forms.length; i++)
	{
		for (x = 0; x < document.forms[i].elements.length; x++)
		{			
			var form_element = document.forms[i].elements[x];
			
			if(form_element.type != 'hidden' && form_element.name.substring(0, prefix.length) == prefix)
			{				
				if (form_element.checked == true)
					checkCount++;
			}
		}
	}
	return checkCount;
}

var clickedOn;
clickedOn = true;
function ClickOff()
{
	document.getElementById('tyreSizeInner').style.display = 'none';
	if(document.forms.length > 1)
		document.getElementById('favTyreSizeInner').style.display = 'none';
	UpdateAllCounts();
}

function ClickOn(e)
{
	if (!e) var e = window.event;
	e.cancelBubble = true;
	if (e.stopPropagation) e.stopPropagation();
}

function InitSearchBoxClickOff()
{
	if (document.addEventListener)
	{
		document.addEventListener('click', ClickOff, false);
		document.getElementById('tyreSizeOuter').addEventListener('click', ClickOn, false);
		if(document.forms.length > 1)
			document.getElementById('favTyreSizeOuter').addEventListener('click', ClickOn, false);
	}
	else if (document.attachEvent)
	{
		document.attachEvent('onclick', ClickOff);
		document.getElementById('tyreSizeOuter').attachEvent('onclick', ClickOn);
		if(document.forms.length > 1)
			document.getElementById('favTyreSizeOuter').attachEvent('onclick', ClickOn);
	}
	else
	{
		document.onclick = ClickOff;
		document.getElementById('tyreSizeOuter').onclick = ClickOn;
		if(document.forms.length > 1)
			document.getElementById('favTyreSizeOuter').onclick = ClickOn;
	}
}