summaryrefslogtreecommitdiffstats
path: root/install/ui/src/freeipa
diff options
context:
space:
mode:
authorPetr Vobornik <pvoborni@redhat.com>2015-04-29 17:46:41 +0200
committerPetr Vobornik <pvoborni@redhat.com>2015-05-20 14:04:10 +0200
commit8f6013952061099fff4ec9b8784fc1ee91828c4e (patch)
treec18bb14eff7639712f2444c576cc4d79bf34bb20 /install/ui/src/freeipa
parent6bcb90ef36f7400e9f1eb197421134d5650c39fe (diff)
downloadfreeipa-8f6013952061099fff4ec9b8784fc1ee91828c4e.tar.gz
freeipa-8f6013952061099fff4ec9b8784fc1ee91828c4e.tar.xz
freeipa-8f6013952061099fff4ec9b8784fc1ee91828c4e.zip
webui: navigation: do not remember selected childs of menu item
Remove behavior which navigated to previously selected child if navigating to its parent. It makes navigation more consistent. Reviewed-By: David Kupka <dkupka@redhat.com> Reviewed-By: Thierry Bordaz <tbordaz@redhat.com>
Diffstat (limited to 'install/ui/src/freeipa')
-rw-r--r--install/ui/src/freeipa/Application_controller.js53
1 files changed, 21 insertions, 32 deletions
diff --git a/install/ui/src/freeipa/Application_controller.js b/install/ui/src/freeipa/Application_controller.js
index 5877ed63e..dc76fea59 100644
--- a/install/ui/src/freeipa/Application_controller.js
+++ b/install/ui/src/freeipa/Application_controller.js
@@ -402,39 +402,28 @@ define([
_navigate_to_menu_item: function(menu_item) {
- var child;
-
- // always go deeper if child previuosly selected
- if (menu_item.selected_child) {
- child = this.menu.items.get(menu_item.selected_child);
- if (child) {
- this._navigate_to_menu_item(child);
- }
- }
- if (!child) {
- if(menu_item.entity) {
- // entity pages
- routing.navigate([
- 'entity',
- menu_item.entity,
- menu_item.facet,
- menu_item.pkeys,
- menu_item.args]);
- } else if (menu_item.facet) {
- // concrete facets
- routing.navigate(['generic', menu_item.facet, menu_item.args]);
- } else {
- // categories, select first posible child, it may be the last
- var children = this.menu.query({parent: menu_item.name });
- if (children.total) {
- var success = false;
- for (var i=0; i<children.total;i++) {
- success = this._navigate_to_menu_item(children[i]);
- if (success) break;
- }
- } else {
- return false;
+ if (menu_item.entity) {
+ // entity pages
+ routing.navigate([
+ 'entity',
+ menu_item.entity,
+ menu_item.facet,
+ menu_item.pkeys,
+ menu_item.args]);
+ } else if (menu_item.facet) {
+ // concrete facets
+ routing.navigate(['generic', menu_item.facet, menu_item.args]);
+ } else {
+ // categories, select first posible child, it may be the last
+ var children = this.menu.query({parent: menu_item.name });
+ if (children.total) {
+ var success = false;
+ for (var i=0; i<children.total;i++) {
+ success = this._navigate_to_menu_item(children[i]);
+ if (success) break;
}
+ } else {
+ return false;
}
}