var LoggedIn = false;
var IELegacy = false;
var is_ie = false;
var AllowDebug = false;
var oBodyElement;
var RequestPending = false;
var CacheLoginFields = null;
var CacheUsername = null;
var CacheResponse = null;
var bINHOLLAND = true;
var bConfirm = false;
var bEmailWarning = false;
var DirtyInterface = false;
var WindowSize = {width:0,height:0};
var YeahYeahSeenIt = false;

function LoadPage() {
	LoggedIn = false;
	oBodyElement = gtn("body")[0];
	var aBackground = [[2560,1600],[2000,1250],[1800,1125],[1600,1000],[1400,875],[1280,800]];
	var nBackground = 5;
	while(screen.width >= aBackground[nBackground][0] && screen.height >= aBackground[nBackground][1] && nBackground >= 0) {
 nBackground--;
	}
	oBodyElement.style.backgroundImage = "url(/img/background/leopard" +  (nBackground+1) + ".jpg)";
	oBodyElement.style.backgroundAttachment = "fixed";
	oBodyElement.style.backgroundRepeat = "no-repeat";
	oBodyElement.style.backgroundPosition = "50% 0px";
	oBodyElement.style.backgroundColor = "#55A954";
	if (CheckAjax()) {
 oBodyElement.innerHTML = "<div id=\"OneMoment\">Een ogenblik a.u.b.<br />Hatsjikidee! wordt geladen...</div>";
 LoadLibrary("hatsjikideeajaxresponse");
 SetTitle("Let's get a good night's rest.");
	} else {
 oBodyElement.innerHTML = "<div id=\"NoAjax\"><h1><img src=\"/img/template/HatsjikideeNormal.gif\" width=\"450\" height=\"222\" alt=\"Hatsjikidee!\" title=\"Hatsjikidee!\" /></h1>" +
 "<h2>Oops!</h2><p>Hatsjikidee! maakt gebruik van een techniek die AJAX heet. AJAX staat voor <a href=\"http://en.wikipedia.org/wiki/Ajax_(programming)\" " +
 "onclick=\"window.open(this.href,'_blank');return false;\" title=\"Meer informatie over AJAX op Wikipedia.org\">Asynchronous JavaScript and XML</a>.</p>" +
 "<p>Het blijkt dat uw huidige browser deze techniek niet ondersteund. U kunt dan ook geen gebruik maken van Hatsjikidee!</p><p>Wij adviseren dat u de laatste "+ 
 "versie <a href=\"http://www.microsoft.com/windows/products/winfamily/ie/default.mspx\" onclick=\"window.open(this.href,'_blank');return false;\" title=\"Download "+
 "Internet Explorer\">Internet Exporer</a>, <a href=\"http://www.getfirefox.com/\" onclick=\"window.open(this.href,'_blank');return false;\" title=\"Download Mozilla " +
 "Firefox\">Mozilla Firefox</a>, <a href=\"http://www.opera.com/download/\" onclick=\"window.open(this.href,'_blank');return false;\" title=\"Download Opera\">Opera" +
 "</a> of <a href=\"http://www.apple.com/safari/download/\" onclick=\"window.open(this.href,'_blank');return false;\" title=\"Download Safari\">Safari</a> download en " +
 "installeert op uw systeem. Met deze browsers kunt u wel gebruik maken van Hatsjikidee!</p></div>";
	}
	Resized();
}

function Resized() {
	if (window.innerHeight) {
 /* all except Explorer */
 w = window.innerWidth;
 h = window.innerHeight;
	} else if (document.documentElement && document.documentElement.clientHeight) {
 /* Explorer 6 Strict Mode */
 w = document.documentElement.clientWidth;
 h = document.documentElement.clientHeight;
	} else if (document.body) {
 /* other Explorers */
 w = document.body.clientWidth;
 h = document.body.clientHeight;
	}
	WindowSize = {width:w,height:h}
}

function UnloadPage() {
	try {
 SetTitle("");
	} catch(e) { }
}

