Skip to content
Snippets Groups Projects
Commit 9df8ebb4 authored by Alexander Reifschneider's avatar Alexander Reifschneider
Browse files

OZG-7619 Add role hints

parent 4f594f05
No related branches found
No related tags found
1 merge request!64OZG-7619 Add role hints
...@@ -3,13 +3,33 @@ ...@@ -3,13 +3,33 @@
<div [formGroupName]="UserFormService.CLIENT_ROLES" class="mb-8 flex gap-56"> <div [formGroupName]="UserFormService.CLIENT_ROLES" class="mb-8 flex gap-56">
<div [formGroupName]="UserFormService.ADMINISTRATION_GROUP" class="flex flex-col gap-2"> <div [formGroupName]="UserFormService.ADMINISTRATION_GROUP" class="flex flex-col gap-2">
<h3 class="text-md block font-medium text-text">Administration</h3> <h3 class="text-md block font-medium text-text">Administration</h3>
<div class="flex items-center gap-2">
<ods-checkbox-editor [formControlName]="UserFormService.ADMIN" label="Admin" inputId="admin" /> <ods-checkbox-editor [formControlName]="UserFormService.ADMIN" label="Admin" inputId="admin" />
<ods-info-icon
tooltip='Wird nur in Kombination mit "User" verwendet. Diese Rolle kann Funktionen in Keycloak und der Administration konfigurieren, z.B. Benutzer anlegen, Gruppen erstellen bzw. Organisationseinheiten hinzufügen und Rollen zuweisen.'
/>
</div>
</div> </div>
<div [formGroupName]="UserFormService.ALFA_GROUP" class="flex flex-col gap-2"> <div [formGroupName]="UserFormService.ALFA_GROUP" class="flex flex-col gap-2">
<h3 class="text-md block font-medium text-text">Alfa</h3> <h3 class="text-md block font-medium text-text">Alfa</h3>
<div class="flex items-center gap-2">
<ods-checkbox-editor [formControlName]="UserFormService.LOESCHEN" label="Löschen" inputId="delete" /> <ods-checkbox-editor [formControlName]="UserFormService.LOESCHEN" label="Löschen" inputId="delete" />
<ods-info-icon
tooltip='Diese Rolle hat dieselben Rechte wie die Rolle "User". Zusätzlich kann "Löschen" ausgewählte Vorgänge aus Alfa löschen. Diese Rolle sollten zwei Benutzer haben, da das Löschen einem Vieraugen-Prinzip folgt.'
/>
</div>
<div class="flex items-center gap-2">
<ods-checkbox-editor [formControlName]="UserFormService.USER" label="User" inputId="user" /> <ods-checkbox-editor [formControlName]="UserFormService.USER" label="User" inputId="user" />
<ods-info-icon
tooltip='Diese Rolle kann alle Vorgänge sehen und bearbeiten, wenn diese seiner Organisationseinheit zugewiesen sind. Ist kompatibel mit "Löschen" und "Admin".'
/>
</div>
<div class="flex items-center gap-2">
<ods-checkbox-editor [formControlName]="UserFormService.POSTSTELLE" label="Poststelle" inputId="post_office" /> <ods-checkbox-editor [formControlName]="UserFormService.POSTSTELLE" label="Poststelle" inputId="post_office" />
<ods-info-icon
tooltip='Diese Rolle kann ausschließlich alle neu eingegangenen Vorgänge sehen und anderen Benutzern zuweisen. Sie sollte nur einem Benutzer zugewiesen sein. Dieser sollte keine weiteren Rollen besitzen. (Sie ist aber kompatibel mit der "Admin")'
/>
</div>
</div> </div>
</div> </div>
</div> </div>
import { ComponentFixture, TestBed } from '@angular/core/testing'; import { ComponentFixture, TestBed } from '@angular/core/testing';
import { ReactiveFormsModule } from '@angular/forms'; import { ReactiveFormsModule } from '@angular/forms';
import { InfoIconComponent, TooltipDirective } from '@ods/system';
import { MockComponent, MockDirective } from 'ng-mocks';
import { createUserFormGroup } from '../../../../test/form'; import { createUserFormGroup } from '../../../../test/form';
import { UserFormRolesComponent } from './user-form-roles.component'; import { UserFormRolesComponent } from './user-form-roles.component';
...@@ -9,7 +11,7 @@ describe('UserFormRolesComponent', () => { ...@@ -9,7 +11,7 @@ describe('UserFormRolesComponent', () => {
beforeEach(async () => { beforeEach(async () => {
await TestBed.configureTestingModule({ await TestBed.configureTestingModule({
imports: [UserFormRolesComponent, ReactiveFormsModule], imports: [UserFormRolesComponent, ReactiveFormsModule, MockComponent(InfoIconComponent), MockDirective(TooltipDirective)],
}).compileComponents(); }).compileComponents();
fixture = TestBed.createComponent(UserFormRolesComponent); fixture = TestBed.createComponent(UserFormRolesComponent);
......
import { Component, Input } from '@angular/core'; import { Component, Input } from '@angular/core';
import { ReactiveFormsModule, UntypedFormGroup } from '@angular/forms'; import { ReactiveFormsModule, UntypedFormGroup } from '@angular/forms';
import { CheckboxEditorComponent } from '@ods/component'; import { CheckboxEditorComponent } from '@ods/component';
import { InfoIconComponent, TooltipDirective } from '@ods/system';
import { UserFormService } from '../user.formservice'; import { UserFormService } from '../user.formservice';
@Component({ @Component({
selector: 'admin-user-form-roles', selector: 'admin-user-form-roles',
standalone: true, standalone: true,
imports: [CheckboxEditorComponent, ReactiveFormsModule], imports: [CheckboxEditorComponent, ReactiveFormsModule, TooltipDirective, InfoIconComponent],
templateUrl: './user-form-roles.component.html', templateUrl: './user-form-roles.component.html',
}) })
export class UserFormRolesComponent { export class UserFormRolesComponent {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment