function getXmlHttpRequestObject() 
{	
	if (window.XMLHttpRequest) 
	{		
		return new XMLHttpRequest();	
	} 
	else if(window.ActiveXObject) 
	{		
		return new ActiveXObject("Microsoft.XMLHTTP");	
	} 
	else 
	{		
		alert('Status: Cound not create XmlHttpRequest Object. Consider upgrading your browser.');	
	}
}

function openPrompt(text, messageLines)
{
if (!messageLines) {
	messageLines = 3;
}
messageLines = messageLines - 2		//3 lines fit by default but add a line for spacing
if (messageLines < 0){
	messageLines = 0
}
var promptHeight = 200 + (messageLines * 10)	//add 10px for each additional line to default of 200px;
	
	document.getElementById("prompt_cover").style.height = document.getElementById("middle_bar").offsetHeight + "px";
	
	document.getElementById("prompt_cover").style.display = "block";
	document.getElementById("prompt").innerHTML = "<div id='close_link'><a href='javascript: closePrompt();'><img src='images/close-prompt.gif' border='0'/></a></div><img src='images/prompt-top.jpg' id='prompt_top'/><div id='prompt_text'>" + text + "</div>";
	document.getElementById("prompt").style.height = promptHeight + "px";
	document.getElementById("prompt").style.display = "block";
}

function closePrompt()
{
	document.getElementById("prompt_cover").style.display = "none";
	document.getElementById("prompt").style.display = "none";
}

function fixHeight()
{
	var left_bar = document.getElementById("left_bar").offsetHeight;
	var middle_bar = document.getElementById("middle_bar").offsetHeight;
	var right_bar = document.getElementById("right_bar").offsetHeight;
	var footer = document.getElementById("footer");
	
	if(middle_bar > left_bar)
	{
		if(middle_bar > right_bar)
		{
			document.getElementById("content").style.height = middle_bar + "px";
		}
		else
		{
			document.getElementById("content").style.height = right_bar + "px";
		}
	}
	else
	{
		if(left_bar > right_bar)
		{
			document.getElementById("content").style.height = left_bar + "px";
		}
		else
		{
			document.getElementById("content").style.height = right_bar + "px";
		}
	}
	footer.style.display="block";
}

function changeTitle(title)
{
	document.getElementById("products_title").innerHTML = title;
}


function formatCurrency(strValue)
{
	strValue = strValue.toString().replace(/\£|\,/g,'');
	dblValue = parseFloat(strValue);

	blnSign = (dblValue == (dblValue = Math.abs(dblValue)));
	dblValue = Math.floor(dblValue*100+0.50000000001);
	intCents = dblValue%100;
	strCents = intCents.toString();
	dblValue = Math.floor(dblValue/100).toString();
	if(intCents<10)
		strCents = "0" + strCents;
	for (var i = 0; i < Math.floor((dblValue.length-(1+i))/3); i++)
		dblValue = dblValue.substring(0,dblValue.length-(4*i+3))+','+
		dblValue.substring(dblValue.length-(4*i+3));
	return (((blnSign)?'':'-') + '£' + dblValue + '.' + strCents);
}


function spaceReplace(text)
{
	text = text.replace(/ /g, "[space]");
	return text;
}

function enlarge(divId){
	var morph = new Fx.Morph("sub_holder_spacer_"+divId);
	var divObj = document.getElementById("sub_holder_spacer_"+divId);
	divObj.morph(".sub_holder_spacer_enlarge")
	
	var morph = new Fx.Morph("sub_holder_"+divId);
	var divObj = document.getElementById("sub_holder_"+divId);
	divObj.morph(".sub_holder_enlarge")
	
	var morph = new Fx.Morph("sub_holder_image_"+divId);
	var divObj = document.getElementById("sub_holder_image_"+divId);
	divObj.morph(".sub_holder_image_enlarge")
	
	var morph = new Fx.Morph("sub_holder_name_"+divId);
	var divObj = document.getElementById("sub_holder_name_"+divId);
	divObj.morph(".sub_holder_name_enlarge")
	
	}

function reset(divId){
	var divObj = document.getElementById("sub_holder_"+divId);
	if (divObj.offsetHeight != 184){
		var divObj = document.getElementById("sub_holder_spacer_"+divId);
		var morph = new Fx.Morph("sub_holder_spacer_"+divId);
		divObj.morph(".sub_holder_spacer")
		
		var morph = new Fx.Morph("sub_holder_"+divId);
		var divObj = document.getElementById("sub_holder_"+divId);
		divObj.morph(".sub_holder")
		
		var morph = new Fx.Morph("sub_holder_image_"+divId);
		var divObj = document.getElementById("sub_holder_image_"+divId);
		divObj.morph(".sub_holder_image")

		var morph = new Fx.Morph("sub_holder_name_"+divId);
		var divObj = document.getElementById("sub_holder_name_"+divId);
		divObj.morph(".sub_holder_name")
	}
}

function resetExcept(exceptionId, maxId){
	var i = 1
	while (i <= maxId) {
		if (i != exceptionId){
			reset(i);
		}
		i++;
	}
}

// standard string replace functionality
function str_replace(haystack, needle, replacement) {
	var temp = haystack.split(needle);
	return temp.join(replacement);
}