function initLoginPasswordField(password){if(!(password=$(password)))return;var form=password.form}var LoschLoginForm=Class.create({initialize:function(form,options){if(typeof(form)=='string')form=document.forms[form];var fkey='_form_'+form.name;if(LoschLoginForm[fkey])return;LoschLoginForm[fkey]=this;this.form=form;this.form.onsubmit=this.onFormSubmit.bindAsEventListener(this);if(options)$H(options).each(function(p){var n=p[0],v=p[1];switch(n){case 'username':case 'password':case 'submit':case 'messarea':this[n]=$(v)||this.form.elements[v];break}}.bind(this));Form.getElements(this.form).each(function(el){if(!this.password&&el.type=='password')this.password=el;else if(!this.username&&el.type=='text'&&el.name=='username')this.username=el;else if(!this.submit&&el.type=='submit')this.submit=el}.bind(this));if(this.submit){if(this.username){this.username.onchange=this.onUsernameChanged.bind(this);this.username.onchange()}if(this.password){this.password.onchange=this.onPasswordChanged.bind(this);this.password.onchange()}this.submit.onclick=this.submitClicked.bindAsEventListener(this)}this.form.enable()},showMess:function(mess){if(!this.messarea)return;this.messarea.clear();this.messarea.appendChild(document.createTextNode(mess))},onUsernameChanged:function(){if(!this.username)return;this.username.value=this.username.value.trim()},onPasswordChanged:function(){if(!this.password)return;this.password.value=this.password.value.trim()},submitClicked:function(e){if((this.username&&!this.username.present())||(this.password&&!this.password.present())){var mess='Please complete the login form and try again.';if(this.messarea)this.showMess(mess);else alert(mess);return Event.stop(e)}return true},onFormSubmit:function(e){if(!this.submitClicked(e))return;if(this.messarea){this.showMess('Processing Login...');if(this.submit)this.submit.hide()}else if(this.submit){this.submit.disable();this.submit.value='Processing Login...'}if(this.username){this.username.readOnly=true;this.username.addClassName('disabled');this.username.blur()}if(this.password){this.password.readOnly=true;this.password.addClassName('disabled');this.password.blur()}if(this.password&&window.MD5)this.cryptPassword()},cryptPassword:function(){if(!this.password)return;this.password.value='md5:'+MD5.b64(this.password.value)}});