From 84f8737ec4da773f1256a5673aaf70860462cfa9 Mon Sep 17 00:00:00 2001 From: Erik Tiekstra Date: Wed, 22 Sep 2021 10:46:20 +0200 Subject: [PATCH] feat(employee-invite): Updated validation of email-addresses and changed text for assigned users. (TV-628) Squashed commit of the following: commit 06df4b0cf3fd7a006287267d6bd3ce427d2ecdd7 Author: Erik Tiekstra Date: Wed Sep 22 09:17:24 2021 +0200 Added new text and updated validation --- .../employee-invite.component.html | 22 +++++++++++-------- .../employee-invite.component.ts | 8 ++++--- .../utils/validators/email.validator.ts | 5 ++++- 3 files changed, 22 insertions(+), 13 deletions(-) diff --git a/apps/mina-sidor-fa/src/app/pages/administration/pages/employee-invite/employee-invite.component.html b/apps/mina-sidor-fa/src/app/pages/administration/pages/employee-invite/employee-invite.component.html index 46297cc..e35efbc 100644 --- a/apps/mina-sidor-fa/src/app/pages/administration/pages/employee-invite/employee-invite.component.html +++ b/apps/mina-sidor-fa/src/app/pages/administration/pages/employee-invite/employee-invite.component.html @@ -42,15 +42,11 @@ [afHeading]="alertTexts.heading" af-heading-level="h3" > - -

- Inbjudan skickades endast till vissa mottagare. Skicka inbjudningar igen till de e-postadresser där - inbjudan misslyckades. -

-
- -

Något gick fel. Skicka inbjudningar igen.

-
+

+ Inbjudan skickades endast till vissa mottagare. Skicka inbjudningar igen till de e-postadresser där inbjudan + misslyckades. +

+

Något gick fel. Skicka inbjudningar igen.

Inbjudan kunde inte skickas till:

{{lastInvitedFailedInvites.join(', ')}}

@@ -59,6 +55,14 @@

Inbjudan har skickats till:

{{lastInvitedNewUsers.join(', ')}}

+ +

Inbjudan har skickats till:

+

{{lastInvitedAssignedUsers.join(', ')}}

+

+ {{lastInvitedAssignedUsers.length > 1 ? 'Användarna' : 'Användaren'}} fanns redan i systemet och är nu + tillagd i personallistan. +

+

E-postadressen har redan fått en inbjudan:

{{lastInvitedAlreadyInvitedUsers.join(', ')}}

diff --git a/apps/mina-sidor-fa/src/app/pages/administration/pages/employee-invite/employee-invite.component.ts b/apps/mina-sidor-fa/src/app/pages/administration/pages/employee-invite/employee-invite.component.ts index 1fc5296..4d829a2 100644 --- a/apps/mina-sidor-fa/src/app/pages/administration/pages/employee-invite/employee-invite.component.ts +++ b/apps/mina-sidor-fa/src/app/pages/administration/pages/employee-invite/employee-invite.component.ts @@ -31,15 +31,17 @@ export class EmployeeInviteComponent { get emailsControlValueAsArray(): string[] { return (this.emailsControl.value as string) - .trim() + .replaceAll(/\n|\t|\r|\s/g, '') .split(',') .filter(email => !!email); } get lastInvitedNewUsers(): string[] { - const invitedUsers = this.lastInvites?.invitedUsers || []; + return this.lastInvites?.invitedUsers || []; + } + get lastInvitedAssignedUsers(): string[] { const assignedUsers = this.lastInvites?.assignedUsers || []; - return [...invitedUsers, ...assignedUsers.map(user => user.email)]; + return assignedUsers.map(user => user.email); } get lastInvitedExistingUsers(): string[] { const existingUsersInCurrentOrg = this.lastInvites?.existingUsersInCurrentOrg || []; diff --git a/apps/mina-sidor-fa/src/app/shared/utils/validators/email.validator.ts b/apps/mina-sidor-fa/src/app/shared/utils/validators/email.validator.ts index 804271e..c9a5a34 100644 --- a/apps/mina-sidor-fa/src/app/shared/utils/validators/email.validator.ts +++ b/apps/mina-sidor-fa/src/app/shared/utils/validators/email.validator.ts @@ -23,7 +23,10 @@ export function EmailValidator(label = 'Fältet'): ValidatorFn { export function CommaSeparatedEmailValidator(): ValidatorFn { return (control: AbstractControl): ValidationError => { if (control && control.value) { - const values: string[] = (control.value as string).toLowerCase().trim().split(','); + const values: string[] = (control.value as string) + .toLowerCase() + .replaceAll(/\n|\t|\r|\s/g, '') + .split(','); const invalidEmailaddresses = []; values.forEach(value => {