  		dojo.require("dojo.back");
	
var g_returnToState = null;	
		
function handleBookmark(){
	
	var url = window.location.href;
	var results = new Array();
	results = url.split("#");
	if (results[1] != null)
	{
		var page = results[1];
		init(url);
		// set
		changeGlobalState(page)
	}
	else
	{
		init('index');
		changeGlobalState('index');
	}

}
function init(url)
{
	
	dojo.back.setInitialState({
		back: function() {changeGlobalState(this.urltrack);},
		forward: function() {changeGlobalState(this.urltrack);},
		changeUrl: url,
		urltrack: url
	});
}

function setGlobalState(url, name, queryStringExtras){	

	dojo.back.addToHistory({
		back: function() {changeGlobalState(this.urltrack);},
		forward: function() {changeGlobalState(this.urltrack);},
		changeUrl: url,
		urltrack: url		
	});
	
	changeGlobalState(url, name, queryStringExtras);
}		

		dojo.back.init();
		
		dojo.require("dojo.NodeList-fx");
				
		dojo.require("dijit.layout.BorderContainer");
		dojo.require("dijit.layout.StackContainer");
		dojo.require("dijit.layout.TabContainer");
		dojo.require("dijit.layout.ContentPane");
		dojo.require("dijit.layout.AccordionContainer");

		dojo.require("dojox.layout.ContentPane");
		dojo.require("dojox.layout.ExpandoPane");
		
		dojo.require("dijit.MenuBar");
		dojo.require("dijit.PopupMenuBarItem");
		dojo.require("dijit.MenuItem");	
		dojo.require("dijit.form.Button");
		dojo.require("dijit.form.TextBox");
		dojo.require("dijit.form.CheckBox");
		dojo.require("dijit.form.Form");
		dojo.require("dijit.form.ValidationTextBox");
		dojo.require("dijit.form.FilteringSelect");
		dojo.require("dijit.Tooltip");	

		dojo.require("dijit.form.DateTextBox");
		
		dojo.require("dojox.image.Lightbox");
  		dojo.require("dojo.parser");
  		
  		dojo.require("dojox.data.JsonRestStore");
  		dojo.require("dojox.grid.EnhancedGrid");
		
//		dojo.require("dojox.fx");
//		dojo.require("dojox.fx.Shadow");
		
		dojo.require("dojo.data.ItemFileReadStore");
		
		dijit.Tooltip.defaultPosition=["above", "below", "before", "after"];

var currentNewsSidebar = 'fetch_content.php?page=defaultsidebar';
var currentStaticSidebar = 'fetch_content.php?page=defaultsidebar';

var currentid = 'indexpane';

var globalState = null;
var previousGlobalState = null;


dojo.addOnLoad(handleBookmark);
dojo.addOnLoad(setupFaders);
dojo.addOnLoad(setupMenu);

dojo.addOnLoad(updateStatusBar);

dojo.addOnLoad(loadUserInfo);


/*
dojo.addOnLoad(startCheckingLoginStatus);


var checkerHandle = null;
function startCheckingLoginStatus()
{
	console.log("In startCheckingLoginStatus()")
	checkerHandle = setInterval("loginChecker()", 3600000);
}

function loginChecker()
{
	console.log("In loginChecker();");
	
	dojo.xhrGet({
		url: "checklogin.php",
		handleAs: "json",
		load: function(response) {
			console.log("Got checklogin: ", response.loggedin);
			
			return(response);
		},
		error: function()
		{
			console.log("Got error on checklogin");
		}
	})
}

*/
function loadUserInfo() {
console.log("In loadUserInfo")	
		dojo.xhrGet({
		url: "rest/members/current/",
		handleAs: "json",
		load: function(response){
			//global 
			globalUserInfo = response[0];
console.log("In loadUserInfo - load with user" , globalUserInfo.first_name)	
		}
	})
}


function createButtonLink(button, page, name)
{
//	dojo.connect(button, "onClick", null, function(){
//			setGlobalState(page, name)
//		});
	button.onClick = function() {
		console.log(page)
		setGlobalState(page, name);
	}
}

function createLabelLink(page, name) 
{
	var retval = '<a class="menuLink" onClick="return 0;" href="#' + page + '">' + name + '</a>'; 
	//console.log("Page: ", page, ", Name: ", name, ", retval: ", retval);
	
	return retval;
}

