		function MM_swapImgRestore() { //v3.0
			var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
		}
		function MM_preloadImages() { //v3.0
		  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
		    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
		    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
		}
		
		function MM_findObj(n, d) { //v4.01
		  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
		    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
		  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
		  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
		  if(!x && d.getElementById) x=d.getElementById(n); return x;
		}
		
		function MM_swapImage() { //v3.0
		  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
		   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
		}

	function doLogin(isDemo) {
		var indicator = $("#indicator");
		var responseLogin = $("#responseLogin");
		var ajxResponse = $("#ajxResponse");
		
		ajxResponse.css("display", "");
		indicator.css("display", "");
		responseLogin.html("");
		responseLogin.css("display", "none");
		
		var postUrl = "page=auth";
		postUrl += "&username=" + (isDemo ? "demo" : $("#userlogin").val());
		postUrl += "&userpassword="+ (isDemo ? "demo" : $("#password").val());
		postUrl += "&text=1";
		
		var queueName = createAjaxInstance({
			queueName : 'userLogin',
			genUniqueName : true
		});
		
		setAjaxInstance({
			queueName : queueName,
			url : "md/jx.php",
			data : postUrl,
			dataType : "html",
			error : function() {
				ajxResponse.css("display", "none");
				clearAjaxInstance(queueName, false);
				return;
			},
			success : function(results) {
				if (results == undefined || results == null || results == "") {
					ajxResponse.css("display", "none");
					clearAjaxInstance(queueName, false);
					return;
				}
				
//				indicator.css("display", "none");
//				responseLogin.css("display", "");
				
				var data = results.split(",");
				var dataLogin = data[0].split('=>');
				var dataLevel = data[1].split('=>');
				var dataAccess = data[2].split('=>');

				if (dataLogin[1] == "0") {
					indicator.css("display", "none");
					responseLogin.css("display", "");
					responseLogin.html("<b>Invalid ID or password.<br>Please try again.</b>");
				} else if (dataLogin[1] == "1") {
					document.location.href = dataAccess[1];
				} else if (dataLogin[1] == "2") {
					indicator.css("display", "none");
					responseLogin.css("display", "");
					responseLogin.html("<b>Your account was blocked.</b>");
				}

				results = null;
				clearAjaxInstance(queueName, false);
				return false;
			}
		});		
	}
	
	function getLogin() {
		if (checkField("userlogin")) checkField("password");
	}
	
	function checkField(objId) {
		var responseLogin = $("#responseLogin");
		$("#indicator").css("display", "none");
//		responseLogin.html("");
//		responseLogin.css("display", "");
		
		var obj = document.getElementById(objId);
		
		if (objId == "userlogin") {
				var trimValue = $.trim(obj.value);
				obj.value = trimValue;
				
				if (trimValue == "") {
						$("#ajxResponse").css("display", "");
						responseLogin.html("<b>Please fill in your User ID ...</b>");
						responseLogin.css("display", "");
						obj.focus();
						return false;
				} else {
					$("#password").focus();
					return true;
				}
		} else {
				if (obj.value == "") {
						$("#ajxResponse").css("display", "");
						responseLogin.html("<b>Please fill in your Password ...</b>");
						responseLogin.css("display", "");
					 	obj.focus();
				} else doLogin();
		}
	}
		
	function CheckKeypress(event, objId) {
		if (event.keyCode == 13) checkField(objId);
	}
	