function CloseAnnouncement(hash) {
	gid('ServiceAnnouncement').style.display = 'none';
	gid("CloseAnnoucementLink").innerHTML = "Sluiten";
	setCookie("h2ra", hash, 30);
}
function setCookie(name, value, expires) {
	document.cookie= name + "=" + value + "; expires=" + getexpirydate(expires) + ";";
}
function getexpirydate(nodays){	var UTCstring;	Today = new Date();	nomilli=Date.parse(Today);	Today.setTime(nomilli+nodays*24*60*60*1000); UTCstring = Today.toUTCString(); return UTCstring; }

function SetCenter(o) {
	o.style.top = o.style.left = "50%";
	o.style.marginRight = o.style.marginBottom = "";
	o.style.marginLeft =  "-" + ((GetDimentions(o).width/2)) + "px";
	o.style.marginTop = "-" + ((GetDimentions(o).height/2)) + "px"; 
}

function hatsjikideeajaxresponselibrary_onload() {
	if (LoggedIn) {
 RequestFramework();
	} else {
 RequestLoginScreen();
	}
}

function gid(id) {
	return document.getElementById(id);
}

function gtn(tag) {
	return document.getElementsByTagName(tag);
}

function gna(name) {
	return document.getElementsByName(name);
}

function gfo(id) {
	if (typeof document[id] != "undefined") {
 return document[id];
	} else if (typeof window[id] != "undefined") {
 return window[id];
	} else if (typeof gid(id) != "undefined") {
 return gid(id);
	} else if (typeof document.getElementsByName(id)[0] != "undefined") {
 return document.getElementsByName(id)[0];
	}
	alert("Flash object " + id + " could not be reached.");
	return false;
}

function TextboxFocus(oTextbox) {
	/*oTextbox.className+=" textfocus";*/
}

function TextboxBlur(oTextbox) {
	/*oTextbox.className = oTextbox.className.replace(" textfocus", "");*/
}

function SetTitle(text) {
	document.title = "Hatsjikidee! Goodnight" + (text.length > 0 ? " - " + text : "");
}

function RandomAppendage() {
	var now = new Date();
	return (Math.random() * 3000) + now.getTime();
}

function LoadLibrary(Name) {
	var o = document.createElement("script");
	o.src = "/lib/js/" + Name;
	o.type="text/javascript";
	o.id = "JSLibrary" + Name;
	gtn("head")[0].appendChild(o);
}

function LoadStyleSheet(Name,Media) {
	Media = typeof Media == "undefined" ? "screen" : Media;
	var o = document.createElement("link");
	o.href = "/lib/css/" + Name;
	o.type="text/css";
	o.media=Media;
	o.rel="stylesheet";
	gtn("head")[0].appendChild(o);
}

function FatalError(Index, Response) {
	/*oBodyElement.innerHTML = "<div id=\"NoAjax\"><h1><img src=\"/img/template/HatsjikideeNormal.gif\" width=\"450\" height=\"222\" alt=\"Hatsjikidee!\" title=\"Hatsjikidee!\" /></h1>" +
	"<h2>Fout opgetreden</h2><p>Door een kritieke fout is het laden van Hatsjikidee! afgebroken.<br />Probeer op een later tijdstip Hatsjikidee! opnieuw te bezoeken.</p></div>";*/
	/* "/usg/splash" */
	var title, text;
	if (Response.IsValid()) {
 if (Response.IsError()) {
 	if (Response.GetErrorCode() == "2002") {
  if (AllowDebug) {
  	alert(Response.GetText());
  }
  document.location = "/";
  return;
 	}
 	title = "Fout " + Response.GetErrorCode();
 	text = Response.GetErrorMessage() + " [" + Index + "]";
 } else {
 	title = "Fout: Niet afgehandelde responsetype";
 	text = "Responsetype \"" + Response.GetResponseType() + "\" wordt niet afgehanded maar is wel teruggegeven. [" + Index + "]";
 }
	} else {
 	title = "Fout: Ongeldige XML Syntax";
 	text = "De XML response is van een onbekend formaat. Mogelijke server-side error. [" + Index + "]";
	}
	if (typeof frameworklibraryloaded != "undefined" && typeof MessageDialog != "undefined") {
 var debugtxt = AllowDebug ? "<div><textarea style=\"width:100%;height:300px;\">" + Response.GetText().replaceAll("<", "&lt;").replaceAll(">", "&gt;") + "</textarea></div>" : "";
 text+= (Response.GetText().length == 0 ? "<br /><br />Het gegeven antwoord van de server is leeg. Mogelijk is er geen verbinding met de Hatsjikidee! server. Controleer de Internetverbinding en probeer het opnieuw." : "");
 MessageDialog(title, text + debugtxt);
	} else {
 var debugtxt = AllowDebug ? "\r\n\r\n" + Response.GetText().replaceAll("<", "&lt;").replaceAll(">", "&gt;") : "";
 text+= (Response.GetText().length == 0 ? "\n\nHet gegeven antwoord van de server is leeg. Mogelijk is er geen verbinding met de Hatsjikidee! server. Controleer de Internetverbinding en probeer het opnieuw." : "");
 alert(title + "\r\n------------------------\r\n"  + text + debugtxt);
	}
}

function CheckAjax() {
	if (window.XMLHttpRequest) { /*Mozilla, Safari,...*/
 http_request = new XMLHttpRequest();
	} else if (window.ActiveXObject) { /*IE*/
 try {
 	http_request = new ActiveXObject("Msxml2.XMLHTTP");
 } catch (e) {
 	try {
  http_request = new ActiveXObject("Microsoft.XMLHTTP");
 	} catch (e) { }
 }
	}
	if (document.implementation && document.implementation.createDocument) {
 xmlDoc = document.implementation.createDocument("", "", null);
	} else if (window.ActiveXObject) {
 xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
	}
	return (http_request && xmlDoc ? true : false);
}

function AJAXCommand(cmd, args, oncomplete, truea) {
	if (!RequestPending || (typeof truea != "undefined" && truea) ) {
 var SuppressDirtyError = (arguments.length == 4);
 DirtyInterface = false;
 var req;
 var url = "/ajaxcmd/" + cmd + "/" + RandomAppendage();
 var stateChanged = function() {
 	if (req.readyState == 4) {
  RequestPending = false;
  if (typeof HideThrobber != "undefined") {
  	HideThrobber();
  }
  var Response = new HatsjikideeAJAXRepsonse(req);
  if (Response.IsValid()) {
  	if (typeof oncomplete != "undefined") {
   oncomplete(Response);
  	} else {
   FatalError(1,"");
  	}
  } else {
  	var rt = req.responseText.toLowerCase();
  	if (rt.indexOf("<html>") > -1 && rt.indexOf("password") > -1) {
   ProxyPending();
  	} else {
   if (!truea) {
   	FatalError(2,Response);
   }
  	}
  }
 	}
 };
 if (window.XMLHttpRequest) {
 	req = new XMLHttpRequest();
 	if (http_request.overrideMimeType) {
  http_request.overrideMimeType('text/xml');
 	}
 } else if (window.ActiveXObject) {
 	req = new ActiveXObject("Microsoft.XMLHTTP");
 }
	
 req.onreadystatechange = stateChanged;
 req.open("POST", url, true);
 req.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
 req.setRequestHeader("Content-length", args.length);
 req.setRequestHeader("Connection", "close");
 if (typeof truea == "undefined" || truea == null || !truea) {
 	RequestPending = true;
 	if (typeof ShowThrobber != "undefined") {
  	ShowThrobber();
 	}
 }
 req.send(args);
	}
}

String.prototype.replaceAll = function(strTarget,strSubString) {
	var strText = this;
	var intIndexOfMatch = strText.indexOf( strTarget );
	var runs = 100;
	while (runs > 0 && intIndexOfMatch != -1) {
 strText = strText.replace( strTarget, strSubString );
 intIndexOfMatch = strText.indexOf( strTarget );
 runs--;
	}
	return( strText );
};

