var menuStatus;
var signInStatus;
var IsLoggedIn;
var loginName;
var FullName;
var WelcomeMessage; 
 

function SubmitLogin(){
	var LoginRequest;
	var xmlHttpReq = false;
	var self = this;
	var loginName = $("userNameInput").value;
	var Password = $("pwdInput").value;
	// Mozilla/Safari
	if (window.XMLHttpRequest) {
		LoginRequest = new XMLHttpRequest();
	}
	// IE
	else if (window.ActiveXObject) {
		LoginRequest = new ActiveXObject("Microsoft.XMLHTTP");
	}

	
	var PostBackURL = PostBackURL + "?IdcService=GET_USER_INFO_XML&FormsAuthUserName=" + loginName + "&FormsAuthPassword=" + Password + "&Auth=Internet";


	LoginRequest.open("GET",PostBackURL,false);
	LoginRequest.onreadystatechange = function completeSignon(){
											if(LoginRequest.readyState==4)
											{
												ProcessLogin(LoginRequest);
											}
										}

	LoginRequest.send("");
}
 
function SignIn(){

var RedirectURL ="https://ams.aia.org/eweb/DynamicPage.aspx?WebCode=LoginRequired&expires=yes&type=2&"
//var RedirectURL ="http://ams.aia.org/eweb/dynamicpage.aspx?Site=AIA&WebCode=LoginRequired&";

RedirectURL += "URL_success=http://" + document.location.host + "/ssolanding/index.htm?usertoken%3D{token}";

top.location.href=RedirectURL;

}

function CallSignOn(){
	var RedirectURL = retUrl;
	
	if(RedirectURL==""){
		RedirectURL =  window.location.href;
	}else{
		if(RedirectURL.indexOf("http")>-1){
			RedirectURL = RedirectURL;
		}else{
			RedirectURL = "http://" + ServerName + RedirectURL;
		}	
	}

	if(RedirectURL.indexOf("?")>0){
		RedirectURL+="&Auth=Internet";
	}else{
		RedirectURL+="?Auth=Internet";
	}	
	
	var Parameters  = "IdcService=GET_TIMSS_VENDOR_TOKEN&TIMSSRedirectURL=" + escape(RedirectURL);
	new Ajax.Request(PostBackURL, {method: "POST", parameters: Parameters, asynchronous:false, onComplete:handleCallSignOn});
}

function handleCallSignOn(response){
	var xml = response.responseXML;

	if(xml){
		var token = xml.getElementsByTagName("Token")[0];
		if(token==null){
			return;
		}
		var idendifier = xml.getElementsByTagName("VendorIdentifier")[0];
		if(idendifier==null){
			return;
		}
		var LoginUrl = xml.getElementsByTagName("TIMSSLoginUrl")[0];
		if(LoginUrl==null){
			return;
		}
		var LoginUrlValue = LoginUrl.firstChild.nodeValue;
		var TokenValue = token.firstChild.nodeValue;
		var IdentifierValue = idendifier.firstChild.nodeValue;

		$("signInBtnOff").href = LoginUrlValue + "?vi=" + IdentifierValue + "&vt=" + TokenValue;	
	}
}

function CallMiddleSignOn(){
	var RedirectURL = retUrl;
	
	if(RedirectURL==""){
		RedirectURL =  window.location.href;
	}else{
		if(RedirectURL.indexOf("http")>-1){
			RedirectURL = RedirectURL;
		}else{
			RedirectURL = "http://" + ServerName + RedirectURL;
		}	
	}

	if(RedirectURL.indexOf("?")>0){
		RedirectURL+="&Auth=Internet";
	}else{
		RedirectURL+="?Auth=Internet";
	}	
	
	var Parameters  = "IdcService=GET_TIMSS_VENDOR_TOKEN&TIMSSRedirectURL=" + escape(RedirectURL);
	new Ajax.Request(PostBackURL, {method: "POST", parameters: Parameters, asynchronous:false, onComplete:handleCallMiddleSignOn});
}

