Repository: incubator-ranger
Updated Branches:
  refs/heads/master fa19908a9 -> 7ed35a9b0


RANGER-489 : Revise Top navigation menu

Signed-off-by: Velmurugan Periasamy <[email protected]>


Project: http://git-wip-us.apache.org/repos/asf/incubator-ranger/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ranger/commit/7ed35a9b
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ranger/tree/7ed35a9b
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ranger/diff/7ed35a9b

Branch: refs/heads/master
Commit: 7ed35a9b0cbf589ff9964c0c2670907c58a98caf
Parents: fa19908
Author: Gautam Borad <[email protected]>
Authored: Mon May 18 19:06:31 2015 +0530
Committer: Velmurugan Periasamy <[email protected]>
Committed: Mon May 18 19:45:18 2015 -0400

----------------------------------------------------------------------
 .../db/mysql/patches/013-permissionmodel.sql    |  2 +-
 .../db/oracle/patches/013-permissionmodel.sql   |  6 +-
 .../db/postgres/xa_core_db_postgres.sql         |  6 +-
 .../db/sqlserver/xa_core_db_sqlserver.sql       |  6 +-
 .../java/org/apache/ranger/biz/XUserMgr.java    | 17 +++---
 .../apache/ranger/common/RangerConstants.java   |  6 +-
 .../webapp/scripts/controllers/Controller.js    | 59 ++++++++-----------
 .../webapp/scripts/models/RangerServiceDef.js   |  2 +-
 .../src/main/webapp/scripts/modules/XALinks.js  | 16 ++---
 .../main/webapp/scripts/modules/XAOverrides.js  |  2 +-
 .../scripts/modules/globalize/message/en.js     |  9 ++-
 .../src/main/webapp/scripts/utils/XAEnums.js    |  8 +++
 .../src/main/webapp/scripts/utils/XAGlobals.js  | 27 ++++-----
 .../src/main/webapp/scripts/utils/XAUtils.js    | 54 ++++++++++++++---
 .../main/webapp/scripts/views/common/TopNav.js  | 25 ++++++++
 .../views/permissions/ModulePermissionCreate.js | 30 ----------
 .../webapp/scripts/views/reports/AuditLayout.js | 33 ++++-------
 security-admin/src/main/webapp/styles/xa.css    |  4 ++
 .../webapp/templates/common/TopNav_tmpl.html    | 62 +++++++++++---------
 .../reports/AssetOperationDiff_tmpl.html        |  4 +-
 .../reports/AssetUpdateOperationDiff_tmpl.html  |  2 +-
 .../templates/service/ServiceCreate_tmpl.html   |  4 +-
 .../templates/service/ServiceForm_tmpl.html     |  2 +-
 23 files changed, 207 insertions(+), 179 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/7ed35a9b/security-admin/db/mysql/patches/013-permissionmodel.sql
----------------------------------------------------------------------
diff --git a/security-admin/db/mysql/patches/013-permissionmodel.sql 
b/security-admin/db/mysql/patches/013-permissionmodel.sql
index 4bf3e8e..ffd261b 100644
--- a/security-admin/db/mysql/patches/013-permissionmodel.sql
+++ b/security-admin/db/mysql/patches/013-permissionmodel.sql
@@ -25,7 +25,7 @@ CREATE TABLE `x_modules_master` (
 PRIMARY KEY (`id`)
 );
 
