From e428a3807b49b7a76539bbda24accf42a420e968 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=98yvind=20Grutle?= Date: Wed, 13 Dec 2023 10:46:03 +0100 Subject: [PATCH 1/2] fix(org: name required to create organizatio --- next-tavla/app/(admin)/utils.ts | 6 ++++++ next-tavla/src/Admin/utils/formActions.ts | 2 ++ 2 files changed, 8 insertions(+) diff --git a/next-tavla/app/(admin)/utils.ts b/next-tavla/app/(admin)/utils.ts index 0da4b17fa..a13a32e92 100644 --- a/next-tavla/app/(admin)/utils.ts +++ b/next-tavla/app/(admin)/utils.ts @@ -103,6 +103,12 @@ export function getFormFeedbackForError(e: TError): TFormFeedback { feedback: 'Denne personen er allerede medlem av organisasjoen.', variant: 'info', } + case 'organization/name-missing': + return { + form_type: 'general', + feedback: 'Organisasjonen må ha et navn', + variant: 'warning', + } } return { diff --git a/next-tavla/src/Admin/utils/formActions.ts b/next-tavla/src/Admin/utils/formActions.ts index e6a61e427..9e2b31eca 100644 --- a/next-tavla/src/Admin/utils/formActions.ts +++ b/next-tavla/src/Admin/utils/formActions.ts @@ -75,6 +75,8 @@ export async function createOrganizationAction( try { const name = data.get('name')?.toString() ?? '' + if (!name) return getFormFeedbackForError('organization/name-missing') + const user = await getUserFromSessionCookie() if (!user) return getFormFeedbackForError('auth/operation-not-allowed') From 5fdf79fd2e100ac65775f021e95f9abb405711b0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=98yvind=20Grutle?= Date: Wed, 13 Dec 2023 10:58:35 +0100 Subject: [PATCH 2/2] styling(org): move form error inside text field --- .../organizations/components/CreateOrganization.tsx | 1 + next-tavla/app/(admin)/utils.ts | 10 ++++++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/next-tavla/app/(admin)/organizations/components/CreateOrganization.tsx b/next-tavla/app/(admin)/organizations/components/CreateOrganization.tsx index 03662514c..276c83dad 100644 --- a/next-tavla/app/(admin)/organizations/components/CreateOrganization.tsx +++ b/next-tavla/app/(admin)/organizations/components/CreateOrganization.tsx @@ -51,6 +51,7 @@ function CreateOrganization() { id="name" name="name" required + {...getFormFeedbackForField('name', state)} /> diff --git a/next-tavla/app/(admin)/utils.ts b/next-tavla/app/(admin)/utils.ts index a13a32e92..b1426f4fe 100644 --- a/next-tavla/app/(admin)/utils.ts +++ b/next-tavla/app/(admin)/utils.ts @@ -1,7 +1,13 @@ import { VariantType } from '@entur/form' import { FirebaseError } from 'firebase/app' -type InputType = 'general' | 'user' | 'email' | 'password' | 'repeat_password' +type InputType = + | 'general' + | 'user' + | 'email' + | 'password' + | 'repeat_password' + | 'name' export type TFormFeedback = { form_type: InputType @@ -105,7 +111,7 @@ export function getFormFeedbackForError(e: TError): TFormFeedback { } case 'organization/name-missing': return { - form_type: 'general', + form_type: 'name', feedback: 'Organisasjonen må ha et navn', variant: 'warning', }