/* Attempt to login to community
   Ajax call. Will be handled by handleLogin or handleLoginError */
function tryLogin() {
	var email = document.frm_login_basic.email.value;
	var password = document.frm_login_basic.password.value;
	document.frm_login_basic.blogItemId.value = lastBlogItemId;
	var timeString = new Date().getTime();
	var params = 'email='+email+'&password='+password+'&ts='+timeString;
	if (document.frm_login_basic.remember_me.checked == true) {
		// set cookie for remembering the user
		var date = new Date();
		date.setTime(date.getTime()+(90*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
		document.cookie = "iupload=" + document.frm_login_basic.email.value + expires + "; path=/";
	}
	new Ajax.Request('/utility/ajax/login/login_process.asp', {method:'get', parameters: params, onSuccess:handleLogin, onFailure:handleLoginError});
	// show loading image
	document.getElementById('main_box').style.display = 'none';
	document.getElementById('main_box').style.visibility = 'hidden';
	document.getElementById('loading_box').style.display = '';
	document.getElementById('loading_box').style.visibility = 'visible';
}

/* Handle return of Ajax login call */
var handleLogin = function(t) {
	var jsonText;
	jsonText = t.responseText;
	var jsonObject = jsonText.parseJSON();
	// If the user was able to vote (i.e. logged in)
	if( jsonObject.loggedIn == "true") {
		// valid login
		var url = window.location.href.split("?")[0];		
		var queryString = window.location.search.substring(1);
		if(queryString != "") {
			var queryStringObject = queryString.parseQuery();
			queryStringObject.OpenVoteBoxId = document.frm_login_basic.blogItemId.value;
			queryString = $H(queryStringObject).toQueryString();
			window.location = url + "?" + queryString;
		} else {
			window.location = window.location.href + "?OpenVoteBoxId=" + document.frm_login_basic.blogItemId.value
		}
	} else {
		// invalid login
		var login_msg = document.getElementById("login_msg");
		login_msg.innerHTML = jsonObject.msg;
		login_msg.className = 'error_msg';
		document.getElementById('main_box').style.display = '';
		document.getElementById('main_box').style.visibility = 'visible';	
		document.getElementById('loading_box').style.display = 'none';
		document.getElementById('loading_box').style.visibility = 'hidden';
		document.frm_login_basic.email.focus();
	}
}

/* Handle and Error from the Ajax login call */
var handleLoginError = function(t) {
	alert("An error occurred while attempting to log in. Please contact the website administrator.");
}
