Updated Branches: refs/heads/branch-1.4.2 ca1ef85b0 -> 53ae816b0
AMBARI-3928. Config Groups: Navi tab wrong when going back from host config page. (onechiporenko) Project: http://git-wip-us.apache.org/repos/asf/ambari/repo Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/53ae816b Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/53ae816b Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/53ae816b Branch: refs/heads/branch-1.4.2 Commit: 53ae816b0ecf37ae6c177b04650ddbd3b9658d54 Parents: ca1ef85 Author: Oleg Nechiporenko <[email protected]> Authored: Fri Nov 29 15:08:11 2013 +0200 Committer: Oleg Nechiporenko <[email protected]> Committed: Fri Nov 29 15:08:11 2013 +0200 ---------------------------------------------------------------------- ambari-web/app/controllers/main/host/details.js | 12 +++------ ambari-web/app/routes/main.js | 28 +++++++++----------- 2 files changed, 17 insertions(+), 23 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ambari/blob/53ae816b/ambari-web/app/controllers/main/host/details.js ---------------------------------------------------------------------- diff --git a/ambari-web/app/controllers/main/host/details.js b/ambari-web/app/controllers/main/host/details.js index 44f9722..91e30eb 100644 --- a/ambari-web/app/controllers/main/host/details.js +++ b/ambari-web/app/controllers/main/host/details.js @@ -24,6 +24,10 @@ App.MainHostDetailsController = Em.Controller.extend({ isFromHosts: false, /** + * path to page visited before + */ + referer: '', + /** * open dashboard page */ routeHome: function () { @@ -40,14 +44,6 @@ App.MainHostDetailsController = Em.Controller.extend({ }, /** - * set new value to isFromHosts property - * @param isFromHosts new value - */ - setBack: function(isFromHosts){ - this.set('isFromHosts', isFromHosts); - }, - - /** * Send specific command to server * @param url * @param _method http://git-wip-us.apache.org/repos/asf/ambari/blob/53ae816b/ambari-web/app/routes/main.js ---------------------------------------------------------------------- diff --git a/ambari-web/app/routes/main.js b/ambari-web/app/routes/main.js index 1101d92..f35c3ff 100644 --- a/ambari-web/app/routes/main.js +++ b/ambari-web/app/routes/main.js @@ -522,12 +522,13 @@ module.exports = Em.Route.extend({ }), back: function (router, event) { - window.history.back(); - }, - - showDetails: function (router, event) { - router.get('mainHostDetailsController').setBack(true); - router.transitionTo('hostDetails.summary', event.context) + var referer = router.get('mainHostDetailsController.referer'); + if (referer) { + router.route(referer); + } + else { + window.history.back(); + } }, addHost: function (router) { @@ -815,10 +816,6 @@ module.exports = Em.Route.extend({ route: '/dashboard', connectOutlets: function (router, context) { router.get('mainController').connectOutlet('mainDashboard'); - }, - showDetails: function (router, event) { - router.get('mainHostDetailsController').setBack(true); - router.transitionTo('hosts.hostDetails.summary', event.context); } }), @@ -885,10 +882,6 @@ module.exports = Em.Route.extend({ parent.deactivateChildViews(); event.view.set('active', "active"); router.transitionTo(event.context); - }, - showDetails: function (router, event) { - router.get('mainHostDetailsController').setBack(true); - router.transitionTo('hosts.hostDetails.summary', event.context); } }), showService: Em.Router.transitionTo('service'), @@ -901,7 +894,7 @@ module.exports = Em.Route.extend({ selectService: Em.Route.transitionTo('services.service.summary'), selectHost: function (router, event) { - router.get('mainHostDetailsController').setBack(false); + router.get('mainHostDetailsController').set('isFromHosts', false); router.transitionTo('hosts.hostDetails.index', event.context); }, filterHosts: function (router, component) { @@ -909,5 +902,10 @@ module.exports = Em.Route.extend({ return; router.get('mainHostController').filterByComponent(component.context); router.transitionTo('hosts.index'); + }, + showDetails: function (router, event) { + router.get('mainHostDetailsController').set('referer', router.location.lastSetURL); + router.get('mainHostDetailsController').set('isFromHosts', true); + router.transitionTo('hosts.hostDetails.summary', event.context); } });