String.prototype.trim = function () {
	var strText = this.toString();
	strText = strText.replace(/^\s+/,'');
	strText = strText.replace(/\s+$/,'');
	return strText;
};

function RequestLoginScreen() {
	LoggedIn = false;
	LoadLibrary("blackboard");
	AJAXCommand("loginscreen", "", function(Response) {  
 if (Response.GetResponseType() == "RawMarkup" && Response.GetResponseName() == "LoginScreen") {
 	oBodyElement.innerHTML = Response.GetData().GetChildNode("RawMarkup").GetValue();
 	LoginFieldsStyle();
 	try {
  if (gid("txtUsername") != null && gid("txtUsername").value.length > 0) {
  	if (gid("txtPassword") != null) {
   setTimeout(function() { gid("txtPassword").focus() }, 500);
  	}
  } else {
  	if (gid("txtUsername") != null) {
   gid("txtUsername").focus();
  	}
  }
 	} catch(e) { }
 } else {
 	FatalError(7,Response);
 }
	});
}

function SetupLoginScreen() {
	alert("Login");
}

function getInnerText(node) {
	if (typeof node.text != 'undefined') {
 return node.text;
	} else if (typeof node.textContent != 'undefined') {
 return node.textContent;
	} else if (typeof node.innerText != 'undefined') {
 return node.innerText;
	} else {
 switch (node.nodeType) {
 	case 3:
 	case 4:
  return node.nodeValue;
  break;
 	case 1:
 	case 11:
  var innerText = '';
  for (var i = 0; i < node.childNodes.length; i++) {
  	innerText += getInnerText(node.childNodes[i]);
  }
  return innerText;
  break;
 default:
 	return '';
 }
	}
}

function UpdateConfirm() {
	var c = gid("ConfirmWithEnter");
	var l = gid("LoginMetINHOLLAND");
	
	LoginFieldsStyle();
	
	if (gid("txtUsername").value.indexOf("@") > -1) {
 if (!bEmailWarning) {
 	c.innerHTML = "<div style=\"font-size: 10pt; text-align: center;\">Alleen gebruikersnaam,<br />geen e-mailadres</div>";
 	bEmailWarning = true;
 }
 bConfirm = false;
 return;
	} else {
 if (bEmailWarning) {
 	c.innerHTML = "&nbsp;";
 	bEmailWarning = false;
 }
	}
	
	if (gid("txtUsername").value.length > 4 && gid("txtPassword").value.length > 3) {
 if (!bConfirm) {
 	c.innerHTML = "Bevestig met ENTER";
 	bConfirm = true;
 }
	} else {
 if (bConfirm) {
 	c.innerHTML = "&nbsp;";
 	bConfirm = false;
 }
	}
	if (gid("txtUsername").value.indexOf("legacy:") == 0 ) {
 if (bINHOLLAND) {
 	l.innerHTML = "Je maakt gebruik van een legacy account.";
 	bINHOLLAND = false;
 }
	} else {
 if (!bINHOLLAND) {
 	l.innerHTML = "Jouw Hatsjikidee! account is <strong>niet</strong> gekoppeld aan jouw INHolland account.";
 	bINHOLLAND = true;
 }
	}
}

function LoginFieldsStyle() {
	gid("txtUsername").className = "text" + (gid("txtUsername").value.length == 0 ? " EmptyUsernameField" : "");
	gid("txtPassword").className = "text" + (gid("txtPassword").value.length == 0 ? " EmptyPasswordField" : "");
}

