You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ranger.apache.org by ni...@apache.org on 2021/04/19 13:58:53 UTC
[ranger] branch master updated: RANGER-3239 : Ranger : Add checkbox
for default audit filters on Service Creation page.
This is an automated email from the ASF dual-hosted git repository.
ni3galave pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ranger.git
The following commit(s) were added to refs/heads/master by this push:
new a993cda RANGER-3239 : Ranger : Add checkbox for default audit filters on Service Creation page.
a993cda is described below
commit a993cda1253422e06c31c9265def5d8d882cbb88
Author: Nitin Galave <ni...@apache.org>
AuthorDate: Wed Apr 14 12:25:24 2021 +0530
RANGER-3239 : Ranger : Add checkbox for default audit filters on Service Creation page.
---
.../scripts/views/service/AuditFilterConfig.js | 7 ++++-
.../webapp/scripts/views/service/ServiceForm.js | 35 ++++++++++++++++++++--
.../webapp/templates/service/ServiceForm_tmpl.html | 5 ++++
3 files changed, 44 insertions(+), 3 deletions(-)
diff --git a/security-admin/src/main/webapp/scripts/views/service/AuditFilterConfig.js b/security-admin/src/main/webapp/scripts/views/service/AuditFilterConfig.js
index a190275..2032da1 100644
--- a/security-admin/src/main/webapp/scripts/views/service/AuditFilterConfig.js
+++ b/security-admin/src/main/webapp/scripts/views/service/AuditFilterConfig.js
@@ -410,7 +410,9 @@ define(function(require) {
this.collection.remove(this.model);
if (this.collection.length == 0) {
var $data = '<tr><td class="emptySet text-muted" colspan="9">No Audit Filter Data Found !!</td></tr>'
- $(".auditFilterData").html($data)
+ $(".auditFilterData").html($data);
+ $('input[data-id="renderAuditFilter"]').prop('checked', false);
+ $('input[data-id="renderAuditFilter"]').trigger('change')
}
},
selectOparations : function() {
@@ -496,6 +498,9 @@ define(function(require) {
addNew : function(){
var that =this;
this.$el.find('.emptySet').remove();
+ if (!$('input[data-id="renderAuditFilter"]').is(":checked")) {
+ $('input[data-id="renderAuditFilter"]').prop('checked', true);
+ }
this.$('table').show();
this.collection.add(new Backbone.Model());
},
diff --git a/security-admin/src/main/webapp/scripts/views/service/ServiceForm.js b/security-admin/src/main/webapp/scripts/views/service/ServiceForm.js
index 41872af..17d1f1d 100644
--- a/security-admin/src/main/webapp/scripts/views/service/ServiceForm.js
+++ b/security-admin/src/main/webapp/scripts/views/service/ServiceForm.js
@@ -59,6 +59,13 @@ define(function(require){
serviceConfig : serviceConfig.slice(0,-1)
};
},
+ ui : {
+ renderAuditFilter : '[data-id="renderAuditFilter"]',
+ },
+ events : {
+ 'change [data-id="renderAuditFilter"]' : 'renderAuditFilter',
+ },
+
initialize: function(options) {
console.log("initialized a ServiceForm Form View");
_.extend(this, _.pick(options, 'rangerServiceDefModel'));
@@ -75,6 +82,9 @@ define(function(require){
this.on('isEnabled:change', function(form, fieldEditor){
this.evIsEnabledChange(form, fieldEditor);
});
+ // this.on('change [data-id="renderAuditFilter"]', function(){
+ // this.renderAuditFilter();
+ // })
},
/** schema for the form
@@ -101,11 +111,11 @@ define(function(require){
this.initializePlugins();
this.renderCustomFields();
this.renderAuditFilterFields();
+ this.renderAuditFilter();
},
setupFormForEditMode : function() {
var that = this;
if(!this.model.isNew()){
-
if(this.model.get('configs')['ranger.plugin.audit.filters']) {
var auditFilterCollValue = this.model.get('configs')['ranger.plugin.audit.filters'];
delete this.model.get('configs')['ranger.plugin.audit.filters']
@@ -131,7 +141,6 @@ define(function(require){
if(auditFilterCollValue) {
auditFilterCollValue = JSON.parse((auditFilterCollValue).replace(/'/g, '"'));
- console.log(auditFilterCollValue);
auditFilterCollValue.forEach(function(model) {
that.auditFilterColl.add(new Backbone.Model(model));
})
@@ -185,6 +194,28 @@ define(function(require){
}).render().el);
},
+ renderAuditFilter : function(e) {
+ var that = this;
+ if (_.isUndefined(e)) {
+ if(this.auditFilterColl.length > 0) {
+ this.$el.find('input[data-id="renderAuditFilter"]').prop('checked', true);
+ }
+ } else {
+ if ($(e.currentTarget).is(":checked")) {
+ if (!_.isUndefined(this.newauditFilterColl) && this.newauditFilterColl.length > 0) {
+ this.$el.find('.emptySet').remove();
+ this.newauditFilterColl.forEach(function(model){
+ that.auditFilterColl.add(model);
+ })
+ }
+ } else {
+ this.newauditFilterColl= this.auditFilterColl.clone();
+ this.auditFilterColl.reset()
+ this.renderAuditFilterFields()
+ }
+ }
+ },
+
/** all post render plugin initialization */
initializePlugins: function(){
},
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 8666bd3..9601428 100644
--- a/security-admin/src/main/webapp/templates/service/ServiceForm_tmpl.html
+++ b/security-admin/src/main/webapp/templates/service/ServiceForm_tmpl.html
@@ -33,6 +33,11 @@
<fieldset class="configProp">
<p class="formHeader">
Audit Filter :
+ <input type="checkbox" data-id="renderAuditFilter">
+ <!-- <label class="toggle-control">
+ <input type="checkbox" data-id="renderAuditFilter">
+ <span class="control"></span>
+ </label> -->
</p>
<div data-customfields="aduitFilterConfig">
<div class="form-group">