function handleCallMiddleSignOn(response){
	var xml = response.responseXML;

	if(xml){
		var token = xml.getElementsByTagName("Token")[0];
		if(token==null){
			return;
		}
		var idendifier = xml.getElementsByTagName("VendorIdentifier")[0];
		if(idendifier==null){
			return;
		}
		var LoginUrl = xml.getElementsByTagName("TIMSSLoginUrl")[0];
		if(LoginUrl==null){
			return;
		}
		var LoginUrlValue = LoginUrl.firstChild.nodeValue;
		var TokenValue = token.firstChild.nodeValue;
		var IdentifierValue = idendifier.firstChild.nodeValue;

		$("signInMiddleOff").href = LoginUrlValue + "?vi=" + IdentifierValue + "&vt=" + TokenValue;	
	}
}

function CallBottomSignOn(){
	var RedirectURL = retUrl;
	
	if(RedirectURL==""){
		RedirectURL =  window.location.href;
	}else{
		if(RedirectURL.indexOf("http")>-1){
			RedirectURL = RedirectURL;
		}else{
			RedirectURL = "http://" + ServerName + RedirectURL;
		}	
	}

	if(RedirectURL.indexOf("?")>0){
		RedirectURL+="&Auth=Internet";
	}else{
		RedirectURL+="?Auth=Internet";
	}	
	
	var Parameters  = "IdcService=GET_TIMSS_VENDOR_TOKEN&TIMSSRedirectURL=" + escape(RedirectURL);
	new Ajax.Request(PostBackURL, {method: "POST", parameters: Parameters, asynchronous:false, onComplete:handleCallBottomSignOn});
}
 
function handleCallBottomSignOn(response){
	var xml = response.responseXML;

	if(xml){
		var token = xml.getElementsByTagName("Token")[0];
		if(token==null){
			return;
		}
		var idendifier = xml.getElementsByTagName("VendorIdentifier")[0];
		if(idendifier==null){
			return;
		}
		var LoginUrl = xml.getElementsByTagName("TIMSSLoginUrl")[0];
		if(LoginUrl==null){
			return;
		}
		var LoginUrlValue = LoginUrl.firstChild.nodeValue;
		var TokenValue = token.firstChild.nodeValue;
		var IdentifierValue = idendifier.firstChild.nodeValue;

		$("signInBottomOff").href = LoginUrlValue + "?vi=" + IdentifierValue + "&vt=" + TokenValue;	
	}
}

function CallFooterSignOn(){
	var RedirectURL = retUrl;
	
	if(RedirectURL==""){
		RedirectURL =  window.location.href;
	}else{
		if(RedirectURL.indexOf("http")>-1){
			RedirectURL = RedirectURL;
		}else{
			RedirectURL = "http://" + ServerName + RedirectURL;
		}	
	}

	if(RedirectURL.indexOf("?")>0){
		RedirectURL+="&Auth=Internet";
	}else{
		RedirectURL+="?Auth=Internet";
	}	
	
	var Parameters  = "IdcService=GET_TIMSS_VENDOR_TOKEN&TIMSSRedirectURL=" + escape(RedirectURL);
	new Ajax.Request(PostBackURL, {method: "POST", parameters: Parameters, asynchronous:false, onComplete:handleCallFooterSignOn});
}

function handleCallFooterSignOn(response){
	var xml = response.responseXML;

	if(xml){
		var token = xml.getElementsByTagName("Token")[0];
		if(token==null){
			return;
		}
		var idendifier = xml.getElementsByTagName("VendorIdentifier")[0];
		if(idendifier==null){
			return;
		}
		var LoginUrl = xml.getElementsByTagName("TIMSSLoginUrl")[0];
		if(LoginUrl==null){
			return;
		}
		var LoginUrlValue = LoginUrl.firstChild.nodeValue;
		var TokenValue = token.firstChild.nodeValue;
		var IdentifierValue = idendifier.firstChild.nodeValue;

		$("signInFooterOff").href = LoginUrlValue + "?vi=" + IdentifierValue + "&vt=" + TokenValue;	
	}
}

function CallCMPSignOn(){
	var RedirectURL = retUrl;
	
	if(RedirectURL==""){
		RedirectURL =  window.location.href;
	}else{
		if(RedirectURL.indexOf("http")>-1){
			RedirectURL = RedirectURL;
		}else{
			RedirectURL = "http://" + ServerName + RedirectURL;
		}	
	}

	if(RedirectURL.indexOf("?")>0){
		RedirectURL+="&Auth=Internet";
	}else{
		RedirectURL+="?Auth=Internet";
	}	
	
	var Parameters  = "IdcService=GET_TIMSS_VENDOR_TOKEN&TIMSSRedirectURL=" + escape(RedirectURL);
	new Ajax.Request(PostBackURL, {method: "POST", parameters: Parameters, asynchronous:false, onComplete:handleCallCMPSignOn});
}

