function SaveScrollCoordinates(form)
{
 var l_oInput;
 var l_oForm;

 l_oInput = document.createElement('input');
 l_oInput.setAttribute('type', 'hidden');
 l_oInput.setAttribute('name', 'ScrollX');
 l_oInput.setAttribute('id', 'ScrollX');
 form.appendChild(l_oInput);
 if (document.documentElement && document.documentElement.scrollLeft)
  form.ScrollX.value = document.documentElement.scrollLeft;
 else if (document.all)
  form.ScrollX.value = document.body.scrollLeft;
 else
  form.ScrollX.value = window.pageXOffset;
 l_oInput = document.createElement('input');
 l_oInput.setAttribute('type', 'hidden');
 l_oInput.setAttribute('name', 'ScrollY');
 l_oInput.setAttribute('id', 'ScrollY');
 form.appendChild(l_oInput);
 if (document.documentElement && document.documentElement.scrollTop)
  form.ScrollY.value = document.documentElement.scrollTop;
 else if (document.all)
  form.ScrollY.value = document.body.scrollTop;
 else
  form.ScrollY.value = window.pageYOffset;
} 

function SetVisibility(element, visibility)
{
 document.getElementById(element).style.display = visibility;
 document.getElementById(element).style.zIndex = 100;
}

function UniquifiedUrl(url)
{
 var urlParts = url.split("?");
 var uniqueUrl = urlParts[0];
 uniqueUrl += "/rnd" + Math.floor(Math.random() * 1000000);
 if(urlParts.length == 2)
  uniqueUrl += '?' + urlParts[1];
 return uniqueUrl;
}

function FocusTextInput(p_oTextInput, p_blnFocused, p_strDefaultText)
{
 if(p_blnFocused)
 {
  p_oTextInput.style.color = "#000000";
  if(p_oTextInput.value == p_strDefaultText)
   p_oTextInput.value = "";
 }
 else if(p_oTextInput.value.length == 0)
 {
  p_oTextInput.style.color = "#999999";
  p_oTextInput.value = p_strDefaultText;
 }
}

function FocusTextAreaInput(p_oTextInput, p_blnFocused)
{
 if(p_blnFocused)
 {
  p_oTextInput.style.color = "#000000";
  if(p_oTextInput.value == p_oTextInput.title)
   p_oTextInput.value = "";
 }
 else if(p_oTextInput.value.length == 0)
 {
  p_oTextInput.style.color = "#999999";
  p_oTextInput.value = p_oTextInput.title;
 }
}

function GoToUrl(p_strUrl)
{
 location.href = p_strUrl;
}

function Debug(p_strMessage)
{
 if(console)
  console.debug(p_strMessage);
}                                                                  

//Email check
function checkEmail(cAddress)
{
 if (cAddress.search(/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i) == -1)
  return false;
 return true;
}

//Email personcode
function checkPersonCode(tcValue) 
{
	var RegExp = /^[abcdefghijkl][01][0-9][0-9][0-9][0-9][0-9][0-9][0-9]$/i;		
	return RegExp.test(tcValue);
}
//Email postcode
function checkPostcode(tcValue) 
{
	var RegExp = /^[0-9]{4}\s*[a-z|A-Z]{2}$/i;		
	return RegExp.test(tcValue);
}
//hide or show block elements
function showElement(elementId) {
 if (document.getElementById) 
 {
  var elementStyle = document.getElementById(elementId).style;
  elementStyle.display = "block";
 } 
 return true;
}
function hideElement(elementId) {
 if (document.getElementById) 
 {
  var elementStyle = document.getElementById(elementId).style;  
   elementStyle.display = "none";  
 }
 return true;
}

function swapElement(elementId) {
 if (document.getElementById) {
  var elementStyle = document.getElementById(elementId).style;
  if (elementStyle.display == "block") {
   elementStyle.display = "none";
  }
  else {
   elementStyle.display = "block";
  }
 }
 return true;
}

function disableEnterKey(e)
  {
  var key;
  if(window.event)
  key = window.event.keyCode; //IE
  else
  key = e.which; //firefox
  return (key != 13);
}
