
if(!window.ccs){window.ccs={};}
ccs.Login=function(whoToGreet){var self;var sessionId;var userDisplay;var loginLink="loginUrl";var logoutLink;var editLink;var showForm;var showForgottenPassword;var registrationLink;var isLoggedIn=false;var lastUsername;var userUUIDCookie;var emailDomain;var fromAddress;var loginModulePage;var requestURI;var resetMessage;var sectionId;var mustRememberMe;var goToGroupHomepage;var postLoginPage;var postLogoutPage;var canLoad;var whoToGreet;var greetingSuffix;function constructorFn(whoToGreet){self=this;sessionId=getCookie("JSESSIONID");self.canLoad=false;self.getLoggedInUser();self.whoToGreet=whoToGreet;console.log(self.whoToGreet);}
constructorFn.prototype.setVar=function(name,value){if(value==true||value==false){eval("self."+name+" = "+value+"");}else{value=value.replace(/'/g,"\\'");eval("self."+name+" = '"+value+"'");}}
constructorFn.prototype.setCanLoad=function(){canLoad=true;}
constructorFn.prototype.showThrobber=function(){$('loginWait').style.display="inline";}
constructorFn.prototype.hideThrobber=function(){$('loginWait').style.display="none";}
constructorFn.prototype.showForgotPassword=function(){self.setMsg('forgottenPassword');}
constructorFn.prototype.register=function(){location.href=self.registrationLink;}
constructorFn.prototype.logout=function(){deleteCookie(self.userUUIDCookie,ccs.contextPath);new Ajax.Request(ccs.contextPath+'/json/'+ccs.appName+'/'+ccs.languageCode+'/modules/login_form/logout.json',{method:'get',onSuccess:function(transport){if(self.postLogoutPage!=""&&self.postLogoutPage!=null){location.href=self.postLogoutPage;}else{location.href=ccs.contextPath;}},onFailure:function(){}});}
constructorFn.prototype.getLoggedInUser=function(){new Ajax.Request(ccs.contextPath+'/json/'+ccs.appName+'/'+ccs.languageCode+'/modules/login_form/checkStatus.json?whoToGreet='+whoToGreet,{method:'get',onSuccess:function(transport){var response=transport.responseText||"no response text";var json=eval('('+response+')');self.displayForm(json);},onFailure:function(){}});}
constructorFn.prototype.displayForm=function(json){if(canLoad){if(json.status==""){$('statusCheck').style.display="none";$('notLoggedIn').style.display="inline";}else{$('statusCheck').style.display="none";$('logged_in_fullname').innerHTML=json.status+self.greetingSuffix;$('loggedIn').style.display="inline";}}else{setTimeout(function(){self.displayForm(json)},500);}}
constructorFn.prototype.setForgotCredentialsEmail=function(emailAddress){$('forgottenPasswordEmail').value=emailAddress;}
constructorFn.prototype.changeRememberMe=function(){self.mustRememberMe=$('mustRememberMe').checked;}
constructorFn.prototype.showMsgBox=function(){msgBox.activate();}
constructorFn.prototype.closeMsgBox=function(){msgBox.deactivate();}
constructorFn.prototype.setMsg=function(srcDiv){window.scroll(0,0);var src=$(srcDiv).innerHTML;if(srcDiv=='forgottenPassword'){src=src.replace(/forgottenPasswordUsername/g,"forgottenPasswordUsername2");src=src.replace(/forgottenPasswordEmail/g,"forgottenPasswordEmail2");src=src.replace(/forgottenPasswordMsg/g,"forgottenPasswordMsg2");}
if(srcDiv=='altLoginForm'){src=src.replace(/login_username_alt/g,"login_username_alt2");src=src.replace(/login_password_alt/g,"login_password_alt2");}
$('loginMsg').innerHTML=src;self.showMsgBox();}
constructorFn.prototype.getParams=function(alt){if(alt!="_alt2")alt="";var username=$('login_username'+alt).value;var password=$('login_password'+alt).value;var parameters=new Object();parameters['password']=password;parameters['username']=username;parameters['emailDomain']=self.emailDomain;parameters['fromAddress']=self.fromAddress;parameters['loginModulePage']=self.loginModulePage;parameters['remember_me']=self.mustRememberMe;parameters['sectionId']=self.sectionId;parameters['requestURI']=self.requestURI;return parameters;}
constructorFn.prototype.resetPassword=function(){self.showThrobber();var parameters=self.getParams();parameters['username']=self.lastUsername;new Ajax.Request(ccs.contextPath+'/json/'+ccs.appName+'/'+ccs.languageCode+'/modules/login_form/resetPassword.json',{method:'post',parameters:parameters,onSuccess:function(transport){var response=transport.responseText||"no response text";var json=eval('('+response+')');var status=json.status;self.hideThrobber();$('resetPasswordDone').innerHTML=$('resetPasswordDone').innerHTML.replace(/EMAIL/,json.email);self.setMsg('resetPasswordDone');},onFailure:function(){}});}
constructorFn.prototype.logMeIn=function(alt){var parameters=self.getParams(alt);if(parameters['username']==""||parameters['password']=="")return;if(self.goToGroupHomepage){parameters['goToGroupHomepage']="true";}
new Ajax.Request(ccs.contextPath+'/json/'+ccs.appName+'/'+ccs.languageCode+'/modules/login_form/checkUser.json',{method:'post',parameters:parameters,onSuccess:function(transport){var response=transport.responseText||"no response text";var json=eval('('+response+')');var status=json.status;if(status=='success'){var uuid=json.uuid;if(self.mustRememberMe){setFixedCookie(self.userUUIDCookie,uuid,ccs.contextPath);}else{deleteCookie(self.userUUIDCookie,ccs.contextPath);}
if(self.postLoginPage!=""&&self.postLoginPage!=null){location.href=self.postLoginPage;}else if(self.goToGroupHomepage){location.href=json.groupHomepage;}else{location.reload();}}else if(status=="incorrect_password"&&(self.resetMessage!="null"&&!self.resetMessage=="")){self.lastUsername=parameters['username'];$('loginMsg').innerHTML=self.resetMessage;self.showMsgBox();}else if(status=="incorrect_username"){self.setMsg("wrongCredentials_username");}else if(status=="incorrect_password"){self.setMsg("wrongCredentials_password")}else if(status=="not_opted_in"){$('optIn').innerHTML=$('optIn').innerHTML.replace(/EMAIL/,json.email);self.setMsg("optIn")}},onFailure:function(){}});}
constructorFn.prototype.showResetPassword=function(){self.setMsg("resetPassword");}
constructorFn.prototype.forgottenPasswordSubmit=function(type){var value='';if(type=='username'){value=$('forgottenPasswordUsername2').value;}else{value=$('forgottenPasswordEmail2').value;}
var parameters=self.getParams();parameters['type']=type;parameters['value']=value;self.showThrobber();new Ajax.Request(ccs.contextPath+'/json/'+ccs.appName+'/'+ccs.languageCode+'/modules/login_form/forgotten.json',{method:'post',parameters:parameters,onSuccess:function(transport){var response=transport.responseText||"no response text";var json=eval('('+response+')');var status=json.status;if(status=='true'){$('forgottenPasswordMsg2').innerHTML=$('successfulNotification').innerHTML;}else{$('forgottenPasswordMsg2').innerHTML=json.info;}
self.hideThrobber();},onFailure:function(){self.hideThrobber();}});}
return new constructorFn(whoToGreet);}