function handleCallCMPSignOn(response){
	var xml = response.responseXML;

	if(xml){
		var token = xml.getElementsByTagName("Token")[0];
		if(token==null){
			return;
		}
		var idendifier = xml.getElementsByTagName("VendorIdentifier")[0];
		if(idendifier==null){
			return;
		}
		var LoginUrl = xml.getElementsByTagName("TIMSSLoginUrl")[0];
		if(LoginUrl==null){
			return;
		}
		var LoginUrlValue = LoginUrl.firstChild.nodeValue;
		var TokenValue = token.firstChild.nodeValue;
		var IdentifierValue = idendifier.firstChild.nodeValue;

		$("signInCMPOff").href = LoginUrlValue + "?vi=" + IdentifierValue + "&vt=" + TokenValue;	
	}
}

function ProcessLogin(originalResponse){
	IsLoggedIn = originalResponse.responseXML.getElementsByTagName("IsLoggedIn")[0].firstChild.nodeValue;
	loginName = originalResponse.responseXML.getElementsByTagName("dName")[0].firstChild.nodeValue;
	FullName = originalResponse.responseXML.getElementsByTagName("dFullName")[0].firstChild.nodeValue;

	if(FullName == null || FullName == ""){
		WelcomeMessage = "Welcome " + loginName;
	}else{
		WelcomeMessage = "Welcome " + FullName;
	}

	signInClose();
	signInFade();
}


/*function signOutClick() {
	var allCookiesArr = document.cookie.split( ';' );
	var tmpCookieArr = '';
	var timssCookie = '';
	var timssPassArr = '';
	var timssPass = '';
	for ( i = 0; i < allCookiesArr.length; i++ )
	{
		tmpCookieArr = allCookiesArr[i].split( '=' );
		if (tmpCookieArr != null && tmpCookieArr.length > 1) {
			if (tmpCookieArr[0] == " TIMSSSSO") {
				timssCookie = tmpCookieArr[1];
				timssPassArr = timssCookie.split(':');
				if (timssPassArr != null && timssPassArr.length > 1) {
					timssPass = timssPassArr[1];
				}
				break;
			}
		}
	}

	var cookie_date = new Date ( );  // current date & time
	cookie_date.setTime ( cookie_date.getTime() - 1 );
	document.cookie = "TIMSSSSO=; expires=" + cookie_date.toGMTString() + "; path=/;";
	document.cookie = "IntradocLoginState=; expires=" + cookie_date.toGMTString() + "; path=/;";

	var Parameters  = "IdcService=SSO_CUSTOMER_LOGOUT&TIMSSCookiePass=" + timssPass;
	new Ajax.Request(PostBackURL, {method: "POST", parameters: Parameters, asynchronous:false, onComplete:handleCallSignOut});
}*/

function signOutClick_back() {
var allCookiesArr = document.cookie.split( ';' );
var tmpCookieArr = '';
var timssCookie = '';
var timssPassArr = '';
var timssPass = '';
// Search for value of TIMSSSSO, assign to timssPass
for ( i = 0; i < allCookiesArr.length; i++ ) {
tmpCookieArr = allCookiesArr[i].split( '=' );
if (tmpCookieArr != null && tmpCookieArr.length > 1) {
if (tmpCookieArr[0]==" TIMSSSSO") {
var timssPass = tmpCookieArr[1];
/*
timssCookie = tmpCookieArr[1];
timssPassArr = timssCookie.split(':');
if (timssPassArr != null && timssPassArr.length > 1) {
timssPass = timssPassArr[1];
}
*/
break;
}
}
}
// Expire TIMSSSSO
var cookie_date = new Date ( ); // current date & time
cookie_date.setTime ( cookie_date.getTime() - 1 );
document.cookie = "TIMSSSSO=; expires=" + cookie_date.toGMTString() + "; path=/;";
// Set IntradocLoginState to 0
document.cookie = "IntradocLoginState=0; expires=" + cookie_date.toGMTString() + "; path=/";
// Reset and Expire JSESSIONID
document.cookie = " JSESSIONID=; expires=" + cookie_date.toGMTString() + "; path=/;";
// document.execCommand("ClearAuthenticationCache");
// Remove sign-out text
/*
var code = '<a onclick="Javascript:signInClick();"href="Javascript:;" id="signInBtnOff">';
code = code + '<img border="0" alt="SIGN IN!"src="/aiaucmp/fragments/TopHeader/images/nav/signin.gif"/></a>' ;
document.getElementById('sign-in').innerHTML = code;
*/
// Send user to log out script on sss.aia.org
//var logoutURL = 'http://info.aia.org/sso/logout.cfm?id='+escape(timssPass);
var logoutURL = 'https://sso.aia.org/login/Login.aspx?act=signout&durl=http://www.aia.org';
window.location.href = logoutURL;
}




