diff --git a/src/components/Ausweis/ButtonWeiterHilfe.svelte b/src/components/Ausweis/ButtonWeiterHilfe.svelte index 96b4428f..2d70f7a6 100644 --- a/src/components/Ausweis/ButtonWeiterHilfe.svelte +++ b/src/components/Ausweis/ButtonWeiterHilfe.svelte @@ -52,6 +52,11 @@ if (!value && element.required) { element.setCustomValidity("Eine Auswahl ist verpflichtend.") element.dataset["isinvalid"] = "true" + + element.addEventListener("change", () => { + element.setCustomValidity("") + element.dataset["isinvalid"] = "false" + }) } else { element.setCustomValidity("") } diff --git a/src/components/Ausweis/GebaeudeDaten.svelte b/src/components/Ausweis/GebaeudeDaten.svelte index e2ac4557..bf061420 100644 --- a/src/components/Ausweis/GebaeudeDaten.svelte +++ b/src/components/Ausweis/GebaeudeDaten.svelte @@ -1,9 +1,8 @@
- { + ortInput.dispatchEvent(new Event('change')); + }} name="plz" />
@@ -85,6 +89,7 @@ xl:grid-cols-3 xl:gap-x-8 xl:gap-y-8 readonly={false} required bind:value={objekt.ort} + bind:this={ortInput} type="text" /> diff --git a/src/components/Dashboard/DashboardAusweis.svelte b/src/components/Dashboard/DashboardAusweis.svelte index 4134be86..d386966d 100644 --- a/src/components/Dashboard/DashboardAusweis.svelte +++ b/src/components/Dashboard/DashboardAusweis.svelte @@ -746,24 +746,29 @@
-

Bilder

-
- {#each aufnahme.bilder as bild, i (i)} - {bild.kategorie} - {/each} -
-
-

Unterlagen

-
- {#if aufnahme.unterlagen.length > 0} - {#each aufnahme.unterlagen as unterlage} - {unterlage.name} + {#if aufnahme.bilder.length > 0} +

Bilder

+
+ {#each aufnahme.bilder as bild, i (i)} + {bild.kategorie} {/each} - {/if} -
+
+
+ {/if} + {#if aufnahme.unterlagen.length > 0} +

Unterlagen

+
+ {#if aufnahme.unterlagen.length > 0} + {#each aufnahme.unterlagen as unterlage} + {unterlage.name} + {/each} + {/if} +
+ {/if}
-
diff --git a/src/components/PlzSuche.svelte b/src/components/PlzSuche.svelte index 2a757706..6c9019f0 100644 --- a/src/components/PlzSuche.svelte +++ b/src/components/PlzSuche.svelte @@ -5,7 +5,7 @@ export let readonly: boolean = false; export let city: string | null | undefined; export let zip: string | null = ""; - + export let onchange: (event: Event) => void; let hideZipDropdown: boolean = true; let zipCodes: inferOutput = []; @@ -58,6 +58,7 @@ {...$$restProps} bind:value={zip} on:input={fetchZipCodeInformation} + on:change={onchange} on:focus={() => { if (zipCodes.length > 0) { hideZipDropdown = false diff --git a/src/lib/Klimafaktoren.ts b/src/lib/Klimafaktoren.ts index 3a0a8647..b6b3604c 100644 --- a/src/lib/Klimafaktoren.ts +++ b/src/lib/Klimafaktoren.ts @@ -3,7 +3,7 @@ import { memoize } from "./Memoization.js"; import { api } from "astro-typesafe-api/client" export const getKlimafaktoren = memoize(async (date: Date, plz: string) => { - if (!plz || !date) { + if (!plz || plz.length < 5 || !date) { return null; }