/**
 * MusicMiner Web Server
 * www.soundminer.com
 * Copyright 2006-2008 Soundminer, Inc. All Rights Reserved.
 **/
function doLoginSubmit(){var login=$('form-login');if(login.response.value)return true;response=hex_md5(login.username.value+":"+hex_md5(login.password.value)+":"+login.challenge.value);login.response.value=response;login.password.value="";login.submit();return false;}
var rules={'form#form-login':function(element){element.onsubmit=function(){return doLoginSubmit();}}};var RegisterCtrl=Control.extend({auto_form:true,action_update:'submit',update_return:'json',mrl:'/register',rules:{'input:keyup, input:change, textarea:keyup, textarea:change, select:change':'onFieldChange','form:submit':'onSubmit','form:reset':'onReset'},validation:{'username':{'type':'string','min':1,'max':255,'regexp':/^[a-zA-Z0-9@._%-]+$/,'msg':'The Username field must be filled in.\nValid username characters are A-Za-z0-9@.+=_- spaces are not permitted.'},'password':{'type':'password','msg':'Your password must be at least six characters long.'},'confirm':{'type':'confirm','msg':'The two password fields do not match.'},'user':{'type':'string','min':1,'max':255,'msg':'Please enter your full name in the Full Name field.'},'company':{'type':'string','min':REGISTRATION_COMPANY_MIN,'max':128,'msg':'Please enter your company name in the Company field.'},'phone':{'type':'string','min':0,'max':32,'msg':''},'email':{'type':'string','min':0,'max':255,'regexp':/^[a-zA-Z0-9._%-]+@(?:[a-zA-Z0-9-]+\.)+[a-zA-Z]{2,6}$/,'msg':'Please enter a valid email address.'}},__backUpdate:function(resp,json,tag){var ret=this.sup(resp,json,tag);if(resp.error){var flash=$('flash');flash.innerHTML='<p>'+json.message.split('\n').join('</p><p>')+'</p>';flash.style.display='block';return true;}
return ret;},validate_password:function(name,value,rule){var valid=this.validate(name,value,{'type':'string','min':6,'max':255});var confirm=this.view.confirm;if(!valid||value==''){confirm.value='';confirm.disabled=true;E.removeClassPrefixed(confirm,'v-');}
else confirm.disabled=false;this.validating(confirm);return valid;},validate_confirm:function(name,value,rule){return value==this.view.password.value;},__built:function(){this.sup();this.view.getElementsByTagName('input')[0].focus();},onSubmit:function(event){$('flash').style.display='none';this.sup(event);}});function onWindowLoad(){try{switch(document.body.id){case 'register':REGISTER=new RegisterCtrl(null,E.find(document.body,'form'),'view');break;default:E.addClassName(document.body,Browser.OS.toLowerCase());var version=false;switch(Browser.engine){case 'AppleWebKit':if(Browser.engver<418.8)version=true;break;case 'Gecko':if(Browser.engver<1.8)version=true;break;case 'Explorer':if(Browser.engver<7.0)version=true;break;default:E.addClassName(document.body,'browser-support');return;}
if(version){E.addClassName(document.body,'browser-version');$('browser-support').getElementsByTagName('span')[0].innerHTML=Browser.browser+' '+Browser.version;return;}
Behaviour.register(rules);Behaviour.apply();if(form=$('form-login')){var field=form.username.value==''?form.username:form.password;setTimeout(function(){field.focus();field.select();},0);}
$('browser').innerHTML='You are using '+Browser.browser+' '+Browser.version+' ('+Browser.engine+' '+Browser.engver+') on '+Browser.OS+'.';}}
catch(e){alert('Exception: '+e);}}
Behaviour.addLoadEvent(onWindowLoad);