/**
*   function will remove ucm's cookie
*/
function removeSiteStudioCookie(name){
var days = -1;
var value = "";

	if (days) {
			var date = new Date();
			date.setTime(date.getTime()+(days*24*60*60*1000));
			var expires = "; expires="+date.toGMTString();
		}
		else var expires = "";
		document.cookie = name+"="+value+expires+"; path=/";


}//removeSiteStudioCookie

/*
*   function responsible to sign user out of Site Studio and AMS
*/
function signOutClick(){
	removeSiteStudioCookie("dUser");
	removeSiteStudioCookie("IntradocLoginState");
	window.location.href = "https://ams.aia.org/eweb/logout.aspx?site=AIA&RedirectURL=http://" + document.location.host;
}//signOutClick






function handleCallSignOut(response) {

		//$("signOutBtnOff").href = "/eKnowledge/index.htm";
		//$("signOutBtnOff").href = "/akr/index.htm";
				// var redirectTo = "http://aiaekwebdev/"; 
				var redirectTo = "http://www.aia.org/"; 
				window.location.href = redirectTo;
		
}


function signInClick(){
	if(menuIsDown()){
		menuClose();
	}
	CallSignOn();
}


function menuClick(){
	if(signInIsDown()){
		signInClose();
	}
	if(menuIsDown()){
		menuClose();
	}else{
		menuOpen();
	}
}
 

function signInFade(){
	new Effect.Fade($("signInBtn"), {duration: 0.3, queue: {position:"end", scope: "aiamenu"}, afterFinish:showMsg});
}

function signInClose(){
	new Effect.MoveBy($("signIn"), -32, 0, {duration: 0.3, queue: {position:"end", scope: "aiamenu"}});
	setSignIn("up");
}

function signInOpen(){
	new Effect.MoveBy($("signIn"), 32, 0, {duration: 0.3, queue: {position:"end", scope: "aiamenu"}});
	setSignIn("down");
}

function menuOpen(){
	if($("signIn")!=null){
		new Effect.MoveBy($("signIn"), 0, -190, {duration: 0.3, queue: {position:"end", scope: "aiamenu"}});
	}
	msgFade();
	new Effect.MoveBy($("menu"), 32, 0, {duration: 0.3,  queue: {position:"end", scope: "aiamenu"}});
	setMenu("down");
}

function menuClose(){
	new Effect.MoveBy($("menu"), -32, 0, {duration: 0.3,  queue: {position:"end", scope: "aiamenu"}});
	if($("signIn")!=null){
		new Effect.MoveBy($("signIn"), 0, 190, {duration: 0.3, queue: {position:"end", scope: "aiamenu"}});		
	}
	msgAppear();
	setMenu("up");
}

function msgFade(){
	if($("welcomeMsg")!=null){
		new Effect.Fade($("welcomeMsg"), {duration: 0.3});		
	}
}

function msgAppear(){
	if($("welcomeMsg")!=null){
		new Effect.Appear($("welcomeMsg"), {duration: 0.3});		
	}

}
function showMsg(){
	var welcomeDiv = Builder.node("div",{id:"welcomeMsg",className:"subTopElement"});
	welcomeDiv.innerHTML = WelcomeMessage;
	$("signInClipper").appendChild(welcomeDiv);
	new Effect.Appear(welcomeDiv,{queue: {position:"end", scope: "aiamenu"}});
}


function signInIsDown(){
	if(signInStatus =="down"){
		return true;
	}else{
		return false;
	}
}


function menuIsDown(){
	if( menuStatus =="down"){
		return true;
	}else{
		return false;
	}
}

function setSignIn(status){
	signInStatus = status;
}

function setMenu(status){
	menuStatus = status;
}

