function getObj(name){if (document.getElementById) {this.obj = document.getElementById(name);this.style = document.getElementById(name).style;} else if (document.all) {this.obj = document.all[name];this.style = document.all[name].style;} else if (document.layers) {this.obj = document.layers[name];this.style = document.layers[name]; }}function feedback_toggle(){	var DHTML = (document.getElementById || document.all || document.layers);if (!DHTML) return;	var x = new getObj("feedback");	var vis = x.style.display;if(vis == "none" || vis == ""){x.style.visibility = "visible";x.style.display = "block";}else{x.style.visibility = "hidden";x.style.display = "none";}}
function trimString(theString) {while (theString.charAt(0) == " ") {theString = theString.substring(1,theString.length);}while (theString.charAt(theString.length - 1) == " ") {theString = theString.substring(0,theString.length - 1);}return theString;}
function checkFeedback(){if ((document.forms["feedback_form"].feedback_text.value.length == 0) || (trimString(document.forms["feedback_form"].feedback_text.value) == 0 )) {alert("Please enter some feedback or a question");	}else{document.forms["feedback_form"].submit();}}

function jumpToQuickLinks(){
	var title = document.searchform.headerQuickLinks.options[document.searchform.headerQuickLinks.selectedIndex].innerHTML;
	title = title.replace(" ", "");
	var destination = document.searchform.headerQuickLinks.options[document.searchform.headerQuickLinks.selectedIndex].value;
	if (destination) {
		if (typeof(pageTracker)=='object' && pageTracker != null){
			pageTracker._trackPageview('/outgoing/'+title);
		}
		location.href = destination;
	}
}

