	jQuery(document).ready(function(){
//		jQuery('#javascriptwarning').css('display','none');
		var doflash = false;
		jQuery('#username').unbind();
		jQuery('#username').focus(usernameFocus).blur(usernameLostFocus);
		jQuery('#username').keypress(doEnter);

                jQuery('#password').unbind();
                jQuery('#password').keypress(doEnter);
                jQuery('#password').focus(passwordFocus).blur(passwordLostFocus);


		if (getCookie('lfs_user')) {
			jQuery('#username').val(getCookie('lfs_user'));
		}

		if (getCookie('lfs_passwd')) {
			jQuery('#is_encrypted').val("true");
			jQuery('#password').val(getCookie('lfs_passwd'));
		}

		if (getCookie('lfs_remember') && (getCookie('lfs_remember') == "true")) {
			jQuery('#remember_me').attr('checked', true);
		}

		usernameLostFocus();
		passwordLostFocus();

		window.focus();	// This reset the focus from the password field, since the passwordLostFocus function sets focus...
		jQuery('#btnLogin').click(doLogin);
	});

	function toggleArticle(article_id) {
		var article = document.getElementById('article_' + article_id);
		var icon_close = document.getElementById('hide_' + article_id);
		var icon_show = document.getElementById('show_' + article_id);
		var preview = document.getElementById('preview_' + article_id);
		
		jQuery('#news_dialog_content').html(jQuery('#article_'+article_id).html());
		jQuery('#news_dialog').dialog('open');

//		if (article.style.display == "none") {
//			article.style.display = "block";
//			icon_close.style.display = "block";
//			icon_show.style.display = "none";
//			preview.style.display = "none";
//		} else {
//			article.style.display = "none";
//			icon_close.style.display = "none";
//			icon_show.style.display = "block";
//			preview.style.display = "block";
//		}
	}

	function usernameFocus() {
		var username = jQuery(this);
		if (username.val() == "Enter your email address") {
			jQuery(this).removeClass('grey').addClass('black');
			username.val('');
		}
	}

	function usernameLostFocus() {
		var username = jQuery(this);
		if ((username.val() == "") || (username.val() == "Enter your email address")) {
			jQuery(this).removeClass('black').addClass('grey');
			username.val("Enter your email address");
		}
	}

	function passwordFocus() {
		var password = document.getElementById('password');
		var txtPassword = document.getElementById('txtPassword');
		if (password.value == "") {
			txtPassword.style.display = "none";
			password.style.display = "inline";
			password.focus();
		} else {
			txtPassword.style.display = "none";
			password.style.display = "inline";
		}

	}

	function passwordLostFocus() {
		var password = jQuery('#password');
		var txtPassword = jQuery('#txtPassword');
		var is_encrypted = jQuery('#is_encrypted');
		if (password.val() == "") {
			txtPassword.show();
			password.hide();
			is_encrypted.val("");

		} else {
			txtPassword.hide();
			password.show();
		}
	}

	function doEnter(event) {
		if (event && event.which == 13) {
			doLogin();
		} else if (window.event && window.event.keyCode == 13) {
			doLogin();
		} else {
			document.getElementById('is_encrypted').value = "";
		}
	}

	function doLogin() {
		var username = document.getElementById('username');
		var password = document.getElementById('password');
		var saveCookie = document.getElementById('remember_me').checked;
		var is_encrypted = document.getElementById('is_encrypted').value;
		if (is_encrypted == "true") {
			is_encrypted = true;
		} else {
			is_encrypted = false;
		}
		var error = false;
		if ((username.value == "") || (username.value == "Enter your email address")) {
			lfAlert({message:"You must enter a username before proceeding."});
			error = true;
		} else if ((password.value == "") || (password.value == "Enter your password")) {
			lfAlert({message:"You must enter a password before proceeding."});
			error = true;
		}

		if (is_encrypted) {
			var MD5_password = password.value;
		} else {
			var MD5_password = hex_md5(password.value);
		}
		if (!error) {
			document.getElementById('loginError').style.display = "none";
			document.getElementById('divLogin').style.display = "none";
			//document.getElementById('divSignIn').style.display = "none";
			document.getElementById('checkLogin').style.display = "block";
			//var iframe = document.getElementById('ajaxIframe');
			//iframe.src = "/bin/login/latchkey.php?username=" + username.value + "&passwd=" + MD5_password + "&encrypted=yes&go=yes&new_login=yes&remember_me=" + saveCookie ;
			var xml_http_request = jQuery.getJSON('/bin/login/latchkey.php', 
					  {username:username.value, passwd:MD5_password, encrypted:'yes',go:'yes',new_login:'yes',remember_me:saveCookie}, 
					  function(data) { handleLogin(data); });
		}

	}

	function handleLogin(data) {
		if (data.status == 'ok') {
			top.location.href = data.response_url;
		} else {
			jQuery('#checkLogin').hide();
			jQuery('#divLogin').show();
			jQuery('#loginError').show();
			jQuery('#loginError').html("<li>"+data.error+"</li>");
		}
		
	}
	
	function setCookie( name, value, expires, path, domain, secure ) {
		// set time, it's in milliseconds
		var today = new Date();
		today.setTime( today.getTime() );
		/*
		if the expires variable is set, make the correct
		expires time, the current script below will set
		it for x number of days, to make it for hours,
		delete * 24, for minutes, delete * 60 * 24
		*/
		if (expires) expires = expires * 1000 * 60 * 60 * 24;
		var expires_date = new Date( today.getTime() + (expires) );

		document.cookie = name + "=" +escape( value ) +
		((expires) ? ";expires=" + expires_date.toGMTString() : "" ) +
		((path) ? ";path=" + path : "" ) +
		((domain) ? ";domain=" + domain : "" ) +
		((secure) ? ";secure" : "" );
	}

	// this function gets the cookie, if it exists
	function getCookie(name) {
		var start = document.cookie.indexOf( name + "=" );
		var len = start + name.length + 1;
		if ((!start) && (name != document.cookie.substring( 0, name.length ) ) ) {
			return null;
		}
		if ( start == -1 ) return null;
		var end = document.cookie.indexOf(";", len );
		if ( end == -1 ) end = document.cookie.length;
		return unescape( document.cookie.substring( len, end ) );
	}
	
	function showBetaAgreement() {
		var xml_http_request = jQuery.getJSON('/bin/login/doBetaAgreement.php', null,doShowBetaAgreement);
		lfLoading({message:'Loading', xml_http_request:xml_http_request});
	}
	
	function doShowBetaAgreement(json) {
		var css =  {top:  '0px', 
				left: (jQuery(window).width() - 950) /2 + 'px', 
				width: '570px',
    			height: '500px',
    			overflow: 'auto'}; 
		lfBlockUI(json.html, null, css);
		jQuery(document).ready( function() {
		   jQuery('#btnAgreementCancel').click(function() { window.location.href = "/?action=login&sub_action=logout"; });
		   jQuery('#btnAgreementSubmit').click(submitBetaAgreement);
		});
	}
	
	function submitBetaAgreement() {
		var blank;
		jQuery('.intitials').each(function() {
			if (jQuery(this).val() == '') blank = true;
		});
		if (blank == true) {
			lfAlert({message:'You must enter your initials in every box in order to proceed.'});
		} else {
			jQuery.getJSON('/bin/login/doBetaAgreement.php', {agreed:true}, doAgreementContinue);
			jQuery.unblockUI();
		}
	}
	
	function doAgreementContinue(json) {
		if (json.error) {
			doError(json);
		} else {
			jQuery.unblockUI;
		}
	}
