From 85cd88da8b5fa8ce942f08c1def467b301e81d58 Mon Sep 17 00:00:00 2001 From: OldHawk Date: Sun, 14 May 2017 01:11:13 +0800 Subject: [PATCH] hide footer view on chat room, other view show it --- .../controllers/chat.client.controller.js | 13 ++++++++++--- .../controllers/header.client.controller.js | 17 +++++++++++------ .../directives/menu-title.client.directive.js | 15 +++++++-------- 3 files changed, 28 insertions(+), 17 deletions(-) diff --git a/modules/chat/client/controllers/chat.client.controller.js b/modules/chat/client/controllers/chat.client.controller.js index 67b1c0ea..595a195a 100644 --- a/modules/chat/client/controllers/chat.client.controller.js +++ b/modules/chat/client/controllers/chat.client.controller.js @@ -92,6 +92,16 @@ }); } + $scope.$on('$stateChangeSuccess', stateChangeSuccess); + function stateChangeSuccess(event, toState, toParams, fromState, fromParams) { + var footer = angular.element('footer'); + if (toState.name === 'chat') { + footer.css('display', 'none'); + } else { + footer.css('display', 'block'); + } + } + /** * $watch 'vm.messages' * when changed, scroll to bottom @@ -180,9 +190,6 @@ e.css('height', h + 'px'); u.css('height', h + 'px'); - var footer = angular.element('footer'); - footer.css('display', 'none'); - var bodysize = angular.element('.bodysize'); bodysize.css('backgroundColor', '#f7f7f7'); }; diff --git a/modules/core/client/controllers/header.client.controller.js b/modules/core/client/controllers/header.client.controller.js index b1c9c56d..8d91e81d 100644 --- a/modules/core/client/controllers/header.client.controller.js +++ b/modules/core/client/controllers/header.client.controller.js @@ -5,9 +5,9 @@ .module('core') .controller('HeaderController', HeaderController); - HeaderController.$inject = ['$scope', '$state', '$translate', 'Authentication', 'menuService', 'MeanTorrentConfig', 'localStorageService']; + HeaderController.$inject = ['$scope', '$state', '$stateParams', '$translate', 'Authentication', 'menuService', 'MeanTorrentConfig', 'localStorageService']; - function HeaderController($scope, $state, $translate, Authentication, menuService, MeanTorrentConfig, localStorageService) { + function HeaderController($scope, $state, $stateParams, $translate, Authentication, menuService, MeanTorrentConfig, localStorageService) { var vm = this; vm.language = MeanTorrentConfig.meanTorrentConfig.language; @@ -24,11 +24,16 @@ } vm.changeLanguage = function (langKey) { - console.log('langKey=' + langKey); - localStorageService.set('storage_user_lang', langKey); - $translate.use(langKey); + var lang = localStorageService.get('storage_user_lang'); + if (lang !== langKey) { + localStorageService.set('storage_user_lang', langKey); + $translate.use(langKey); - $state.reload(); + $state.reload(); + //$state.transitionTo($state.current, $stateParams, { + // reload: true, inherit: false, notify: false + //}); + } }; } }()); diff --git a/modules/core/client/directives/menu-title.client.directive.js b/modules/core/client/directives/menu-title.client.directive.js index de8fee3d..a38ae3ec 100644 --- a/modules/core/client/directives/menu-title.client.directive.js +++ b/modules/core/client/directives/menu-title.client.directive.js @@ -22,14 +22,13 @@ element.html(trans); }); - //scope.$on('$stateChangeSuccess', listener); - // - //function listener(event, toState) { - // var menu_title = attrs.menuTitle; - // var trans = $translate.instant(menu_title); - // - // element.html(trans); - //} + scope.$on('$stateChangeSuccess', listener); + function listener(event, toState) { + var menu_title = attrs.menuTitle; + var trans = $translate.instant(menu_title); + + element.html(trans); + } } } }());