function setupMenu()
{
	dojo.require("dojo._base.html");
	
	dojo.xhrGet({
		url: "fetch_menu.php",
		handleAs: "json",
		load: function(response)
		{
			var menu = dijit.byId("navMenu");
			
			// Remove all children, in case this is a menu rebuild
			dojo.empty(menu.domNode);
			
			// Set the menu bar to automagically expand children on hover			
			menu.popupDelay = 0;
			menu.onItemHover = function(item){
				menu.focusChild(item);
				if (menu.focusedChild.popup && !menu.focusedChild.disabled){
					menu._openPopup();
				}
			}

			for (var i in response)
			{
				var current = response[i];
				if (current.subItems)
				{
					// This is a menu item that has subitems
					var subMenu = new dijit.Menu({});
										
					for (var j in current.subItems)
					{
						var currentSubItem = current.subItems[j];
						var subItem = new dijit.MenuItem({
							label: createLabelLink(currentSubItem.page, currentSubItem.name)
						})

						createButtonLink(subItem, currentSubItem.page, currentSubItem.name);							
						subMenu.addChild(subItem);
					}
						
									
					menu.addChild(new dijit.PopupMenuBarItem({
						label: current.name,
						popup: subMenu
					}));
				}
				else
				{
					// This is a standalone menu item
					var item = new dijit.MenuBarItem({
						label: createLabelLink(current.page, current.name)
					});		
					

					createButtonLink(item, current.page, current.name);		
					menu.addChild(item);				
				}

			}
			return(response);
		}
	})
}

function setupFaders()
{
//	announcementFadebox = new FadeBox("announcementPane", 1000, 6178, "announcement"); // These have bizarre values for the sake of jitter
//	imageFadebox = new FadeBox("imagefadepane", 1000, 5135, "image");
}

function changeGlobalState(state, name, queryStringExtras) 
{
	var targetPaneName = state + "pane";
	var targetPane = dojo.byId(targetPaneName);
		
	
	if (targetPane == null)
	{
		if (!queryStringExtras)
			queryStringExtras = '';
			
		// This is the first time they've accessed the pane, so we'll create it before fading to it
		var pane = new dojox.layout.ContentPane({
			style: "width: 100%; height: 100%;",
			preload: true,
			id: targetPaneName,
			href: "fetch_content.php?page="+state + queryStringExtras,
			className: targetPaneName
		})
		dijit.byId("stack").addChild(pane);
	}
	else
	{
		if (queryStringExtras)
		{
			dijit.byId(targetPaneName).attr('href', "fetch_content.php?page="+state + queryStringExtras)
		}
	}

	globalState = state;
	switch(state)
	{
		case 'userlogout':
			dojo.xhrGet({
				url: "logout.php",
				load: function (result) {
//					console.log("successfully logged out");
					setLoggedInState(false);
					clearAllPanes();
					setGlobalState("index");
				}
			});
			
			break;

		case 'loggedin':
			setLoggedInState(true);
			setGlobalState("index");
			break;
			
		default:
			setStack(targetPaneName, true);
			setNewsSidebar(state + 'sidebar');
			setTitle(name);
			return(false);
			break;
	}
	
}

function setLoggedInState(state)
{
	setupMenu();
	updateStatusBar();
}

function updateStatusBar()
{
	dojo.xhrGet({
		url: "loginstatus.php",
		handleAs: "json",
		load: function(response){
			var id = response.text;
			if (id != ".")
			{
				dojo.byId("statusbar").innerHTML = "Logged in as " + id;
			}
			else
			{
				dojo.byId("statusbar").innerHTML = "Not Logged In";
			}
		}
	})
}

function showStaticSidebar(showSSB)
{
	var ssb = dojo.byId("staticsidebarpane");
	var bc = dijit.byId("bc");
	
	if (!ssb)
	{
		console.log("Could not fetch static sidebar");
		return;
	}
	else
	{
		if (showSSB == true)
		{
			dojo.removeClass(ssb, "nodisplay");
			bc.layout();
		}
		else
		{
			dojo.addClass(ssb, "nodisplay");
			bc.layout();
		}
	}
}

function setTitle(title)
{
	var strippedTitle = document.title.split("-")[0];
	if (title)
		document.title = strippedTitle + "- " + title;
	else
		document.title = strippedTitle;
}

function setStack(newid, ssb){
	if (currentid == null) {
		dijit.byId('stack').selectChild(dijit.byId('gallerypane'));
		currentid = newid;
	}
	else if (currentid != newid) {
		currentid = newid;
		var sb = dijit.byId('staticsidebarpane');
		
		
		dojo.fadeOut({
			node: "stack",
			duration: 100,
			onEnd: function() {
				showStaticSidebar(ssb);
				dijit.byId('stack').selectChild(dijit.byId(newid));
				dojo.fadeIn({
					node: "stack",
					duration: 100
				}).play();
				
			}
		}).play();
	}
}


