UNPKG

unserver-unify

Version:

101 lines (96 loc) 3.12 kB
angular.module('bamboo').component('resetPwdComponent', { templateUrl: 'app/directive/notice/resetpwd.component.html', bindings: { resolve: '<', close: '&', dismiss: '&', }, controller: ['$timeout', 'ApiService', 'CommonService', '$localStorage', 'pwdService', '$translate', 'loginService','$uibModal', function($timeout, ApiService, CommonService, $localStorage, pwdService, $translate, loginService,$uibModal) { var self = this; self.$onInit = function() { //self.pwdRule = $translate.instant(pwdService.getValidateRule()); //self.pwdRegex = $translate.instant(pwdService.getValidateRegex()); //console.info(self.pwdRule); //console.info(self.resolve.reason); }; self.ok = function() { console.log(self); }; self.submit = function(form) { //console.log(form); if (form.$invalid) { self.shaking = true; $timeout(function() { self.shaking = false; }, 500); return; } var pwdData = { newp: self.newPwd, oldp: self.oldPwd } console.info(pwdData); ApiService.put('/password', pwdData).then(function(result) { console.log(result); if (result.data.success) { CommonService.showNoBlockInfo('Update Successfully , please sign in again to continue !'); $localStorage.FORCE_RESET_PWD = false; openConfirmDlg(); self.close({ $value: "" }); } else { if (result.data.error == 'Wrong Password') { self.wrongPwd = true; } if (result.data.error == 'Used Password!') { self.usedPwd = true; } self.shaking = true; $timeout(function() { self.shaking = false; }, 500); } }); }; self.cancel = function() { self.dismiss({ $value: 'cancel' }); loginService.logout(); }; self.pwdchange = function() { self.wrongPwd = false; } self.newPwdchange = function() { self.usedPwd = false; } function openConfirmDlg() { var modalInstance = $uibModal.open({ animation: true, component: 'simpleDialogueComponent', backdrop: 'static', keyboard: false, size: "sm vertical-align-center", resolve: { options: function() { return { content: $translate.instant('You have got a new password ,please logout and login again !'), title: $translate.instant('Notice'), show_header: true, show_footer: false, show_download: false, content_confirm_text: "Confirm", show_content_confirm: true }; } } }); modalInstance.result.then(function(selectedItem) { loginService.logout(); }, function() { console.info('modal-component dismissed at: ' + new Date()); }); } }] });