/**
 * Update the href elements in the links to include the CSbridge parameter
 */
function setCSBridgeInLinks(CSbridge)
{
	setCSBridgeInHref(document.getElementsByTagName("a"),CSbridge);
  setCSBridgeInHref(document.getElementsByTagName("area"),CSbridge);
}
/**
 * Update the href elements in the supplied array
 */
function setCSBridgeInHref(links, CSbridge)
{
		
	for(var i = 0;i<links.length;i++)
	{
		var link = links[i];
		var org = link.innerHTML;
		if(link.href.indexOf('cphzt')==-1 && link.href.indexOf('dev.rezidorsas')==-1 && link.href.indexOf('radissonsas')==-1 && link.href.indexOf('sasradisson')==-1 && link.href.indexOf('CSbridge=')==-1 && link.href.indexOf('/')==-1 && link.href.indexOf('javascript:')==-1)
		{
			var href=link.href;
			if(href.substr(href.length-'/'.length)=='/')
			{
				href=href.substring(0,href.length-1);
			}
			if(href.indexOf('?')==-1)
			{
				href=href+'?'+"CSbridge="+escape(CSbridge.substr(CSbridge.indexOf("CSbridge=") + "CSbridge=".length, CSbridge.length));	
			}else
			{
				href=href+'&'+"CSbridge="+escape(CSbridge.substr(CSbridge.indexOf("CSbridge=") + "CSbridge=".length, CSbridge.length));
			}
			link.href=href;
            if(org) link.innerHTML = org;
		}
	}
}
/**
 * Adds CSbridge as a hidden field in all of the forms on the page
 */
function setCSBridgeInForms(CSbridge)
{
	var forms = document.forms;
	for(var i = 0;i<forms.length;i++)
	{
		setCSBridgeInForm(forms[i],CSbridge);
	}
}
/**
 * Adds the CSbridge parameter to a form
 */
function setCSBridgeInForm(currentForm, CSbridge)
{	
	
	var CSBridgeElement = getCSBridgeElement(currentForm);
	if(CSBridgeElement==null)
	{
		//lets inject a CSbridge element in the form
		var doc = currentForm.ownerDocument;
		CSBridgeElement = doc.createElement('INPUT');
		CSBridgeElement.type='hidden';
		CSBridgeElement.name='CSbridge';
		CSBridgeElement.value=CSbridge.substr(CSbridge.indexOf("CSbridge=") + "CSbridge=".length, CSbridge.length);
		currentForm.appendChild(CSBridgeElement);
	}
}

/**
 * Adds the CSbridge parameter to a lcation.href
 */
function setCSBridgeLocationHref(LocationHref) {
  if(LocationHref.indexOf('pfp.rezidorsas.com')==-1) {
    location.href=LocationHref;
  } else {
    document.myCSBridge.action=LocationHref;
    document.myCSBridge.submit();
  }
}

/**
 * tries to get the CSbridge parameter from the forms.
 */
function getCSBridgeElement(currentForm)
{
	var formElements = currentForm.elements;
	for(var i = 0;i<formElements.length;i++)
	{
		var element = formElements[i];
		if(element.name=='CSbridge')
		{
			return element;
		}
	}
}
/**
 * adds the CSbridge parameter to all links and forms on the page
 */
function setCSBridge(CSbridge) {
  setCSBridgeInForms(CSbridge);	
  setCSBridgeInLinks(CSbridge);
}

