<!--

var g_sessionExpires = new Date()
g_sessionExpires.setMinutes(g_sessionExpires.getMinutes() + 20);

addLoadEvent(updateSessionTimer);



// ** session list ** //
var prevCalItem = 0;

function selDate(i) {
	if (prevCalItem > 0 && prevCalItem != i) {
		// color prev item grey
		x = document.getElementById("c" + prevCalItem);
		x.style.backgroundColor = '#d9d9d9';
	}

	x = document.getElementById("c" + i);
	fld = document.searchForm.sd;
	if (i == prevCalItem) {
		// clicked same item - turn to grey
		x.style.backgroundColor = '#d9d9d9';
		fld.value = '';
		prevCalItem = 0;
	} else {
		x.style.backgroundColor = '#FFDADA';
		fld.value = i;
		prevCalItem = i;
	}
}

function clearSearch(d) {
	// clear for items
	frm = document.searchForm;
	frm.k.value = '';
	frm.v.selectedIndex = 0;

	if (prevCalItem > 0) selDate(prevCalItem);
	var x = d.split(',');
	for (i=0;i<x.length;i++) {
		eval('frm.a' + x[i] + '.selectedIndex = 0;');
	}
}

function toggleSearch() {
	var x = document.getElementById('searchBox');
	var y = document.getElementById('searchButton');
	if (x.style.display != 'block') {
		x.style.display = 'block';
		y.src = 'img/button_search2.gif';
		document.searchForm.k.focus();
	} else {
		x.style.display = 'none';
		y.src = 'img/button_search.gif';
	}
}
// ** session list ** //


// ** checkout ** //

function checkoutToken() {
	document.aForm.t.value = "true";
	document.aForm.submit()
}


function checkCardType(i) {
	var frm = document.aForm;
	if (!frm.cardType.length) {
		frm.cardType.checked = true;
	} else {
		frm.cardType[i].checked = true;
	}
}
// ** checkout ** //


// ** session page ** //
var sessionName;
var alertsShown = new Array()
var sessionID = -1;

function loadSessionPricing(sID, sCode) {

	sessionID = sID;

	// If problems exist with eeyaxe method uncomment following line
	document.location.href = "session2.asp?sn=" + sessionName + "&s=" + sID;return;

	if (document.getElementById("sessionCode")) document.getElementById("sessionCode").innerHTML = sCode;

	document.getElementById("sessionPricing").innerHTML = "<div style=\"text-align:center;padding:20px;border:1px solid#ccc;\"><img src=\"img/icon_wait.gif\" style=\"vertical-align:middle;\" /> &nbsp; <strong>Pricing loading...</strong></div>";

	toggleSessionTimes(true);

	jsWebRequest("session_pricing.asp?m=2&sn=" + sessionName + "&s=" + sID, false, "session2.asp?sn=" + sessionName + "&s=" + sID, "", "loadSessionPricing_delegate(");

}

function loadSessionPricing_delegate(s) {

	document.getElementById("sessionPricing").innerHTML = unescape(s);

}

var validatedPromoCodes = new Array();
function validatePromoCode(sID, al) {

	var pc = document.sessionForm.promotionalCode;
	if (pc) {
		pc = pc.value;
	} else {
		alert("Error validating your promotional code.");
		return;
	}

	if (validatedPromoCodes.length > 0) {
		for (var i = 0;i < validatedPromoCodes.length;i++) {
			if (validatedPromoCodes[i] == pc) {
				alert("You have previously validated this promotional code.");
				return;
			}
		}
	}

	jsWebRequest("session_pricing.asp?m=4&s=" + sID + "&pc=" + pc + "&al=" + al, false, "session2.asp?s=" + sID + "&pc=" + pc + "&al=" + al, "", "validatePromoCode_delegate('" + pc + "',");

}

function validatePromoCode_delegate(pc, s) {


	if (s.substring(0, 1) == 0) {
		alert(unescape(s.substring(1)));
	} else {

		validatedPromoCodes[validatedPromoCodes.length] = pc;

		s = unescape(s).split("<td>");

		var target = document.getElementById("pcRow");
		var row = document.createElement('tr');
		var cell = document.createElement('td');
		cell.innerHTML = s[1].substring(0, s[1].length-5);
		row.appendChild(cell);
		cell = document.createElement('td');
		cell.innerHTML = s[2].substring(0, s[2].length-5);
		row.appendChild(cell);
		cell = document.createElement('td');
		cell.innerHTML = s[3].substring(0, s[3].length-5)
		row.appendChild(cell);

		target.parentNode.insertBefore(row, target.nextSibling );
	}

}


