var loginApp={prefix:"",suffix:".html",md5url:"",invalidPasswordMsg:"Sorry, wrong password.",doLogin:function(url,pageexists){if(!pageexists){alert("Unable to verify page location. Attempting redirect.");}location.href=url;},displayFailure:function(msg){alert(msg);},getAjaxObject:function(){var oXh=null,i,xmlHTTPversions=["Msxml2.XMLHTTP.7.0","Msxml2.XMLHTTP.6.0","Msxml2.XMLHTTP.5.0","Msxml2.XMLHTTP.4.0","MSXML2.XMLHTTP.3.0","MSXML2.XMLHTTP","Microsoft.XMLHTTP"];if(typeof XMLHttpRequest==="function"){oXh=new XMLHttpRequest();}else{if(typeof ActiveXObject==="function"){for(i=0;i<xmlHTTPversions.length;i+=1){try{oXh=new ActiveXObject(xmlHTTPversions[i]);if(oXh){break;}}catch(e){}}}}return oXh;},initMD5:function(){if(typeof hex_md5==="function"){return;}loginApp.md5url=(typeof loginApp.md5url==="string"&&loginApp.md5url.length>0)?loginApp.md5url:"http://scriptar.com/JavaScript/md5.js";if(loginApp.md5url.indexOf("?")===-1){loginApp.md5url+="?ref="+encodeURIComponent(location.href);}var head=document.getElementsByTagName("head").item(0),scriptTag=document.getElementById("loadScript"),script=document.createElement("script");if(scriptTag){head.removeChild(scriptTag);}script.src=loginApp.md5url;script.type="text/javascript";script.id="loadScript";head.appendChild(script);},getHash:function(username,password){var str="";if(typeof hex_md5==="function"){if(username.length>0&&password.length>0){str=username+"|"+password;}else{if(username.length>0){str=username;}else{if(password.length>0){str=password;}}}str=hex_md5(str);}return str;},checkLogin:function(f){if(typeof f!=="object"){return false;}if(typeof hex_md5!=="function"){alert("MD5.js not loaded.");return false;}var objUserName=(typeof f.username==="object")?f.username:null,objPassword=(typeof f.pwd==="object")?f.pwd:null,root=(typeof loginApp.prefix==="string")?loginApp.prefix:"",fileExt=(typeof loginApp.suffix==="string")?loginApp.suffix:".html",btnSubmit=document.getElementById("loginfrmSubmit"),originalValue="",url="",oXht=null;if(btnSubmit){originalValue=btnSubmit.value;btnSubmit.value="Please wait";btnSubmit.disabled=true;}if(objUserName&&objPassword){url=loginApp.getHash(objUserName.value,objPassword.value);objPassword.value="";}else{if(objUserName){url=loginApp.getHash(objUserName.value,"");}else{if(objPassword){url=loginApp.getHash("",objPassword.value);objPassword.value="";}else{return false;}}}url=root+url+fileExt;oXht=loginApp.getAjaxObject();if(typeof oXht!=="object"){loginApp.doLogin(url,false);}else{oXht.open("HEAD",url,true);oXht.onreadystatechange=function(){if(oXht.readyState===4){if(oXht.status===200){loginApp.doLogin(url,true);}else{loginApp.displayFailure(loginApp.invalidPasswordMsg);if(btnSubmit){btnSubmit.value=originalValue;btnSubmit.disabled=false;}}}};oXht.send(null);}return false;},initLoginForm:function(args){var ph,phClasses=[],placeholderID=(typeof args.container==="string")?args.container:"login",classtoadd=(typeof args.classtoadd==="string")?args.classtoadd:"",usernamePromptText=(typeof args.usernameprompt==="string")?args.usernameprompt:"User Name:",passwordPromptText=(typeof args.passwordprompt==="string")?args.passwordprompt:"Password:",loginHTML=(typeof args.loginHTML==="string")?args.loginHTML:"";loginApp.invalidPasswordMsg=(typeof args.invalidpassword==="string")?args.invalidpassword:loginApp.invalidPasswordMsg;loginApp.prefix=(typeof args.urlprefix==="string")?args.urlprefix:loginApp.prefix;loginApp.suffix=(typeof args.urlsuffix==="string")?args.urlsuffix:loginApp.suffix;loginApp.md5url=(typeof args.md5url==="string")?args.md5url:loginApp.md5url;loginApp.initMD5();if(!document.getElementById||!document.getElementById(placeholderID)){return;}ph=document.getElementById(placeholderID);if(classtoadd.length>0){phClasses=ph.className.split(" ");phClasses.push(classtoadd);ph.className=phClasses.join(" ");}if(usernamePromptText.length>0||passwordPromptText.length>0){if(loginHTML.length===0){loginHTML='<form name="loginForm" id="loginForm" autocomplete="off" onsubmit="return loginApp.checkLogin(this);">\n<dl><dt>$usernameprompt</dt><dd>$username</dd>\n<dt>$passwordprompt</dt><dd>$password</dd></dl>\n<input type="submit" id="loginfrmSubmit" value="Login" />\n</form>';}if(usernamePromptText.length>0){loginHTML=loginHTML.replace(/\$usernameprompt/g,'<label for="loginfrmUsername">'+usernamePromptText+"</label>");loginHTML=loginHTML.replace(/\$username/g,'<input type="text" id="loginfrmUsername" name="username" />');}else{loginHTML=loginHTML.replace(/\$usernameprompt/g,"").replace(/\$username/g,"");}if(passwordPromptText.length>0){loginHTML=loginHTML.replace(/\$passwordprompt/g,'<label for="loginfrmPassword">'+passwordPromptText+"</label>");loginHTML=loginHTML.replace(/\$password/g,'<input type="password" id="loginfrmPassword" name="pwd" />');}else{loginHTML=loginHTML.replace(/\$passwordprompt/g,"").replace(/\$password/g,"");}loginHTML=loginHTML.replace(/<d(t|d)><\/d(t|d)>/g,"");ph.innerHTML=loginHTML;}}};