function checkEmail(email) {var reEmail=/^[a-zA-Z][\w\.-]*[a-zA-Z0-9]@[a-zA-Z0-9][\w\.-]*[a-zA-Z0-9]\.[a-zA-Z][a-zA-Z\.]*[a-zA-Z]$/;if (email.search(reEmail)==-1){return false;}else{return true;}}
function checkUrl(s) {var regexp = /(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/;return regexp.test(s);}
function checkSearch(){var theForm = document.forms["searchform"];if(theForm.q.value.length == 0 || theForm.q.value==theForm.q.defaultValue) {alert("Please enter the words to search for");theForm.q.focus();}else{document.searchform.submit();}}
function changePage(whatForm, scrollingInput, val) {scrollingInput.value = val;var ctnListname = scrollingInput.name.substring(10,scrollingInput.name.length);whatForm.elements['ctnlistpagination_' + ctnListname].value='true';whatForm.submit();}

function IsNumeric(strString){if(!/\D/.test(strString)) {return true;} else if(/^\d+\.\d+$/.test(strString)) {return true;} else return false;}
   
function checkBookingForm(theForm) {
    var errorStr = "";
    if (trimString(theForm.fullNameOfAttendee.value) == 0) {
        errorStr += "- Please enter your name \n";
    }
    if (trimString(theForm.emailAddressOfAttendee.value) == 0) {
        errorStr += "- Please enter email address \n";
    }
    if (!checkEmail(trimString(theForm.emailAddressOfAttendee.value)) &&
        trimString(theForm.emailAddressOfAttendee.value) != 0) {
        errorStr += "- Please enter valid email address \n";
    }
    if (trimString(theForm.phoneOfAttendee.value) == 0) {
        errorStr += "- Please enter phone number \n";
    }

    if (trimString(theForm.numberAttending.value) == 0) {
        errorStr += "- Please enter number of persons attending event \n";
    }
    if (!IsNumeric(trimString(theForm.numberAttending.value)) &&
        trimString(theForm.numberAttending.value) != 0) {
        errorStr += "- Number of persons attending should be a valid number. Please enter valid number. \n";
    }
	if (errorStr == "") {
        return true;
    } else {
        alert("Error: \n" + errorStr);
        return false;
    }
}

function resize_iframe()
{
	var height=window.innerWidth;//Firefox
	if (document.body.clientHeight)
	{
		height=document.body.clientHeight;//IE
	}
	//resize the iframe according to the size of the
	//window (all these should be on the same line)
	document.getElementById("thisIframe").style.height=parseInt(height-document.getElementById("thisIframe").offsetTop-8)+"px";
}

function addIframeElement(replaceObjectID, srcVal, widthVal, heightVal, idVal, frameborderVal, scrollingVal, alignVal, className) {
    if (document.getElementById(idVal)) {
        return;
    }
    var newIframeElement = document.createElement("iframe");
    newIframeElement.setAttribute("width", widthVal);
    newIframeElement.setAttribute("height", heightVal);
    newIframeElement.setAttribute("frameborder", frameborderVal);
    newIframeElement.setAttribute("scrolling", scrollingVal);
    newIframeElement.setAttribute("align", alignVal);
    newIframeElement.setAttribute("id", idVal);
    newIframeElement.setAttribute("name", idVal);
    newIframeElement.className = className;
    var replaceObject = document.getElementById(replaceObjectID);
    if (replaceObject) {
        replaceObject.parentNode.replaceChild(newIframeElement, replaceObject);
        top[idVal].location.href = srcVal;
    }
    top[idVal].name = idVal;
}
function SearchTools() {
}
SearchTools.showHitDetails =  function (frameHtmlElementId, labelHtmlElementId, onMsg, offMsg) {
    var htmlEl = document.getElementById(labelHtmlElementId);
    if (htmlEl) {
        if (!htmlEl.labelMsg) {
            htmlEl.labelMsg = "on";
        }
        if (htmlEl.labelMsg == "on") {
            htmlEl.innerHTML = offMsg;
            htmlEl.labelMsg = "off";
        } else {
            htmlEl.innerHTML = onMsg;
            htmlEl.labelMsg = "on";
        }
    }
    var frameHtmlEl = document.getElementById(frameHtmlElementId);
    if (frameHtmlEl) {
        if (htmlEl.labelMsg == "off") {
            frameHtmlEl.style.display = "block";
        } else {
            frameHtmlEl.style.display = "none";
        }
    }
}
SearchTools.resetSearchRefine = function (formName) {
    var searchForm = document.forms[formName];
    searchForm.elements.searchRefineAttribute.value = "reset";
    searchForm.submit();
}

var getElementsByClassName = function (className, tag, elm){
	if (document.getElementsByClassName) {
		getElementsByClassName = function (className, tag, elm) {
			elm = elm || document;
			var elements = elm.getElementsByClassName(className),
				nodeName = (tag)? new RegExp("\\b" + tag + "\\b", "i") : null,
				returnElements = [],
				current;
			for(var i=0, il=elements.length; i<il; i+=1){
				current = elements[i];
				if(!nodeName || nodeName.test(current.nodeName)) {
					returnElements.push(current);
				}
			}
			return returnElements;
		};
	}
	else if (document.evaluate) {
		getElementsByClassName = function (className, tag, elm) {
			tag = tag || "*";
			elm = elm || document;
			var classes = className.split(" "),
				classesToCheck = "",
				xhtmlNamespace = "http://www.w3.org/1999/xhtml",
				namespaceResolver = (document.documentElement.namespaceURI === xhtmlNamespace)? xhtmlNamespace : null,
				returnElements = [],
				elements,
				node;
			for(var j=0, jl=classes.length; j<jl; j+=1){
				classesToCheck += "[contains(concat(' ', @class, ' '), ' " + classes[j] + " ')]";
			}
			try	{
				elements = document.evaluate(".//" + tag + classesToCheck, elm, namespaceResolver, 0, null);
			}
			catch (e) {
				elements = document.evaluate(".//" + tag + classesToCheck, elm, null, 0, null);
			}
			while ((node = elements.iterateNext())) {
				returnElements.push(node);
			}
			return returnElements;
		};
	}
	else {
		getElementsByClassName = function (className, tag, elm) {
			tag = tag || "*";
			elm = elm || document;
			var classes = className.split(" "),
				classesToCheck = [],
				elements = (tag === "*" && elm.all)? elm.all : elm.getElementsByTagName(tag),
				current,
				returnElements = [],
				match;
			for(var k=0, kl=classes.length; k<kl; k+=1){
				classesToCheck.push(new RegExp("(^|\\s)" + classes[k] + "(\\s|$)"));
			}
			for(var l=0, ll=elements.length; l<ll; l+=1){
				current = elements[l];
				match = false;
				for(var m=0, ml=classesToCheck.length; m<ml; m+=1){
					match = classesToCheck[m].test(current.className);
					if (!match) {
						break;
					}
				}
				if (match) {
					returnElements.push(current);
				}
			}
			return returnElements;
		};
	}
	return getElementsByClassName(className, tag, elm);
};

function checkHighlight(id) {
	var obj = document.getElementById(id);
	var items = getElementsByClassName("p", "div", obj);
	if (items.length >= 2) {
		for (var i=0; i<items.length; i++) {
			var item = items[i];
			if (i%3 == 1 && item.className == "p") {item.className = item.className + " mid";}
			if (i%3 != 1 && item.className == "p mid") {item.className = "p";}
		}
	}
}

function PrintFriendlyPage() {
	var sOption="toolbar=no,location=no,directories=no,menubar=no,statusbar=no,scrollbars=yes,resizable=yes,width=800, height=600,left=10,top=10";
	var pFContentHTML=document.getElementById('middleBar').innerHTML;
	var pfpage=window.open("","",sOption);
	pfpage.document.open(); 
	pfpage.document.write('<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">'); 
	pfpage.document.write('<html xmlns="http://www.w3.org/1999/xhtml"><head>'); 
	pfpage.document.write('<link type="text/css" rel="stylesheet" href="/global/css/printpage.css"/> '); 
	pfpage.document.write('<link type="text/css" rel="stylesheet" media="print" href="/global/css/printpage.css"/> '); 
	pfpage.document.write('</head><body>'); 
	pfpage.document.write(pFContentHTML);     
	pfpage.document.write('</body></html>'); 
	pfpage.document.close(); 
	pfpage.focus(); 
	pfpage.setTimeout("window.print();", 400);
}