From 25fc6a262cbcc0f75108dfdf8ecc2f054adb2ada Mon Sep 17 00:00:00 2001 From: Tore Brede <Tore.Brede@uib.no> Date: Tue, 5 Oct 2021 08:43:33 +0200 Subject: [PATCH] GREG-60: Updating fields to look more like planned layout --- frontend/public/locales/en/common.json | 6 ++- frontend/public/locales/nb/common.json | 6 ++- frontend/public/locales/nn/common.json | 6 ++- frontend/src/routes/frontpage/index.tsx | 3 -- frontend/src/routes/register/formData.ts | 1 + .../src/routes/register/stepPersonForm.tsx | 39 +++---------------- frontend/src/routes/register/stepSummary.tsx | 30 ++++++-------- 7 files changed, 30 insertions(+), 61 deletions(-) diff --git a/frontend/public/locales/en/common.json b/frontend/public/locales/en/common.json index f002b064..c5e5e735 100644 --- a/frontend/public/locales/en/common.json +++ b/frontend/public/locales/en/common.json @@ -20,7 +20,8 @@ "roleType": "Role", "roleStartDate": "From", "roleEndDate": "To", - "comment": "Comment" + "comment": "Comment", + "email": "E-mail" }, "loading": "Loading...", "termsHeader": "Terms", @@ -48,7 +49,8 @@ "invalidIdNumber": "Invalid national ID number", "nationalIdNumberRequired": "National ID number required", "roleTypeRequired": "Role type is required", - "roleEndRequired": "Role end date is required" + "roleEndRequired": "Role end date is required", + "emailRequired": "E-mail is required" }, "button": { "back": "Back", diff --git a/frontend/public/locales/nb/common.json b/frontend/public/locales/nb/common.json index 314af2ff..67239ab9 100644 --- a/frontend/public/locales/nb/common.json +++ b/frontend/public/locales/nb/common.json @@ -20,7 +20,8 @@ "roleType": "Gjesterolle", "roleStartDate": "Fra", "roleEndDate": "Til", - "comment": "Kommentar" + "comment": "Kommentar", + "email": "E-post" }, "loading": "Laster...", "termsHeader": "Vilkår", @@ -48,7 +49,8 @@ "invalidIdNumber": "Ugyldig fødselsnummer", "nationalIdNumberRequired": "Fødselsnummer er påkrevd", "roleTypeRequired": "Rolletype er påkrevd", - "roleEndRequired": "Sluttdato for rolle er påkrevd" + "roleEndRequired": "Sluttdato for rolle er påkrevd", + "emailRequired": "E-post er obligatorisk" }, "button": { "back": "Tilbake", diff --git a/frontend/public/locales/nn/common.json b/frontend/public/locales/nn/common.json index f3263eef..0c80b604 100644 --- a/frontend/public/locales/nn/common.json +++ b/frontend/public/locales/nn/common.json @@ -21,7 +21,8 @@ "roleType": "Gjesterolle", "roleStartDate": "Frå", "roleEndDate": "Til", - "comment": "Kommentar" + "comment": "Kommentar", + "email": "E-post" }, "loading": "Lastar...", "termsHeader": "Vilkår", @@ -49,7 +50,8 @@ "invalidIdNumber": "Ugyldig fødselsnummer", "nationalIdNumberRequired": "Fødselsnummer er påkrevd", "roleTypeRequired": "Rolletype er påkrevd", - "roleEndRequired": "Sluttdato for rolle er påkrevd" + "roleEndRequired": "Sluttdato for rolle er påkrevd", + "emailRequired": "E-post er obligatorisk" }, "button": { "back": "Tilbake", diff --git a/frontend/src/routes/frontpage/index.tsx b/frontend/src/routes/frontpage/index.tsx index 1ac44895..d4813747 100644 --- a/frontend/src/routes/frontpage/index.tsx +++ b/frontend/src/routes/frontpage/index.tsx @@ -19,9 +19,6 @@ export default function FrontPage() { <li> <Link to="/register/">Registration</Link> </li> - <li> - <Link to="/registerwizard/">Registration wizard</Link> - </li> </ul> </p> <Debug /> diff --git a/frontend/src/routes/register/formData.ts b/frontend/src/routes/register/formData.ts index a496d7bf..1653f654 100644 --- a/frontend/src/routes/register/formData.ts +++ b/frontend/src/routes/register/formData.ts @@ -8,4 +8,5 @@ export type RegisterFormData = { role_end?: Date comment?: string ou?: { value: string; label: string } + email?: string } \ No newline at end of file diff --git a/frontend/src/routes/register/stepPersonForm.tsx b/frontend/src/routes/register/stepPersonForm.tsx index dec044bf..990af6d0 100644 --- a/frontend/src/routes/register/stepPersonForm.tsx +++ b/frontend/src/routes/register/stepPersonForm.tsx @@ -3,7 +3,6 @@ import { Controller, SubmitHandler, useForm } from 'react-hook-form' import { DatePicker } from '@mui/lab' import React, { forwardRef, Ref, useEffect, useImperativeHandle, useContext, useState } from 'react' import { useTranslation } from 'react-i18next' -import { isValidFnr } from '../../utils' import { RegisterFormData } from './formData' import { PersonFormMethods } from './personFormMethods' import { RolesContext } from '../../context' @@ -94,41 +93,15 @@ const StepPersonForm = forwardRef((props: StepPersonFormProperties, ref: Ref<Per required: t('validation.lastNameRequired').toString(), })} /> - - <Controller name='date_of_birth' - control={control} - rules={{ - required: t( - 'validation.dateOfBirthRequired').toString(), - }} - render={({ field }) => ( - <DatePicker - mask='____-__-__' - label={t('input.dateOfBirth')} - value={field.value} - inputFormat='yyyy-MM-dd' - onChange={(value) => { - field.onChange(value) - }} - renderInput={(params) => <TextField {...params} />} - />)} - /> - <TextField - id='nationalIdNumber' - label={t('input.nationalIdNumber')} - error={!!errors.national_id_number} - helperText={ - errors.national_id_number && errors.national_id_number.message - } - {...register('national_id_number', { - required: t( - 'validation.nationalIdNumberRequired', - ).toString(), - validate: isValidFnr, + id='email' + label={t('input.email')} + error={!!errors.email} + helperText={errors.email && errors.email.message} + {...register(`email`, { + required: t('validation.emailRequired').toString(), })} /> - <FormControl fullWidth> <InputLabel id='ou-select-label'>{t('common:ou')}</InputLabel> <Select diff --git a/frontend/src/routes/register/stepSummary.tsx b/frontend/src/routes/register/stepSummary.tsx index 84bb2574..66221315 100644 --- a/frontend/src/routes/register/stepSummary.tsx +++ b/frontend/src/routes/register/stepSummary.tsx @@ -23,13 +23,12 @@ const StepSummary = forwardRef((props: StepSummaryProperties, ref: Ref<PersonFor const payload = { first_name: data.first_name, last_name: data.last_name, - date_of_birth: data.date_of_birth === null ? null : format(data.date_of_birth as Date, 'yyyy-MM-dd'), - national_id_number: data.national_id_number, role_type: data.role_type, role_start: data.role_start === null ? null : format(data.role_start as Date, 'yyyy-MM-dd'), role_end: data.role_end === null ? null : format(data.role_end as Date, 'yyyy-MM-dd'), comment: data.comment, ou: data.ou, + email: data.email } console.log('submitting', JSON.stringify(payload)) fetch('http://localhost:3000/api/ui/v1/register/', postJsonOpts(payload)) @@ -81,27 +80,20 @@ const StepSummary = forwardRef((props: StepSummaryProperties, ref: Ref<PersonFor {...register('last_name')} /> - <Controller name='date_of_birth' - control={control} - render={({ field }) => ( - <DatePicker - mask='____-__-__' - label={t('input.dateOfBirth')} - disabled - value={field.value} - inputFormat='yyyy-MM-dd' - onChange={(value) => { - field.onChange(value) - }} - renderInput={(params) => <TextField {...params} />} - />)} + <TextField + id='email' + label={t('input.email')} + disabled + {...register('email')} /> <TextField - id='nationalIdNumber' - label={t('input.nationalIdNumber')} + id='ou' + value={ + formData.ou ? formData.ou.label : '' + } + label={t('ou')} disabled - {...register('national_id_number')} /> <TextField -- GitLab