temp 22.05

This commit is contained in:
2025-05-22 14:13:53 +02:00
parent 6b7188350f
commit 4adea19981
5 changed files with 51 additions and 7 deletions

View File

@@ -1,4 +1,4 @@
import { client } from '$lib/minio';
limport { client } from '$lib/minio';
/**
* Check if caseNumber is used

View File

@@ -19,7 +19,9 @@
import ModalFooter from '$lib/components/ui/Modal/ModalFooter.svelte';
/** @type {import('./$types').PageData} */
/** export let data; */
export let data;
console.log(`--- ${data.user.admin}`)
interface ListItem {
name: string;

View File

@@ -42,6 +42,7 @@ export const actions = {
const data = Object.fromEntries(requestData);
const vorgang = data.vorgang;
const name = data.name;
const zugangscode = data.zugangscode;
let success = true;
let err = {};
@@ -57,6 +58,12 @@ export const actions = {
success = false;
}
if (isRequiredFieldValid(zugangscode)) err.zugangscode = null;
else {
err.zugangscode = 'Das Feld Zugangscode darf nicht leer bleiben.';
success = false;
}
if (success) return { success };
return fail(400, err);

View File

@@ -14,7 +14,9 @@
let open = false;
let inProgress = false;
let vorgang = '';
let zugangscode = '';
const code_len = 8;
let zugangscode = Math.random().toString(36).slice(2, 2+code_len);
let case_existing = undefined;
let name = '';
/** @type {?string}*/
let etag = null;
@@ -30,6 +32,7 @@
let data = new FormData();
data.append('vorgang', vorgang);
data.append('name', name);
data.append('zugangscode', zugangscode)
const response = await fetch('?/validate', { method: 'POST', body: data });
/** @type {import('@sveltejs/kit').ActionResult} */
const result = deserialize(await response.text());
@@ -144,6 +147,26 @@
}
// return true or false
async function case_exists(case_no) {
console.log('--- fired')
// ping `/(angemeldet)/view` with caseNumber in POST body
let url = '/view'
let data = new FormData();
data.append('caseNumber', case_no);
const response = await fetch(url, { method: 'POST', body: data })
const code = response.status;
console.log(`+++ ${response.redirected}`)
if (code == 303) {
return true;
}
return false;
}
</script>
<div class="mx-auto max-w-2xl">
@@ -178,6 +201,7 @@
id="vorgang"
autocomplete={vorgang}
class="block flex-1 border-0 bg-transparent py-1.5 pl-1 text-gray-900 placeholder:text-gray-400 focus:ring-0 sm:text-sm sm:leading-6"
on:input={() => case_exists(vorgang)}
/>
</div>
</div>
@@ -216,7 +240,9 @@
<div>
<label for="zugangscode" class="block text-sm font-medium leading-6 text-gray-900"
><span class="flex"
>Zugangscode</span
>{#if formErrors?.zugangscode}
<span class="inline-block mr-1"><Exclamation /></span>
{/if} Zugangscode</span
></label
>
<div class="mt-2">
@@ -232,8 +258,8 @@
/>
</div>
</div>
{#if formErrors?.vorgang}
<p class="block text-sm leading-6 text-red-900 mt-2">{formErrors.vorgang}</p>
{#if formErrors?.code}
<p class="block text-sm leading-6 text-red-900 mt-2">{formErrors.code}</p>
{/if}
</div>

View File

@@ -5,9 +5,11 @@ import { fail, redirect } from '@sveltejs/kit';
export const actions = {
default: async ({ request }) => {
const data = await request.formData();
console.log(`--- ${Object.keys(data)}`)
const caseNumber = data.get('caseNumber');
if (!caseNumber) {
console.log('^^^ here')
return fail(400, {
success: false,
caseNumber,
@@ -15,13 +17,20 @@ export const actions = {
});
}
let res = (await caseNumberOccupied(caseNumber))
console.log(`gibt es? ${res} + ${caseNumber}`)
if (!(await caseNumberOccupied(caseNumber))) {
console.log('^^^ there')
return fail(400, {
success: false,
caseNumber,
error: { caseNumber: 'Die Vorgangsnummer existiert in dieser Anwendung nicht.' }
});
}
throw redirect(303, `/list/${caseNumber}`);
else {
throw redirect(303, `/list/${caseNumber}`);
console.log(`---blabla ${caseNumber}`)
}
}
};