From 65bc2e404f996326cde9a14cdfa402abfc6c0668 Mon Sep 17 00:00:00 2001 From: EETagent Date: Mon, 19 Dec 2022 19:54:26 +0100 Subject: [PATCH 1/3] feat: descriptions for registration --- .../(candidate)/(authenticated)/register/+page.svelte | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/frontend/src/routes/(candidate)/(authenticated)/register/+page.svelte b/frontend/src/routes/(candidate)/(authenticated)/register/+page.svelte index 6ed6e52..5b4ea02 100644 --- a/frontend/src/routes/(candidate)/(authenticated)/register/+page.svelte +++ b/frontend/src/routes/(candidate)/(authenticated)/register/+page.svelte @@ -220,8 +220,7 @@

Registrace

- Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
Fusce suscipit libero eget - elit. + V rámci usnadnění přijímacího řízení jsme připravili online formulář, který vám pomůže s vyplněním potřebných údajů.

@@ -255,7 +254,7 @@ {#if pageIndex === 1}

Něco o tobě

- Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
Fusce suscipit libero eget elit. + Pro registraci je potřeba vyplnit několik údajů o tobě. Tyto údaje budou použity pro přijímací řízení. Všechny údaje jsou důležité a bez nich se registrace nezdaří.

@@ -305,7 +304,7 @@ {#if pageIndex === 2}

Už jen kousek!

- Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
Fusce suscipit libero eget elit. + Sběr dat o zákonném zástupci je klíčový pro získání důležitých kontaktů a informací.

@@ -340,7 +339,7 @@ {#if pageIndex === 3}

Dobrovolné!

- Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
Fusce suscipit libero eget elit. + V případě, že máte druhého zákonného zástupce (např. otec a matka), můžete jej zde zadat.

@@ -375,7 +374,7 @@ {#if pageIndex === 4}

Poslední krok

- Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
Fusce suscipit libero eget elit. + Zadejte prosím své občanství, rodné číslo a obor na který se hlásíte.

From a9ba36e3cc6559052374ae1784b8711a8d8082bf Mon Sep 17 00:00:00 2001 From: EETagent Date: Mon, 19 Dec 2022 20:44:32 +0100 Subject: [PATCH 2/3] feat: add gdpr checkbox --- .../components/checkbox/GdprCheckBox.svelte | 21 ++++++++++ .../(authenticated)/register/+page.svelte | 41 +++++++++++-------- 2 files changed, 46 insertions(+), 16 deletions(-) create mode 100644 frontend/src/lib/components/checkbox/GdprCheckBox.svelte diff --git a/frontend/src/lib/components/checkbox/GdprCheckBox.svelte b/frontend/src/lib/components/checkbox/GdprCheckBox.svelte new file mode 100644 index 0000000..ca1036e --- /dev/null +++ b/frontend/src/lib/components/checkbox/GdprCheckBox.svelte @@ -0,0 +1,21 @@ + + + + + + diff --git a/frontend/src/routes/(candidate)/(authenticated)/register/+page.svelte b/frontend/src/routes/(candidate)/(authenticated)/register/+page.svelte index 5b4ea02..e5cdaa2 100644 --- a/frontend/src/routes/(candidate)/(authenticated)/register/+page.svelte +++ b/frontend/src/routes/(candidate)/(authenticated)/register/+page.svelte @@ -2,6 +2,7 @@ import { goto } from '$app/navigation'; import { apiFillDetails } from '$lib/@api/candidate'; import Submit from '$lib/components/button/Submit.svelte'; + import GdprCheckBox from '$lib/components/checkbox/GdprCheckBox.svelte'; import Home from '$lib/components/icons/Home.svelte'; import SchoolBadge from '$lib/components/icons/SchoolBadge.svelte'; @@ -18,7 +19,7 @@ import type { Writable } from 'svelte/store'; import * as yup from 'yup'; - const pageCount = 4; + const pageCount = 5; let pageIndex = 0; let pagesFilled = 0; @@ -155,7 +156,7 @@ const isPageInvalid = (): boolean => { switch (pageIndex) { - case 0: + case 1: if ( $typedErrors['candidate']['name'] || $typedErrors['candidate']['email'] || @@ -165,7 +166,7 @@ } break; - case 1: + case 2: if ( /* $typedErrors.birthdurname || */ $typedErrors['candidate']['birthplace'] || $typedErrors['candidate']['birthdate'] || @@ -174,7 +175,7 @@ return true; } break; - case 2: + case 3: if ( $typedErrors['parents'][0]['name'] || $typedErrors['parents'][0]['surname'] || @@ -184,7 +185,7 @@ return true; } break; - case 3: + case 4: if ( $typedErrors['parents'][1]['name'] || $typedErrors['parents'][1]['surname'] || @@ -194,7 +195,7 @@ return true; } break; - case 4: + case 5: if ( $typedErrors['candidate']['citizenship'] || $typedErrors['candidate']['personalIdNumber'] || @@ -217,10 +218,21 @@
{#if pageIndex === 0} + +

Váš souhlas

+

+ V rámci portálu pro přijímací řízení zpracováváme mnoho osobních údajů. Proto je nutný Váš souhlas s jejich zpracováním. +

+
+ +
+ + {:else if pageIndex === 1}

Registrace

- V rámci usnadnění přijímacího řízení jsme připravili online formulář, který vám pomůže s vyplněním potřebných údajů. + V rámci usnadnění přijímacího řízení jsme připravili online formulář, který vám pomůže s + vyplněním potřebných údajů.

@@ -250,11 +262,11 @@ />
- {/if} - {#if pageIndex === 1} + {:else if pageIndex === 2}

Něco o tobě

- Pro registraci je potřeba vyplnit několik údajů o tobě. Tyto údaje budou použity pro přijímací řízení. Všechny údaje jsou důležité a bez nich se registrace nezdaří. + Pro registraci je potřeba vyplnit několik údajů o tobě. Tyto údaje budou použity pro + přijímací řízení. Všechny údaje jsou důležité a bez nich se registrace nezdaří.

@@ -300,8 +312,7 @@ />
- {/if} - {#if pageIndex === 2} + {:else if pageIndex === 3}

Už jen kousek!

Sběr dat o zákonném zástupci je klíčový pro získání důležitých kontaktů a informací. @@ -335,8 +346,7 @@

- {/if} - {#if pageIndex === 3} + {:else if pageIndex === 4}

Dobrovolné!

V případě, že máte druhého zákonného zástupce (např. otec a matka), můžete jej zde zadat. @@ -370,8 +380,7 @@

- {/if} - {#if pageIndex === 4} + {:else if pageIndex === 5}

Poslední krok

Zadejte prosím své občanství, rodné číslo a obor na který se hlásíte. From d97dafaa09283c59ee1840a801d48e169b4fc4d8 Mon Sep 17 00:00:00 2001 From: EETagent Date: Mon, 19 Dec 2022 21:05:10 +0100 Subject: [PATCH 3/3] feat: error for gdpr checkbox --- .../components/checkbox/GdprCheckBox.svelte | 29 +++++++++++++++---- .../(authenticated)/register/+page.svelte | 16 ++++++++-- 2 files changed, 38 insertions(+), 7 deletions(-) diff --git a/frontend/src/lib/components/checkbox/GdprCheckBox.svelte b/frontend/src/lib/components/checkbox/GdprCheckBox.svelte index ca1036e..0ce3a4e 100644 --- a/frontend/src/lib/components/checkbox/GdprCheckBox.svelte +++ b/frontend/src/lib/components/checkbox/GdprCheckBox.svelte @@ -1,21 +1,40 @@ - +

- 📜 + 📜
Souhlas se zpracováním osobních údajů
Kliknutím vyjaďřujete souhlas se zpracováním osobních údajů
- +
diff --git a/frontend/src/routes/(candidate)/(authenticated)/register/+page.svelte b/frontend/src/routes/(candidate)/(authenticated)/register/+page.svelte index e5cdaa2..7fd6aea 100644 --- a/frontend/src/routes/(candidate)/(authenticated)/register/+page.svelte +++ b/frontend/src/routes/(candidate)/(authenticated)/register/+page.svelte @@ -24,6 +24,7 @@ let pagesFilled = 0; const formInitialValues = { + gdpr: false, candidate: { name: '', surname: '', @@ -54,6 +55,7 @@ }; const formValidationSchema = yup.object().shape({ + gdpr: yup.boolean().oneOf([true]), candidate: yup.object().shape({ name: yup.string().required(), surname: yup.string(), @@ -156,6 +158,11 @@ const isPageInvalid = (): boolean => { switch (pageIndex) { + case 0: + if ($typedErrors['gdpr']) { + return true; + } + break; case 1: if ( $typedErrors['candidate']['name'] || @@ -221,10 +228,15 @@

Váš souhlas

- V rámci portálu pro přijímací řízení zpracováváme mnoho osobních údajů. Proto je nutný Váš souhlas s jejich zpracováním. + V rámci portálu pro přijímací řízení zpracováváme mnoho osobních údajů. Proto je nutný Váš + souhlas s jejich zpracováním.

- +
{:else if pageIndex === 1}