j-Permissions
- - jComponent
v19|v20
Configuration:
placeholder {String}a placeholder forj-Directorycomponent (default:Search)types {String}permission types (only one character per operation!!!!) (array delimited by comma, default:R,W)dirsource {String}optional, path to a data-source or NEW:id|name,id|nameempty {String}optional, adds a text into the empty permissionsdisabled {Boolean}optional, disables this componentdefault {String}default value oftype(default:R)dirraw {Boolean}optional, disables HTML encoding for text inj-Directory(default:false)autoremove {Boolean}optional, it automatically removes non-existent permissions (default:true)autoexclude {Boolean}optional, it excludes the used permissions from thedirsource(default:true)- NEW:
exec {String}optional, it executes a method (path.to.method) when the user changes the value - NEW:
button {String}optional, a button label (default:Add)
Source:
[
{
id: "123456",
name: 'Peter'
},
{
id: "654321",
name: 'John'
}
]Input & Output:
['R123456', 'W123456', 'W654321']Use it with <ui-component name="permissions">. When the component is not loaded yet, jComponent downloads it on first use from the address in DEF.fallback (the Componentator CDN by default). Author: Peter Širka. Source: the Componentator components repository, MIT license.
<ui-component name="directory"></ui-component>
<ui-component name="permissions" path="mypermissions" config="dirsource:datasource;types:R|Read,U|Update;empty:Set permissions">Permissions</ui-component>
<div class="mt10"><ui-bind path="mypermissions" config="text:JSON.stringify(value)"></ui-bind></div>
<script>
var mypermissions = ['Radmin', 'Remployee', 'Uaccountant'];
var datasource = [{ id: 'admin', name: 'Admin' }, { id: 'employee', name: 'Employee' }, { id: 'accountant', name: 'Accountant' }];
</script>