function setNewsSidebar(sidebar)
{	
	var sidebarvisible;
	switch (sidebar){

		case 'indexsidebar':
			newurl = 'fetch_content.php?page=upcomingevents';
			sidebarvisible = true;
			break;

		case 'mondayssidebar':
			newurl = 'fetch_content.php?page=mondaysidebar';
			sidebarvisible = true;
			break;

		case 'facessidebar':
			sidebarvisible = false;
			break;

		case 'fggsidebar':
			newurl = 'fetch_content.php?page=fggsidebar';
			sidebarvisible = true;
			break;

		case 'collegiumclasssidebar':
			newurl = 'fetch_content.php?page=collegiumclasssidebar';
			sidebarvisible = true;
			break;

		default:
			newurl = 'fetch_content.php?page=defaultsidebar';
			sidebarvisible = false;
			break;
	}

	if (currentStaticSidebar == null) {
		dijit.byId('newssidebarpane').setHref(newurl);
		currentStaticSidebar = newurl;
	}
	else if ((newurl) && (currentStaticSidebar != newurl)) {
		currentStaticSidebar = newurl;
		targetnode = dojo.byId("newssidebarpane");
			dojo.xhrGet({
				url: newurl,
				handleAs: "text",
				load: function(response){
					var sb = dijit.byId('newssidebarpane');
					
					
					dojo.fadeOut({
						node: targetnode,
						duration: 100,
						onEnd: function() {
							sb.setContent(response);
					
							dojo.fadeIn({
								node: 'newssidebarpane',
								duration: 100
							}).play();
							
						}
					}).play();
										
					
					return response;
				},
				error: function(response){
					return response; 
				}
				
			});
	}
	dojo.style(dojo.byId("newssidebarpane"), "display", sidebarvisible? "block": "none");
	
}
function buildHeaderEntry(parent, page)
{
	var t = document.createElement("table");
	var tb = document.createElement("tbody");
	var descriptiontr = document.createElement("tr");
	var descriptiontd = document.createElement("td");

	t.setAttribute("style", "width:100%");
	t.appendChild(tb);
	
	descriptiontd.setAttribute("class", "activitiesdescription");
	descriptiontd.setAttribute("className", "activitiesdescription");
	descriptiontr.appendChild(descriptiontd);
	tb.appendChild(descriptiontr);
	parent.appendChild(t);
	
	var request = {
		url: "fetch_content.php?page=" + page,
		handleAs: "text",
		load: function(responseObject) {

			var td = descriptiontd;
			td.innerHTML = responseObject;	
				
		},
		error: function(response) {alert("Failure: " + response);}
		};
	dojo.xhrGet(request);	
}
function validateCreateForm()
{
	var nameDijit = dijit.byId("ca_username");
	var name = dojo.byId("ca_username");
	var pass = dojo.byId("ca_password");
	var vrfy = dojo.byId("ca_passwordverify");
	var mail = dijit.byId("ca_email");
	var mailval = dojo.byId("ca_email");
	var okbutton = dojo.byId("createaccountbutton");

	var testmail = new dijit.form.ValidationTextBox();

	if (pass.value.length == 0)
		document.getElementById("passwordmessage").innerHTML="Password may not be blank";
	else if (pass.value.length < 6)
		document.getElementById("passwordmessage").innerHTML="Password is too short";
	else if ((pass.value.length > 5) && (pass.value == vrfy.value))
		document.getElementById("passwordmessage").innerHTML="Passwords match";
	else
		document.getElementById("passwordmessage").innerHTML="Passwords do not match";

//alert("Mail: " + mailval.value + "\nValid: " + mail.isValid());

	if ((name.value.length > 5) && (nameDijit.isValid()) && (pass.value.length > 5) && (pass.value == vrfy.value) && (mail.value != null) && (mailval.value.length > 5) && (mail.isValid()))
	{
		console.log("Should be showing button");
		var button = document.getElementById("createaccountbuttontd");
		if (button)
		{
			dojo.addClass(button, "display");
			dojo.removeClass(button, "nodisplay");
			
		}

	}
	else
	{
		console.log("Should be hiding button");
		var button = document.getElementById("createaccountbuttontd");
		if (button)
		{
			dojo.addClass(button, "nodisplay");
			dojo.removeClass(button, "display");
		}
	}
	

}
function requestCreateAccount()
{
	var postRequest = {
		url: "createAccount.php",
		handleAs: "json",
		load: function(responseObject) { parseCreateAccountResponse(responseObject);},
		error: function(response) {alert("Failure: " + response);},
		form: "createAccountForm"
		};

	dojo.xhrPost(postRequest);		
}