function toggleSessionTimes(hideTimes) {
	var x;

	for (var i = 0;i < sessionIDs.length;i++) {

		x = document.getElementById("s" + sessionIDs[i]);
		if (x) {
			if (sessionID == sessionIDs[i]) {
				x.className = "sessionTime sessionTimeSelected";
				x.style.height = "30px";
				x.style.marginTop = "0";
			} else {
				x.className = "sessionTime";
				if (hideTimes) {
					x.style.height = "0";
					x.style.marginTop = "-1px";
				} else {
					x.style.height = "30px";
					x.style.marginTop = "0";
				}
			}
		}
	}

	x = document.getElementById("sMore");
	if (x) {
		if (hideTimes && sessionIDs.length > 1) {
			x.style.opacity = 1;
			x.style.filter = 'alpha(opacity:100)';
  			x.style.KHTMLOpacity = 1;
		} else {
			x.style.opacity = 0;
			x.style.filter = 'alpha(opacity:0)';
  			x.style.KHTMLOpacity = 0;
		}
	}
}

function showAlert(msg, status) {

	for (i = 0;i <= alertsShown.length;i++) {
		if (alertsShown[i] == status) return;
	}
	alertsShown[alertsShown.length+1] = status;
	alert(msg);
}

function sn(i) {
	if (document.sessionForm.serialNo.value == '') {
		b = false;
	} else {
		b = true;
	}

	if (i == 0) {
		document.sessionForm.pass.checked = b;
	} else {
		document.sessionForm.pass[i].checked = b;
	}

}


function fldVal(txt, st) {
	eval('var x = document.sessionForm.qty' + st);
	if (x) {
		if (txt.value == "") {
			x.disabled = true;
		} else {
			x.disabled = false;
		}
	}
}

function disableEnter(field, e) {
	if (!e) e = window.event; // gay IE browser
	if (e.keyCode) {
		code = e.keyCode;
	} else if (e.which) {
		code = e.which;
	}

	if (code == 13) return false;


	return true;
}


function addPass() {

	// record sn details before adding html
	var sn = document.sessionForm.serialNo;
	var snv;

	if (!sn.length) {
		snv = sn.value;
	} else {
		snv = new Array();
		for (var i = 0;i < sn.length;i++) {
			snv[i] = sn[i].value;
		}
	}

	//document.getElementById('passBoxes').innerHTML += '<br />Pass No: <input type="tel" name="serialNo" value="" maxlength="10" style="width:80px;" /><input type="hidden" name="serialNoQTY" value="1" />';
	document.getElementById('passBoxes').innerHTML += '<br /><select name="serialNoQTY" title="" onchange="blur()"><option value="0" selected="selected">0</option><option value="1">1</option><option value="2">2</option><option value="3">3</option><option value="4">4</option><option value="5">5</option></select> Pass No: <input type="tel" name="serialNo" value="" maxlength="10" style="width:80px;" />';
	if (!sn.length) {
		document.sessionForm.serialNo[0].value = snv;
	} else {
		for (var i = 0;i < snv.length;i++) {
			if (snv[i].value != '') {
				if (document.sessionForm.serialNo[i]) {
					document.sessionForm.serialNo[i].value = snv[i];
				 }
			}
		}
	}

	document.sessionForm.serialNo[document.sessionForm.serialNo.length-1].focus();

}

function expandSessionImage(i) {
	var x = document.getElementById("sessionImage");
	if (x.style.width == "" || x.style.width == (i + "px")) {
		x.style.width = "90%";
	} else {
		x.style.width = i + "px";
	}
}

function readMore(b) {
	var x = document.getElementById("sessionDescriptionMoreText")
	var y = document.getElementById("sessionDescriptionMoreLink")
	var z = document.getElementById("sessionDescriptionLessLink")

	if (b == true) {
		x.style.display = 'inline';
		y.style.display = 'none';
		z.style.display = 'inline';
	} else {
		x.style.display = 'none';
		y.style.display = 'inline';
		z.style.display = 'none';
	}
}


// ** session page ** //


function clearCart() {
	if (confirm("Are you sure you wish to clear your cart?") == true) {
		document.location.href='cartUtil.asp?m=clear';
	}
}

function cancelSubmit() {
	return false;
}

