You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ranger.apache.org by me...@apache.org on 2020/08/12 05:49:53 UTC

[ranger] 02/03: RANGER-2939 : Search functionality with Cluster name is not working on Audit>>Access and Plugins tab

This is an automated email from the ASF dual-hosted git repository.

mehul pushed a commit to branch ranger-2.1
in repository https://gitbox.apache.org/repos/asf/ranger.git

commit d62368a45e8ed435e308c3ca9e79cdfde1a57a2c
Author: Nitin Galave <ni...@apache.org>
AuthorDate: Mon Aug 3 17:27:44 2020 +0530

    RANGER-2939 : Search functionality with Cluster name is not working on Audit>>Access and Plugins tab
    
    Signed-off-by: Mehul Parikh <me...@apache.org>
---
 .../src/main/webapp/scripts/controllers/Controller.js       |  5 -----
 .../src/main/webapp/scripts/controllers/NController.js      |  5 -----
 .../src/main/webapp/scripts/modules/XAOverrides.js          |  6 ++++++
 security-admin/src/main/webapp/scripts/utils/XAUtils.js     |  6 ++++++
 .../src/main/webapp/scripts/views/kms/KMSTableLayout.js     |  3 ++-
 .../scripts/views/permissions/ModulePermsTableLayout.js     |  3 ++-
 .../scripts/views/policies/NRangerPolicyTableLayout.js      |  4 +++-
 .../scripts/views/policies/RangerPolicyTableLayout.js       |  3 ++-
 .../webapp/scripts/views/policymanager/ServiceLayout.js     | 13 ++++++-------
 .../scripts/views/policymanager/ServiceLayoutSidebar.js     |  7 +++----
 .../src/main/webapp/scripts/views/reports/AuditLayout.js    |  5 +++--
 .../main/webapp/scripts/views/reports/UserAccessLayout.js   |  3 ++-
 .../src/main/webapp/scripts/views/users/UserTableLayout.js  |  3 ++-
 13 files changed, 37 insertions(+), 29 deletions(-)

