var d = (!d) ? document : d;
var hasCookie = false;

function cookieShow(cookieName) {
	var userID = "";
	var indexNameBegin;
	var indexNameEnd;
	
	var cookieValueStartIndex = -1;
	var SSOcookieValueStartIndex  = -1;
	
	var cookieLength = 0;
	
	var tlh = WEBSITE_TGAM+"/v5/includes/global/regInfo-iFrame.html?user_URL="+escape(d.referrer);

	// Get the user_URL from the querystring
	var queryString = window.location.search;

	var forwarded_URL   = "";

	var queryString = (queryString.length > 1)  ? queryString.substring(1, queryString.length) : null;
	queryKeyVals = new Array();
	if(queryString) {
		for(var i=0; i < queryString.split("&").length; i++) {
			queryKeyVals[i] = queryString.split("&")[i];
		}

		for(var j=0; j < queryKeyVals.length; j++) {
			var Key   = queryKeyVals[j].split("=")[0];
			var Value = queryKeyVals[j].split("=")[1];
			if(Key == "user_URL") {
			
				var loginPageIndex  = -1;
				var logoutPageIndex = -1;

				loginPageIndex  = Value.indexOf("loginRegistrationPage");
				logoutPageIndex = Value.indexOf("logoutPage");
				maxLoginPageIndex = Value.indexOf("services/site/concurrentLogin");

				forwarded_URL = (loginPageIndex == -1 && logoutPageIndex == -1 && maxLoginPageIndex == -1 ) ? Value : WEBSITE_TGAM;
			}
		}
	}
	
	hasCookie = d.cookie;
	
	if (hasCookie) {
		cookieLength = d.cookie.length;
		cookieValueStartIndex = d.cookie.indexOf(cookieName + "=");
		SSOcookieValueStartIndex = d.cookie.indexOf("SSO_COOKIE");
	
		if ((cookieValueStartIndex != -1) && (SSOcookieValueStartIndex != -1)) { // then user is logged in; retrieve the userID from the cookie
			indexNameBegin = d.cookie.indexOf(cookieName) + cookieName.length + 1;
			nameAll = d.cookie.substr(indexNameBegin);
			indexNameEnd = nameAll.search(";");
			userID = (indexNameEnd != -1) ? nameAll.substring(0, indexNameEnd) : nameAll;
			newUserID = userID.replace(/\+/g, " ");
			
			// output username			
			d.getElementById("welcome").getElementsByTagName("EM")[0].firstChild.nodeValue = " "+unescape(newUserID);
			
			// output logout link
			addEvent(d.getElementById("user"),"click",function(){
				if(parent.frames[0].location.href.indexOf("insiderhome")!=-1 || parent.frames[0].location.href.indexOf("Inside/home")!=-1){
					return confirm("Your preferences may not be saved if you logout from this page directly.\nWe recommend logging out from another page.\nDo you still wish to logout?")
				}
			});
			d.getElementById("user").href = WEBSITE_TGAM+"/servlet/Page/document/v4/reg/logoutPage?ord="+random_number;
			d.getElementById("user").firstChild.nodeValue = " (logout) ";
			//d.getElementById("welcome").innerHTML += ' | <a href="'+WEBSITE_TGAM+'/membercentre">Member Centre</a>';
		} else { // required cookie info does not exist
			hasCookie = false;
			//setTimeout("cookieShow('USERNAME')",50);
		} 
	}
}

addEvent(window,"load",function(){ cookieShow("USERNAME"); });