function DoLogin() {
	if (gid("txtUsername").value.length > 0) {
 if (gid("txtPassword").value.length > 0) {
 	if (bConfirm) {
  var Username = gid("txtUsername").value;
  var Password, BlackBoard_EncodedPW, BlackBoard_EncodedPWUnicode;
  if (Username.length > 10 && Username.substr(0, 7) == "legacy:") {
  } else {
  	BlackBoard_EncodedPW = base64encode( gid("txtPassword").value );
  	BlackBoard_EncodedPWUnicode = b64_unicode( gid("txtPassword").value );
  }
  Password = gid("txtPassword").value;
  gid("txtPassword").value = "";
  
  CacheLoginFields = gid("LoginFields").innerHTML;
  CacheUsername = Username;
  
  gid("LoginFields").innerHTML = "<div class=\"ThrobberText\"><img src=\"/img/template/throbber.gif\" alt=\"\" title=\"\" class=\"Throbber\" /> Bezig met verifi&euml;ren...</div>";
  VerifyAccount(Username, Password, BlackBoard_EncodedPW, BlackBoard_EncodedPW);
 	}
 } else {
 	gid("txtPassword").focus();
 }
	} else {
 gid("txtUsername").focus();
	}
}

function VerifyAccount(username, password, blackboard_encodedpw, blackboard_encodedpwunicode) {
	var Args = "username=" + escape(username) + "&password=" + escape(password) + "&encoded_pw=" + escape(blackboard_encodedpw) + "&encoded_pw_unicode=" + escape(blackboard_encodedpwunicode) + "&g=1";
	AJAXCommand("validateaccount", Args, function(Response) {
 if (Response.GetResponseType() == "LoginInformation") {
 	if (Response.GetData().GetChildNode("LoginSuccess").GetValue() == "true") {
  gid("LoginFields").innerHTML = "<div class=\"ThrobberText\"><img src=\"/img/template/throbber.gif\" alt=\"\" title=\"\" class=\"Throbber\" /> Laden werkomgeving...</div>";
  RequestFramework();
 	} else {
  var message = "";
  if (Response.GetData().GetChildNode("LoginSuccess").GetValue() == "false") {
  	message = "Ongeldige gebruikersnaam of wachtwoord.";
  	if (!YeahYeahSeenIt) {
   setTimeout("gid('LoginMetINHOLLAND').style.visibility = 'hidden';", 100);
   setTimeout("gid('LoginMetINHOLLAND').style.visibility = 'visible';", 300);
   setTimeout("gid('LoginMetINHOLLAND').style.visibility = 'hidden';", 600);
   setTimeout("gid('LoginMetINHOLLAND').style.visibility = 'visible';", 800);
   YeahYeahSeenIt = true;
  	}
  } else if (Response.GetData().GetChildNode("Connection").GetValue() == "false") {
  	message = "Kan geen verbinding maken met INHolland.";
  } else {
  	message = "Onbekende fout.";
  }
  gid("LoginFields").innerHTML = "<span class=\"ErrorText\">" + message + "</span><br /><em onclick=\"RevertLogin();\">Opnieuw proberen</em>";
 	}
 } else {
 	FatalError(8,Response);
 }
	});
}

function RevertLogin() {
	gid("LoginFields").innerHTML = CacheLoginFields;
	gid("txtUsername").value = CacheUsername;
	gid("txtPassword").value = "";
	gid("ConfirmWithEnter").innerHTML = "&nbsp;";
	gid("txtPassword").focus();
	LoginFieldsStyle();
}

