FEA: added context information to permissions table

This commit is contained in:
Keanu D?lle 2021-06-15 17:28:48 +02:00
parent e64a2d2494
commit dbc762a536
5 changed files with 193 additions and 5 deletions

View File

@ -21,4 +21,8 @@ WHERE permission LIKE 'modules.settings.view' ESCAPE '#';
DELETE
FROM roles_permissions
WHERE permission_id LIKE 'modules.settings.view';
WHERE permission_id LIKE 'modules.settings.view';
alter table permissions drop column context;
alter table permissions drop column context_type;

View File

@ -15,4 +15,172 @@ INSERT INTO permissions (permission, description)
VALUES ('modules.settings.role_permissions.edit', 'Permission to edit role permissions');
INSERT INTO roles_permissions (role_id, permission_id, role_permission_id)
VALUES ('admin', 'modules.settings.role_permissions.edit', DEFAULT);
VALUES ('admin', 'modules.settings.role_permissions.edit', DEFAULT);
alter table permissions
add context bool default false not null;
alter table permissions
add context_type text;
UPDATE public.permissions
SET context = true,
context_type = 'groups'
WHERE permission LIKE 'modules.member#_management.groups.members.edit' ESCAPE '#';
UPDATE public.permissions
SET context = true,
context_type = 'groups'
WHERE permission LIKE 'modules.member#_management.groups.members.view' ESCAPE '#';
UPDATE public.permissions
SET context = true,
context_type = 'groups'
WHERE permission LIKE 'modules.member#_management.groups.permissions.view' ESCAPE '#';
UPDATE public.permissions
SET context = true,
context_type = 'members'
WHERE permission LIKE 'modules.member#_management.profile.units.view' ESCAPE '#';
UPDATE public.permissions
SET context = true,
context_type = 'members'
WHERE permission LIKE 'modules.member#_management.profile.drive#_permissions#_licenses.edit' ESCAPE '#';
UPDATE public.permissions
SET description = 'Permission to access member list',
context = true,
context_type = 'members'
WHERE permission LIKE 'modules.member#_management.list.view' ESCAPE '#';
UPDATE public.permissions
SET context = true,
context_type = 'groups'
WHERE permission LIKE 'modules.member#_management.groups.permissions.edit' ESCAPE '#';
UPDATE public.permissions
SET context = true,
context_type = 'members'
WHERE permission LIKE 'modules.member#_management.profile.edit' ESCAPE '#';
UPDATE public.permissions
SET context = true,
context_type = 'members'
WHERE permission LIKE 'modules.member#_management.profile.iban#_bic.edit' ESCAPE '#';
UPDATE public.permissions
SET context = true,
context_type = 'members'
WHERE permission LIKE 'modules.member#_management.profile.groups.view' ESCAPE '#';
UPDATE public.permissions
SET context = true,
context_type = 'members'
WHERE permission LIKE 'modules.communicator.email.send' ESCAPE '#';
UPDATE public.permissions
SET context = true,
context_type = 'groups'
WHERE permission LIKE 'modules.member#_management.groups.core.edit' ESCAPE '#';
UPDATE public.permissions
SET context = true,
context_type = 'members'
WHERE permission LIKE 'modules.member#_management.profile.iban#_bic.view' ESCAPE '#';
UPDATE public.permissions
SET context = true,
context_type = 'members'
WHERE permission LIKE 'modules.member#_management.profile.core.edit' ESCAPE '#';
UPDATE public.permissions
SET context = true,
context_type = 'members'
WHERE permission LIKE 'modules.member#_management.profile.communication.edit' ESCAPE '#';
UPDATE public.permissions
SET context = true,
context_type = 'members'
WHERE permission LIKE 'modules.member#_management.profile.login.edit' ESCAPE '#';
UPDATE public.permissions
SET context = true,
context_type = 'entity'
WHERE permission LIKE 'modules.scheduler.appointments.edit' ESCAPE '#';
UPDATE public.permissions
SET context = true,
context_type = 'members'
WHERE permission LIKE 'modules.member#_management.profile.delete' ESCAPE '#';
UPDATE public.permissions
SET context = true,
context_type = 'groups'
WHERE permission LIKE 'modules.member#_management.groups.view' ESCAPE '#';
UPDATE public.permissions
SET context = true,
context_type = 'members'
WHERE permission LIKE 'modules.member#_management.profile.view' ESCAPE '#';
UPDATE public.permissions
SET context = true,
context_type = 'vehicles'
WHERE permission LIKE 'modules.resource#_management.vehicles.core.edit' ESCAPE '#';
UPDATE public.permissions
SET context = true,
context_type = 'members'
WHERE permission LIKE 'modules.member#_management.profile.drive#_permissions#_licenses.view' ESCAPE '#';
UPDATE public.permissions
SET context = true,
context_type = 'members'
WHERE permission LIKE 'modules.member#_management.profile.image.edit' ESCAPE '#';
UPDATE public.permissions
SET context = true,
context_type = 'members'
WHERE permission LIKE 'modules.member#_management.profile.communication.view' ESCAPE '#';
UPDATE public.permissions
SET context = true,
context_type = 'members'
WHERE permission LIKE 'modules.member#_management.profile.units.edit' ESCAPE '#';
UPDATE public.permissions
SET context = true,
context_type = 'members'
WHERE permission LIKE 'modules.member#_management.profile.image.view' ESCAPE '#';
UPDATE public.permissions
SET context = true,
context_type = 'members'
WHERE permission LIKE 'modules.member#_management.profile.qualifications.edit' ESCAPE '#';
UPDATE public.permissions
SET context = true,
context_type = 'groups'
WHERE permission LIKE 'modules.member#_management.groups.delete' ESCAPE '#';
UPDATE public.permissions
SET context = true,
context_type = 'entity'
WHERE permission LIKE 'modules.scheduler.appointments.view' ESCAPE '#';
UPDATE public.permissions
SET context = true,
context_type = 'vehicles'
WHERE permission LIKE 'modules.resource#_management.vehicles.core.delete' ESCAPE '#';
UPDATE public.permissions
SET context = true,
context_type = 'members'
WHERE permission LIKE 'modules.member#_management.profile.login.view' ESCAPE '#';
UPDATE public.permissions
SET context = true,
context_type = 'members'
WHERE permission LIKE 'modules.member#_management.profile.qualification.view' ESCAPE '#';

View File

@ -6,10 +6,24 @@
<div id="content">
{{> searchbar}}
<hr>
<h1>Rechtevergabe</h1>
<div class="col">
<div class="form-group row align-items-center">
<h1>Rechtevergabe</h1>
<label for="settings_permissions_role"
class="col-auto col-form-label font-weight-bold">Rolle:</label>
<div class="col-auto">
<select class="form-control" id="settings_permissions_role"></select>
</div>
</div>
</div>
<div class="col">
<div class="row">
<div class="col-6">
<div class="card">
<div class="card-header">Rechte für Rolle bearbeiten</div>
<div class="card-body">Bitte Rolle wählen.</div>
</div>
</div>
</div>
</div>
</div>

View File

@ -1 +1 @@
v0.2-14-g5ddafa7
v0.2-16-g96fc203

View File

@ -343,6 +343,8 @@ table! {
permissions (permission) {
permission -> Text,
description -> Nullable<Text>,
context -> Bool,
context_type -> Nullable<Text>,
}
}