fixed Local Storage conflicts in Admin UI and Web UI

pull/64/head
13621160019@163.com 2021-09-03 20:33:20 +08:00
parent 754a688d26
commit 31b55cdd75
14 changed files with 29 additions and 29 deletions

View File

@ -13,11 +13,11 @@ app
$rootScope.$state = $state; $rootScope.$state = $state;
$transitions.onStart( { }, function(trans) { $transitions.onStart( { }, function(trans) {
if ($location.$$path.indexOf('login')==-1) { if ($location.$$path.indexOf('login')==-1) {
if ($window.localStorage.getItem("currentUser")){ if ($window.localStorage.getItem("myems_admin_ui_current_user")){
currentUser = JSON.parse($window.localStorage.getItem("currentUser")); currentUser = JSON.parse($window.localStorage.getItem("myems_admin_ui_current_user"));
} }
if (currentUser == undefined || currentUser.is_admin === false) { if (currentUser == undefined || currentUser.is_admin === false) {
$window.localStorage.removeItem("currentUser"); $window.localStorage.removeItem("myems_admin_ui_current_user");
return $state.target("login.login"); return $state.target("login.login");
} else { } else {
$rootScope.pageTitle = trans.to().data.pageTitle; $rootScope.pageTitle = trans.to().data.pageTitle;

View File

@ -15,9 +15,9 @@ app.controller('LoginController', function (
$scope.dataLoading = false; $scope.dataLoading = false;
$scope.isFullScreen = false; $scope.isFullScreen = false;
$scope.language = $window.localStorage.getItem("language") || 'zh-cn'; $scope.language = $window.localStorage.getItem("myems_admin_ui_language") || "zh_CN";
$scope.fullScreenTitle = "FULLSCREEN"; $scope.fullScreenTitle = "FULLSCREEN";
$scope.cur_user = JSON.parse($window.localStorage.getItem("currentUser")); $scope.cur_user = JSON.parse($window.localStorage.getItem("myems_admin_ui_current_user"));
// login section start // login section start
$scope.login = function (user) { $scope.login = function (user) {
$scope.dataLoading = true; $scope.dataLoading = true;
@ -30,10 +30,10 @@ app.controller('LoginController', function (
body: $translate.instant('TOASTER.LOGIN_SUCCESS'), body: $translate.instant('TOASTER.LOGIN_SUCCESS'),
showCloseButton: true, showCloseButton: true,
}); });
$window.localStorage.setItem("currentUser", JSON.stringify(response.data)); $window.localStorage.setItem("myems_admin_ui_current_user", JSON.stringify(response.data));
$location.path('/settings/space'); $location.path('/settings/space');
$scope.cur_user = JSON.parse($window.localStorage.getItem("currentUser")); $scope.cur_user = JSON.parse($window.localStorage.getItem("myems_admin_ui_current_user"));
} else if (angular.isDefined(response.status) && response.status === 400 || response.status === 404) { } else if (angular.isDefined(response.status) && response.status === 400 || response.status === 404) {
toaster.pop({ toaster.pop({
type: "error", type: "error",
@ -64,7 +64,7 @@ app.controller('LoginController', function (
body: $translate.instant('TOASTER.LOGIN_SUCCESS'), body: $translate.instant('TOASTER.LOGIN_SUCCESS'),
showCloseButton: true, showCloseButton: true,
}); });
$window.localStorage.removeItem("currentUser"); $window.localStorage.removeItem("myems_admin_ui_current_user");
$location.path('/login'); $location.path('/login');
} else { } else {
toaster.pop({ toaster.pop({
@ -73,7 +73,7 @@ app.controller('LoginController', function (
body: $translate.instant(response.data.description), body: $translate.instant(response.data.description),
showCloseButton: true, showCloseButton: true,
}); });
$window.localStorage.removeItem("currentUser"); $window.localStorage.removeItem("myems_admin_ui_current_user");
$location.path('/login'); $location.path('/login');
} }
}); });
@ -202,7 +202,7 @@ app.controller('LoginController', function (
$scope.changeLanguage = function (langKey) { $scope.changeLanguage = function (langKey) {
$translate.use(langKey); $translate.use(langKey);
$scope.language = langKey; $scope.language = langKey;
$window.localStorage.setItem("language", langKey); $window.localStorage.setItem("myems_admin_ui_language", langKey);
}; };
// web message alarm section start // web message alarm section start

View File

@ -5,7 +5,7 @@ app.controller('MainController', [
$rootScope.$on("handleReLogin",function(){ $rootScope.$on("handleReLogin",function(){
$timeout(function(){ $timeout(function(){
$window.localStorage.removeItem("currentUser"); $window.localStorage.removeItem("myems_admin_ui_current_user");
$location.path('/login'); $location.path('/login');
},2000) },2000)
}); });

View File

@ -9,7 +9,7 @@ app.controller('CostFileController', function (
toaster, toaster,
SweetAlert) { SweetAlert) {
$scope.cur_user = JSON.parse($window.localStorage.getItem("currentUser")); $scope.cur_user = JSON.parse($window.localStorage.getItem("myems_admin_ui_current_user"));
$scope.getAllCostFiles = function () { $scope.getAllCostFiles = function () {
CostFileService.getAllCostFiles(function (response) { CostFileService.getAllCostFiles(function (response) {

View File

@ -8,7 +8,7 @@ app.controller('KnowledgeFileController', function (
toaster, toaster,
SweetAlert) { SweetAlert) {
$scope.cur_user = JSON.parse($window.localStorage.getItem("currentUser")); $scope.cur_user = JSON.parse($window.localStorage.getItem("myems_admin_ui_current_user"));
$scope.getAllKnowledgeFiles = function () { $scope.getAllKnowledgeFiles = function () {
KnowledgeFileService.getAllKnowledgeFiles(function (response) { KnowledgeFileService.getAllKnowledgeFiles(function (response) {

View File

@ -9,7 +9,7 @@ app.controller('OfflineMeterFileController', function(
toaster, toaster,
SweetAlert) { SweetAlert) {
$scope.cur_user = JSON.parse($window.localStorage.getItem("currentUser")); $scope.cur_user = JSON.parse($window.localStorage.getItem("myems_admin_ui_current_user"));
$scope.getAllOfflineMeterFiles = function() { $scope.getAllOfflineMeterFiles = function() {
OfflineMeterFileService.getAllOfflineMeterFiles(function (response) { OfflineMeterFileService.getAllOfflineMeterFiles(function (response) {

View File

@ -9,7 +9,7 @@ app.controller('UserController', function ($scope,
$translate, $translate,
SweetAlert) { SweetAlert) {
$scope.cur_user = JSON.parse($window.localStorage.getItem("currentUser")); $scope.cur_user = JSON.parse($window.localStorage.getItem("myems_admin_ui_current_user"));
$scope.getAllUsers = function () { $scope.getAllUsers = function () {
UserService.getAllUsers(function (response) { UserService.getAllUsers(function (response) {
if (angular.isDefined(response.status) && response.status === 200) { if (angular.isDefined(response.status) && response.status === 200) {

View File

@ -985,7 +985,7 @@ function config($translateProvider) {
WECHAT_MESSAGE_NOT_FOUND: 'Wechat Message Not Found', WECHAT_MESSAGE_NOT_FOUND: 'Wechat Message Not Found',
}, },
}) })
.translations('zh-cn', { .translations('zh_CN', {
MY_EMS_NAME: 'MyEMS', MY_EMS_NAME: 'MyEMS',
LANGUAGE: '语 言', LANGUAGE: '语 言',
FULLSCREEN: '全屏显示', FULLSCREEN: '全屏显示',
@ -2959,7 +2959,7 @@ function config($translateProvider) {
}, },
}) })
; ;
var lang = window.localStorage.getItem("language") || "zh-cn"; var lang = window.localStorage.getItem("admin_ui_language") || "zh_CN";
$translateProvider.preferredLanguage(lang); $translateProvider.preferredLanguage(lang);

View File

@ -22,7 +22,7 @@
<select ng-change="changeLanguage(language)" ng-model="language" class="form-control" > <select ng-change="changeLanguage(language)" ng-model="language" class="form-control" >
<option value="de">Deutsch</option> <option value="de">Deutsch</option>
<option value="en">English</option> <option value="en">English</option>
<option value="cn"></option> <option value="zh_CN">简体中</option>
</select> </select>
</div> </div>
<div> <div>

View File

@ -23,7 +23,7 @@ const Main = props => {
const [navbarCollapsed, setNavbarCollapsed] = useState(false); const [navbarCollapsed, setNavbarCollapsed] = useState(false);
const [navbarStyle, setNavbarStyle] = useState(getItemFromStore('navbarStyle', settings.navbarStyle)); const [navbarStyle, setNavbarStyle] = useState(getItemFromStore('navbarStyle', settings.navbarStyle));
const [language, setLanguage] = useState(getItemFromStore('language', settings.language)); const [language, setLanguage] = useState(getItemFromStore('myems_web_ui_language', settings.language));
const toggleModal = () => setIsOpenSidePanel(prevIsOpenSidePanel => !prevIsOpenSidePanel); const toggleModal = () => setIsOpenSidePanel(prevIsOpenSidePanel => !prevIsOpenSidePanel);
const value = { const value = {
@ -100,9 +100,9 @@ const Main = props => {
setItemToStore('navbarStyle', navbarStyle); setItemToStore('navbarStyle', navbarStyle);
// eslint-disable-next-line // eslint-disable-next-line
}, [navbarStyle]); }, [navbarStyle]);
useEffect(() => { useEffect(() => {
setItemToStore('language', language); setItemToStore('myems_web_ui_language', language);
i18n.changeLanguage(language) i18n.changeLanguage(language)
// eslint-disable-next-line // eslint-disable-next-line
}, [language]); }, [language]);

View File

@ -113,7 +113,7 @@ const LoginForm = ({ setRedirect, hasLabel, layout, t }) => {
value={language} value={language}
onChange={({ target }) => setLanguage(target.value)} onChange={({ target }) => setLanguage(target.value)}
> >
<option value="zh_cn">{t('language-zh_cn')}</option> <option value="zh_CN">{t('language-zh_CN')}</option>
<option value="en">{t('language-en')}</option> <option value="en">{t('language-en')}</option>
<option value="de">{t('language-de')}</option> <option value="de">{t('language-de')}</option>
</CustomInput> </CustomInput>

View File

@ -220,7 +220,7 @@ const SidePanelModal = ({ autoShow, showOnce, autoShowDelay, cookieExpireTime, p
<p className="fs--1">{t('Switch between languages')}</p> <p className="fs--1">{t('Switch between languages')}</p>
<div className="btn-group-toggle btn-block btn-group-navbar-style"> <div className="btn-group-toggle btn-block btn-group-navbar-style">
<ButtonGroup className="btn-block"> <ButtonGroup className="btn-block">
<LanguageRadioBtn btnName={'zh_cn'} /> <LanguageRadioBtn btnName={'zh_CN'} />
<LanguageRadioBtn btnName={'en'} /> <LanguageRadioBtn btnName={'en'} />
<LanguageRadioBtn btnName={'de'} /> <LanguageRadioBtn btnName={'de'} />
</ButtonGroup> </ButtonGroup>

View File

@ -16,6 +16,6 @@ export const settings = {
currency: '$', currency: '$',
isNavbarVerticalCollapsed: false, isNavbarVerticalCollapsed: false,
navbarStyle: 'transparent', navbarStyle: 'transparent',
language: 'zh_cn' language: 'zh_CN' //en, de, zh_CN
}; };
export default { version, navbarBreakPoint, topNavbarBreakpoint, settings, APIBaseURL }; export default { version, navbarBreakPoint, topNavbarBreakpoint, settings, APIBaseURL };

View File

@ -102,7 +102,7 @@ const resources = {
"Switch between styles for your vertical navbar": "Switch between styles for your vertical navbar", "Switch between styles for your vertical navbar": "Switch between styles for your vertical navbar",
"Language": "Language", "Language": "Language",
"Switch between languages": "Switch between languages", "Switch between languages": "Switch between languages",
"language-zh_cn": "简体中文", "language-zh_CN": "简体中文",
"language-en": "English", "language-en": "English",
"language-de": "Deutsch", "language-de": "Deutsch",
"Like What You See?": "Like What You See?", "Like What You See?": "Like What You See?",
@ -848,7 +848,7 @@ const resources = {
"Switch between styles for your vertical navbar": "Wechseln Sie zwischen den Stilen für Ihre vertikale Navigationsleiste", "Switch between styles for your vertical navbar": "Wechseln Sie zwischen den Stilen für Ihre vertikale Navigationsleiste",
"Language": "Sprache", "Language": "Sprache",
"Switch between languages": "Zwischen den Sprachen wechseln", "Switch between languages": "Zwischen den Sprachen wechseln",
"language-zh_cn": "简体中文", "language-zh_CN": "简体中文",
"language-en": "English", "language-en": "English",
"language-de": "Deutsch", "language-de": "Deutsch",
"Like What You See?": "Wie was du siehst?", "Like What You See?": "Wie was du siehst?",
@ -1499,7 +1499,7 @@ const resources = {
} }
}, },
zh_cn: { zh_CN: {
translation: { translation: {
// routes // routes
"Dashboard": "总览", "Dashboard": "总览",
@ -1597,7 +1597,7 @@ const resources = {
"Switch between styles for your vertical navbar": "切换垂直导航栏的样式", "Switch between styles for your vertical navbar": "切换垂直导航栏的样式",
"Language": "语言", "Language": "语言",
"Switch between languages": "切换语言", "Switch between languages": "切换语言",
"language-zh_cn": "简体中文", "language-zh_CN": "简体中文",
"language-en": "English", "language-en": "English",
"language-de": "Deutsch", "language-de": "Deutsch",
"Like What You See?": "喜欢这个系统?", "Like What You See?": "喜欢这个系统?",
@ -2254,7 +2254,7 @@ i18n
.use(initReactI18next) // passes i18n down to react-i18next .use(initReactI18next) // passes i18n down to react-i18next
.init({ .init({
resources, resources,
lng: "zh_cn", lng: "zh_CN",
keySeparator: false, // we do not use keys in form messages.welcome keySeparator: false, // we do not use keys in form messages.welcome