From 0edc9d9987a6fd78b71b496f5efadb42e7f5b2f4 Mon Sep 17 00:00:00 2001 From: EETagent Date: Mon, 16 Jan 2023 22:27:58 +0100 Subject: [PATCH 01/14] fix: remove @apply --- frontend/src/lib/components/button/Submit.svelte | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/src/lib/components/button/Submit.svelte b/frontend/src/lib/components/button/Submit.svelte index e7daefc..4c51767 100644 --- a/frontend/src/lib/components/button/Submit.svelte +++ b/frontend/src/lib/components/button/Submit.svelte @@ -20,7 +20,7 @@ input { @apply hover:cursor-pointer; @apply bg-sspsBlue hover:bg-sspsBlueDark - @apply @apply rounded-lg p-3 text-xl font-semibold + @apply rounded-lg p-3 text-xl font-semibold text-white transition-colors duration-300; @apply w-full; } From da3fe8c5ac7820ce42a69f7f32cbcd47f07e4203 Mon Sep 17 00:00:00 2001 From: EETagent Date: Mon, 16 Jan 2023 22:28:16 +0100 Subject: [PATCH 02/14] feat: init grade table --- .../lib/components/grades/GradesRow.svelte | 41 +++++++++ .../lib/components/grades/GradesTable.svelte | 85 +++++++++++++++++++ .../(authenticated)/register/+page.svelte | 35 ++++++-- 3 files changed, 154 insertions(+), 7 deletions(-) create mode 100644 frontend/src/lib/components/grades/GradesRow.svelte create mode 100644 frontend/src/lib/components/grades/GradesTable.svelte diff --git a/frontend/src/lib/components/grades/GradesRow.svelte b/frontend/src/lib/components/grades/GradesRow.svelte new file mode 100644 index 0000000..a17f18e --- /dev/null +++ b/frontend/src/lib/components/grades/GradesRow.svelte @@ -0,0 +1,41 @@ + + + + +
+ + {#each SEMESTERS as semester} + + {/each} +
+ + diff --git a/frontend/src/lib/components/grades/GradesTable.svelte b/frontend/src/lib/components/grades/GradesTable.svelte new file mode 100644 index 0000000..a06a963 --- /dev/null +++ b/frontend/src/lib/components/grades/GradesTable.svelte @@ -0,0 +1,85 @@ + + + + +
+
+ Známky + 1/8 + 2/8 + 1/9 + 2/9 +
+ {#each gradesLocal as _, i} + + {/each} + + +
+ + diff --git a/frontend/src/routes/(candidate)/(authenticated)/register/+page.svelte b/frontend/src/routes/(candidate)/(authenticated)/register/+page.svelte index 97674e4..857c2c6 100644 --- a/frontend/src/routes/(candidate)/(authenticated)/register/+page.svelte +++ b/frontend/src/routes/(candidate)/(authenticated)/register/+page.svelte @@ -21,10 +21,11 @@ import * as yup from 'yup'; import type { CandidateData } from '$lib/stores/candidate'; import AccountLinkCheckBox from '$lib/components/checkbox/AccountLinkCheckBox.svelte'; + import GradesTable from '$lib/components/grades/GradesTable.svelte'; - const pageCount = 6; + const pageCount = 7; let pageIndex = 0; - let pagesFilled = [false, false, false, false, false, false]; + let pagesFilled = [false, false, false, false, false, false, false]; let pageTexts = [ 'Zpracování osobních údajů', 'Registrace', @@ -244,11 +245,23 @@ values.parents = values.parents.filter( (x) => x.name !== '' && x.surname !== '' && x.email !== '' && x.telephone !== '' ); - // @ts-ignore - let addressArray: Array = [values.candidate.street + ' ' + values.candidate.houseNumber, values.candidate.city, values.candidate.zip]; + let addressArray: Array = [ + // @ts-ignore + values.candidate.street + ' ' + values.candidate.houseNumber, + // @ts-ignore + values.candidate.city, + // @ts-ignore + values.candidate.zip + ]; values.candidate.address = addressArray.map((x) => x.replaceAll(',', '').trim()).join(','); // @ts-ignore - delete values.candidate.street; delete values.candidate.houseNumber; delete values.candidate.city; delete values.candidate.zip; + delete values.candidate.street; + // @ts-ignore + delete values.candidate.houseNumber; + // @ts-ignore + delete values.candidate.city; + // @ts-ignore + delete values.candidate.zip; await apiFillDetails(values); goto('/dashboard'); @@ -377,6 +390,8 @@ pageIndex = 2; // skip gdpr page pageTexts[2] = 'Úprava osobních údajů'; } + + let test = 8; @@ -384,7 +399,7 @@
- {#if pageIndex > 0} + {#if pageIndex !== 0 && pageIndex !== 7}
@@ -664,9 +679,15 @@ /> {/if}
+ {:else if pageIndex === 7} +

{pageTexts[5]}

+

+ Přidejte prosím přepis Vaších známek z posledních dvou let studia +

+ {/if}
-
+
{ From 16ef3569e6549413b6b3ac466f52b5248dd3d9d3 Mon Sep 17 00:00:00 2001 From: EETagent Date: Mon, 16 Jan 2023 23:41:13 +0100 Subject: [PATCH 03/14] feat: validate grades table in form --- .../lib/components/grades/GradesTable.svelte | 50 ++++++++++++------- .../(authenticated)/register/+page.svelte | 41 ++++++++++++--- 2 files changed, 66 insertions(+), 25 deletions(-) diff --git a/frontend/src/lib/components/grades/GradesTable.svelte b/frontend/src/lib/components/grades/GradesTable.svelte index a06a963..6a2ae10 100644 --- a/frontend/src/lib/components/grades/GradesTable.svelte +++ b/frontend/src/lib/components/grades/GradesTable.svelte @@ -7,9 +7,11 @@
@@ -53,9 +63,10 @@ 2/9
{#each gradesLocal as _, i} - + {/each}
diff --git a/frontend/src/routes/(candidate)/(authenticated)/register/+page.svelte b/frontend/src/routes/(candidate)/(authenticated)/register/+page.svelte index 857c2c6..5def3f6 100644 --- a/frontend/src/routes/(candidate)/(authenticated)/register/+page.svelte +++ b/frontend/src/routes/(candidate)/(authenticated)/register/+page.svelte @@ -59,7 +59,8 @@ citizenship: '', personalIdNumber: '', schoolName: '', - healthInsurance: '' + healthInsurance: '', + grades: [] }, parents: [ { @@ -106,7 +107,20 @@ citizenship: yup.string().required(), personalIdNumber: yup.string().required(), schoolName: yup.string().required(), - healthInsurance: yup.number().required() + healthInsurance: yup.number().required(), + grades: yup + .array() + .min(1) + .of( + yup + .object() + .shape({ + subject: yup.string().required(), + grade: yup.number().required(), + semester: yup.string().required() + }) + .required() + ) }), parents: yup.array().of( yup.object().shape({ @@ -272,7 +286,7 @@ } }; - const { form, errors, handleSubmit, handleChange } = createForm({ + const { form, errors, handleSubmit, handleChange, updateValidateField } = createForm({ initialValues: formInitialValues, validationSchema: formValidationSchema, @@ -371,7 +385,8 @@ street: details.candidate.address.split(',')[0].split(' ')[0], houseNumber: details.candidate.address.split(',')[0].split(' ')[1], city: details.candidate.address.split(',')[1], - zip: details.candidate.address.split(',')[2] + zip: details.candidate.address.split(',')[2], + grades: [] }, parents: [ { @@ -390,8 +405,6 @@ pageIndex = 2; // skip gdpr page pageTexts[2] = 'Úprava osobních údajů'; } - - let test = 8; @@ -684,7 +697,21 @@

Přidejte prosím přepis Vaších známek z posledních dvou let studia

- + { + //@ts-ignore + const mockEvent = { + target: { + name: 'candidate.grades', + value: event.detail + } + }; + //@ts-ignore + handleChange(mockEvent); + }} + bind:grades={$form.candidate.grades} + /> {/if}
From dda76c34efdb2194f1c97cba9e2f2bf4d33e09e2 Mon Sep 17 00:00:00 2001 From: EETagent Date: Mon, 16 Jan 2023 23:41:23 +0100 Subject: [PATCH 04/14] fix: table layout fixes --- frontend/src/lib/components/grades/GradesRow.svelte | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/frontend/src/lib/components/grades/GradesRow.svelte b/frontend/src/lib/components/grades/GradesRow.svelte index a17f18e..9341c45 100644 --- a/frontend/src/lib/components/grades/GradesRow.svelte +++ b/frontend/src/lib/components/grades/GradesRow.svelte @@ -14,9 +14,9 @@
- + {#each SEMESTERS as semester} - From 27764520463daf209cb1ed71e3acc7a99ab0b077 Mon Sep 17 00:00:00 2001 From: EETagent Date: Mon, 16 Jan 2023 23:48:15 +0100 Subject: [PATCH 05/14] fix: remove unused --- .../routes/(candidate)/(authenticated)/register/+page.svelte | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/src/routes/(candidate)/(authenticated)/register/+page.svelte b/frontend/src/routes/(candidate)/(authenticated)/register/+page.svelte index 5def3f6..cd2feae 100644 --- a/frontend/src/routes/(candidate)/(authenticated)/register/+page.svelte +++ b/frontend/src/routes/(candidate)/(authenticated)/register/+page.svelte @@ -286,7 +286,7 @@ } }; - const { form, errors, handleSubmit, handleChange, updateValidateField } = createForm({ + const { form, errors, handleSubmit, handleChange } = createForm({ initialValues: formInitialValues, validationSchema: formValidationSchema, From 3233945dd46b5cecb1daea91a0b0a17bcd9e739a Mon Sep 17 00:00:00 2001 From: EETagent Date: Tue, 17 Jan 2023 00:02:37 +0100 Subject: [PATCH 06/14] fix: errors, remove handleChange --- .../lib/components/grades/GradesTable.svelte | 11 +---- .../(authenticated)/register/+page.svelte | 41 +++---------------- 2 files changed, 7 insertions(+), 45 deletions(-) diff --git a/frontend/src/lib/components/grades/GradesTable.svelte b/frontend/src/lib/components/grades/GradesTable.svelte index 6a2ae10..e2bbd57 100644 --- a/frontend/src/lib/components/grades/GradesTable.svelte +++ b/frontend/src/lib/components/grades/GradesTable.svelte @@ -23,7 +23,7 @@ }; }); - export let error: string = ''; + export let error: string | Array = ''; export let grades: Array; @@ -66,7 +66,7 @@ {/each} -