function str_replace(sStr)
{
	sStr=sStr.replace(/\x27/g,"\\'");
	sStr=sStr.replace(/\"/g, '');
	return sStr;
}

//escapes escaped strings

function str_repair(sStr)
{
	sStr=sStr.replace(/\\'/g,"'");
	return sStr;
}

function xDocSize()
{
	var b=document.body, e=document.documentElement;
	var esw=0, eow=0, bsw=0, bow=0, esh=0, eoh=0, bsh=0, boh=0;
	if (e) {
		esw = e.scrollWidth;
		eow = e.offsetWidth;
		esh = e.scrollHeight;
		eoh = e.offsetHeight;
	}
	if (b) {
		bsw = b.scrollWidth;
		bow = b.offsetWidth;
		bsh = b.scrollHeight;
		boh = b.offsetHeight;
	}
	//  alert('compatMode: ' + document.compatMode + '\n\ndocumentElement.scrollHeight: ' + esh + '\ndocumentElement.offsetHeight: ' + eoh + '\nbody.scrollHeight: ' + bsh + '\nbody.offsetHeight: ' + boh + '\n\ndocumentElement.scrollWidth: ' + esw + '\ndocumentElement.offsetWidth: ' + eow + '\nbody.scrollWidth: ' + bsw + '\nbody.offsetWidth: ' + bow);

	var Coors = new Array();
	Coors[0]= Math.max(esw,eow,bsw,bow);
	Coors[1] = Math.max(esh,eoh,bsh,boh);

	return Coors;
	//return {pageW:Math.max(esw,eow,bsw,bow),pageH:Math.max(esh,eoh,bsh,boh)};
}


function page_grey(w,h)
{
	var docObj = document.getElementById("main_body");
	
	var browser = findBrowser();

	if(w == 0 && h == 0)
	{

		if(browser == "FF" || browser == "SAF" || browser == "OP" )
		{
			var winY = window.innerHeight+window.pageYOffset;
			//var winX = window.innerWidth-18;
			var winX = docObj.clientWidth;
		}
		else if(browser == "IE")
		{
			var scrollTop = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop;
			var winX = document.documentElement.clientWidth ? document.documentElement.clientWidth : document.body.clientWidth;
			var winY = document.documentElement.clientHeight ? document.documentElement.clientHeight : document.body.clientHeight;
			winY = winY+scrollTop;
		}

		var grey_div = document.createElement('div');
		grey_div.setAttribute("style","");
		grey_div.setAttribute("id","grey_div");
		grey_div.style.position = "absolute";
		grey_div.style.top = "0px";
		grey_div.style.left = "0px";
		grey_div.style.width = winX+"px";
		grey_div.style.height = winY+"px";
		grey_div.style.zIndex = "10000";
		grey_div.style.backgroundColor = "#000000";

		if(browser == "IE")
		{
			grey_div.style.filter = "progid:DXImageTransform.Microsoft.Alpha(opacity=60)";
		}
		else if(browser == "FF" || browser == "OP" || browser == "SAF" )
		{
			grey_div.style.opacity = "0.6";
		}

		grey_div.style.visibility = "visible";
		docObj.appendChild(grey_div);
	}
	else
	{
		winX = w;
		winY = h;

		document.getElementById("grey_div").style.width = winX+"px";
		document.getElementById("grey_div").style.height = winY+"px";
	}
}

function refresh_grey_overlay()
{
	if(document.getElementById("grey_div") != null)
	{
		var greyOverlay = document.getElementById("grey_div").style;
	}
	var browser = findBrowser();

	if(greyOverlay)
	{
		if(greyOverlay.visibility == "visible")
		{
			if(browser == "FF" || browser == "SAF" || browser == "OP")
			{
				var winY = window.innerHeight+window.pageYOffset+150;
				var winX = (window.innerWidth)+window.pageXOffset;

				var maxSize = xDocSize();

				if(winX >= maxSize[0])
				{
					winX = maxSize[0];
				}

				if(winY >= maxSize[1])
				{
					winY = maxSize[1];
				}

				page_grey(winX,winY);
			}
			else if(browser == "IE")
			{
				var scrollTop = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop;
				var scrollLeft = document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft;


				if(document.documentElement.clientHeight == "" || document.documentElement.clientHeight == "undefined")
				{
					//fix for IE 5.0
					var winY  = document.body.clientHeight+scrollTop+150;
					var winX = document.body.clientWidth+scrollLeft;
				}
				else
				{
					// IE 6.0,7.0
					var winY = document.documentElement.clientHeight+scrollTop+150;
					var winX = document.documentElement.clientWidth+scrollLeft;
				}


				/************************************/
				/** this is a special fix
				** so the browser scrollbars
				** dont fall into an infinite loop
				** and have a neverending scrolls on the page
				**/
				/**************************************/

				var maxSize = xDocSize();

				if(winX >= maxSize[0])
				{
					winX = maxSize[0];
				}

				if(winY >= maxSize[1])
				{
					winY = maxSize[1];
				}

				page_grey(winX,winY);
			}
		}
	}
	refresh_topDiv();
}


function preloader(imgObj,content,caption,divHeight)
{
	var browser = findBrowser();
	/*************************************/
	/** grabs the created container
	** and replaces its content
	**/
	var divObj = document.getElementById("overlay_div");

	var maxSize = xDocSize();

	if(browser == "FF" || browser == "SAF" || browser == "OP" )
	{
		var topOffset = window.pageYOffset;
	}
	else if(browser == "IE")
	{
		var topOffset = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop;

	}
	
	/*To check whether golfing or non golfing page: 21-11-2008*/
	var str = window.location.href;
	var reg = new RegExp("/golfing/");
	if (reg.test(str))
	{
		var image = "/images/shell/golfing/golf_photopop_close_btn.gif";
		var closetext = "<td></td>";
	}
	else
	{
		var image = "/images/shell/photopop_close_btn.gif";
		var closetext = "<td align='right' class='closePop' style='padding-top:5px;'>Close</td>";
	}
	
	if(imgObj.complete)
	{
		var maxSize = xDocSize();
		boxY = Math.round((maxSize[0]/2) - (imgObj.width/2));

		var tableWidth = imgObj.width+20+"px";

		/**
		** the +100 in height adds the space for the caption
		**/

		divObj.style.width = imgObj.width+20+"px";
		divObj.style.height= imgObj.height+100+"px";
		divObj.style.top = topOffset+30+"px";
		divObj.style.left = (boxY-20)+"px";

		/**
		** this is the output for the popup
		** if its already preloaded
		**/

		divObj.innerHTML = "<table border='0' width="+tableWidth+" cellpadding='0' cellspacing='0' valign='top'><tr>"+closetext+"<td width='30' align='right' style='padding:5px 10px 0px 5px;'><a href='javascript:void(0);' onclick='destroyWindows();'><img src='"+image+"' border=\"0\" /></a></td></tr></table>";
		divObj.innerHTML += "<table border='0' align='center'><tr><td><img src='"+content+"' border='0'></td></tr></table>";
		divObj.innerHTML += "<table><tr><td style='padding-left: 5px;' class='regularNonBold'>"+caption+"</td></tr></table>";

	}
	else
	{
		imgObj.onload = function()
		{
			var maxSize = xDocSize();
			boxY = Math.round((maxSize[0]/2) - (imgObj.width/2));

			var tableWidth = imgObj.width+20+"px";

			/**
			** the +100 in height adds the space for the caption
			**/

			divObj.style.width = imgObj.width+20+"px";
			divObj.style.height= imgObj.height+100+"px";
			divObj.style.top = topOffset+30+"px";
			divObj.style.left = (boxY-20)+"px";

			/**
			** this is the output for the popup
			** if its loading for the first time
			**/

			divObj.innerHTML = "<table border='0' width="+tableWidth+"  cellpadding='0' cellspacing='0' valign='top'><tr>"+closetext+"<td width='30' align='right' style='padding:5px 10px 0px 5px;'><a href='javascript:void(0);' onclick='destroyWindows();'><img src='"+image+"'border=\"0\" /></a></td></tr></table>";
			divObj.innerHTML += "<table border='0' align='center'><tr><td><img src='"+content+"' border='0'></td></tr></table>";
			divObj.innerHTML += "<table><tr><td style='padding-left: 5px;' class='regularNonBold'>"+caption+"</td></tr></table>";
		}
	}
}


function createTopDiv(message,containerWidth,containerHeight,type,caption)
{
	var browser = findBrowser();

	if(type == "image")
	{
		var newImage = new Image();
		newImage.src = message;

		/**
		** standard width and height if not an image
		**/
		var divWidth = 100;
		var divHeight = 200;
	}
	else
	{
		var divWidth = containerWidth;
		var divHeight = containerHeight;
	}

	if(browser == "FF" || browser == "SAF" || browser == "OP" )
	{
		var topOffset = window.pageYOffset;
	}
	else if(browser == "IE")
	{
		var topOffset = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop;

	}

	/*To check whether golfing or non golfing page: 21-11-2008*/
	var str = window.location.href;
	var reg = new RegExp("/golfing/");
	if (reg.test(str))
	{
		var image = "/images/shell/golfing/golf_photopop_close_btn.gif";
		var closetext = "<td></td>";
	}
	else
	{
		var image = "/images/shell/photopop_close_btn.gif";
		var closetext = "<td align='right' class='closePop' style='padding-top:5px;'>Close</td>";
	}
	
	var docObj = document.getElementById("main_body");
	var topDiv = document.createElement('div');

	var maxSize = xDocSize();

	boxY = Math.round((maxSize[0]/2) - (divWidth/2));

	topDiv.style.width = divWidth+"px";
	topDiv.style.height = divHeight+"px";

	topDiv.style.zIndex = "11000";
	topDiv.setAttribute("id","overlay_div");
	topDiv.style.position = "absolute";
	topDiv.style.top = topOffset+30+"px";
	topDiv.style.left = (boxY-20)+"px";
	topDiv.style.backgroundColor = "#fff";
	topDiv.style.border = "1px solid black";
	topDiv.style.visibility = "visible";
	/*if(type ==  "image")
	{
	topDiv.innerHTML = "<table border='0' width="+divWidth+" cellpadding='0' cellspacing='0' valign='top'><tr><td align='right'><a href='javascript:void(0);' onclick='destroyWindows();'>X</a></td></tr></table>";
	topDiv.innerHTML += "<table border='0' align='center'><tr><td><img src='/images/photos/"+message+"' border='0'></td></tr></table>";
	}*/
	/*else
	{*/
	if(type == "image")
	{
		topDiv.innerHTML = "<table border='0' width="+divWidth+" cellpadding='0' cellspacing='0' valign='top'><tr>"+closetext+"<td width='30' align='right' style='padding:5px 10px 0px 5px;'><a href='javascript:void(0);' onclick='destroyWindows();'><img src='"+image+"' border=\"0\" /></a></td></tr></table>";
		topDiv.innerHTML += "<table border='0' align='center' style='height: 100%;padding-top: 45%;'><tr><td align='center'><img src='/admin/images/ajax-loader.gif' border='0'></td></tr></table>";
		docObj.appendChild(topDiv);
		preloader(newImage,message,caption,divHeight);
	}
	else if(type == "generic")
	{
		topDiv.innerHTML = "<table border='0' width="+divWidth+" cellpadding='0' cellspacing='0' valign='top'><tr>"+closetext+"<td width='30' align='right' style='padding:5px 10px 0px 5px;'><a href='javascript:void(0);' onclick='destroyWindows();'><img src='"+image+"' border=\"0\" /></a></td></tr></table>";
		topDiv.innerHTML += "<table border='0' align='center' style='padding-top: 5px;'><tr><td align='center'>"+message+"</td></tr></table>";
		docObj.appendChild(topDiv);
	}

	/*}*/
}


function destroyWindows()
{
	document.getElementById('overlay_div').parentNode.removeChild(document.getElementById('overlay_div'));
	document.getElementById('grey_div').parentNode.removeChild(document.getElementById('grey_div'));
}

function refresh_topDiv()
{
	var browser = findBrowser();
	if(browser == "FF" || browser == "SAF" || browser == "OP" )
	{
		var topOffset = window.pageYOffset;
	}
	else if(browser == "IE")
	{
		var topOffset = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop;
	}

	if(document.getElementById("overlay_div") != null)
	{
		var divWidth = document.getElementById('overlay_div').style.width;
		var t = divWidth.substr(0,divWidth.indexOf('px'));
		var maxSize = xDocSize();

		boxY = Math.round((maxSize[0]/2) - (parseInt(t)/2));

		if(browser == "FF" || browser == "SAF" || browser == "OP" )
		{
			document.getElementById('overlay_div').style.left = (boxY-10)+"px";
			//document.getElementById('overlay_div').style.top = topOffset+30+"px";
		}
		else if(browser == "IE")
		{
			document.getElementById('overlay_div').style.left = (boxY-10)+"px";
			//document.getElementById('overlay_div').style.top = topOffset+30+"px";
		}
	}
}