(function(f,e){portalGGA.views.ChangePassword=Backbone.View.extend({events:{"click #saveButton":"save","submit form[id=changePasswordForm]":"save","click #restPasswordLoginButton":"login"},constructor:function a(g){Backbone.View.apply(this,arguments); this.options=g; this.model.bind("refresh",this.render,this); $("#changePasswordForm").validate({messages:{newPassword:{passwordNotEqualTo:CQ.I18n.getMessage("passwordNotEqualTo_validation"),},repeatNewPassword:{passwordEqualTo:CQ.I18n.getMessage("confirmPasswordMatch"),}}}); this.model.isNew=function(){return false } },render:function c(){console.log("render"); portalGGA.utils.forms.deserializeJSON(this.$("input"),this.model.toJSON()); return this },serialize:function b(){return portalGGA.utils.forms.serializeJSON.apply(this.$("#oldPassword,#newPassword")) },save:function d(i){i&&i.preventDefault(); if($("form[name='changePasswordForm']").valid()){var g=this; var h=$("form[name='changePasswordForm'] button[type='submit']"); h.button("loading"); var j=(this.options.name==="ResetPassword")?true:false; return this.model.set(this.serialize()).save().done(function k(l){console.info("Succeess",this,arguments); portalGGA.utils.globalErrorNotifier.clear(); if(j){$(".panel-heading").removeClass("active").addClass("disabled"); $('[href="#resetPassword2"]').closest(".panel-heading").removeClass("disabled").addClass("active"); $(".panel-heading a").removeAttr("href"); $(".panel-heading a").unbind(); $(".panel-collapse").collapse("hide"); $('[href="#resetPassword2"]').closest(".panel-heading").removeClass("disabled").addClass("active"); $("#resetPassword2").collapse("show"); $("#resetPassword1").find(".panel-heading").addClass("complete"); $("#resetPassword1").find(".panel-heading").find("a").append('') }else{g.$("#oldPassword").val(""); g.$("#newPassword").val(""); g.$("#repeatNewPassword").val(""); h.button("reset"); var m=handleResetSuccessResponseTemplate(); $("#successResetModal").html(m); $("#msgChangeModal").modal("show") }return l }).fail(function k(m){console.warn("Error",this,arguments); m=$.parseJSON(m.responseText); g.$("#oldPassword").val(""); g.$("#newPassword").val(""); g.$("#repeatNewPassword").val(""); if(j&&m&&m.code=="PASSWORD_OLD_EQUAL_TO_NEW"){var l=handleResetErrorResponseTemplate({errorCode:"forgotpassword.PASSWORD_OLD_EQUAL_TO_NEW"}); $("#errorResetModal").html(l); $("#errorResetModal").find(".modal").modal(); h.button("reset"); return m }else{if(m&&m.fieldErrors&&m.fieldErrors[0]&&m.fieldErrors[0].code){errorCode=m.fieldErrors[0].code }else{if(m&&m.code){errorCode=m.code }else{errorCode=m }}var l=handleResetErrorResponseTemplate({errorCode:errorCode}); $("#errorResetModal").html(l); $("#errorResetModal").find(".modal").modal(); h.button("reset"); return m }}) }else{return false }},login:function(k){k&&k.preventDefault(); portalGGA.utils.localStorage.remove("preferencestoBeDisplayThisTime"); if(this.$("form[name='resetPasswordLoginForm']").valid()){var h=this,j=h.$("form[name='resetPasswordLoginForm'] button[type='submit']"); j.button("loading"); $(".login-error").removeClass("fade in"); var n=h.$("[name=loginModal-username]").val(); var i=h.$("[name=loginModal-password]").val(); console.log("Starting login for "+n,h,h._loginComplete); return Q.when(portalGGA.utils.session.login(n,i,h._redirectURL)).then(function m(){console.log("Login processed for "+n,h,h._loginComplete); h.hide(); j.button("reset"); return h._loginComplete.resolve(h) },function l(o){console.log("Authentication error occurred",o); $("#resetPasswordLoginForm").find(".errorNotifier").html(o); console.log("before returning"); errorNotifier=new portalGGA.utils.LoginErrorNotifier($(".errorNotifier")); $(".login-error").removeClass("fade in"); return errorNotifier.show(o,"alert-danger").then(function(){j.button("reset"); return Q.reject(o) }) }).fin(function g(){}) }return Q.reject("validation") }}) }(portalGGA.utils.redirect));