function Information(str) {
	var title = "";
	var text = "";
	switch(str) {
 case "Hatsjikidee":
 	title = "Over Hatsjikidee!";
 	text = "<p>Hatsjikidee! is de wel bekende uitspraak van Lowieke de Vos uit de kinderserie De Fabeltjeskrant die wij allemaal nog van vroeger kennen. Naast dat is Hatsjikidee! een webapplicatie voor het beheren van projecten.</p>" +
 	"<p>Het systeem is een combinatie van diverse methoden en technieken van projectbeheer, op maat aangepast voor projecten van Hogeschool INHolland. Hatsjikidee! is ontwikkeld door en voor studenten van INHolland.</p>" +
 	"<p><a href=\"http://www.justlikeed.net/web/hatsjikidee\">Een kijkje in het systeem</a> is uiteraart mogelijk, ook meer informatie over het gebruik van Hatsjikidee! is hier aanwezig.</p>" +
 	"<p><br /><span style=\"font-weight:bold;\">Productinformatie:</span><br />Hatsjikidee! &quot;Goodnight&quot;<br />Version 2.0.5.3<br />Build 20080521-2</p>";
 	break;
 case "Login":
 	title = "Inloggen";
 	text = "Jouw Hatsjikidee! account is <strong>niet</strong> gekoppeld aan je INHolland account." +
 	"<p>Alhoewel Hatsjikidee! als referentie INHolland studentennummers gebruikt, om het communiceren met mede projectleden eenvoudiger te maken, zijn jouw INHolland gebruikersnaam en wachtwoord niet hetzelfde en niet gekoppeld als die van Hatsjikidee!</p>" +
 	"<h1>Privacy verklaring</h1>" + 
 	"<iframe src=\"privacy.html\" frameborder=\"0\" style=\"width: 100%;height: 300px;border: 1px solid #000000; margin: 4px 0px 0px 0px;\"></iframe>";
 	break;
 case "Password":
 	title = "Wachtwoord vergeten";
 	text = "";
 	break;
 case "25April":
 	title = "Updates van 25 april";
 	text = "Helaas maakt Hatsjikidee! vanaf 25 april geen gebruik meer van de Blackboard Academic Suite API om in te loggen." +
  	"<p>Dit wil zeggen dat je vanaf nu alleen kan inloggen met een Hatsjikidee! account. Jouw Hatsjikidee! account is niet meer gekoppeld aan je INHolland account. De gegevens hoeven dus niet overeen te komen.</p>" +
  	"<p>Bestaande gebruikers kunnen nog gewoon inloggen. Een nieuw wachtwoord is naar jullie verzonden via e-mail. Maak je nog geen gebruik van Hatsjikidee? Het registreren is helaas tijdelijk niet mogelijk. Je zult eventjes moeten wachten.</p>" +
  	"<p>Wij gekozen om deze functionaliteit te verwijderen na aanleiding van de indicatie van Hogeschool INHolland dat Hatsjikidee! een phishing website zou zijn. Dit is uiteraart niet zo. Wij hebben al aan meerdere mensen een verklaring afgelegd hoe ons inlogsysteem functioneert en zelfs de broncode van ons inlogsysteem vrijgegeven voor inspectie.</p><p>Desalniettemin is het vanaf 25 april niet meer mogelijk. De accounts van Hatsjikidee! zijn nu losse accounts in het systeem van Hatsjikidee!</p><p>Wij betreuren dat het zo is gelopen</p>" ;
 	break;
	}
	var o = gid("LoginScreenContent");
	CacheLoginFields = o.innerHTML;
	o.innerHTML = "<div class=\"Information\"><img src=\"/img/template/HatsjikideeTiny.png\" width=\"190\" height=\"94\" alt=\"Hatsjikidee!\" title=\"Hatsjikidee!\" class=\"Logo\" /><h1>" + title + "</h1>" + text + "</div><br style=\"clear:both;\" /><div style=\"text-align:center\"><em onclick=\"CloseInformation();\">Terug naar inlogscherm</em></div>";
}

function CloseInformation() {
	var o = gid("LoginScreenContent");
	o.innerHTML = CacheLoginFields;
	CacheLoginFields = null;
}

function RequestFramework() {
	AJAXCommand("framework", "", function(Response) {
 if (Response.GetResponseType() == "Framework" && Response.GetResponseName() == "Framework") {
 	CacheResponse = Response;
 	LoadStyleSheet("framework","screen");
 	LoadStyleSheet("framework_print", "print");
 	LoadLibrary("framework");
 } else if (Response.GetResponseType() == "RawMarkup" && Response.GetResponseName() == "FirstTimeSignup") {
 	CacheResponse = Response;
 	LoadLibrary("firsttimesignup");
 } else if (Response.IsError() && Response.GetErrorCode() == "2001") {
 	LoggedIn = false;
 	RequestLoginScreen();
 } else {
 	FatalError(9,Response);
 }
	});
}

