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

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


The following commit(s) were added to refs/heads/ranger-2.2 by this push:
     new bb797b9  RANGER-3191 : Ranger UI for configuring Audit filters addend 
patch.
bb797b9 is described below

commit bb797b97710bbcff6fa15701fa99bc1b6fa460ab
Author: Nitin Galave <[email protected]>
AuthorDate: Wed Mar 17 18:52:45 2021 +0530

    RANGER-3191 : Ranger UI for configuring Audit filters addend patch.
---
 .../src/main/webapp/scripts/utils/XAEnums.js       |  5 ++-
 .../scripts/views/service/AuditFilterConfig.js     | 45 +++++++++++++---------
 .../webapp/scripts/views/service/ServiceForm.js    |  4 +-
 security-admin/src/main/webapp/styles/xa.css       |  4 +-
 .../templates/service/AuditFilterItem_tmpl.html    | 16 ++++----
 .../webapp/templates/service/ServiceForm_tmpl.html |  2 +-
 6 files changed, 43 insertions(+), 33 deletions(-)

diff --git a/security-admin/src/main/webapp/scripts/utils/XAEnums.js 
b/security-admin/src/main/webapp/scripts/utils/XAEnums.js
index d1edbcb..6407b68 100644
--- a/security-admin/src/main/webapp/scripts/utils/XAEnums.js
+++ b/security-admin/src/main/webapp/scripts/utils/XAEnums.js
@@ -33,8 +33,9 @@ define(function(require) {
        };
 
        XAEnums.AccessResult = mergeParams(XAEnums.AccessResult, {
-               ACCESS_RESULT_DENIED:{value:0, label:'Denied', 
rbkey:'xa.enum.AccessResult.ACCESS_RESULT_DENIED', tt: 
'lbl.AccessResult_ACCESS_RESULT_DENIED'},
-               ACCESS_RESULT_ALLOWED:{value:1, label:'Allowed', 
rbkey:'xa.enum.AccessResult.ACCESS_RESULT_ALLOWED', tt: 
'lbl.AccessResult_ACCESS_RESULT_ALLOWED'}
+               ACCESS_RESULT_DENIED:{value:0, label:'Denied', 
rbkey:'xa.enum.AccessResult.ACCESS_RESULT_DENIED', tt: 
'lbl.AccessResult_ACCESS_RESULT_DENIED', auditFilterLabel:'DENIED'},
+               ACCESS_RESULT_ALLOWED:{value:1, label:'Allowed', 
rbkey:'xa.enum.AccessResult.ACCESS_RESULT_ALLOWED', tt: 
'lbl.AccessResult_ACCESS_RESULT_ALLOWED', auditFilterLabel:'ALLOWED'},
+               ACCESS_RESULT_NOT_DETERMINED:{value:2, label:'Not Determined', 
rbkey:'xa.enum.AccessResult.ACCESS_RESULT_NOT_DETERMINED', tt: 
'lbl.AccessResult_ACCESS_RESULT_NOT_DETERMINED', 
auditFilterLabel:'NOT_DETERMINED'}
        });
        
        XAEnums.UserSource = mergeParams(XAEnums.UserSource, {
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 79dcd07..f5e01f2 100644
--- a/security-admin/src/main/webapp/scripts/views/service/AuditFilterConfig.js
+++ b/security-admin/src/main/webapp/scripts/views/service/AuditFilterConfig.js
@@ -6,9 +6,9 @@
  * to you under the Apache License, Version 2.0 (the
  * "License"); you may not use this file except in compliance
  * with the License.  You may obtain a copy of the License at
- * 
+ *
  * http://www.apache.org/licenses/LICENSE-2.0
- * 
+ *
  * Unless required by applicable law or agreed to in writing,
  * software distributed under the License is distributed on an
  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
@@ -22,7 +22,7 @@
  */
 define(function(require) {
     'use strict';
-    
+
     var Backbone        = require('backbone');
     var App             = require('App');
     var XAEnums         = require('utils/XAEnums');
@@ -31,7 +31,7 @@ define(function(require) {
     var ServiceAuditFilterResourcesForm = 
require('views/service/ServiceAuditFilterResources');
     var RangerPolicyResource = require('models/RangerPolicyResource');
     require('bootstrap-editable');
-            
+
     var AuditConfigItem = Backbone.Marionette.ItemView.extend({
         _msvName : 'FormInputItem',
 
@@ -67,10 +67,10 @@ define(function(require) {
         initialize : function(options) {
             _.extend(this, _.pick(options,'rangerServiceDefModel', 
'accessTypes', 'serviceName'));
         },
- 
+
         onRender : function() {
             var accessResultVal = _.map(XAEnums.AccessResult, function(m){
-                return {'id' : m.label ,'text': m.label}
+                return {'id' : m.auditFilterLabel ,'text': m.auditFilterLabel}
             })
             if (this.model && !_.isUndefined(this.model.get('accessResult'))) {
                 this.ui.accessResult.val(this.model.get('accessResult'));
@@ -94,8 +94,8 @@ define(function(require) {
         setupFormForEditMode : function () {
             var that = this;
             if(!this.model.isEmpty()) {
-                if (this.model.get('isAudited')) {
-                    
this.$el.find('[data-js="isAudited"]').val(this.model.get('isAudited'));
+                if (this.model && !_.isUndefined(this.model.get('isAudited'))) 
{
+                    
this.$el.find('[data-js="isAudited"]').val(this.model.get('isAudited') == true 
? "Yes" : "No");
                 }
                 if (this.model.get('users')) {
                     this.ui.selectUsers.val(_.map(this.model.get('users'), 
function(name){ return _.escape(name)}));
@@ -119,9 +119,9 @@ define(function(require) {
 
         evIsAudited : function (e) {
             if(_.isUndefined(e)) {
-                
this.model.set('isAudited',this.$el.find('[data-js="isAudited"]').val());
+                
this.model.set('isAudited',this.$el.find('[data-js="isAudited"]').val() == 
"Yes" ? true : false);
             }else {
-                this.model.set('isAudited', e.currentTarget.value);
+                this.model.set('isAudited', e.currentTarget.value == "Yes" ? 
true : false);
             }
         },
 
@@ -304,7 +304,7 @@ define(function(require) {
         },
 
         displayResources : function(tmpResource) {
-            var $dataResources; 
+            var $dataResources;
             $dataResources = '<div class="resourceGrp"><div>'
                 _.filter(tmpResource, function(key, value) {
                     var $toggleBtn =''
@@ -347,20 +347,29 @@ define(function(require) {
                 placeholder : 'Select Action',
                 allowClear: true,
                 width : '200px',
-                tokenSeparators: ["," , " "],
+                tokenSeparators: [","],
                 tags : [],
                 dropdownCssClass: 'select2-text-hidden',
                 initSelection : function (element, callback) {
                     callback(tags);
                 },
                 createSearchChoice : function(term, data) {
+                    term = _.escape(term.trim());
                     if ($(data).filter(function() {
-                        return this.text.localeCompare(term)===0; 
-                    }).length===0)
-                        {return {id:term, text:term};}
+                        return this.text.localeCompare(term) === 0;
+                    }).length === 0) {
+                        if(term == ''){
+                            return null;
+                        }else{
+                            return {
+                                id : term,
+                                text: term
+                            };
+                        }
+                    }
                 },
             })
-            if (this.model.get('actions')) {
+            if (this.model && this.model.get('actions')) {
                 _.each(this.model.get('actions') , function(name){
                     tags.push( { 'id' : _.escape( name ), 'text' : _.escape( 
name ) } );
                 });
@@ -380,7 +389,7 @@ define(function(require) {
                 emptyAuditFilterCol : this.collection.length == 0 ? true : 
false,
             }
         },
-        
+
         getItemView : function(item){
             if(!item){
                 return;
@@ -432,7 +441,7 @@ define(function(require) {
             });
         }
     });
-    
+
     return AuditFilterList;
 
 });
\ No newline at end of file
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 e7d5b79..668fa79 100644
--- a/security-admin/src/main/webapp/scripts/views/service/ServiceForm.js
+++ b/security-admin/src/main/webapp/scripts/views/service/ServiceForm.js
@@ -123,7 +123,7 @@ define(function(require){
                                },this);
 
                                if(auditFilterCollValue) {
-                                       auditFilterCollValue = 
JSON.parse(auditFilterCollValue);
+                                       auditFilterCollValue = 
JSON.parse((auditFilterCollValue).replace(/'/g, '"'));
                                        console.log(auditFilterCollValue);
                                        
auditFilterCollValue.forEach(function(model) {
                                                that.auditFilterColl.add(new 
Backbone.Model(model));
@@ -216,7 +216,7 @@ define(function(require){
                                this.auditFilterColl.each(function (e) {
                                        auditFiltter.push(e.attributes);
                                })
-                               config['ranger.plugin.audit.filters'] = 
JSON.stringify(auditFiltter);
+                               config['ranger.plugin.audit.filters'] = 
(JSON.stringify(auditFiltter)).replace(/"/g, "'");
                        }
                        this.model.set('configs',config);
 
diff --git a/security-admin/src/main/webapp/styles/xa.css 
b/security-admin/src/main/webapp/styles/xa.css
index 5c11e14..ec57be1 100644
--- a/security-admin/src/main/webapp/styles/xa.css
+++ b/security-admin/src/main/webapp/styles/xa.css
@@ -4594,8 +4594,8 @@ input.textFiledInputPadding:disabled {
   width: 75px
 }
 
-.width-170 {
-  width: 170px
+.width-195 {
+  width: 195px
 }
 
 .min-width-150 {
diff --git 
a/security-admin/src/main/webapp/templates/service/AuditFilterItem_tmpl.html 
b/security-admin/src/main/webapp/templates/service/AuditFilterItem_tmpl.html
index 0fc2ce7..ff5cfd2 100644
--- a/security-admin/src/main/webapp/templates/service/AuditFilterItem_tmpl.html
+++ b/security-admin/src/main/webapp/templates/service/AuditFilterItem_tmpl.html
@@ -1,4 +1,4 @@
-{{!-- 
+{{!--
   Licensed to the Apache Software Foundation (ASF) under one or more
   contributor license agreements.  See the NOTICE file distributed with
   this work for additional information regarding copyright ownership.
@@ -19,34 +19,34 @@
 <td class="">
     <div class="width-75">
         <select class="form-control custom-select-sm w-100" 
data-js="isAudited">
-            <option selected value="true">Yes</option>
-            <option value="false">No</option>
+            <option selected value="Yes">Yes</option>
+            <option value="No"false>No</option>
         </select>
     </div>
 </td>
 <!-- Access Result -->
 <td class="">
-    <div class="width-170">
+    <div class="width-195">
         <input type="text" class="form-control custom-select-sm" 
data-js="accessResult">
     </div>
 </td>
 <!-- Resources -->
-<td> 
+<td>
     <div class="resource-list min-width-150">
         <div class="js-formInput"><div class="resourceGrp 
text-center">--</div></div>
         <button type="button" class="btn btn-mini btn-primary" title="Add 
Resources" data-js="serviceResource" style="display: inline-block;">
             <i class="fa-fw fa fa-plus"></i>
         </button>
         <a class="btn btn-danger btn-mini" data-action="deleteResources"><i 
class="fa-fw fa fa-remove"></i></a></div>
-    </div>   
+    </div>
 </td>
 
 <!-- Oparations -->
-<td>    
+<td>
     <input  type="text" data-js="oparations" data-type="roles"/>
 </td>
 <!-- Actions -->
-<td>    
+<td>
     <a href="javascript:;" data-js="permissions" data-type="checklist" 
data-title="Select permissions" title="add/edit permissions" ></a>
     <button type="button" class="btn btn-sm add-permissions" title="Add" 
style="display: inline-block;">
         <i class="fa-fw fa fa-plus"></i>
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 2b2e9c0..8666bd3 100644
--- a/security-admin/src/main/webapp/templates/service/ServiceForm_tmpl.html
+++ b/security-admin/src/main/webapp/templates/service/ServiceForm_tmpl.html
@@ -39,7 +39,7 @@
                 <div class="controls">
                     <img src="images/loading.gif"
                         style="margin-left: 4%; margin-top: 1%;">
-                    </img>  
+                    </img>
                 </div>
             </div>
         </div>

Reply via email to