function requestUsernameReminder()
{
	var postRequest = {
		url: "forgotUsername.php",
		handleAs: "json",
		load: function(responseObject) { parseUsernameReminderResponse(responseObject);},
		error: function(response) {alert("Failure: " + response);},
		form: "forgotUsernameForm"
		};

	dojo.xhrPost(postRequest);		
}

function requestPasswordReset()
{
	var postRequest = {
		url: "forgotPassword.php",
		handleAs: "json",
		load: function(responseObject) { parsePasswordResetResponse(responseObject);},
		error: function(response) {alert("Failure: " + response);},
		form: "forgotPasswordForm"
		};

	dojo.xhrPost(postRequest);		
}


function parseCreateAccountResponse(responseObject)
{
	if (responseObject.code == 0) {
		showSuccessDialog("You have successfully created an account.<br>" + 
		"You may now log in using your username and password.")
/*		
		if (dijit.byId("security_code")) dijit.byId("security_code").destroy();
		if (dijit.byId("username")) dijit.byId("username").destroy();
		if (dijit.byId("password")) dijit.byId("password").destroy();
		if (dijit.byId("passwordverify")) dijit.byId("passwordverify").destroy();
		if (dijit.byId("email")) dijit.byId("email").destroy();
		if (dijit.byId("createaccountbutton")) dijit.byId("createaccountbutton").destroy();
*/		
	}
	else {
		switch (responseObject.code) {
			case -1:
				showErrorDialog("Bad Verification Code", 
				"The Verification Code you entered is not correct.<br>" + 
				"Please try again.", 
				"ca_security_code");
				break;
				
			case -2:
			case -3:
			case -4:
			case -6:
				showErrorDialog("Database Error", "There was a database error while processing your request: <br>" +
				"'" +
				responseObject.text +
				"'<br>" +
				"Please try again later.  If you have seen this message more than once,<br>" +
				"please contact the <a href=\"mailto:cael@shadowgrove.com?Subject=Account Creation Error: " +
				responseObject.text +
				"\">webmaster</a>.");
				break;
				
			case -5:
				showErrorDialog("Username in use", 
				"The Username you have selected is already in use: " + responseObject.text + "<br>" + 
				"Please try again.",
				"ca_username");
				break;
				
			case -7:
				showErrorDialog("Duplicate e-mail address", 
				"There is already an account associated with that e-mail address.<br>" +
				"Please try again.", 
				"ca_email");
				break;
				
				
		}
	}
}

function parseUsernameReminderResponse(responseObject)
{
	if (responseObject.code == 0) {
		showSuccessDialog("We have sent you a reminder e-mail containing your Username.<br>" + 
		"You may now log in using your username and password.");
	}
	else {
		switch (responseObject.code) {
			case -1:
				showErrorDialog("Bad Verification Code", 
				"The Verification Code you entered is not correct.<br>" + 
				"Please try again.", 
				"fu_security_code");
				break;
				
			case -2:
			case -3:
			case -6:
				showErrorDialog("Database Error", "There was a database error while processing your request: <br>" +
				"'" +
				responseObject.text +
				"'<br>" +
				"Please try again later.  If you have seen this message more than once,<br>" +
				"please contact the <a href=\"mailto:cael@shadowgrove.com?Subject=Account Creation Error: " +
				responseObject.text +
				"\">webmaster</a>.");
				break;
				
			case -8:
				showErrorDialog("Username does not exist", 
				"There is no account associated with the e-mail address you have specified .<br>" + 
				"Please try again.",
				"fu_email");
				break;
				
		}
	}
}

function parsePasswordResetResponse(responseObject)
{
	if (responseObject.code == 0) {
		showSuccessDialog("We have sent you a reminder e-mail containing your new password.<br>" + 
		"You may now log in using your username and password.");
	}
	else {
		switch (responseObject.code) {
			case -1:
				showErrorDialog("Bad Verification Code", 
				"The Verification Code you entered is not correct.<br>" + 
				"Please try again.", 
				"fp_security_code");
				break;
				
			case -2:
			case -3:
			case -6:
				showErrorDialog("Database Error", "There was a database error while processing your request: <br>" +
				"'" +
				responseObject.text +
				"'<br>" +
				"Please try again later.  If you have seen this message more than once,<br>" +
				"please contact the <a href=\"mailto:cael@shadowgrove.com?Subject=Account Creation Error: " +
				responseObject.text +
				"\">webmaster</a>.");
				break;
				
			case -8:
				showErrorDialog("Username does not exist", 
				"There is no account associated with the Username you have specified .<br>" + 
				"Please try again.",
				"fp_username");
				break;
				
		}
	}
}

