mirror of
https://github.com/danbulant/Portfolio
synced 2026-06-18 22:11:14 +00:00
fix: streetnames with spaces
This commit is contained in:
parent
6de8f3f0cb
commit
d1de6dc3a1
2 changed files with 58 additions and 6 deletions
49
frontend/src/lib/components/textfield/AddressField.svelte
Normal file
49
frontend/src/lib/components/textfield/AddressField.svelte
Normal file
|
|
@ -0,0 +1,49 @@
|
|||
<script lang="ts">
|
||||
import { onMount } from 'svelte';
|
||||
import TextField from './TextField.svelte';
|
||||
|
||||
export let helperText: string = 'Zadejte jméno a příjmení. Například Radko Sáblík';
|
||||
export let placeholder: string = '';
|
||||
|
||||
export let valueLeft: string = '';
|
||||
export let valueRight: string = '';
|
||||
|
||||
let value: string = '';
|
||||
|
||||
console.log(valueLeft, valueRight);
|
||||
if (valueLeft && valueRight) {
|
||||
value = `${valueLeft} ${valueRight}`;
|
||||
} else if (valueLeft) {
|
||||
value = valueLeft;
|
||||
}
|
||||
|
||||
$: {
|
||||
const parsed = value.trim().split(' ');
|
||||
console.log(parsed);
|
||||
if (parsed.length >= 2) {
|
||||
valueLeft = parsed.slice(0, parsed.length - 1).join(' ');
|
||||
valueRight = parsed[parsed.length - 1];
|
||||
console.log(valueLeft, valueRight);
|
||||
} else {
|
||||
valueLeft = parsed[0];
|
||||
valueRight = '';
|
||||
}
|
||||
}
|
||||
|
||||
export let error: string = '';
|
||||
</script>
|
||||
|
||||
<TextField
|
||||
bind:error
|
||||
bind:value
|
||||
on:click
|
||||
on:keydown
|
||||
on:keyup
|
||||
on:change
|
||||
type="text"
|
||||
{placeholder}
|
||||
{helperText}
|
||||
/>
|
||||
|
||||
<style lang="postcss">
|
||||
</style>
|
||||
|
|
@ -9,7 +9,7 @@
|
|||
import SplitLayout from '$lib/components/layout/SplitLayout.svelte';
|
||||
import SelectField from '$lib/components/select/SelectField.svelte';
|
||||
import EmailField from '$lib/components/textfield/EmailField.svelte';
|
||||
import IdField from '$lib/components/textfield/IdField.svelte';
|
||||
import AddressField from '$lib/components/textfield/AddressField.svelte';
|
||||
import NameField from '$lib/components/textfield/NameField.svelte';
|
||||
import TelephoneField from '$lib/components/textfield/TelephoneField.svelte';
|
||||
import TextField from '$lib/components/textfield/TextField.svelte';
|
||||
|
|
@ -290,6 +290,7 @@
|
|||
values.candidate.zip
|
||||
];
|
||||
values.candidate.address = addressArray.map((x) => x.replaceAll(',', '').trim()).join(',');
|
||||
console.log(values.candidate.address)
|
||||
// @ts-ignore
|
||||
delete values.candidate.street;
|
||||
// @ts-ignore
|
||||
|
|
@ -417,6 +418,8 @@
|
|||
(x) => (x.telephone = x.telephone != '' ? formatTelephone(x.telephone) : '')
|
||||
);
|
||||
|
||||
const addressArray = details.candidate.address.split(',');
|
||||
const streetHouseNumber = addressArray[0].split(' ');
|
||||
form.set({
|
||||
gdpr: true,
|
||||
linkOk: true,
|
||||
|
|
@ -425,8 +428,8 @@
|
|||
personalIdErr: false,
|
||||
candidate: {
|
||||
...details.candidate,
|
||||
street: details.candidate.address.split(',')[0].split(' ')[0],
|
||||
houseNumber: details.candidate.address.split(',')[0].split(' ')[1],
|
||||
street: streetHouseNumber.slice(0, streetHouseNumber.length - 1).join(' ').trim(),
|
||||
houseNumber: streetHouseNumber[streetHouseNumber.length - 1],
|
||||
city: details.candidate.address.split(',')[1],
|
||||
zip: details.candidate.address.split(',')[2],
|
||||
// @ts-ignore
|
||||
|
|
@ -578,11 +581,11 @@
|
|||
</div>
|
||||
<div class="field flex">
|
||||
<span class="w-[66%]">
|
||||
<NameField
|
||||
<AddressField
|
||||
error={$typedErrors['candidate']['street'] ||
|
||||
$typedErrors['candidate']['houseNumber']}
|
||||
bind:valueName={$form.candidate.street}
|
||||
bind:valueSurname={$form.candidate.houseNumber}
|
||||
bind:valueLeft={$form.candidate.street}
|
||||
bind:valueRight={$form.candidate.houseNumber}
|
||||
placeholder={$LL.input.address()}
|
||||
helperText="Uveďte ulici a číslo popisné (např. Preslova 72/25)."
|
||||
/>
|
||||
|
|
|
|||
Loading…
Reference in a new issue