URL: https://github.com/freeipa/freeipa/pull/533
Author: pvomacka
 Title: #533: WebUI: Change structure of Identity submenu
Action: opened

PR body:
"""
Previously there were 'User Groups', 'Host Groups' and 'Netgroups'
separately, now these three items are grouped into one named 'Groups'
which has sidebar with three items mentioned above.

This change allows us to move ID views into Identity submenu.

https://pagure.io/freeipa/issue/6717
"""

To pull the PR as Git branch:
git remote add ghfreeipa https://github.com/freeipa/freeipa
git fetch ghfreeipa pull/533/head:pr533
git checkout pr533
From 144b99bd9bff6e1679de60b2ce39f262c19a98a0 Mon Sep 17 00:00:00 2001
From: Pavel Vomacka <pvoma...@redhat.com>
Date: Thu, 2 Mar 2017 10:31:48 +0100
Subject: [PATCH] WebUI: Change structure of Identity submenu

Previously there were 'User Groups', 'Host Groups' and 'Netgroups'
separately, now these three items are grouped into one named 'Groups'
which has sidebar with three items mentioned above.

This change allows us to move ID views into Identity submenu.

https://pagure.io/freeipa/issue/6717
---
 install/ui/src/freeipa/group.js                | 16 +++++++++++++++-
 install/ui/src/freeipa/hostgroup.js            |  6 +++++-
 install/ui/src/freeipa/navigation/menu_spec.js | 22 ++++++++++++++++++----
 install/ui/src/freeipa/netgroup.js             |  6 +++++-
 ipaserver/plugins/internal.py                  |  5 +++++
 5 files changed, 48 insertions(+), 7 deletions(-)

diff --git a/install/ui/src/freeipa/group.js b/install/ui/src/freeipa/group.js
index 7a6bc91..bf718ad 100644
--- a/install/ui/src/freeipa/group.js
+++ b/install/ui/src/freeipa/group.js
@@ -32,7 +32,17 @@ define([
         './entity'],
     function(on, IPA, $, phases, reg) {
 
-var exp = IPA.group = {};
+var exp = IPA.group = {
+    search_facet_group: {
+        name: 'search',
+        label: '@i18n:objects.group.group_categories',
+        facets: {
+            search_group: 'group_search',
+            search_hostgroup: 'hostgroup_search',
+            search_netgroup: 'netgroup_search'
+        }
+    }
+};
 
 var make_spec = function() {
 return {
@@ -40,6 +50,10 @@ return {
     facets: [
         {
             $type: 'search',
+            tab_label: '@i18n:objects.group.user_groups',
+            facet_groups: [IPA.group.search_facet_group],
+            tabs_in_sidebar: true,
+            disable_facet_tabs: false,
             columns: [
                 'cn',
                 'gidnumber',
diff --git a/install/ui/src/freeipa/hostgroup.js b/install/ui/src/freeipa/hostgroup.js
index f0d6642..c38281c 100644
--- a/install/ui/src/freeipa/hostgroup.js
+++ b/install/ui/src/freeipa/hostgroup.js
@@ -38,6 +38,10 @@ return {
     facets: [
         {
             $type: 'search',
+            tab_label: '@i18n:objects.hostgroup.host_group',
+            facet_groups: [IPA.group.search_facet_group],
+            tabs_in_sidebar: true,
+            disable_facet_tabs: false,
             columns: [
                 'cn',
                 'description'
@@ -105,4 +109,4 @@ exp.register = function() {
 phases.on('registration', exp.register);
 
 return exp;
-});
\ No newline at end of file
+});
diff --git a/install/ui/src/freeipa/navigation/menu_spec.js b/install/ui/src/freeipa/navigation/menu_spec.js
index 7d121d9..0e717db 100644
--- a/install/ui/src/freeipa/navigation/menu_spec.js
+++ b/install/ui/src/freeipa/navigation/menu_spec.js
@@ -52,12 +52,27 @@ var nav = {};
                         }
                     ]
                 },
-                { entity: 'group' },
                 { entity: 'host' },
-                { entity: 'hostgroup' },
-                { entity: 'netgroup' },
                 { entity: 'service' },
                 {
+                    entity: 'group',
+                    label: '@i18n:objects.group.groups',
+                    facet: 'search',
+                    children: [
+                        {
+                            entity: 'hostgroup',
+                            facet: 'search',
+                            hidden: true
+                        },
+                        {
+                            entity: 'netgroup',
+                            facet: 'search',
+                            hidden: true
+                        }
+                    ]
+                },
+                { entity: 'idview' },
+                {
                     name: 'automember',
                     label: '@i18n:tabs.automember',
                     children: [
@@ -201,7 +216,6 @@ var nav = {};
                     ]
                 },
                 { entity: 'idrange' },
-                { entity: 'idview' },
                 { entity: 'realmdomains' },
                 {
                     name: 'trusts',
diff --git a/install/ui/src/freeipa/netgroup.js b/install/ui/src/freeipa/netgroup.js
index d84aca2..3b32d41 100644
--- a/install/ui/src/freeipa/netgroup.js
+++ b/install/ui/src/freeipa/netgroup.js
@@ -43,6 +43,10 @@ var spec = {
     facets: [
         {
             $type: 'search',
+            tab_label: '@i18n:objects.netgroup.netgroups',
+            facet_groups: [IPA.group.search_facet_group],
+            tabs_in_sidebar: true,
+            disable_facet_tabs: false,
             columns: [
                 'cn',
                 'description'
@@ -328,4 +332,4 @@ exp.register = function() {
 phases.on('registration', exp.register);
 
 return exp;
-});
\ No newline at end of file
+});
diff --git a/ipaserver/plugins/internal.py b/ipaserver/plugins/internal.py
index e82e5fc..7084d54 100644
--- a/ipaserver/plugins/internal.py
+++ b/ipaserver/plugins/internal.py
@@ -522,11 +522,14 @@ class i18n_messages(Command):
             "group": {
                 "details": _("Group Settings"),
                 "external": _("External"),
+                "groups": _("Groups"),
+                "group_categories": _("Group categories"),
                 "make_external": _("Change to external group"),
                 "make_posix": _("Change to POSIX group"),
                 "nonposix": _("Non-POSIX"),
                 "posix": _("POSIX"),
                 "type": _("Group Type"),
+                "user_groups": _("User Groups"),
             },
             "hbacrule": {
                 "any_host": _("Any Host"),
@@ -587,6 +590,7 @@ class i18n_messages(Command):
                 "unprovisioned": _("Host unprovisioned"),
             },
             "hostgroup": {
+                "host_group": _("Host Groups"),
                 "identity": _("Host Group Settings"),
             },
             "idoverrideuser": {
@@ -629,6 +633,7 @@ class i18n_messages(Command):
                 "hostgroups": _("Host Groups"),
                 "hosts": _("Hosts"),
                 "identity": _("Netgroup Settings"),
+                "netgroups": _("Netgroups"),
                 "specified_hosts": _("Specified Hosts and Groups"),
                 "specified_users": _("Specified Users and Groups"),
                 "user": _("User"),
-- 
Manage your subscription for the Freeipa-devel mailing list:
https://www.redhat.com/mailman/listinfo/freeipa-devel
Contribute to FreeIPA: http://www.freeipa.org/page/Contribute/Code

Reply via email to