var uname_chk = [3,16,/^([0-9a-zA-Z_])+$/], pwd_chk = [5,16,/^([0-9a-zA-Z_])+$/], phonum_chk = [4,32,]; function dowork(w) { if (w) { $(".main-button").button("option", "disabled", true); $("#ajax-working").attr("src","img/ufro.gif"); } else { $(".main-button").button("option", "disabled", false); $("#ajax-working").attr("src","img/uf00.gif"); } } function check_success (d) { dowork (0); if (d.success > 0) return true; if (d.success == 0) return false; $.cookie("BADM", ""); $("#main-menu").slideUp("normal", function() { $("#loginbox").show("slow"); } ); $("#menu-sel-win").remove (); return false; } function numbersonly(e, dec) { var key, keychar; if (window.event) key = window.event.keyCode; else if (e) key = e.which; else return true; keychar = String.fromCharCode(key); if ((key==null) || (key==0) || (key==8) || (key==9) || (key==13) || (key==27) ) // control keys return true; else if ((("0123456789").indexOf(keychar) > -1)) // numbers return true; else if (dec && (keychar == ".")) // decimal point jump return true; else return false; } function updateTips(t, m) { t.text(m).effect("highlight",{},1500); } function checkParam (o, n, min, max, rex, t) { if ( o.val().length > max || o.val().length < min ) { o.addClass('ui-state-error'); updateTips(t, "The " + n + " must be between "+min+" and "+max+" characters."); o.focus(); return false; } if (rex && !(rex.test(o.val()))) { o.addClass('ui-state-error'); updateTips(t, "The " + n + " field only allows "+ rex + " characters."); return false; } return true; } function handleLogin (d, load) { if (d.success) { if (load == 0) $.cookie('BADM', d.session); $("#myuname").html(d.uname); if (d.awon == 1) $("#allwayson").removeClass("ui-icon-circle-plus").addClass("ui-icon-check"); else $("#allwayson").removeClass("ui-icon-check").addClass("ui-icon-circle-plus"); $.getScript ("js/menu.js.php", function () { menuCreateTabs (d.menu); $.post(d.start+".php", { }, function(d) { $("#main-menu").html(d); }, "html"); $("#loginbox").slideUp("normal", function() { $("#main-menu").show("slow"); $("#usr-menu").show(); } ) dowork(0); }); } else { if (load == 1) $.cookie('BADM', ""); $("#effect").effect("bounce", {}, 500); updateTips ($("#tipLogin"), 'Logon denied'); dowork(0); } } $(function() { $(".main-button").button(); var cookie = $.cookie('BADM'); if (cookie) { dowork(1); $.post("login.php", "", function(d) { handleLogin(d, 1) }, "json"); } $("#login_nam, #login_pwd").keypress( function(e) { if( e.keyCode == 13 || e.keyCode == 27 ) $("#submit-login").trigger('click'); }); $("#login_nam").focus(); $("#submit-login").click(function() { $(".error").hide(); $("#login_nam").removeClass('ui-state-error'); $("#login_pwd").removeClass('ui-state-error'); var good = true; good = good && checkParam ($("#login_nam"), "Username", uname_chk[0], uname_chk[1], uname_chk[2],$("#tipLogin")); good = good && checkParam ($("#login_pwd"), "Password", pwd_chk[0], pwd_chk[1], pwd_chk[2],$("#tipLogin")); if (good == false) { return false; } dowork(1); $.post("login.php", $("#form-login").serialize(), function(d) { handleLogin(d, 0) }, "json"); return false; }); });