diff --git a/security-admin/src/main/webapp/scripts/controllers/Controller.js b/security-admin/src/main/webapp/scripts/controllers/Controller.js
index 0580340..f21b16c 100755
--- a/security-admin/src/main/webapp/scripts/controllers/Controller.js
+++ b/security-admin/src/main/webapp/scripts/controllers/Controller.js
@@ -76,7 +76,6 @@ define(function(require) {
                 collection: new RangerPolicyList(),
                 groupList: new VXGroupList(),
                 userList: new VXUserList(),
-                urlQueryParams: tab.indexOf("?") !== -1 ? tab.substring(tab.indexOf("?") + 1) : undefined,
             }));
         },
         auditReportAction: function(tab) {
@@ -138,7 +137,6 @@ define(function(require) {
             App.rContent.show(new view({
                 collection: userList,
                 tab: tab.split('?')[0],
-                urlQueryParams: tab.indexOf("?") !== -1 ? tab.substring(tab.indexOf("?") + 1) : undefined,
             }));
         },
         userCreateAction: function() {
@@ -380,7 +378,6 @@ define(function(require) {
                 App.rContent.show(new view({
                     rangerService: rangerService,
                     collection: rangerPolicyList,
-                    urlQueryParams: policyType.indexOf("?") !== -1 ? policyType.substring(policyType.indexOf("?") + 1) : undefined,
                 }));
             });
         },
@@ -460,7 +457,6 @@ define(function(require) {
 
             App.rContent.show(new view({
                 collection: new ModulePermissionList(),
-                urlQueryParams: argument.indexOf("?") !== -1 ? argument.substring(argument.indexOf("?") + 1) : undefined,
             }));
 
         },
@@ -505,7 +501,6 @@ define(function(require) {
                 collection: new KmsKeyList(),
                 kmsServiceName: kmsServiceName.split("?")[0],
                 kmsManagePage: kmsManagePage,
-                urlQueryParams: kmsServiceName.indexOf("?") !== -1 ? kmsServiceName.substring(kmsServiceName.indexOf("?") + 1) : undefined,
             }));
         },
         kmsKeyCreateAction: function(kmsServiceName) {
diff --git a/security-admin/src/main/webapp/scripts/controllers/NController.js b/security-admin/src/main/webapp/scripts/controllers/NController.js
index 1c7a7f1..8dc78c6 100644
--- a/security-admin/src/main/webapp/scripts/controllers/NController.js
+++ b/security-admin/src/main/webapp/scripts/controllers/NController.js
@@ -80,7 +80,6 @@ define(function(require) {
                 collection: new RangerPolicyList(),
                 groupList: new VXGroupList(),
                 userList: new VXUserList(),
-                urlQueryParams: tab.indexOf("?") !== -1 ? tab.substring(tab.indexOf("?") + 1) : undefined,
             }));
         },
         auditReportAction: function(tab) {
@@ -147,7 +146,6 @@ define(function(require) {
             App.rContent.show(new view({
                 collection: userList,
                 tab: tab.split('?')[0],
-                urlQueryParams: tab.indexOf("?") !== -1 ? tab.substring(tab.indexOf("?") + 1) : undefined,
             }));
         },
         userCreateAction: function() {
@@ -367,7 +365,6 @@ define(function(require) {
                 App.rContent.show(new view({
                     rangerService: rangerService,
                     collection: rangerPolicyList,
-                    urlQueryParams: policyType.indexOf("?") !== -1 ? policyType.substring(policyType.indexOf("?") + 1) : undefined,
                 }));
             });
         },
@@ -452,7 +449,6 @@ define(function(require) {
             App.rSideBar.currentView.selectedList(argument.split('?')[0]);
             App.rContent.show(new view({
                 collection: new ModulePermissionList(),
-                urlQueryParams: argument.indexOf("?") !== -1 ? argument.substring(argument.indexOf("?") + 1) : undefined,
             }));
 
         },
@@ -499,7 +495,6 @@ define(function(require) {
                 collection: new KmsKeyList(),
                 kmsServiceName: kmsServiceName.split("?")[0],
                 kmsManagePage: kmsManagePage,
-                urlQueryParams: kmsServiceName.indexOf("?") !== -1 ? kmsServiceName.substring(kmsServiceName.indexOf("?") + 1) : undefined,
             }));
         },
         kmsKeyCreateAction: function(kmsServiceName) {
diff --git a/security-admin/src/main/webapp/scripts/modules/XAOverrides.js b/security-admin/src/main/webapp/scripts/modules/XAOverrides.js
index 5721ba3..d6b8281 100644
--- a/security-admin/src/main/webapp/scripts/modules/XAOverrides.js
+++ b/security-admin/src/main/webapp/scripts/modules/XAOverrides.js
@@ -27,6 +27,12 @@
 	require('backgrid');
 	require('jquery-toggles');
 
+	Backbone.history.getHash = function(window) {
+		var pathStripper = /#.*$/;
+		var match = (window || this).location.href.match(/#(.*)$/);
+		return match ? this.decodeFragment(match[1].replace(pathStripper, '')) : '';
+	};
+
 	window.onbeforeunload = function(e) {
 		if (window._preventNavigation) {
 			var message = 'Are you sure you want to refresh the page? Unsaved changes will be lost.';
diff --git a/security-admin/src/main/webapp/scripts/utils/XAUtils.js b/security-admin/src/main/webapp/scripts/utils/XAUtils.js
index 31eb1b3..58b305b 100644
--- a/security-admin/src/main/webapp/scripts/utils/XAUtils.js
+++ b/security-admin/src/main/webapp/scripts/utils/XAUtils.js
@@ -1894,5 +1894,11 @@ define(function(require) {
         }
     }
 
+    //Separate query parameters string from URL hash
+    XAUtils.urlQueryParams = function() {
+    	var urlHash = Backbone.history.location.hash;
+    	return urlHash.indexOf("?") !== -1 ? urlHash.substring(urlHash.indexOf("?") + 1) : undefined;
+    }
+
 	return XAUtils;
 });
\ No newline at end of file
diff --git a/security-admin/src/main/webapp/scripts/views/kms/KMSTableLayout.js b/security-admin/src/main/webapp/scripts/views/kms/KMSTableLayout.js
index 3cb83d4..5f8d068 100755
--- a/security-admin/src/main/webapp/scripts/views/kms/KMSTableLayout.js
+++ b/security-admin/src/main/webapp/scripts/views/kms/KMSTableLayout.js
@@ -79,7 +79,8 @@ define(function(require){
 		*/
 		initialize: function(options) {
 			console.log("initialized a KmsTableLayout Layout");
-                        _.extend(this, _.pick(options, 'tab','kmsServiceName','kmsManagePage', 'urlQueryParams'));
+            _.extend(this, _.pick(options, 'tab','kmsServiceName','kmsManagePage'));
+            this.urlQueryParams = XAUtil.urlQueryParams();
 			this.showKeyList = true;
 			this.isKnownKmsServicePage =  this.kmsManagePage == 'new' ? false : true;
 			this.initializeKMSServices();
diff --git a/security-admin/src/main/webapp/scripts/views/permissions/ModulePermsTableLayout.js b/security-admin/src/main/webapp/scripts/views/permissions/ModulePermsTableLayout.js
index d3227ff..aefcf45 100644
--- a/security-admin/src/main/webapp/scripts/views/permissions/ModulePermsTableLayout.js
+++ b/security-admin/src/main/webapp/scripts/views/permissions/ModulePermsTableLayout.js
@@ -84,7 +84,8 @@ define(function(require){
 		initialize: function(options) {
 			console.log("initialized a ModulePermsTableLayout Layout");
 			
-                _.extend(this, _.pick(options, 'urlQueryParams'));
+                _.extend(this, _.pick(options));
+                this.urlQueryParams = XAUtil.urlQueryParams();
 			this.bindEvents();
 		},
 
diff --git a/security-admin/src/main/webapp/scripts/views/policies/NRangerPolicyTableLayout.js b/security-admin/src/main/webapp/scripts/views/policies/NRangerPolicyTableLayout.js
index af0decd..a4e8c86 100644
--- a/security-admin/src/main/webapp/scripts/views/policies/NRangerPolicyTableLayout.js
+++ b/security-admin/src/main/webapp/scripts/views/policies/NRangerPolicyTableLayout.js
@@ -132,7 +132,8 @@ define(function(require) {
              */
             initialize: function(options) {
                 console.log("initialized a NRangerPolicyTableLayout Layout");
-                _.extend(this, _.pick(options, 'rangerService', 'urlQueryParams'));
+                _.extend(this, _.pick(options, 'rangerService'));
+                this.urlQueryParams = XAUtil.urlQueryParams();
                 this.bindEvents();
                 this.initializeServiceDef();
                 this.initializeServices();
@@ -148,6 +149,7 @@ define(function(require) {
                     var searchFregment = XAUtil.changeUrlToSearchQuery(decodeURIComponent(this.urlQueryParams));
                     if (_.has(searchFregment, 'securityZone')) {
                         App.vZone.vZoneName = searchFregment['securityZone'];
+                        App.rSideBar.currentView.render();
                         searchFregment = _.omit(searchFregment, 'securityZone');
                         if (_.isEmpty(searchFregment)) {
                             this.urlQueryParams = '';
diff --git a/security-admin/src/main/webapp/scripts/views/policies/RangerPolicyTableLayout.js b/security-admin/src/main/webapp/scripts/views/policies/RangerPolicyTableLayout.js
index 9920d0e..fa94d6c 100644
--- a/security-admin/src/main/webapp/scripts/views/policies/RangerPolicyTableLayout.js
+++ b/security-admin/src/main/webapp/scripts/views/policies/RangerPolicyTableLayout.js
@@ -112,7 +112,8 @@ define(function(require){
 		*/
 		initialize: function(options) {
 			console.log("initialized a RangerPolicyTableLayout Layout");
-                        _.extend(this, _.pick(options,'rangerService', 'urlQueryParams'));
+			_.extend(this, _.pick(options,'rangerService', 'urlQueryParams'));
+			this.urlQueryParams = XAUtil.urlQueryParams(); 
 			this.bindEvents();
 			this.initializeServiceDef();
 			if(_.isUndefined(App.vZone)) {
diff --git a/security-admin/src/main/webapp/scripts/views/policymanager/ServiceLayout.js b/security-admin/src/main/webapp/scripts/views/policymanager/ServiceLayout.js
index 9bbead9..2787019 100644
--- a/security-admin/src/main/webapp/scripts/views/policymanager/ServiceLayout.js
+++ b/security-admin/src/main/webapp/scripts/views/policymanager/ServiceLayout.js
@@ -112,13 +112,12 @@ define(function(require){
                     vZoneName: ""
                 }
             }
-            if(this.type && this.type.split('?')[1]) {
-                var searchFregment = XAUtil.changeUrlToSearchQuery(decodeURIComponent(this.type.substring(this.type.indexOf("?") + 1)));
-                console.log(searchFregment);
-                if(_.has(searchFregment, 'securityZone')) {
-                        App.vZone.vZoneName = searchFregment['securityZone'];
-                }
-            }
+			if (!_.isUndefined(XAUtil.urlQueryParams())) {
+				var searchFregment = XAUtil.changeUrlToSearchQuery(decodeURIComponent(XAUtil.urlQueryParams()));
+				if(_.has(searchFregment, 'securityZone')) {
+					App.vZone.vZoneName = searchFregment['securityZone'];
+				}
+			}
         },
 
 		/** all events binding here */
diff --git a/security-admin/src/main/webapp/scripts/views/policymanager/ServiceLayoutSidebar.js b/security-admin/src/main/webapp/scripts/views/policymanager/ServiceLayoutSidebar.js
index de56fe8..452858d 100644
--- a/security-admin/src/main/webapp/scripts/views/policymanager/ServiceLayoutSidebar.js
+++ b/security-admin/src/main/webapp/scripts/views/policymanager/ServiceLayoutSidebar.js
@@ -152,11 +152,10 @@ define(function(require){
                     vZoneName: ""
                 }
             }
-            if(this.type && this.type.split('?')[1]) {
-                var searchFregment = XAUtil.changeUrlToSearchQuery(decodeURIComponent(this.type.substring(this.type.indexOf("?") + 1)));
-                console.log(searchFregment);
+            if (!_.isUndefined(XAUtil.urlQueryParams())) {
+                var searchFregment = XAUtil.changeUrlToSearchQuery(decodeURIComponent(XAUtil.urlQueryParams()));
                 if(_.has(searchFregment, 'securityZone')) {
-                        App.vZone.vZoneName = searchFregment['securityZone'];
+                    App.vZone.vZoneName = searchFregment['securityZone'];
                 }
             }
             this.initialCall = true;
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 9fcffab..bdabe6f 100644
--- a/security-admin/src/main/webapp/scripts/views/reports/AuditLayout.js
+++ b/security-admin/src/main/webapp/scripts/views/reports/AuditLayout.js
@@ -138,9 +138,10 @@ define(function(require) {
                 App.vsHistory = {'bigData':[], 'admin':[], 'loginSession':[], 'agent':[],'pluginStatus':[], 'userSync': []};
             }
             //Add url params to vsHistory
-            if(!_.isUndefined(this.tab.split('?')[1])) {
+           	this.urlQueryParams = XAUtils.urlQueryParams();
+            if(!_.isUndefined(this.urlQueryParams)) {
                 App.vsHistory[that.tab.split('?')[0]] = [];
-                var searchFregment = XAUtils.changeUrlToSearchQuery(decodeURIComponent(this.tab.substring(this.tab.indexOf("?") + 1)));
+                var searchFregment = XAUtils.changeUrlToSearchQuery(decodeURIComponent(this.urlQueryParams));
                 _.map (searchFregment, function(val, key) {
                     if (key !== "sortBy" && key !== "sortType" && key !== "sortKey") {
                         if (_.isArray(val)) {
diff --git a/security-admin/src/main/webapp/scripts/views/reports/UserAccessLayout.js b/security-admin/src/main/webapp/scripts/views/reports/UserAccessLayout.js
index a815add..166eca0 100644
--- a/security-admin/src/main/webapp/scripts/views/reports/UserAccessLayout.js
+++ b/security-admin/src/main/webapp/scripts/views/reports/UserAccessLayout.js
@@ -112,7 +112,8 @@ define(function(require) {'use strict';
 		 */
 		initialize : function(options) {
 			console.log("initialized a UserAccessLayout Layout");
-			_.extend(this, _.pick(options, 'groupList','userList', 'urlQueryParams'));
+			_.extend(this, _.pick(options, 'groupList','userList'));
+			this.urlQueryParams = XAUtil.urlQueryParams();
 			this.bindEvents();
 			this.previousSearchUrl = '';
 			this.searchedFlag = false;
diff --git a/security-admin/src/main/webapp/scripts/views/users/UserTableLayout.js b/security-admin/src/main/webapp/scripts/views/users/UserTableLayout.js
index 557e0e3..cc3bf80 100755
--- a/security-admin/src/main/webapp/scripts/views/users/UserTableLayout.js
+++ b/security-admin/src/main/webapp/scripts/views/users/UserTableLayout.js
@@ -99,7 +99,8 @@ define(function(require){
 		initialize: function(options) {
 			console.log("initialized a UserTableLayout Layout");
 
-                        _.extend(this, _.pick(options, 'groupList','tab', 'roleList', 'urlQueryParams'));
+			_.extend(this, _.pick(options, 'groupList','tab', 'roleList'));
+			this.urlQueryParams = XAUtil.urlQueryParams();
 			this.showUsers = this.tab == 'usertab' ? true : false;
                         this.showGroups = this.tab == 'grouptab' ? true : false;
 			this.chgFlags = [];