From 8697c66c6784fb0ba330fac15f9f1c4a82ece878 Mon Sep 17 00:00:00 2001 From: "13621160019@163.com" <13621160019@163.com> Date: Tue, 17 Aug 2021 18:52:25 +0800 Subject: [PATCH] replaced stateChangeStart with transitions.onStart in Admin UI --- admin/app/config.router.js | 24 ++++++++++++++++---- admin/app/controllers/main.controller.js | 29 +----------------------- 2 files changed, 20 insertions(+), 33 deletions(-) diff --git a/admin/app/config.router.js b/admin/app/config.router.js index 451013d5..8f8e9374 100644 --- a/admin/app/config.router.js +++ b/admin/app/config.router.js @@ -8,12 +8,26 @@ */ app .run([ - '$rootScope', '$state', '$stateParams', - function ($rootScope, $state, $stateParams) { + '$rootScope', '$state', '$transitions', '$location', '$window', + function ($rootScope, $state, $transitions, $location, $window) { $rootScope.$state = $state; - $rootScope.$on('$stateChangeStart', function (event, toState, toParams) { - $rootScope.$emit('handleStateChange', toState.data.pageTitle); - }); + $transitions.onStart( { }, function(trans) { + if ($location.$$path.indexOf('login')==-1) { + var currentUser = undefined; + if ($window.localStorage.getItem("currentUser")){ + currentUser = JSON.parse($window.localStorage.getItem("currentUser")); + } + console.log(currentUser); + console.log(currentUser == undefined); + console.log(currentUser.is_admin === false); + if (currentUser == undefined || currentUser.is_admin === false) { + $window.localStorage.removeItem("currentUser"); + return $state.target("login.login"); + } else { + $rootScope.pageTitle = trans.to().data.pageTitle; + } + } + }); } ]) .config( diff --git a/admin/app/controllers/main.controller.js b/admin/app/controllers/main.controller.js index 291b6627..9cfa07f1 100644 --- a/admin/app/controllers/main.controller.js +++ b/admin/app/controllers/main.controller.js @@ -2,34 +2,7 @@ app.controller('MainController', [ '$rootScope', '$location', '$window', '$timeout','$cookies', function($rootScope, $location, $window, $timeout,$cookies) { - $rootScope.$on("handleStateChange",function(event,args){ - var cur_path = $location.$$path; - if (cur_path.indexOf('login')==-1) { - var admin_path = ["settings", "users", "fdd/rule"]; - var req_admin = false; - admin_path.forEach(function(elm){ - if (cur_path.indexOf(elm) !=-1) { - req_admin = true; - } - }); - if (req_admin) { - var currentUser = undefined; - if ($window.localStorage.getItem("currentUser")){ - currentUser = JSON.parse($window.localStorage.getItem("currentUser")); - } - if (currentUser != undefined && currentUser.is_admin ==true) { - $rootScope.pageTitle=args; - }else{ - $window.localStorage.removeItem("currentUser"); - $location.path('/login'); - } - }else{ - $rootScope.pageTitle=args; - } - - } - }); - + $rootScope.$on("handleReLogin",function(){ $timeout(function(){ $window.localStorage.removeItem("currentUser");