j-PermissionsOP
Die Komponente bearbeitet Berechtigungen für Benutzer, Rollen und Gruppen in OpenPlatform. Binden Sie die ausgewählten Berechtigungen an einen Modellpfad und konfigurieren Sie die Endpunkte find und read. Das Modell enthält Berechtigungszeichenfolgen:
['C@admin', 'U@admin', 'R@admin', 'D@admin', 'R123456', 'R#employees']- Der erste Buchstabe bedeutet den zulässigen Typ, definiert in
types @adminbedeutet eine Rolleadmin#employeesbedeutet eine Gruppeemployees123456bedeutet einen bestimmtenuserid
Konfiguration:
placeholder{String} ein Platzhalter für diej-Directory-Komponente (Standard:Search)types{String} Berechtigungstypen (Array getrennt durch Zeichen, Standard:CRUD)disabled{Boolean} optional, deaktiviert diese Komponentedefault{String} Standardwert vontype(Standard:R)dirkey{String} optional, ein Schlüssel für Text inj-Directory(Standard:name)labelrole{String} optional eine Bezeichnung für Rollen (Standard:Role)labelgroup{String} optional eine Bezeichnung für Gruppen (Standard:Group)limit{Number} eine Anzahl der zulässigen Berechtigungen (Standard:0= unbegrenzt)pk{String} ein Primärschlüssel, dessen Wert in das Modell eingebunden wird (Standard:id)- IMPORTANT
find{String} URL-Adresse zum Suchen von Rollen, Gruppen und Benutzern, die Komponente sendeturl?q=SEARCH_QUERY(sie sendet einen leeren Wert) - IMPORTANT
read{String} URL-Adresse zum Lesen von Rollen, Gruppen und Benutzern, die Komponente sendeturl?id=@role,#group,userid,...
// The component expects data:
['C@admin', 'U@admin', 'R@admin', 'D@admin', 'R123456', 'R#employees'];
// The component tries to find data:
// The component tries to read data and it pairs them with the model automatically:
[{ id: '123456', name: 'Peter Širka' }, { id: '@admin', name: 'Administrators' }, { id: '#employees', name: 'Employees' }];Nutzung
<ui-component name="directory"></ui-component>
<ui-component name="permissionsop" path="form.permissions"
config="find:/api/permissions/search/;read:/api/permissions/read/;types:CRUD"></ui-component>
<script>
ON('request', function(request) {
if (request.method === 'GET' && request.data &&
request.url.indexOf('/api/permissions/') === 0) {
request.url = QUERIFY(request.url, request.data);
request.data = null;
}
});
SET('form.permissions', ['R@admin', 'U#employees']);
</script>Deklarieren Sie j-Directory für das Auswahlmenü. Beide Endpunkte liefern ein Array von Objekten mit den Zeichenfolgeneigenschaften id und name. Der Endpunkt find erhält den Suchtext in q. Der Endpunkt read erhält kommagetrennte Kennungen in id und löst die bereits im Modell vorhandenen Berechtigungen auf. Wählen Sie mit pk das Kennungsfeld; der Standardwert ist id. Rollenkennungen haben das Präfix @, Gruppenkennungen das Präfix #.
Quelle: Total.js Komponenten. Copyright Peter Širka und Mitwirkende. MIT-Lizenz.