function clearAllPanes()
{
	dijit.byId("stack").destroyDescendants(false);
}

function rememberLogin()
{
	var name = dojo.cookie("sg_remember_login_name");
	var pw = dojo.cookie("sg_remember_login_pw");
	if (name)
	{
		dojo.byId("namebox").value = name;
		dojo.byId("passbox").value = pw;
		dijit.byId("rememberme").attr("checked", "checked");
	}
}

function parseLoginResponse(responseObject)
{
	if (responseObject.code == 0) {

		loadUserInfo();

		var remember = dojo.byId("rememberme");
		if (remember.checked)
		{
			var uname = dojo.byId("namebox").value;
			var pass = dojo.byId("passbox").value;

			console.log("I should remember this login")
			dojo.cookie("sg_remember_login_name", uname, {expires: 1000})
			dojo.cookie("sg_remember_login_pw", pass, {expires: 1000})
		}
		else
		{
			console.log("I should not remember this login")
			dojo.cookie("sg_remember_login_name", "", {expires: -1})
			dojo.cookie("sg_remember_login_pw", "", {expires: -1})
		}


		clearAllPanes();
		if (g_returnToState != null)
		{
			var state = g_returnToState;
			g_returnToState = null;
			setLoggedInState(true);
			changeGlobalState(state);
		}
		else
			changeGlobalState('loggedin', null);		
	}
	else {
		switch (responseObject.code) {
			case -2:
			case -3:
			case -6:
				showErrorDialog("Database Error", "There was a database error while processing your request: <br>" +
				"'" +
				responseObject.text +
				"'<br>" +
				"Please try again later.  If you have seen this message more than once,<br>" +
				"please contact the <a href=\"mailto:cael@shadowgrove.com?Subject=Account Creation Error: " +
				responseObject.text +
				"\">webmaster</a>.");
				break;
				
			case -8:
				showErrorDialog("Login Failed", 
				"The Username and Password you have specified do not match.<br>" + 
				"Please try again.");
				break;
				
		}
	}
}

function showErrorDialog(titleString, message, nodeIdToFocus)
{
	dojo.require("dijit.Dialog");
	dojo.require("dijit.form.Button");

	var d = new dijit.Dialog({title: titleString});
	dojo.style(d.closeButtonNode, "visibility", "hidden");

	var b = new dijit.form.Button({label: "Ok"});
	var handle = dojo.connect(b, "onClick", function() {
		d.hide();
		dojo.disconnect(handle);
		if (nodeIdToFocus != null) {
			dojo.byId(nodeIdToFocus).value = "";
			setTimeout("dijit.byId('" + nodeIdToFocus + "').focus()",500);
		}
		});

	var t = document.createElement("table");
	var tb = document.createElement("tbody");
	t.appendChild(tb);

	var tr = document.createElement("tr");
	var td = document.createElement("td");
	tr.appendChild(td);
	
	var l = document.createElement("label");
	l.innerHTML = message;

	td.appendChild(l);
	tb.appendChild(tr);
	
	tr = document.createElement("tr");
	td = document.createElement("td");
	td.className = "centered";
	tr.appendChild(td);
	
	td.appendChild(b.domNode);
	
	tb.appendChild(tr);
	
	d.setContent(t);

	d.show();
}
function showSuccessDialog(message, state)
{
	dojo.require("dijit.Dialog");
	dojo.require("dijit.form.Button");
	
	if (!state) state = "userlogin";

	var d = new dijit.Dialog({title: "Success"});
	dojo.style(d.closeButtonNode, "visibility", "hidden");

	var b = new dijit.form.Button({label: "Ok"});
	var handle = dojo.connect(b, "onClick", function() {
		d.hide();
		dojo.disconnect(handle);
		setGlobalState(state);
		});

	var t = document.createElement("table");
	var tb = document.createElement("tbody");
	t.appendChild(tb);

	var tr = document.createElement("tr");
	var td = document.createElement("td");
	tr.appendChild(td);
	
	var l = document.createElement("label");
	l.innerHTML = message;

	td.appendChild(l);
	tb.appendChild(tr);
	
	tr = document.createElement("tr");
	td = document.createElement("td");
	td.className = "centered";
	tr.appendChild(td);
	
	td.appendChild(b.domNode);
	
	tb.appendChild(tr);
	
	d.setContent(t);

	d.show();
}

