/* home.js (c)2007-2010 by Zelestra, ZELESTRA.COM. All Rights Reserved.
 * @author David C. Tessman @version 2007-03-28
 * new "setPopLink" defs for examples added by [RT], 2010-02-12
 */

var HomePage = {

	adjustPage: function(data) {
		postAjaxRequest("/services/2001/Realm/getAgent", {success:HomePage.receiveUser,fail:HomePage.getAgentFail});
	},

	detectEnterKeyUsername: function(event) {
		if ((event.which && event.which == 13) ||
			(event.keyCode && event.keyCode == 13)) {
			$("password").focus();
   			$("password").select();
			return true;
		}
		return true;
	},

	detectEnterKeyPassword: function(event) {
		if ((event.which && event.which == 13) ||
			(event.keyCode && event.keyCode == 13)) {
			HomePage.login();
			return true;
		}
		return true;
	},

	getAgentFail: function(statusCode,message) {
		HomePage.showLoginBox();
	},

	onLoad: function() {
		if (document.parameters["logout"] == "true")
			postAjaxRequest("/services/2001/Realm/logout",{success:HomePage.adjustPage,fail:HomePage.adjustPage});
		else
			HomePage.adjustPage();
       	if ($("flashLogin") != null) {
            var so = new SWFObject("themes/default/login.swf", "sologin", "130", "41", "9", "#FFFFFF");
            so.addParam("wmode", "transparent");
            so.setAttribute("style", ";");
            so.write("flashLogin");
        }
		setPopUpLink($("helpLink"),600,700,"help");
		setPopUpLink($("helpButton"),600,700,"help");
    	setPopUpLink($("whySignUpLink"),600,700);
     	setWindowLink($("nsfLink"));
    	setWindowLink($("nsdlLink"));
   		setWindowLink($("flashPlayerLink"));
    	setPopUpLink($("flashVersionLink"),600,200);
    	setPopUpLink($("aboutLink"),600,700);
    	setPopUpLink($("policyLink"),600,700);
    	setPopUpLink($("termsLink"),600,700);
		// these clip samples may need some "size" adjustments as needed
		setPopUpLink($("eBookSampleLink"),560,620);
		setPopUpLink($("setSampleLink"),760,660);
		setPopUpLink($("act1SampleLink"),760,660);
		setPopUpLink($("act2SampleLink"),660,520);
		setPopUpLink($("imageSampleLink"),560,400);
		setPopUpLink($("videoSampleLink"),460,400);
    	setSimpleLink($("loginButton"),HomePage.login);
    	Event.observe($("userId"),"keydown",HomePage.detectEnterKeyUsername);
    	Event.observe($("password"),"keydown",HomePage.detectEnterKeyPassword);
    	setTextFocusById("userId");

		var so = new SWFObject("themes/default/ccMontage.swf", "sotester", "280", "180", "9", "#FFFFFF");
		so.addParam("wmode", "transparent");
		so.setAttribute("style", ";");
		so.write("flashTest");
		var elem = $("flashTestNoScript");
		if (elem)
			elem.parentNode.innerHTML = elem.innerHTML;
	},

	login: function() {
		$("loginButton").setStyle({"display":"none"});
		$("loader").setStyle({"display":"block"});
		postAjaxRequest("/services/2001/Realm/logout",{success:HomePage.login2});
	},

	login2: function() {
		var username = $("userId").value;
		var password = $("password").value;
		var variables = "username=" + username + "&password=" + password;
		postAjaxRequest("https://www.zelestra.net/services/2001/Realm/login",{method:"POST",data:variables,success:HomePage.login3,fail:HomePage.loginFail});
	},

	login3: function() {
		postAjaxRequest("/services/2001/Realm/getAgent", {success:HomePage.login4,fail:HomePage.loginFail2});
	},

	login4: function() {
		window.location.href = "/login.do";
	},

	loginFail: function(statusCode,message) {
		$("loader").setStyle({"display":"none"});
		$("loginButton").setStyle({"display":"block"});
		alert("Invalid login. Please make sure that your Caps Lock is off.");
		HomePage.showLoginBox();
	},

	loginFail2: function(statusCode,message) {
		$("loader").setStyle({"display":"none"});
		$("loginButton").setStyle({"display":"block"});
		window.location.href="/services/2001/Realm/getLogin.do";
	},

	receiveUser: function(data) {
		var agentDef = document.createXmlDocument(data);
		var category = agentDef.getElementsByTagName("Category")[0].attributes.getNamedItem("value").nodeValue;
		if (category == "guest") {
			postAjaxRequest("/services/2001/Realm/logout",{success:HomePage.showLoginBox});
			HomePage.showLoginBox(name,category);
		} else {
			var name = agentDef.getElementsByTagName("Name")[0].attributes.getNamedItem("value").nodeValue;
			HomePage.showKitLink(name,category);
		}
	},

	showLoginBox: function() {
		if ($("logoutLink"))
			$("logoutLink").setStyle({ "display":"none"});
		if ($("agentName"))
			$("agentName").innerHTML = "&nbsp;";
		//$("kitLink").setStyle({ "display":"none"});
		$("launchLink").setStyle({ "display":"none"});
		$("loginBox").setStyle({ "display":"block"});
		// $("nsdlLoginBox").setStyle({ "display":"block"});
		//setTextFocusById("userId");
	},

	showKitLink: function(name,category) {
		$("loginBox").setStyle({ "display":"none"});
		// $("nsdlLoginBox").setStyle({ "display":"none"});
		if (category == "students")
			$("launchLink").setStyle({ "display":"block"});
		//else
		//	$("kitLink").setStyle({ "display":"block"});
		if ((name != null) && $("agentName"))
			$("agentName").innerHTML = name.escapeHTML();
		if ($("logoutLink"))
			$("logoutLink").setStyle({ "display":"inline"});
	}

}

Event.observe(window, "load", function() {
    HomePage.onLoad();
});

