ForgeKomponenter
sv

Komponenter

j-PermissionsOP

jComponent 20 · jcomponent@20 component

Komponenten redigerar behörigheter för användare, roller och grupper i OpenPlatform. Bind de valda behörigheterna till en modellsökväg och konfigurera ändpunkterna find och read. Modellen innehåller behörighetssträngar:

['C@admin', 'U@admin', 'R@admin', 'D@admin', 'R123456', 'R#employees']
  • första bokstaven betyder tillåten typ, definierad i types
  • @admin betyder en roll av admin
  • #employees betyder en grupp av employees
  • 123456 betyder en specifik userid

Konfigurera:

  • placeholder {String} en platsinnehavare för komponenten j-Directory (default: Search)
  • types {String} typ av tillstånd (array delimited by char, standard: CRUD)
  • disabled {Boolean} valfritt, inaktiverar denna komponent
  • default {String} standardvärde av type (default: R)
  • dirkey {String} valfritt, en nyckel för text i j-Directory (default: name)
  • labelrole {String} valfritt en etikett för roller (default: Role)
  • labelgroup {String} valfritt en etikett för grupper (default: Group)
  • limit {Numret} ett antal tillåtna tillstånd (default: 0 = obegränsad)
  • pk {String} en primärnyckel vars värde kommer att bindas till modellen (default: id)
  • IMPORTANT find {String} URL för att hitta roller, grupper och användare, komponenten skickar url?q=SEARCH_QUERY (det skickar tomt värde)
  • IMPORTANT read {String} URL för läsroller, grupper och användare, komponenten skickar url?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' }];

Användning

<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>

Deklarera j-Directory för valmenyn. Båda ändpunkterna returnerar en array med objekt som har strängegenskaperna id och name. Ändpunkten find tar emot söktexten i q. Ändpunkten read tar emot kommaseparerade identifierare i id och hämtar behörigheterna som redan finns i modellen. Välj identifierarfält med pk; standardvärdet är id. Rollidentifierare har prefixet @ och gruppidentifierare prefixet #.

Källa till: Total.js komponenterCopyright Peter Širka och bidragsgivare. Min licens.