function useMobile(reqLoc, iPhoneApp) {

	var usrMSG;
	if (iPhoneApp && (navigator.userAgent.indexOf('iPhone') != -1) || (navigator.userAgent.indexOf('iPod') != -1) || (navigator.userAgent.indexOf('iPad') != -1)) {
		usrMSG = "Would you like to use the mobile version of this website?\n\nThere is also an iPhone application available through the Apple App Store which is compatible with your device."
	} else {
		usrMSG = "Would you like to use the mobile version of this website?";
	}


	if (confirm(usrMSG) == true) {
		selectMobile(true, reqLoc);
	} else {
		selectMobile(false, reqLoc);
	}

}

function selectMobile(answer, reqLoc) {
	if (answer == true) {
		switchToMobile(1, reqLoc);
	} else if (reqLoc == "1") {
		locationGet(false);
	}
}


function cleanLoc(loc) {
	if (loc.indexOf("px") != -1) {
		loc = loc.substring(0, (loc).indexOf("px"))
	}
	loc = parseInt(loc);
	return loc;
}

function jsWebRequest(URL, POST, fallbackURL, divName, callFunction) {
	// If eeeyax is available use
	var xmlHttp;

	try {
		// Firefox, Opera 8.0+, Safari (best browser by the way)
		xmlHttp = new XMLHttpRequest();
	}
	catch(e) {
		// Billies special browser
		try {
			xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch(e) {
			try {
				xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
			}
			catch(e) {
				// browser is bad and can't handle eeeeyaxe (Suprised it isn't IE)
				if (fallbackURL != '') {
					document.location.href = fallbackURL;
				} else {
					alert(e.description);
				}
				return;
			}
		}
	}

	// Code to execute once web request complete
	xmlHttp.onreadystatechange = function() {
		if (xmlHttp.readyState == 4) {
			if (xmlHttp.responseText != '') {

				 //alert(xmlHttp.responseText);

				if (divName != '') {
					x = document.getElementById(divName);
					if (x) x.innerHTML = xmlHttp.responseText;
				}
				if (callFunction != '') {
					if (callFunction.indexOf(')') > -1) { callFunction = callFunction.substring(0, callFunction.indexOf(')')); }
					if (callFunction.indexOf('(') == -1) { callFunction += '('; }
					eval(callFunction + "'" + escape(xmlHttp.responseText) + "')");
				}
			} else {
				if (fallbackURL != '') {
					document.location.href = fallbackURL;
				}
			}
		}
	}

	if (POST) {
		var i = URL.indexOf("?");
		params = URL.substring(URL.length-(URL.length-i-1));
		URL = URL.substring(0, i);
		//alert("POST URL: " + URL + "\n\nparams: " + params);
		xmlHttp.open("POST", URL, true);
		xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		xmlHttp.send(params);
	} else {
		xmlHttp.open("GET", URL + returnUniqueID(URL), true);
		xmlHttp.send(null);
	}

}


function returnUniqueID(URL) {
	var chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz";
	var myStr;
	if (URL.indexOf("?") == -1) {
		myStr = "?";
	} else {
		myStr = "&";
	}

	for (var i=0; i<8; i++) {
		var randNum = Math.floor(Math.random() * chars.length);
		myStr += chars.substring(randNum, randNum+1);
	}
	myStr += "="
	for (var i=0; i<8; i++) {
		var randNum = Math.floor(Math.random() * chars.length);
		myStr += chars.substring(randNum, randNum+1);
	}
	return myStr;
}


function addSessionToWishlist(s, inW) {

	jsWebRequest("accountWishlist_edit.asp?s=" + s, false, "", "", "wishlist_callback('" + s + "',");

}

function wishlist_callback(s, t) {

	eval("var x = document.images.wishlistIMG" + s);
	if (s.substring(0, 1) == 'S') {
		eval("var y = document.images.wishlistIMG" + s.substring(1));
	} else {
		eval("var y = document.images.wishlistIMGS" + s);
	}

	if (t == "off" || t == "on") {
		if (x) x.src = "img/icon_wishlist_" + t + ".png";
		if (y) y.src = "img/icon_wishlist_" + t + ".png";

	} else {
		alert(unescape(t));

	}

}


function toggleInfoAlert(m, d) {
	var x = document.getElementById(d);

	if (x) {
		if (m == 1) {
			if (x.style.display != 'block') {
				x.style.display = 'block';
			} else {
				x.style.display = 'none';
			}
		} else {
			if (m == 2) {
				x.style.display = 'block';
			} else {
				x.style.display = 'none';
			}
		}
	}
}

function switchToMobile(i, reqLoc) {
	var url = document.location.href;
	if (url.substring(url.length-1) == '?') {
		document.location.href += 'mobile=' + i + '&reqLoc=' + reqLoc;
	} else if (url.indexOf('?') == -1) {
		document.location.href += '?mobile=' + i + '&reqLoc=' + reqLoc;
		} else {
			url = url.replace(/mobile=/, "mobileX=");
		document.location.href = url + '&mobile=' + i + '&reqLoc=' + reqLoc;
		}
}


/* coreLocation :P */
var location_lat;
var location_lng;
var location_count = 0;
var location_showError = false;
if (returnQueryStringValue("reqLoc") == "1" ) locationGet(false);

function locationGet(b) {
	location_showError = b;
	try {
		navigator.geolocation.getCurrentPosition(locationFound, locationNotFound);
	}
	catch(err) {
		// nothing
	}
}
function locationFound(position) {
	location_lat = position.coords.latitude;
	location_lng = position.coords.longitude;

	if (position.coords.accuracy > 100 && location_count < 5) {
		// Update position in 2 seconds - max 5 times
		location_count++;
		jsWebRequest("visitor_locationUpdate.asp?la=" + location_lat + "&lo=" + location_lng + '&acc=' + position.coords.accuracy, false, "", "", "");
		setTimeout('locationGet()', 2000);
	} else {
		jsWebRequest("visitor_locationUpdate.asp?la=" + location_lat + "&lo=" + location_lng + '&acc=' + position.coords.accuracy, false, "", "", "");
	}
}
function locationNotFound() {
	if (location_showError) alert('Could not find your location.');
}
function locationMaps(address) {
	if (confirm('Would you like to open the session venue location in your Maps application?') == true) {
		document.location.href = 'http://maps.google.com/maps?saddr=' + address;
	}
}
function locationDirections(address) {
	if (confirm('Would you like to get directions from your current location to the session venue in your Maps application?') == true) {
		document.location.href = 'http://maps.google.com/maps?saddr=' + location_lat + ',' + location_lng + '&daddr=' + address;
	}
}
/* coreLocation :P */


function updateSessionTimer() {
	var x = document.getElementById('ef_sessionTimer1');
	if (x) {
		// establish seconds until expiry
		var d = new Date();
		var secs = Math.floor((g_sessionExpires.getTime() - d.getTime()) / 1000);
		var mins = Math.floor(secs / 60).toString();
		secs = Math.floor(secs - (mins * 60)).toString();

		if (mins < 0 || (mins == 0 && secs <= 0)) {
			document.getElementById('ef_sessionTimer').style.display = 'none';
			return;
		}

		if (mins.length == 2) {
			t1 = mins.substring(0, 1);
			t2 = mins.substring(1);
		} else {
			t1 = 0;
			t2 = mins.substring(0);
		}
		if (secs.length == 2) {
			t3 = secs.substring(0, 1);
			t4 = secs.substring(1);
		} else {
			t3 = 0;
			t4 = secs.substring(0);
		}

		if (t1 < 0 || t1 > 9) t1 = 0;
		if (t2 < 0 || t2 > 9) t2 = 0;
		if (t3 < 0 || t3 > 9) t3 = 0;
		if (t4 < 0 || t4 > 9) t4 = 0;

		x.src = 'img/timer/t' + t1 + '.gif';
		document.getElementById('ef_sessionTimer2').src = 'img/timer/t' + t2 + '.gif';
		document.getElementById('ef_sessionTimer3').src = 'img/timer/t' + t3 + '.gif';
		document.getElementById('ef_sessionTimer4').src = 'img/timer/t' + t4 + '.gif';

		setTimeout("updateSessionTimer()", 1000);
	} else {
		var tmp = document.getElementById('ef_sessionTimer');
		if (tmp) {
			tmp.innerHTML = '<img src="img/timer/t1.gif" id="ef_sessionTimer1" /><img src="img/timer/t9.gif" id="ef_sessionTimer2" /><img src="img/timer/colon.gif" /><img src="img/timer/t5.gif" id="ef_sessionTimer3" /><img src="img/timer/t8.gif" id="ef_sessionTimer4" />';
			tmp.title = 'Time remaining to purchase tickets.\n\nThis resets to 20 min each time you load a page.';
			setTimeout("updateSessionTimer()", 1000);
		}
	}
}


function checkoutEditDetails() {

	var x;

	for (i=1;i<14;i++) {
		x = document.getElementById("c" + i);
		if (x != null) x.style.display = '';
	}

	x = document.getElementById("c0");
	x.style.display = 'none';

}


function addLoadEvent(func) {
	var oldonload = window.onload;
	if (typeof window.onload != 'function') {
		window.onload = func;
	} else {
		window.onload = function() {
			if (oldonload) {
		        oldonload();
      		}
			func();
		}
	}
}

function returnQueryStringValue(variable) {
	var query = window.location.search.substring(1);
	var vars = query.split("&");
	for (var i=0;i<vars.length;i++) {
	var pair = vars[i].split("=");
	if (pair[0] == variable) {
		return pair[1];
	}
	}
}


function checkEmailUnique(e) {
	jsWebRequest("accountSignup_checkUnique.asp?e=" + e, false, "", "", "checkEmailUnique_delegate('" + e + "',");
}

function checkEmailUnique_delegate(e, s) {
	if (s == "0") {
		if (confirm("An account with that email address already exists in the system.\n\nWould you like recover your account password now?") == true) {
			var n = e.length;var m = new String(n).length;document.location.href = "account.asp?e=" + e + "&n=" + n + "&m=" + m;
		}
	} else if (s == "3") {
		document.aForm.m.value = 3;
	}
}


function openBrWindow(theURL,winName,features) {
	window.open(theURL,winName,features);
}


var submitCount = 0;
function formSubmit(frm, onSub) {

	submitCount++;
	if (submitCount > 1) return false;

	//document.body.style.cursor = "progress";

	//try {
	//	frm.btnSubmit.disabled = true;
	//}
	//catch(e) {}

	//try {
	//	frm.cancel.disabled = true;
	//}
	//catch(e) {}

	if (onSub != undefined && onSub != "") {
		eval("b = " + onSub);
		return b;
	}

	return true;

}


var videoWin;
function playVideo(sn, url) {

	if (videoWin) videoWin.close();

	videoWin = window.open('videoPlayer.asp?sn=' + sn + '&url=' + url,'etixVideo', 'width=405,height=280,menubar=0,toolbar=0,status=0,scrollbars=0,resizable=1');
}

function registerVote(s) {
	var v =
	jsWebRequest("session_vote.asp?s=" + s + "&r=" + sessionRating + "&v=" + String.fromCharCode(87) + String.fromCharCode(101) + String.fromCharCode(98), false, "", "", "registerVote_callback(");
	x = document.vForm.btnVote.disabled = true;
	x = document.vForm.btnVote.value = "Registering your vote";
}

function registerVote_callback(s) {
	s = unescape(s).split(":");
	if (s[0] != "OK") {
		if (s[2] == "{8}") {
			x = document.vForm.btnVote.disabled = false;
			x = document.vForm.btnVote.value = "Vote Now";
		} else {
			x = document.getElementById("sessionVoting");
			if (x) x.style.display = "none";
		}
		alert(s[1]);

	} else {
		x = document.getElementById("sessionVoting");
		if (x) {
			x.innerHTML = "You rated this session:<br />";
			for (i = 1; i <= sessionRating;i++) {
				x.innerHTML += "<img src=\"img/rating/star_on.png\" width=\"30\" />";
			}
			for (i = sessionRating; i <= 5-1;i++) {
				x.innerHTML += "<img src=\"img/rating/star_off.png\" width=\"30\" />"
			}
		}
		alert("Thanks for voting!");
	}

}

var sessionRating = 0;
function rating(r) {
	if (sessionRating == 0) x = document.vForm.btnVote.disabled = false;
	sessionRating = r;
	for (i = 1;i <= 5;i++) {
		x = document.getElementById("r" + i);
		if (x) {
			if (i > r) {
				x.src = "img/rating/star_off.png";
			} else {
				x.src = "img/rating/star_on.png";
			}
		}
	}
}

function tixSiteWarning(url, newWin) {
	alert("Warning: If you have placed any items in your cart you have 20 minutes to complete your purchase before your tickets are removed. To get back to your cart at any time just click on the 'My Cart' button");

	if (newWin == 1) {
		window.open(url,'eLink', 'width=800,height=600,menubar=1,toolbar=1,status=1,scrollbars=1,resizable=1');
	} else {
		document.location.href = url;
	}
}


function allocatedSeating(m) {

	var a0 = document.getElementById("as_GALoc")
	var a1 = document.getElementById("as_allocated");
	var a2 = document.getElementById("as_bestSel");
	var a3 = document.getElementById("as_bestSplit");
	var a4 = document.getElementById("pricing");
	var a5 = document.getElementById("as_select");
	var a6 = document.getElementById("as_find");
	var a7 = document.sessionForm.btnSubmit;

	if (m == 1) {
		// GA
		if (a0) a0.style.display = "";
		a1.style.display = "none";

		if (document.sessionForm.as_bestselect[0].checked) {
			allocatedSeating(3);
		} else {
			allocatedSeating(4);
		}

		a4.style.display = "";
		a5.style.display = "none";
		a6.style.display = "";
		a7.value = "Book Tickets";
		document.sessionForm.as_gaas[0].checked = true;

	} else if (m == 2) {
		// AS
		if (a0) a0.style.display = "none";
		a1.style.display = "";
		a7.value = "Find Tickets";

		if (document.sessionForm.as_bestselect[0].checked) {
			allocatedSeating(3);
		} else {
			allocatedSeating(4);
		}
		document.sessionForm.as_gaas[1].checked = true;

	} else if (m == 3) {
		// BA
		a2.style.display = "";
		a3.style.display = "";
		a4.style.display = "";
		a5.style.display = "none";
		a6.style.display = "";
		document.sessionForm.as_bestselect[0].checked = true;

	} else if (m == 4) {
		// SMSM
		if (document.getElementById("spi")) {
			a2.style.display = "";
		} else {
			a2.style.display = "none";
		}
		a3.style.display = "none";
		a4.style.display = "none";
		a5.style.display = "";// pre 010411 none
		a6.style.display = "none";
		document.sessionForm.as_bestselect[1].checked = true;
	}

}


function efAlert(msg, level) {
	// fatal, info, warning

	var efA_bg = document.getElementById("efA_bg");
	if (!efA_bg) {
		document.body.innerHTML += "<div id=\"efA_bg\">&nbsp;</div>";
		efA_bg = document.getElementById("efA_bg");
		if (!efA_bg) {
			alert(msg + "\n\n{1}");
			return;
		}
	}

	var efA_alert = document.getElementById("efA_alert");
	if (!efA_alert) {
		document.body.innerHTML += "<div id=\"efA_alert\"><div id=\"text\">" + msg + "</div><div id=\"buttons\"><form><input type=\"button\" name=\"btnOK\" value=\"   OK   \" onclick=\"efAlert_hide()\" /></form></div></div>";
		efA_alert = document.getElementById("efA_alert");
		if (!efA_alert) {
			alert(msg + "\n\n{2}");
			efA_bg.style.display = "none";
			return;
		}
	}

	efA_alert.style.background = "url(img/efAlert_" + level + ".png)";

	efA_bg.style.display = "block";
	efA_alert.style.display = "block";

	var scrolledX, scrolledY;
	if (self.pageYoffset) {
		scrolledX = self.pageXoffset;
		scrolledY = self.pageYoffset;
	} else if (document.documentElement && document.documentElement.scrollTop) {
		scrolledX = document.documentElement.scrollLeft;
		scrolledY = document.documentElement.scrollTop;
	} else if (document.body) {
		scrolledX = document.body.scrollLeft;
		scrolledY = document.body.scrollTop;
	}
	var centerX, centerY;
	if (self.innerHeight) {
		centerX = self.innerWidth;
		centerY = self.innerHeight;
	} else if (document.documentElement && document.documentElement.clientHeight) {
		centerX = document.documentElement.clientWidth;
		centerY = document.documentElement.clientHeight;
	} else if (document.body) {
		centerX = document.body.clientWidth;
		centerY = document.body.clientHeight;
	}
	var leftOffset = scrolledX + (centerX - 582) / 2;
	var topOffset = scrolledY + (centerY - 215) / 2;
	efA_alert.style.left = leftOffset + 'px';
	efA_alert.style.top = topOffset + 'px';

}

function efAlert_hide() {
	var efA_bg = document.getElementById("efA_bg");
	if (efA_bg) efA_bg.style.display = "none";

	var efA_alert = document.getElementById("efA_alert");
	if (efA_alert) efA_alert.style.display = "none";

}

function openSeatingPlan(s, spi) {

	if (document.sessionForm && document.sessionForm.spi) {
		var f_spi = document.sessionForm.spi;
		if (f_spi.selectedIndex) {
			if (f_spi[f_spi.selectedIndex].value != "" && f_spi[f_spi.selectedIndex].value != 0) spi = f_spi[f_spi.selectedIndex].value;
		}
	}

	window.open("session_seats.asp?s=" + s + "&spi=" + spi,"v","toolbar=no,menubar=no,scrollbars=yes,resizable=false,width=1024,height=745");

}


//-->