function handleLogin(){
	var uname = dojo.byId("namebox").value;
	var pass = dojo.byId("passbox").value;
	
	if ((uname.length == 0) || (pass.length == 0))
		showLoginDialog();
	else{
		requestLogin();
	}	
}

function requestLogin()
{
	var postRequest = {
		url: "login.php",
		handleAs: "json",
		load: function(responseObject) { parseLoginResponse(responseObject);},
		error: function(response) {alert("Failure: " + response);},
		form: "loginForm"
		};

	dojo.xhrPost(postRequest);		
}
function showLoginDialog()
{
	dojo.require("dijit.Dialog");
	dojo.require("dijit.form.Button");

	var d = new dijit.Dialog({title: "Fail"});
	dojo.style(d.closeButtonNode, "visibility", "hidden");

	var b = new dijit.form.Button({label: "Ok"});
	var handle = dojo.connect(b, "onClick", function() {
		d.hide();
		dojo.disconnect(handle);
		});

	var t = document.createElement("table");
	var tb = document.createElement("tbody");
	t.appendChild(tb);

	var tr = document.createElement("tr");
	var td = document.createElement("td");
	tr.appendChild(td);
	
	var l = document.createElement("label");
	l.innerHTML = "You must specify both your username and password in order to log in.";

	td.appendChild(l);
	tb.appendChild(tr);
	
	tr = document.createElement("tr");
	td = document.createElement("td");
	td.className = "centered";
	tr.appendChild(td);
	
	td.appendChild(b.domNode);
	
	tb.appendChild(tr);
	
	d.setContent(t);

	d.show();
}

function logout()
{
	dojo.cookie("fg_login", null, {expires: -1})
	setGlobalState("NotLoggedIn")
}

function checkEnter(e){
var characterCode
         if(e && e.which){
         e = e
         characterCode = e.which
         }
         else{
         e = event
         characterCode = e.keyCode
         }      
         if(characterCode == 13){
         handleLogin();
         return false
         }
return true
}
function validatePWChangeForm()
{
	var pass = dojo.byId("newpw");
	var vrfy = dojo.byId("newpwverify");
	var okbutton = dojo.byId("changepasswordbutton");

	var testmail = new dijit.form.ValidationTextBox();

	if (pass.value.length == 0)
		document.getElementById("changepasswordmessage").innerHTML="Password may not be blank";
	else if (pass.value.length < 6)
		document.getElementById("changepasswordmessage").innerHTML="Password is too short";
	else if ((pass.value.length > 5) && (pass.value == vrfy.value))
		document.getElementById("changepasswordmessage").innerHTML="Passwords match";
	else
		document.getElementById("changepasswordmessage").innerHTML="Passwords do not match";

//alert("Mail: " + mailval.value + "\nValid: " + mail.isValid());

	if ((pass.value.length > 5) && (pass.value == vrfy.value))
	{
		document.getElementById("changepasswordbuttontd").className = "display";

	}
	else
	{
		document.getElementById("changepasswordbuttontd").className = "nodisplay";
	}
	

}
function changePassword()
{
	var payload = {};
	payload.oldpw = dojo.byId("oldpw").value;
	payload.newpw = dojo.byId("newpw").value;
	
//console.log("Payload: " + dojo.toJson(payload));
	var postRequest = {
		url: "changepassword.php",
		handleAs: "json",
		postData: dojo.toJson(payload),
		load: function(responseObject){
			switch(responseObject.code)
			{
				case 0:
				showErrorDialog("Success", 
				"Your password has been changed");
				dojo.byId("oldpw").value = "";
				dojo.byId("newpw").value = "";
				dojo.byId("newpwverify").value = "";
				break;
				
				case -1:
				showErrorDialog("Invalid", 
				"You did not enter your existing password correctly.");
				dojo.byId("oldpw").value = "";
				break;
								
				case -2:
				showErrorDialog("Error", 
				"There has been an error processing your request: " +
				responseObject.text + "<br>Please try again later.");
				dojo.byId("oldpw").value = "";
				break;
								
			}
		}, 
		error: function(response) {alert("Failure: " + response);}
		};

	dojo.xhrPost(postRequest);		
}

