ForgeКомпоненти
bg

Компоненти

j-PermissionsOP

jComponent 20 · jcomponent@20 component

Компонентът редактира правата на потребители, роли и групи в OpenPlatform. Свържете избраните права с път в модела и настройте крайните точки find и read. Моделът съдържа низове с права:

['C@admin', 'U@admin', 'R@admin', 'D@admin', 'R123456', 'R#employees']
  • Първото писмо означава разрешен тип, дефиниран в types
  • @admin означава ролята на admin
  • #employees означава групата на employees
  • 123456 означава специфичен userid

Конфигуриране:

  • placeholder {String} място за компонент на j-Directory (предварително: Search)
  • types {String} видове разрешение (режимът е ограничен от чар, дефолт: CRUD)
  • disabled {Boolean} опционално, деактивира този компонент
  • default Декларация за дефектна стойност на type (Съгласно с дефолт R)
  • dirkey {String} опционално, ключ за текст в j-Directory (предварително: name)
  • labelrole {String} опционално етикет за роли (предварително: Role)
  • labelgroup {String} опционално етикет за групи (предварително: Group)
  • limit {No} броят на разрешените разрешения (предварително: 0 = неограничен)
  • pk {String} е първичен ключ, чиято стойност ще бъде свързана към модела (предварително: id)
  • IMPORTANT find {String} URL адрес за намиране на роли, групи и потребители, компонентът изпраща url?q=SEARCH_QUERY (то изпраща празна стойност)
  • IMPORTANT read {String} URL адрес за четене роли, групи и потребители, компонентът изпраща 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' }];

Използване

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

Декларирайте j-Directory за менюто за избор. Двете крайни точки връщат масив от обекти с текстови свойства id и name. Крайната точка find получава текста за търсене в q. Крайната точка read получава идентификатори, разделени със запетаи, в id и зарежда правата, които вече са в модела. Използвайте pk, за да изберете полето за идентификатор; стойността по подразбиране е id. Идентификаторите на роли имат префикс @, а тези на групи — #.

Източникът е: Total.js съставкиАвторски права Питер Шърка и съучастници. Лицензът ми.