function firsttimesignuplibrary_onload() {
	oBodyElement.innerHTML = CacheResponse.GetData().GetChildNode("RawMarkup").GetValue();
	gid("Username").focus();
	CacheResponse = null;
}

function frameworklibrary_onload() {
	Framework(CacheResponse);
	CacheResponse = null;
}

function ProxyPending() {
	var content = "<div style=\"width:100%;\">Hatsjikidee! heeft gedetecteerd dat een externe proxyserver authenticatie vereist of vereiste tijdens het verwerken van een verzoek. Zonder dit te doen kan Hatsjikidee! niet verder werken.<br />Vul de gebruikersnaam en wachtwoord die je gebruikt om in te loggen voor Internet toegang in op de login pagina van de proxyserver.<iframe src=\"/help/proxypending/\" frameborder=\"0\" style=\"border: none;width:100%;height:350px;\" width=\"100%\" height=\"350\"></iframe><br />Sluit dit venster zodra je klaar bent met inloggen en voer de handeling opnieuw uit. <div class=\"Buttons\" style=\"text-align:center;\"><input type=\"button\" value=\"Sluiten\" onclick=\"ClosePersistantDialogScreen();\" /></div>";
	if (typeof frameworklibraryloaded != "undefined" && typeof MessageDialog != "undefined") {
 DialogScreen("Proxyserver vereist authenticatie", content, "750px", false, true, false, false);
	} else {
 window.open('/help/proxypending/','ProxyPending', 'top=200,left=200,width=500,height=350');
	}
}

function ReloadStylesheets() {
	var arr = document.getElementsByTagName("link");
	for(var i = 0; i < arr.length; i++) {
 if (arr[i].getAttribute("rel") == "stylesheet" ) {
 	arr[i].setAttribute("href", arr[i].getAttribute("href"));
 }
	}
}

function EmptyMethod() {
}

function RegisterForAccount() {
	AJAXCommand("registerforaccount", "", function(Response) {
  if (Response.GetResponseType() == "RawMarkup" && Response.GetResponseName() == "FirstTimeSignup") {
 	CacheResponse = Response;
 	LoadLibrary("firsttimesignup");
 } else {
 	FatalError(9,Response);
 }
	});
}

function TogglePasswordChange(en) {
	var o = gid("OldPassword");
	var f = gid("NewPassword");
	var fc = gid("NewPasswordConfirm");

	var tn = gid("NewPasswordRow");
	var tc = gid("NewPasswordConfirmRow");
	var th = gid("ChangePasswordRow");
	var to = gid("OldPasswordRow");
	
	f.value = fc.value = "";
	
	var tth = tn.getElementsByTagName("th");
	var ttd = tn.getElementsByTagName("td");
	for(var i = 0; i < tth.length; i++) { tth[i].style.display = en ? "" : "none"; }
	for(var i = 0; i < ttd.length; i++) { ttd[i].style.display = en ? "" : "none"; }
	tn.style.display = en ? "" : "none"
	
	tth = tc.getElementsByTagName("th");
	ttd = tc.getElementsByTagName("td");
	for(var i = 0; i < tth.length; i++) { tth[i].style.display = en ? "" : "none"; }
	for(var i = 0; i < ttd.length; i++) { ttd[i].style.display = en ? "" : "none"; }
	tc.style.display = en ? "" : "none"
	
	tth = th.getElementsByTagName("th");
	ttd = th.getElementsByTagName("td");
	for(var i = 0; i < tth.length; i++) { tth[i].style.display = !en ? "" : "none"; }
	for(var i = 0; i < ttd.length; i++) { ttd[i].style.display = !en ? "" : "none"; }
	th.style.display = !en ? "" : "none"
	
	if (en) {
 f.focus();
	}
}if (typeof loginlibrary_onload != "undefined") { loginlibrary_onload(); } var loginlibraryloaded = true;
