afterLoad: function(err, data, param){ if (err){ if (err.message){ pubjs.alert(err.message); } pubjs.error(err); return false; } // 登录成功 var cookie_name = pubjs.config('login/user_cookie_name'); if (param.remember){ util.cookie( cookie_name, param.user, {expires: pubjs.config('login/cookie_expires')} ); }else { util.cookie(cookie_name, null); } // 重置表单 this.reset(); // 登录后续处理 var callback = this.getConfig('success'); if (util.isFunc(callback)){ callback(data); } },
build: function(){ var self = this; if (self.$ready){ return self; } self.Super('build'); // 构建界面内容 var html = [ '<div class="P-userLoginFormLogo"><img src="'+ pubjs.config('app_logo/big') +'" /></div>', '<div class="P-userLoginFormTitle">'+LANG("邮箱")+':</div>', '<input class="P-userLoginFormInput" type="text" name="email" id="LoginFormEmail" placeholder="'+LANG("请输入您的邮箱")+'">', '<div class="P-userLoginFormError" id="LoginFormEmailError" />', '<div class="P-userLoginFormTitle">'+LANG("密码")+':</div>', '<input class="P-userLoginFormInput" type="password" name="pass" id="LoginFormPass" placeholder="'+LANG("请输入您的密码")+'">', '<div class="P-userLoginFormError" id="LoginFormPassError" />', '<div class="layout-row P-userLoginFormOption">', '<div class="layout-col-5"><label>', '<input type="checkbox" id="LoginFormRemember" /> ', LANG("记住邮箱"), '</label></div>', '<div class="layout-col-4"><label>', '<input type="checkbox" id="LoginFormAuto" /> ', LANG("自动登录"), '</label></div>', // '<div class="layout-col-3"><a href="#login/forgot">忘记密码?</a></div>', '</div>', '<div class="P-userLoginFormButtonBar">', '<button class="uk-button uk-button-success">'+LANG("登录")+'</button>', '</div>', '<iframe name="__SYS_USER_LOGIN_FRAME__" style="display:none;"></iframe>' ].join(''); self.html(html); self.$doms = { userError: self.find('#LoginFormEmailError'), passError: self.find('#LoginFormPassError'), user: self.find('#LoginFormEmail'), pass: self.find('#LoginFormPass'), remember: self.find('#LoginFormRemember'), auto: self.find('#LoginFormAuto') }; // 绑定事件 self.uiBind('submit', 'eventSubmit'); self.uiProxy('.P-userLoginFormInput', 'keypress blur', 'eventKeyPress'); // 初始化表单 self.reset(); return self; },
reset: function(){ var doms = this.$doms; var username = util.cookie(pubjs.config('login/user_cookie_name')); doms.user.removeClass('P-userLoginFormInvalid').val(username || ''); doms.pass.removeClass('P-userLoginFormInvalid').val(''); doms.userError.html(''); doms.passError.html(''); doms.remember.prop('checked', Boolean(username)); doms.auto.prop('checked', false); return this; },