-INSERT INTO `x_modules_master` VALUES (1,now(),now(),1,1,'Policy 
Manager',''),(2,now(),now(),1,1,'Users/Groups',''),(3,now(),now(),1,1,'Analytics',''),(4,now(),now(),1,1,'Audit',''),(5,now(),now(),1,1,'KMS','');
+INSERT INTO `x_modules_master` VALUES (1,now(),now(),1,1,'Resource Based 
Policies',''),(2,now(),now(),1,1,'Users/Groups',''),(3,now(),now(),1,1,'Reports',''),(4,now(),now(),1,1,'Audit',''),(5,now(),now(),1,1,'Key
 Manager','');
 
 DROP TABLE IF EXISTS `x_user_module_perm`;
 CREATE TABLE `x_user_module_perm` (

http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/7ed35a9b/security-admin/db/oracle/patches/013-permissionmodel.sql
----------------------------------------------------------------------
diff --git a/security-admin/db/oracle/patches/013-permissionmodel.sql 
b/security-admin/db/oracle/patches/013-permissionmodel.sql
index 9504261..4ac7901 100644
--- a/security-admin/db/oracle/patches/013-permissionmodel.sql
+++ b/security-admin/db/oracle/patches/013-permissionmodel.sql
@@ -26,11 +26,11 @@ url VARCHAR(1024) DEFAULT NULL NULL,
 PRIMARY KEY (id)
 );
 COMMIT;
-INSERT INTO x_modules_master 
VALUES(X_MODULES_MASTER_SEQ.NEXTVAL,SYSDATE,SYSDATE,1,1,'Policy Manager','');
+INSERT INTO x_modules_master 
VALUES(X_MODULES_MASTER_SEQ.NEXTVAL,SYSDATE,SYSDATE,1,1,'Resource Based 
Policies','');
 INSERT INTO x_modules_master 
VALUES(X_MODULES_MASTER_SEQ.NEXTVAL,SYSDATE,SYSDATE,1,1,'Users/Groups','');
-INSERT INTO x_modules_master 
VALUES(X_MODULES_MASTER_SEQ.NEXTVAL,SYSDATE,SYSDATE,1,1,'Analytics','');
+INSERT INTO x_modules_master 
VALUES(X_MODULES_MASTER_SEQ.NEXTVAL,SYSDATE,SYSDATE,1,1,'Reports','');
 INSERT INTO x_modules_master 
VALUES(X_MODULES_MASTER_SEQ.NEXTVAL,SYSDATE,SYSDATE,1,1,'Audit','');
-INSERT INTO x_modules_master 
VALUES(X_MODULES_MASTER_SEQ.NEXTVAL,SYSDATE,SYSDATE,1,1,'KMS','');
+INSERT INTO x_modules_master 
VALUES(X_MODULES_MASTER_SEQ.NEXTVAL,SYSDATE,SYSDATE,1,1,'Key Manager','');
 COMMIT;
 CREATE SEQUENCE X_USER_MODULE_PERM_SEQ START WITH 1 INCREMENT BY 1 NOCACHE 
NOCYCLE;
 CREATE TABLE x_user_module_perm(

http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/7ed35a9b/security-admin/db/postgres/xa_core_db_postgres.sql
----------------------------------------------------------------------
diff --git a/security-admin/db/postgres/xa_core_db_postgres.sql 
b/security-admin/db/postgres/xa_core_db_postgres.sql
index ac54aa8..577f2a2 100644
--- a/security-admin/db/postgres/xa_core_db_postgres.sql
+++ b/security-admin/db/postgres/xa_core_db_postgres.sql
@@ -931,11 +931,11 @@ url VARCHAR(1024) DEFAULT NULL NULL,
 PRIMARY KEY(id)
 );
 
-INSERT INTO 
x_modules_master(create_time,update_time,added_by_id,upd_by_id,module,url) 
VALUES(current_timestamp,current_timestamp,1,1,'Policy Manager','');
+INSERT INTO 
x_modules_master(create_time,update_time,added_by_id,upd_by_id,module,url) 
VALUES(current_timestamp,current_timestamp,1,1,'Resource Based Policies','');
 INSERT INTO 
x_modules_master(create_time,update_time,added_by_id,upd_by_id,module,url) 
VALUES(current_timestamp,current_timestamp,1,1,'Users/Groups','');
-INSERT INTO 
x_modules_master(create_time,update_time,added_by_id,upd_by_id,module,url) 
VALUES(current_timestamp,current_timestamp,1,1,'Analytics','');
+INSERT INTO 
x_modules_master(create_time,update_time,added_by_id,upd_by_id,module,url) 
VALUES(current_timestamp,current_timestamp,1,1,'Reports','');
 INSERT INTO 
x_modules_master(create_time,update_time,added_by_id,upd_by_id,module,url) 
VALUES(current_timestamp,current_timestamp,1,1,'Audit','');
-INSERT INTO 
x_modules_master(create_time,update_time,added_by_id,upd_by_id,module,url) 
VALUES(current_timestamp,current_timestamp,1,1,'KMS','');
+INSERT INTO 
x_modules_master(create_time,update_time,added_by_id,upd_by_id,module,url) 
VALUES(current_timestamp,current_timestamp,1,1,'Key Manager','');
 
 DROP TABLE IF EXISTS x_user_module_perm CASCADE;
 DROP SEQUENCE IF EXISTS x_user_module_perm_seq;

http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/7ed35a9b/security-admin/db/sqlserver/xa_core_db_sqlserver.sql
----------------------------------------------------------------------
diff --git a/security-admin/db/sqlserver/xa_core_db_sqlserver.sql 
b/security-admin/db/sqlserver/xa_core_db_sqlserver.sql
index af0241c..87b8171 100644
--- a/security-admin/db/sqlserver/xa_core_db_sqlserver.sql
+++ b/security-admin/db/sqlserver/xa_core_db_sqlserver.sql
@@ -2752,15 +2752,15 @@ CREATE NONCLUSTERED INDEX 
[x_grp_module_perm_idx_moduleid] ON [x_group_module_pe
 )
 WITH (SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, IGNORE_DUP_KEY = OFF, ONLINE 
= OFF) ON [PRIMARY]
 GO
-INSERT INTO 
x_modules_master(create_time,update_time,added_by_id,upd_by_id,module,url) 
VALUES(CURRENT_TIMESTAMP,CURRENT_TIMESTAMP,1,1,'Policy Manager','');
+INSERT INTO 
x_modules_master(create_time,update_time,added_by_id,upd_by_id,module,url) 
VALUES(CURRENT_TIMESTAMP,CURRENT_TIMESTAMP,1,1,'Resource Based Policies','');
 GO
 INSERT INTO 
x_modules_master(create_time,update_time,added_by_id,upd_by_id,module,url) 
VALUES(CURRENT_TIMESTAMP,CURRENT_TIMESTAMP,1,1,'Users/Groups','');
 GO
-INSERT INTO 
x_modules_master(create_time,update_time,added_by_id,upd_by_id,module,url) 
VALUES(CURRENT_TIMESTAMP,CURRENT_TIMESTAMP,1,1,'Analytics','');
+INSERT INTO 
x_modules_master(create_time,update_time,added_by_id,upd_by_id,module,url) 
VALUES(CURRENT_TIMESTAMP,CURRENT_TIMESTAMP,1,1,'Reports','');
 GO
 INSERT INTO 
x_modules_master(create_time,update_time,added_by_id,upd_by_id,module,url) 
VALUES(CURRENT_TIMESTAMP,CURRENT_TIMESTAMP,1,1,'Audit','');
 GO
-INSERT INTO 
x_modules_master(create_time,update_time,added_by_id,upd_by_id,module,url) 
VALUES(CURRENT_TIMESTAMP,CURRENT_TIMESTAMP,1,1,'KMS','');
+INSERT INTO 
x_modules_master(create_time,update_time,added_by_id,upd_by_id,module,url) 
VALUES(CURRENT_TIMESTAMP,CURRENT_TIMESTAMP,1,1,'Key Manager','');
 GO
 insert into x_portal_user 
(CREATE_TIME,UPDATE_TIME,FIRST_NAME,LAST_NAME,PUB_SCR_NAME,LOGIN_ID,PASSWORD,EMAIL,STATUS)
 values 
(CURRENT_TIMESTAMP,CURRENT_TIMESTAMP,'rangerusersync','','rangerusersync','rangerusersync','70b8374d3dfe0325aaa5002a688c7e3b','rangerusersync',1);
 GO

http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/7ed35a9b/security-admin/src/main/java/org/apache/ranger/biz/XUserMgr.java
----------------------------------------------------------------------
diff --git a/security-admin/src/main/java/org/apache/ranger/biz/XUserMgr.java 
b/security-admin/src/main/java/org/apache/ranger/biz/XUserMgr.java
index 49be508..4d649c2 100644
--- a/security-admin/src/main/java/org/apache/ranger/biz/XUserMgr.java
+++ b/security-admin/src/main/java/org/apache/ranger/biz/XUserMgr.java
@@ -266,20 +266,20 @@ public class XUserMgr extends XUserMgrBase {
                        if (role.equals(RangerConstants.ROLE_USER)) {
 
                                insertMappingUserPermisson(vXPortalUser.getId(),
-                                               
moduleNameId.get(RangerConstants.MODULE_ANALYTICS),
+                                               
moduleNameId.get(RangerConstants.MODULE_RESOURCE_BASED_POLICIES),
                                                isCreate);
                                insertMappingUserPermisson(
                                                vXPortalUser.getId(),
-                                               
moduleNameId.get(RangerConstants.MODULE_POLICY_MANAGER),
+                                               
moduleNameId.get(RangerConstants.MODULE_REPORTS),
                                                isCreate);
                        } else if (role.equals(RangerConstants.ROLE_SYS_ADMIN)) 
{
 
                                insertMappingUserPermisson(vXPortalUser.getId(),
-                                               
moduleNameId.get(RangerConstants.MODULE_ANALYTICS),
+                                               
moduleNameId.get(RangerConstants.MODULE_REPORTS),
                                                isCreate);
                                insertMappingUserPermisson(
                                                vXPortalUser.getId(),
-                                               
moduleNameId.get(RangerConstants.MODULE_POLICY_MANAGER),
+                                               
moduleNameId.get(RangerConstants.MODULE_RESOURCE_BASED_POLICIES),
                                                isCreate);
                                insertMappingUserPermisson(vXPortalUser.getId(),
                                                
moduleNameId.get(RangerConstants.MODULE_AUDIT),
@@ -295,16 +295,13 @@ public class XUserMgr extends XUserMgrBase {
                                                isCreate);
                        } else if (role.equals(RangerConstants.ROLE_KEY_ADMIN)) 
{
                                insertMappingUserPermisson(vXPortalUser.getId(),
-                                               
moduleNameId.get(RangerConstants.MODULE_KMS), isCreate);
+                                               
moduleNameId.get(RangerConstants.MODULE_KEY_MANAGER), isCreate);
                                insertMappingUserPermisson(vXPortalUser.getId(),
-                                               
moduleNameId.get(RangerConstants.MODULE_ANALYTICS),
+                                               
moduleNameId.get(RangerConstants.MODULE_REPORTS),
                                                isCreate);
                                insertMappingUserPermisson(
                                                vXPortalUser.getId(),
-                                               
moduleNameId.get(RangerConstants.MODULE_POLICY_MANAGER),
-                                               isCreate);
-                               insertMappingUserPermisson(vXPortalUser.getId(),
-                                               
moduleNameId.get(RangerConstants.MODULE_AUDIT),
+                                               
moduleNameId.get(RangerConstants.MODULE_RESOURCE_BASED_POLICIES),
                                                isCreate);
                        }
 

http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/7ed35a9b/security-admin/src/main/java/org/apache/ranger/common/RangerConstants.java
----------------------------------------------------------------------
diff --git 
a/security-admin/src/main/java/org/apache/ranger/common/RangerConstants.java 
b/security-admin/src/main/java/org/apache/ranger/common/RangerConstants.java
index a3a9c7b..c65981b 100644
--- a/security-admin/src/main/java/org/apache/ranger/common/RangerConstants.java
+++ b/security-admin/src/main/java/org/apache/ranger/common/RangerConstants.java
@@ -66,12 +66,12 @@ public class RangerConstants extends RangerCommonEnums {
        public static final String SENDGRID_REPLY_TO = "replyto";
 
        //Permission Names
-       public static final String MODULE_POLICY_MANAGER="Policy Manager";
+       public static final String MODULE_RESOURCE_BASED_POLICIES="Resource 
Based Policies";
        public static final String MODULE_USER_GROUPS="Users/Groups";
-       public static final String MODULE_ANALYTICS="Analytics";
+       public static final String MODULE_REPORTS="Reports";
        public static final String MODULE_AUDIT="Audit";
        public static final String MODULE_PERMISSION="Permissions";
-       public static final String MODULE_KMS="KMS";
+       public static final String MODULE_KEY_MANAGER="Key Manager";
 
        // User create validation errors
        public enum ValidationUserProfile {

http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/7ed35a9b/security-admin/src/main/webapp/scripts/controllers/Controller.js
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/scripts/controllers/Controller.js 
b/security-admin/src/main/webapp/scripts/controllers/Controller.js
index 60f8976..ec7ccee 100755
--- a/security-admin/src/main/webapp/scripts/controllers/Controller.js
+++ b/security-admin/src/main/webapp/scripts/controllers/Controller.js
@@ -57,7 +57,7 @@ define(function(require) {
           
           //************** Analytics(reports)  Related *********************/
           userAccessReportAction : function(){
-                  MAppState.set({ 'currentTab' : 
XAGlobals.AppTabs.Analytics.value });
+                  MAppState.set({ 'currentTab' : 
XAGlobals.AppTabs.AccessManager.value });
                   var view                             = 
require('views/reports/UserAccessLayout');
                   var RangerPolicyList         = 
require('collections/RangerPolicyList');
                   var VXGroupList              = 
require('collections/VXGroupList');
@@ -132,7 +132,7 @@ define(function(require) {
           /************** UserORGroups Related *********************/
           userManagerAction :function(tab){
                   MAppState.set({
-                               'currentTab' : XAGlobals.AppTabs.Users.value
+                               'currentTab' : XAGlobals.AppTabs.Settings.value
                        });
                   var view             = 
require('views/users/UserTableLayout');
                   var VXUserList       = require('collections/VXUserList');
@@ -148,7 +148,7 @@ define(function(require) {
           },
           userCreateAction : function(){
                   MAppState.set({
-                               'currentTab' : XAGlobals.AppTabs.Users.value
+                               'currentTab' : XAGlobals.AppTabs.Settings.value
                        });
                   var view             = require('views/users/UserCreate');
                   var VXUser           = require('models/VXUser');
@@ -167,7 +167,7 @@ define(function(require) {
           },
           userEditAction : function(userId){
                   MAppState.set({
-                               'currentTab' : XAGlobals.AppTabs.Users.value
+                               'currentTab' : XAGlobals.AppTabs.Settings.value
                        });
                   var view             = require('views/users/UserCreate');
                   var VXUser           = require('models/VXUser');
@@ -184,7 +184,7 @@ define(function(require) {
           },
           groupCreateAction : function(){
                   MAppState.set({
-                               'currentTab' : XAGlobals.AppTabs.Users.value
+                               'currentTab' : XAGlobals.AppTabs.Settings.value
                        });
                   var view             = require('views/users/GroupCreate');
                   var VXGroup          = require('models/VXGroup');
@@ -198,7 +198,7 @@ define(function(require) {
           },
           groupEditAction : function(groupId){
                   MAppState.set({
-                               'currentTab' : XAGlobals.AppTabs.Users.value
+                               'currentTab' : XAGlobals.AppTabs.Settings.value
                        });
                   var view             = require('views/users/GroupCreate');
                   var VXGroup          = require('models/VXGroup');
@@ -220,7 +220,7 @@ define(function(require) {
           /************************************************************/
 
           serviceManagerAction :function(){
-                  MAppState.set({ 'currentTab' : 
XAGlobals.AppTabs.PolicyManager.value });
+                  MAppState.set({ 'currentTab' : 
XAGlobals.AppTabs.AccessManager.value });
                   console.log('Policy Manager action called..');
                   var view                             = 
require('views/policymanager/ServiceLayout');
                   var RangerServiceDefList     = 
require('collections/RangerServiceDefList');
@@ -240,7 +240,7 @@ define(function(require) {
           },
 
           serviceCreateAction :function(serviceTypeId){
-          MAppState.set({ 'currentTab' : XAGlobals.AppTabs.PolicyManager.value 
});
+          MAppState.set({ 'currentTab' : XAGlobals.AppTabs.AccessManager.value 
});
                   var view                             = 
require('views/service/ServiceCreate');
                   var RangerServiceDef = require('models/RangerServiceDef');
                   var RangerService    = require('models/RangerService');
@@ -254,7 +254,7 @@ define(function(require) {
                   }));
           },
           serviceEditAction :function(serviceTypeId, serviceId){
-          MAppState.set({ 'currentTab' : XAGlobals.AppTabs.PolicyManager.value 
});
+          MAppState.set({ 'currentTab' : XAGlobals.AppTabs.AccessManager.value 
});
                   var view                             = 
require('views/service/ServiceCreate');
                   var RangerServiceDef = require('models/RangerServiceDef');
                   var RangerService    = require('models/RangerService');
@@ -273,7 +273,7 @@ define(function(require) {
           },
           
           policyManageAction :function(serviceId){
-                  MAppState.set({ 'currentTab' : 
XAGlobals.AppTabs.PolicyManager.value });
+                  MAppState.set({ 'currentTab' : 
XAGlobals.AppTabs.AccessManager.value });
                   var XAUtil                   = require('utils/XAUtils');
                   var view                     = 
require('views/policies/RangerPolicyTableLayout');
                   var RangerService    = require('models/RangerService');
@@ -296,7 +296,7 @@ define(function(require) {
                   }));
           },
           RangerPolicyCreateAction :function(serviceId){
-          MAppState.set({ 'currentTab' : XAGlobals.AppTabs.PolicyManager.value 
});
+          MAppState.set({ 'currentTab' : XAGlobals.AppTabs.AccessManager.value 
});
 
                   var view                     = 
require('views/policies/RangerPolicyCreate');
                   var RangerService    = require('models/RangerService');
@@ -313,7 +313,7 @@ define(function(require) {
                   });
           },
           RangerPolicyEditAction :function(serviceId, policyId){
-          MAppState.set({ 'currentTab' : XAGlobals.AppTabs.PolicyManager.value 
});
+          MAppState.set({ 'currentTab' : XAGlobals.AppTabs.AccessManager.value 
});
 
                   var view                     = 
require('views/policies/RangerPolicyCreate');
                   var RangerService    = require('models/RangerService');
@@ -336,7 +336,7 @@ define(function(require) {
           },
           /************PERMISSIONS LISTING 
*****************************************/
           modulePermissionsAction :function(){
-                  MAppState.set({ 'currentTab' : 
XAGlobals.AppTabs.Permissions.value });
+                  MAppState.set({ 'currentTab' : 
XAGlobals.AppTabs.Settings.value });
                   var view                     = 
require('views/permissions/ModulePermsTableLayout');
                   var ModulePermission = require('models/VXModuleDef');
                   var ModulePermissionList     = 
require('collections/VXModuleDefList');
@@ -354,7 +354,7 @@ define(function(require) {
           },
           modulePermissionEditAction : function(moduleId){
                   MAppState.set({
-                               'currentTab' : 
XAGlobals.AppTabs.Permissions.value
+                               'currentTab' : XAGlobals.AppTabs.Settings.value
                        });
                   var view                             = 
require('views/permissions/ModulePermissionCreate');
                   var ModulePermission         = require('models/VXModuleDef');
@@ -371,29 +371,16 @@ define(function(require) {
                   });
           },
           postLoginDefaultView : function(){
-                var SessionMgr  = require('mgrs/SessionMgr');
-                var XAGlobals   = require('utils/XAGlobals');
-                var XALinks             = require('modules/XALinks');
-                var vXPortalUser = SessionMgr.getUserProfile();
-                var userModuleNames = 
_.pluck(vXPortalUser.get('userPermList'),'moduleName');
-                if (_.contains(userModuleNames, 'Policy Manager')){
-                        location.hash = XALinks.get('ServiceManager').href;
-                }else if(_.contains(userModuleNames, 'Users/Groups')){
-                        location.hash = XALinks.get('Users').href;
-                }else if(_.contains(userModuleNames, 'Analytics')){
-                        location.hash = XALinks.get('UserAccessReport').href;
-                }else if(_.contains(userModuleNames, 'Audit')){
-                        location.hash = XALinks.get('AuditReport').href 
+'/bigData';
-               }else if(SessionMgr.isSystemAdmin()){
-                       location.hash = XALinks.get('ModulePermissions').href;
-               }else{
-                       //If a user doesnot has access to any tab - taking user 
to by default Profile page.
-                       location.hash = XALinks.get('UserProfile').href;
-               }
-           },
+                  var SessionMgr  = require('mgrs/SessionMgr');
+                  var XAGlobals   = require('utils/XAGlobals');
+                  var XAUtils     = require('utils/XAUtils');
+                  var vXPortalUser = SessionMgr.getUserProfile();
+                  var userModuleNames = 
_.pluck(vXPortalUser.get('userPermList'),'moduleName');
+                  XAUtils.setLocationHash(userModuleNames);
+       },
           /************** KMS *********************/
           kmsManagerAction :function(kmsManagePage, kmsServiceName){
-                  MAppState.set({ 'currentTab' : XAGlobals.AppTabs.KMS.value 
});
+                  MAppState.set({ 'currentTab' : 
XAGlobals.AppTabs.Encryption.value });
                   var view             = require('views/kms/KMSTableLayout');
                   var KmsKeyList       = require('collections/VXKmsKeyList');
                   App.rContent.show(new view({
@@ -403,7 +390,7 @@ define(function(require) {
                   }));
           },
           kmsKeyCreateAction : function(kmsServiceName){
-                  MAppState.set({ 'currentTab' : XAGlobals.AppTabs.KMS.value 
});
+                  MAppState.set({ 'currentTab' : 
XAGlobals.AppTabs.Encryption.value });
                   var view             = require('views/kms/KmsKeyCreate');
                   var KmsKey           = require('models/VXKmsKey');
                   

http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/7ed35a9b/security-admin/src/main/webapp/scripts/models/RangerServiceDef.js
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/scripts/models/RangerServiceDef.js 
b/security-admin/src/main/webapp/scripts/models/RangerServiceDef.js
index e628ee5..f76938d 100644
--- a/security-admin/src/main/webapp/scripts/models/RangerServiceDef.js
+++ b/security-admin/src/main/webapp/scripts/models/RangerServiceDef.js
@@ -57,7 +57,7 @@ define(function(require){
                        return _.extend(attrs,{
                                name : {
                                        type            : 'Text',
-                                       title           : 'Repository Name *',
+                                       title           : 'Service Name *',
                                        validators      : ['required'],
                                        editorAttrs     :{ maxlength: 255},
 

http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/7ed35a9b/security-admin/src/main/webapp/scripts/modules/XALinks.js
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/scripts/modules/XALinks.js 
b/security-admin/src/main/webapp/scripts/modules/XALinks.js
index b4d4483..efa3454 100755
--- a/security-admin/src/main/webapp/scripts/modules/XALinks.js
+++ b/security-admin/src/main/webapp/scripts/modules/XALinks.js
@@ -110,12 +110,12 @@ define(function(require) {
                                title: 'h.managePolices'
                        },
                        PolicyCreate: { 
-                               href : '#!/policy/create',
+                               href : 'javascipt:;',
                                text: 'h.createPolicy',
                                title: 'h.createPolicy'
                        },
                        PolicyEdit: { 
-                               href : '#!/policy/create',
+                               href : 'javascipt:;',
                                text: 'h.editPolicy',
                                title: 'h.editPolicy'
                        },
@@ -198,8 +198,8 @@ define(function(require) {
                                }
                                return {
                                        href : href,
-                                       text : 'lbl.editAsset',
-                                       title: 'lbl.editAsset'
+                                       text : 'lbl.editService',
+                                       title: 'lbl.editService'
                                };
                        },
 
@@ -210,8 +210,8 @@ define(function(require) {
                                }
                                return {
                                        href : href,
-                                       text : 'lbl.createAsset',
-                                       title: 'lbl.createAsset'
+                                       text : 'lbl.createService',
+                                       title: 'lbl.createService'
                                };
                        },
                        ServiceEdit : function(options){
@@ -224,8 +224,8 @@ define(function(require) {
                                }
                                return {
                                        href : href,
-                                       text : 'lbl.editAsset',
-                                       title: 'lbl.editAsset'
+                                       text : 'lbl.editService',
+                                       title: 'lbl.editService'
                                };
                        },
                        ManagePolicies : function(options){

http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/7ed35a9b/security-admin/src/main/webapp/scripts/modules/XAOverrides.js
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/scripts/modules/XAOverrides.js 
b/security-admin/src/main/webapp/scripts/modules/XAOverrides.js
index 2d36a98..b7af13a 100644
--- a/security-admin/src/main/webapp/scripts/modules/XAOverrides.js
+++ b/security-admin/src/main/webapp/scripts/modules/XAOverrides.js
@@ -480,7 +480,7 @@
                                                }
                                                //reset values
                                                that.value.isExcludes = false;
-                                               that.value.isRecursive = true;
+                                               that.value.isRecursive = false;
                                                
that.$excludeSupport.trigger('toggleOn');
                                                
that.$recursiveSupport.trigger('toggleOn');
                                                
($(e.currentTarget).addClass('dirtyField'))

http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/7ed35a9b/security-admin/src/main/webapp/scripts/modules/globalize/message/en.js
----------------------------------------------------------------------
diff --git 
a/security-admin/src/main/webapp/scripts/modules/globalize/message/en.js 
b/security-admin/src/main/webapp/scripts/modules/globalize/message/en.js
index 30450e2..8532152 100644
--- a/security-admin/src/main/webapp/scripts/modules/globalize/message/en.js
+++ b/security-admin/src/main/webapp/scripts/modules/globalize/message/en.js
@@ -223,7 +223,10 @@ define(function(require) {
                                version                                         
        : 'Version',
                                attributes                                      
        : 'Attributes',
                                material                                        
        : 'Material',
-                               addNewConfig                                    
: 'Add New Configurations'
+                               addNewConfig                                    
: 'Add New Configurations',
+                               createService                                   
: 'Create Service',
+                               editService                                     
        : 'Edit Service',
+                               serviceDetails                                  
: 'Service Details'
                        },
                        btn : {
                                add                                             
        : 'Add',
@@ -287,8 +290,10 @@ define(function(require) {
                                permissions                                     
: 'Permissions',
                                kms                                             
        : 'KMS',
                                keyCreate                                       
: 'Key Create',
-                               keyEdit                                 : 'Key 
Edit',
+                               keyEdit                                         
: 'Key Edit',
                                searchForKeys                           
:"Search for your keys...",
+                               encryption                                      
: 'Encryption',
+                               settings                                        
: 'Settings',
                                
                                
                        },

http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/7ed35a9b/security-admin/src/main/webapp/scripts/utils/XAEnums.js
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/scripts/utils/XAEnums.js 
b/security-admin/src/main/webapp/scripts/utils/XAEnums.js
index 1e619a0..98cc0c8 100644
--- a/security-admin/src/main/webapp/scripts/utils/XAEnums.js
+++ b/security-admin/src/main/webapp/scripts/utils/XAEnums.js
@@ -355,6 +355,14 @@ define(function(require) {
                
         
        });
+       
+       XAEnums.MenuPermissions =  mergeParams(XAEnums.MenuPermissions, {
+               XA_RESOURCE_BASED_POLICIES:{value:0, label:'Resource Based 
Policies', rbkey:'xa.enum.MenuPermissions.XA_RESOURCE_BASED_POLICIES', tt: 
'lbl.XAPermForType_XA_PERM_FOR_UNKNOWN'},
+               XA_USER_GROUPS:{value:1, label:'Users/Groups', 
rbkey:'xa.enum.MenuPermissions.XA_USER_GROUP', tt: 
'lbl.XAPermForType_XA_PERM_FOR_USER'},
+               XA_REPORTS:{value:2, label:'Reports', 
rbkey:'xa.enum.MenuPermissions.XA_REPORTS', tt: 
'lbl.XAPermForType_XA_PERM_FOR_GROUP'},
+               XA_AUDITS:{value:3, label:'Audit', 
rbkey:'xa.enum.MenuPermissions.XA_AUDITS', tt: 
'lbl.XAPermForType_XA_PERM_FOR_GROUP'},
+               XA_KEY_MANAGER:{value:4, label:'Key Manager', 
rbkey:'xa.enum.MenuPermissions.XA_KEY_MANAGER', tt: 
'lbl.XAPermForType_XA_PERM_FOR_GROUP'}
+       });
 
        return XAEnums;
 });
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/7ed35a9b/security-admin/src/main/webapp/scripts/utils/XAGlobals.js
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/scripts/utils/XAGlobals.js 
b/security-admin/src/main/webapp/scripts/utils/XAGlobals.js
index 1de57bc..21b3cb4 100644
--- a/security-admin/src/main/webapp/scripts/utils/XAGlobals.js
+++ b/security-admin/src/main/webapp/scripts/utils/XAGlobals.js
@@ -44,13 +44,11 @@ define(function(require){
        XAGlobals.version = 0;//0 : production version 1: any other
        XAGlobals.AppTabs = {
                        Dashboard                       : { value:1, valStr: 
'Dashboard'},
-                       PolicyManager           : { value:2, valStr: 'Policy'},
-                       Users                           : { value:3, valStr: 
'Users'},
-                       Analytics                       : { value:4, valStr: 
'Analytics'},
-                       Audit                           : { value:5, valStr: 
'Audit'},
-                       Permissions                     : { value:6, 
valStr:'Permissions'},
-                       KMS                                     : { value:7, 
valStr: 'KMS'},
-                       None                            : { value:8, valStr: 
'None'}
+                       AccessManager           : { value:2, valStr: 'Access 
Manager'},
+                       Audit                           : { value:3, valStr: 
'Audit'},
+                       Encryption                      : { value:4, valStr: 
'Encryption'},
+                       Settings                        : { value:5, valStr: 
'Settings'},
+                       None                            : { value:6, valStr: 
'None'}
                };
 
        XAGlobals.BooleanValue = {
@@ -65,12 +63,13 @@ define(function(require){
                                           
'groupEditAction','auditReportAction','loginSessionDetail','serviceCreateAction','serviceEditAction','modulePermissionsAction','modulePermissionEditAction'];
        
        XAGlobals.ListOfModuleActions = {
-                                                                         
'Policy 
Manager':['serviceManagerAction','serviceCreateAction','serviceEditAction', 
'policyManageAction','RangerPolicyCreateAction','RangerPolicyEditAction'],
-                                         'Users/Groups' : 
['userManagerAction','userCreateAction','userEditAction','groupCreateAction','groupEditAction'],
-                                         'Analytics'    : 
['userAccessReportAction'],
-                                         'Audit'                : 
['auditReportAction','loginSessionDetail'],
-                                         'Permissions'  : 
['modulePermissionsAction','modulePermissionEditAction'],
-                                         'KMS'                  : 
['kmsManagerAction','kmsKeyCreateAction']
-                                       };
+                       'Access Manager' : { 'Resource Based Policies' : 
['serviceManagerAction','serviceCreateAction','serviceEditAction', 
'policyManageAction','RangerPolicyCreateAction','RangerPolicyEditAction'],
+                                                                'Reports' : 
['userAccessReportAction'] },
+                       'Audit'                  : 
['auditReportAction','loginSessionDetail'],
+                       'Encryption'     : {'Key Manager' : 
['kmsManagerAction','kmsKeyCreateAction'] },
+                       'Settings'               : {'Users/Groups' : 
['userManagerAction','userCreateAction','userEditAction','groupCreateAction','groupEditAction'],
+                                                               'Permissions' : 
['modulePermissionsAction','modulePermissionEditAction'] },
+               };
+       
        return XAGlobals;
 });

http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/7ed35a9b/security-admin/src/main/webapp/scripts/utils/XAUtils.js
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/scripts/utils/XAUtils.js 
b/security-admin/src/main/webapp/scripts/utils/XAUtils.js
index b87ff51..89668a2 100644
--- a/security-admin/src/main/webapp/scripts/utils/XAUtils.js
+++ b/security-admin/src/main/webapp/scripts/utils/XAUtils.js
@@ -1009,17 +1009,35 @@ define(function(require) {
                        var that = this;
                        var vXPortalUser = SessionMgr.getUserProfile();
                        var denyControllerActions = [];
-                       var userModuleNames = 
_.pluck(vXPortalUser.get('userPermList'),
-                                       'moduleName');
-                       var groupModuleNames = _.pluck(
-                                       vXPortalUser.get('groupPermissions'), 
'moduleName');
+                       var denyModulesObj = [];
+                       var userModuleNames = 
_.pluck(vXPortalUser.get('userPermList'),'moduleName');
+                       var groupModuleNames = 
_.pluck(vXPortalUser.get('groupPermissions'), 'moduleName');
                        var moduleNames = _.union(userModuleNames, 
groupModuleNames);
-                       var denyModulesObj = 
_.omit(XAGlobals.ListOfModuleActions,
-                                       moduleNames);
+                       //TODO
+                       /*if($.inArray('Policy Manager',moduleNames) >= 0){
+                               moduleNames.push('Resource Based Policies')
+                       }
+                       if($.inArray('Analytics',moduleNames) >= 0){
+                               moduleNames.push('Reports')
+                       }
+                       if($.inArray('KMS',moduleNames) >= 0){
+                               moduleNames.push('Key Manager')
+                       }*/
+                       _.each(XAGlobals.ListOfModuleActions,function(val,key){
+                               if(!_.isArray(val)){
+                                       _.each(val,function(val1,key1){
+                                               if($.inArray(key1,moduleNames) 
< 0){
+                                                       denyModulesObj = 
val1.concat(denyModulesObj)
+                                               }
+                                       });
+                               }else{
+                                       if($.inArray(key,moduleNames) < 0){
+                                               denyModulesObj = 
val.concat(denyModulesObj)
+                                       }
+                               }
+                       });
                        if (!_.isEmpty(denyModulesObj)) {
-                               _.each(denyModulesObj, function(deniedModule) {
-                                       
denyControllerActions.push(_.values(deniedModule));
-                               });
+                               
denyControllerActions.push(_.values(denyModulesObj));
                                denyControllerActions = 
_.flatten(denyControllerActions);
                        }
 
@@ -1041,5 +1059,23 @@ define(function(require) {
        XAUtils.getRangerServiceByName = function(name) {
                return "service/plugins/services/name/" + name;
        };
+       XAUtils.setLocationHash = function(userModuleNames) {
+               var XALinks     = require('modules/XALinks');
+               var SessionMgr  = require('mgrs/SessionMgr');
+               if (_.contains(userModuleNames, 
XAEnums.MenuPermissions.XA_RESOURCE_BASED_POLICIES.label)){
+                          location.hash = XALinks.get('ServiceManager').href;
+                  }else 
if(_.contains(userModuleNames,XAEnums.MenuPermissions.XA_USER_GROUPS.label)){
+                      location.hash = XALinks.get('Users').href;
+                  }else if(_.contains(userModuleNames, 
XAEnums.MenuPermissions.XA_REPORTS.label)){
+                      location.hash = XALinks.get('UserAccessReport').href;
+                  }else if(_.contains(userModuleNames, 
XAEnums.MenuPermissions.XA_AUDITS.label)){
+                      location.hash = XALinks.get('AuditReport').href 
+'/bigData';
+                  }else if(SessionMgr.isSystemAdmin()){
+                          location.hash = 
XALinks.get('ModulePermissions').href;
+                  }else{
+                               //If a user doesnot has access to any tab - 
taking user to by default Profile page.
+                          location.hash = XALinks.get('UserProfile').href;
+                  }
+       }
        return XAUtils;
 });

http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/7ed35a9b/security-admin/src/main/webapp/scripts/views/common/TopNav.js
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/scripts/views/common/TopNav.js 
b/security-admin/src/main/webapp/scripts/views/common/TopNav.js
index 7e34aa4..0e7c6e9 100644
--- a/security-admin/src/main/webapp/scripts/views/common/TopNav.js
+++ b/security-admin/src/main/webapp/scripts/views/common/TopNav.js
@@ -73,6 +73,28 @@ define(function(require){
                                that.$('ul li:first').addClass('active');
                        });
                        $.cookie('clientTimeOffset', new 
Date().getTimezoneOffset());
+                       
+                       //To hide top menu when user don't have access to all 
it's sub menu's
+                       _.each($(this.$el.find('.page-nav ul')), function(ul) {
+                               if($(ul).find('li').length <= 0){
+                                       $(ul).parent('.dropdown').hide();
+                               }
+                       });
+                       
+                       //Set TopMenu href's
+                       var pageNavUl= this.$el.find('.page-nav')
+                       _.each(pageNavUl.find('.dropdown'),function(li){
+                               var href = $(li).find('.dropdown-menu 
li').first().find('a').attr('href')
+                               var menuAnchor = 
$(li).find('.dropdown-menu').siblings();
+                               menuAnchor.attr('href',href);
+                       });
+                       
+                       this.$el.find(".dropdown").hover(function(e) {
+                                       $(e.currentTarget).children('').show();
+                               }, function(e) {
+                                       
$(e.currentTarget).children('ul').hide();
+                       });
+
                },
 
                /** all post render plugin initialization */
@@ -87,6 +109,9 @@ define(function(require){
                        this.$('ul li').removeClass('active');
                this.$('#nav' + 
this.appState.get('currentTab')).parent().addClass('active');
         },
+        mainManuURLS : function() {
+                       
+               },
                /** on close */
                onClose: function(){
                }

http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/7ed35a9b/security-admin/src/main/webapp/scripts/views/permissions/ModulePermissionCreate.js
----------------------------------------------------------------------
diff --git 
a/security-admin/src/main/webapp/scripts/views/permissions/ModulePermissionCreate.js
 
b/security-admin/src/main/webapp/scripts/views/permissions/ModulePermissionCreate.js
index 8a9ff83..7981d34 100644
--- 
a/security-admin/src/main/webapp/scripts/views/permissions/ModulePermissionCreate.js
+++ 
b/security-admin/src/main/webapp/scripts/views/permissions/ModulePermissionCreate.js
@@ -141,37 +141,7 @@ define(function(require){
                                        XAUtil.allowNavigation();
                                        var msg = that.editMode ? 'Module 
Permissions updated successfully' :'Module Permissions created successfully';
                                        XAUtil.notifySuccess('Success', msg);
-                                       if(that.editMode){
-                                               
App.appRouter.navigate("#!/permissions",{trigger: true});
-                                               return;
-                                       }
                                        
App.appRouter.navigate("#!/permissions",{trigger: true});
-
-                                       var modulePermissionList = new 
VXModuleDefList();
-
-                                  modulePermissionList.fetch({
-                                          cache:false
-                                  }).done(function(){
-                                               var newColl = 
modulePermissionList;
-                                               
modulePermissionList.getLastPage({
-                                                       cache : false,
-                                                       success : 
function(collection, response, options){
-                                                               
App.rContent.show(new UserTableLayout({
-                                                                       
collection : collection,
-                                                               }));
-                                                               newColl = 
collection;
-                                                       }
-                                               }).done(function(){
-                                                       var model = 
newColl.get(that.model.id);
-                                                       if(model){
-                                                               
model.trigger("model:highlightBackgridRow");
-                                                       }
-                                               });
-
-                                               App.rContent.show(new 
UserTableLayout({
-                                                       collection : 
modulePermissionList
-                                               }));
-                                  });
                                }   ,
                                error : function(model,resp){
                                        XAUtil.blockUI('unblock');

http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/7ed35a9b/security-admin/src/main/webapp/scripts/views/reports/AuditLayout.js
----------------------------------------------------------------------
diff --git 
a/security-admin/src/main/webapp/scripts/views/reports/AuditLayout.js 
b/security-admin/src/main/webapp/scripts/views/reports/AuditLayout.js
index 25d6d7e..2f418be 100644
--- a/security-admin/src/main/webapp/scripts/views/reports/AuditLayout.js
+++ b/security-admin/src/main/webapp/scripts/views/reports/AuditLayout.js
@@ -172,14 +172,13 @@ define(function(require) {
                                        <th class="renderable pid"></th>\
                                        <th class="renderable ruser"></th>\
                                        <th class="renderable ruser"></th>\
-                                       <th class="renderable 
cip">Repository</th>\
+                                       <th class="renderable cip">Service</th>\
                                        <th class="renderable name"  ></th>\
                                        <th class="renderable cip"></th>\
                                        <th class="renderable cip"></th>\
                                        <th class="renderable cip"> </th>\
                                        <th class="renderable aip" > </th>\
                                        <th class="renderable aip" > </th>\
-                                       <th class="renderable aip" > </th>\
                                </tr>');
                },
                renderDateFields : function(){
@@ -266,14 +265,14 @@ define(function(require) {
                        var serverListForRepoType =  
this.serviceDefList.map(function(serviceDef){ return {'label' : 
serviceDef.get('name').toUpperCase(), 'value' : serviceDef.get('id')}; })
                        var serverAttrName = [{text : 'Start Date',label 
:'startDate'},{text : 'End Date',label :'endDate'},
                                              {text : 'Today',label 
:'today'},{text : 'User',label :'requestUser'},
-                                             {text : 'Resource Name',label 
:'resourcePath'},{text : 'Policy ID',label :'policyId'},
-                                             {text : 'Resource Type',label 
:'resourceType'},{text : 'Repository Name',label :'repoName'},
-                                             {text : 'Repository Type',label 
:'repoType','multiple' : true, 'optionsArr' : serverListForRepoType},
+                                             {text : 'Service Name',label 
:'resourcePath'},{text : 'Policy ID',label :'policyId'},
+                                             {text : 'Resource Type',label 
:'resourceType'},{text : 'Service Name',label :'repoName'},
+                                             {text : 'Service Type',label 
:'repoType','multiple' : true, 'optionsArr' : serverListForRepoType},
                                              {text : 'Result',label 
:'accessResult', 'multiple' : true, 'optionsArr' : 
XAUtils.enumToSelectLabelValuePairs(XAEnums.AccessResult)},
                                              {text : 'Access Type',label 
:'accessType'},{text : 'Access Enforcer',label :'aclEnforcer'},
                                              {text : 'Audit Type',label 
:'auditType'},{text : 'Session ID',label :'sessionId'},
                                              {text : 'Client IP',label 
:'clientIP'},{text : 'Client Type',label :'clientType'}];
-            var searchOpt = ['Start Date','End Date','User','Repository 
Name','Repository Type','Resource Name','Access Type','Result','Access 
Enforcer','Client IP'];//,'Policy ID'
+            var searchOpt = ['Start Date','End Date','User','Service 
Name','Service Type','Resource Name','Access Type','Result','Access 
Enforcer','Client IP'];//,'Policy ID'
             this.clearVisualSearch(this.accessAuditList, serverAttrName);
             
                        //'Resource Type','Audit Type','Session IP','Client 
Type','Today',
@@ -296,13 +295,13 @@ define(function(require) {
                                                });
                                                
                                                switch (facet) {
-                                                       case 'Repository Name':
+                                                       case 'Service Name':
                                                                var assetList   
= new VXAssetList();
                                                                
assetList.fetch().done(function(){
                                                                        
callback(assetList.map(function(model){return model.get('name');}));
                                                                });
                                                                break;
-                                                       case 'Repository Type':
+                                                       case 'Service Type':
                                                                var serviceList 
=  that.serviceDefList.map(function(serviceDef){ return {'label' : 
serviceDef.get('name').toUpperCase(), 'value' : 
serviceDef.get('name').toUpperCase()}; })
                                                                
callback(serviceList);
                                                                break;
@@ -467,11 +466,11 @@ define(function(require) {
                },
                addSearchForAgentTab : function(){
                        var that = this;
-                       var searchOpt = ["Export Date", "Repository Name", 
"Plugin Id", "Plugin IP", "Http Response Code"];
+                       var searchOpt = ["Export Date", "Service Name", "Plugin 
Id", "Plugin IP", "Http Response Code"];
                        searchOpt = _.without(searchOpt,'Export Date');
                        searchOpt = _.union(searchOpt, ['Start Date','End 
Date']);//'Today'
                        var serverAttrName  = [{text : "Plugin Id", label 
:"agentId"}, {text : "Plugin IP", label :"clientIP"},
-                                              {text : "Repository Name", label 
:"repositoryName"},{text : "Http Response Code", label :"httpRetCode"},
+                                              {text : "Service Name", label 
:"repositoryName"},{text : "Http Response Code", label :"httpRetCode"},
                                               {text : "Export Date", label 
:"createDate"},
                                               {text : 'Start Date',label 
:'startDate'},{text : 'End Date',label :'endDate'},
                                                   {text : 'Today',label 
:'today'}];
@@ -597,7 +596,7 @@ define(function(require) {
                                gridOpts : {
                                        row : TableRow,
                                        header : XABackgrid,
-                                       emptyText : 'No repository found!!'
+                                       emptyText : 'No service found!!'
                                }
                        }));    
                },
@@ -627,7 +626,7 @@ define(function(require) {
                                                        var action = 
model.get('action'), name = _.escape(model.get('objectName')),
                                                                label = 
XAUtils.enumValueToLabel(XAEnums.ClassTypes,rawValue), html = '';
                                                        if(rawValue == 
XAEnums.ClassTypes.CLASS_TYPE_XA_ASSET.value || rawValue == 
XAEnums.ClassTypes.CLASS_TYPE_RANGER_SERVICE.value)
-                                                               html =  
'Repository '+action+'d '+'<b>'+name+'</b>';
+                                                               html =  
'Service '+action+'d '+'<b>'+name+'</b>';
                                                        if(rawValue == 
XAEnums.ClassTypes.CLASS_TYPE_XA_RESOURCE.value|| rawValue == 
XAEnums.ClassTypes.CLASS_TYPE_RANGER_POLICY.value)
                                                                html =  'Policy 
'+action+'d '+'<b>'+name+'</b>';
                                                        if(rawValue == 
XAEnums.ClassTypes.CLASS_TYPE_XA_USER.value)
@@ -915,14 +914,6 @@ define(function(require) {
                                                sortable:false,
                                                editable:false
                                        },
-                                       eventDuration : {
-                                               label : 'Event Duration(ms)',
-                                               cell: "string",
-                                               click : false,
-                                               drag : false,
-                                               sortable:false,
-                                               editable:false
-                                       }
                        };
                        return 
this.accessAuditList.constructor.getTableCols(cols, this.accessAuditList);
                },
@@ -1072,7 +1063,7 @@ define(function(require) {
                                        },
                                        repositoryName : {
                                                cell : 'html',
-                                               label   : 
localization.tt('lbl.repositoryName'),
+                                               label   : 
localization.tt('lbl.serviceName'),
                                                editable:false,
                                                sortable:false,
                                                formatter: _.extend({}, 
Backgrid.CellFormatter.prototype, {

http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/7ed35a9b/security-admin/src/main/webapp/styles/xa.css
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/styles/xa.css 
b/security-admin/src/main/webapp/styles/xa.css
index 6b1d77f..ceb1f53 100644
--- a/security-admin/src/main/webapp/styles/xa.css
+++ b/security-admin/src/main/webapp/styles/xa.css
@@ -1835,3 +1835,7 @@ td.select-row-cell {
        float: left;
        margin: 2px;
 }
+
+#r_topNav .dropdown-menu {
+       margin:0;
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/7ed35a9b/security-admin/src/main/webapp/templates/common/TopNav_tmpl.html
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/templates/common/TopNav_tmpl.html 
b/security-admin/src/main/webapp/templates/common/TopNav_tmpl.html
index d59527c..876f9df 100644
--- a/security-admin/src/main/webapp/templates/common/TopNav_tmpl.html
+++ b/security-admin/src/main/webapp/templates/common/TopNav_tmpl.html
@@ -16,38 +16,44 @@
 --}}
 <div class="nav-collapse collapse" >
        <ul class="nav page-nav" >
-               <!-- <li class="active">
-                       <a href="#" id="nav1"><i class="icon-dashboard"></i> 
{{tt 'h.dashboard'}} </a>
-               </li> -->
-               {{#hasAccessToTab 'Policy Manager'}}
-               <li >
-                       <a href="#!/policymanager" id="nav2"><i 
class="icon-shield"></i>{{tt 'h.policyManager'}} </a>
+               <li class="active dropdown">
+                       <a href="javascript:;" id="nav2"><i 
class="icon-shield"></i>Access Manager</a>
+                       <ul class="dropdown-menu">
+                               {{#hasAccessToTab 'Resource Based Policies'}}
+                                       <li><a href="#!/policymanager"><i 
class="icon-file"></i>Resource Based Policies</a></li>
+                               {{/hasAccessToTab}}
+                               {{#hasAccessToTab 'Reports'}}
+                                       <li><a href="#!/reports/userAccess"><i 
class="icon-beaker"></i>Reports</a></li>
+                               {{/hasAccessToTab}}
+                               <!-- <li><a href="#">Tag Based 
Policies</a></li> -->
+                       </ul>
                </li>
-               {{/hasAccessToTab}}
-               {{#hasAccessToTab  'Users/Groups'}}
-               <li>
-                       <a href="#!/users/usertab" id="nav3"><i 
class="icon-group"></i> {{tt 'h.usersOrGroups'}} </a>
-               </li>
-               {{/hasAccessToTab}}
-               {{#hasAccessToTab  'Analytics'}}
-               <li>
-                       <a href="#!/reports/userAccess" id="nav4"><i 
class="icon-beaker"></i> {{tt 'h.analytics'}} </a>
-               </li>
-               {{/hasAccessToTab}}
                {{#hasAccessToTab  'Audit'}}
-               <li>
-                       <a href="#!/reports/audit/bigData" id="nav5"><i class=" 
icon-file-alt"></i> {{tt 'h.audit'}} </a>
-               </li>
+                       <li>
+                               <a href="#!/reports/audit/bigData" id="nav3"><i 
class=" icon-file-alt"></i> {{tt 'h.audit'}} </a>
+                       </li>
                {{/hasAccessToTab}}
-               {{#isSystemAdmin .}}
-               <li>
-                       <a href="#!/permissions" id="nav6"><i class=" 
icon-file-alt"></i> {{tt 'h.permissions'}} </a>
+               
+               <li class="dropdown">
+                       <a href="javascript:;" id="nav4"><i 
class="icon-lock"></i> {{tt 'h.encryption'}} </a>
+                       <ul class="dropdown-menu">
+                               {{#hasAccessToTab  'Key Manager'}}
+                                       <li><a 
href="#!/kms/keys/new/manage/service"><i class="icon-key"></i>Key Manager 
</a></li>
+                               {{/hasAccessToTab}}
+                               <!-- <li><a href="#">Encryption 
Policies</a></li> -->
+                       </ul>
                </li>
-               {{/isSystemAdmin}}
-               {{#hasAccessToTab  'KMS'}}
-               <li>
-                       <a href="#!/kms/keys/new/manage/service" id="nav7"><i 
class="icon-key"></i> {{tt 'h.kms'}} </a>
+               <li class="dropdown">
+                       <a href="javascript:;" id="nav5"><i 
class="icon-gear"></i> {{tt 'h.settings'}} </a>
+                       <ul class="dropdown-menu">
+                               {{#hasAccessToTab  'Users/Groups'}}
+                                       <li><a href="#!/users/usertab"><i 
class="icon-group"></i>{{tt 'h.usersOrGroups'}}</a></li>
+                               {{/hasAccessToTab}}     
+                               {{#isSystemAdmin .}}
+                                       <li><a href="#!/permissions"><i 
class="icon-file-alt"></i> {{tt 'h.permissions'}}</a></li>
+                               {{/isSystemAdmin}}      
+                       </ul>
                </li>
-               {{/hasAccessToTab}}
+               
        </ul>
 </div>

http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/7ed35a9b/security-admin/src/main/webapp/templates/reports/AssetOperationDiff_tmpl.html
----------------------------------------------------------------------
diff --git 
a/security-admin/src/main/webapp/templates/reports/AssetOperationDiff_tmpl.html 
b/security-admin/src/main/webapp/templates/reports/AssetOperationDiff_tmpl.html
index 7c9f3cf..7f0cef6 100644
--- 
a/security-admin/src/main/webapp/templates/reports/AssetOperationDiff_tmpl.html
+++ 
b/security-admin/src/main/webapp/templates/reports/AssetOperationDiff_tmpl.html
@@ -19,7 +19,7 @@
        <label class="no-margin label-size13-weightbold"> Date  &nbsp;&nbsp;:  
{{objectCreatedDate}}</label>
 {{#compare action 'eq' 'create'}}
        <label class="no-margin label-size13-weightbold" > Created By  
&nbsp;&nbsp;:  {{userName}}</label>
-       <h5>Repository Details :</h5>
+       <h5>Service Details :</h5>
        <div class="diff">
                <div class="diff-left">
                        <h3>Fields</h3>
@@ -74,7 +74,7 @@
 
 {{else}}
        <label class="no-margin label-size13-weightbold" > Deleted By  
&nbsp;&nbsp;:  {{userName}}</label>
-       <h4>Repository Details</h4>
+       <h4>Service Details</h4>
        <div class="diff">
                <div class="diff-left">
                        <h3>Fields</h3>

http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/7ed35a9b/security-admin/src/main/webapp/templates/reports/AssetUpdateOperationDiff_tmpl.html
----------------------------------------------------------------------
diff --git 
a/security-admin/src/main/webapp/templates/reports/AssetUpdateOperationDiff_tmpl.html
 
b/security-admin/src/main/webapp/templates/reports/AssetUpdateOperationDiff_tmpl.html
index 72591d4..7874341 100644
--- 
a/security-admin/src/main/webapp/templates/reports/AssetUpdateOperationDiff_tmpl.html
+++ 
b/security-admin/src/main/webapp/templates/reports/AssetUpdateOperationDiff_tmpl.html
@@ -27,7 +27,7 @@
                </div>  
        </div>
 {{#if collection.length}}      
-       <h5>Repository Details :</h5>
+       <h5>Service Details :</h5>
        <div class="diff">
                <div class="diff-left">
                        <h3>Fields</h3>

http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/7ed35a9b/security-admin/src/main/webapp/templates/service/ServiceCreate_tmpl.html
----------------------------------------------------------------------
diff --git 
a/security-admin/src/main/webapp/templates/service/ServiceCreate_tmpl.html 
b/security-admin/src/main/webapp/templates/service/ServiceCreate_tmpl.html
index 43b7f24..587a7c6 100644
--- a/security-admin/src/main/webapp/templates/service/ServiceCreate_tmpl.html
+++ b/security-admin/src/main/webapp/templates/service/ServiceCreate_tmpl.html
@@ -15,9 +15,9 @@
   limitations under the License.
 --}}
 {{#if editAsset}}
-       <h4 class="wrap-header bold"> Edit Repository  </h4>
+       <h4 class="wrap-header bold"> Edit Service  </h4>
 {{else}}
-       <h4 class="wrap-header bold"> Create Repository  </h4>
+       <h4 class="wrap-header bold"> Create Service  </h4>
 {{/if}}
 <div class="wrap non-collapsible ">
        <div data-id="r_form"></div>

http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/7ed35a9b/security-admin/src/main/webapp/templates/service/ServiceForm_tmpl.html
----------------------------------------------------------------------
diff --git 
a/security-admin/src/main/webapp/templates/service/ServiceForm_tmpl.html 
b/security-admin/src/main/webapp/templates/service/ServiceForm_tmpl.html
index 75d621d..58f90a5 100644
--- a/security-admin/src/main/webapp/templates/service/ServiceForm_tmpl.html
+++ b/security-admin/src/main/webapp/templates/service/ServiceForm_tmpl.html
@@ -17,7 +17,7 @@
 <form class="form-horizontal" >
        <fieldset class="configProp">
                <p class="formHeader">
-                       {{tt 'lbl.repositoryDetails'}} :
+                       {{tt 'lbl.serviceDetails'}} :
                </p>
                <div class="serviceDetail" data-fields={{serviceDetail}}></div>
        </fieldset>

Reply via email to