Skip to content
Snippets Groups Projects
Verified Commit 62d0282f authored by Sebastian Bergandy's avatar Sebastian Bergandy :keyboard:
Browse files

set validators

parent eca2665f
Branches
No related tags found
No related merge requests found
...@@ -32,10 +32,19 @@ import { ...@@ -32,10 +32,19 @@ import {
PatchConfig, PatchConfig,
} from '@admin/keycloak-shared'; } from '@admin/keycloak-shared';
import { NavigationService } from '@alfa-client/navigation-shared'; import { NavigationService } from '@alfa-client/navigation-shared';
import { EMPTY_STRING, isLoaded, mapToResource, StateResource } from '@alfa-client/tech-shared'; import {
checkBoxGroupsEmptyValidator,
EMPTY_STRING,
fieldEmptyValidator,
fieldInvalidValidator,
fieldLengthValidator,
isLoaded,
mapToResource,
StateResource,
} from '@alfa-client/tech-shared';
import { SnackBarService } from '@alfa-client/ui'; import { SnackBarService } from '@alfa-client/ui';
import { Injectable, OnDestroy } from '@angular/core'; import { Injectable, OnDestroy } from '@angular/core';
import { AbstractControl, FormControl, UntypedFormBuilder, UntypedFormGroup, Validators } from '@angular/forms'; import { AbstractControl, FormControl, UntypedFormBuilder, UntypedFormGroup } from '@angular/forms';
import { UrlSegment } from '@angular/router'; import { UrlSegment } from '@angular/router';
import { filter, Observable, Subscription, tap } from 'rxjs'; import { filter, Observable, Subscription, tap } from 'rxjs';
...@@ -93,11 +102,14 @@ export class UserFormService extends KeycloakFormService<User> implements OnDest ...@@ -93,11 +102,14 @@ export class UserFormService extends KeycloakFormService<User> implements OnDest
_initForm(): UntypedFormGroup { _initForm(): UntypedFormGroup {
return this.formBuilder.group( return this.formBuilder.group(
{ {
[UserFormService.FIRST_NAME]: new FormControl(EMPTY_STRING, Validators.required), [UserFormService.FIRST_NAME]: new FormControl(EMPTY_STRING, fieldEmptyValidator(UserFormService.FIRST_NAME)),
[UserFormService.LAST_NAME]: new FormControl(EMPTY_STRING), [UserFormService.LAST_NAME]: new FormControl(EMPTY_STRING, fieldEmptyValidator(UserFormService.LAST_NAME)),
[UserFormService.USERNAME]: new FormControl(EMPTY_STRING), [UserFormService.USERNAME]: new FormControl(EMPTY_STRING, [fieldLengthValidator(UserFormService.USERNAME, 3, 255)]),
[UserFormService.EMAIL]: new FormControl(EMPTY_STRING), [UserFormService.EMAIL]: new FormControl(EMPTY_STRING, [
[UserFormService.CLIENT_ROLES]: this.formBuilder.group({ fieldInvalidValidator(UserFormService.EMAIL, /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/),
]),
[UserFormService.CLIENT_ROLES]: this.formBuilder.group(
{
[UserFormService.ADMINISTRATION_GROUP]: this.formBuilder.group({ [UserFormService.ADMINISTRATION_GROUP]: this.formBuilder.group({
[UserFormService.ADMIN]: new FormControl(false), [UserFormService.ADMIN]: new FormControl(false),
[UserFormService.DATENBEAUFTRAGUNG]: new FormControl(false), [UserFormService.DATENBEAUFTRAGUNG]: new FormControl(false),
...@@ -107,7 +119,14 @@ export class UserFormService extends KeycloakFormService<User> implements OnDest ...@@ -107,7 +119,14 @@ export class UserFormService extends KeycloakFormService<User> implements OnDest
[UserFormService.USER]: new FormControl(false), [UserFormService.USER]: new FormControl(false),
[UserFormService.POSTSTELLE]: new FormControl(false), [UserFormService.POSTSTELLE]: new FormControl(false),
}), }),
}), },
{
validators: checkBoxGroupsEmptyValidator(UserFormService.CLIENT_ROLES, [
UserFormService.ADMINISTRATION_GROUP,
UserFormService.ALFA_GROUP,
]),
},
),
[UserFormService.GROUPS]: this.formBuilder.group({}), [UserFormService.GROUPS]: this.formBuilder.group({}),
}, },
{ updateOn: 'submit' }, { updateOn: 'submit' },
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment