renaming pw to vorgangPIN, case to vorgang, password to vorgangToken

This commit is contained in:
2025-07-25 14:21:23 +02:00
parent 52e9eba7ed
commit 08d83c9ed4
26 changed files with 2052 additions and 219 deletions

View File

@@ -15,20 +15,20 @@
let open = false;
let inProgress = false;
let vorgang = '';
const code_len = 8;
const PINLength = 8;
function generatePassword() {
function generatePIN() {
return Math.random()
.toString(36)
.slice(2, 2 + code_len);
.slice(2, 2 + PINLength);
}
let zugangspasswort = ''
let zugangspasswordOld = ''
$: zugangspasswordOld = generatePassword();
$: zugangspasswort = zugangspasswordOld
let vorgangPIN = ''
let vorgangPINOld = ''
$: vorgangPINOld = generatePIN();
$: vorgangPIN = vorgangPINOld
let caseExisting = undefined;
$: caseExisting = false;
let vorgangExists = undefined;
$: vorgangExists = false;
let name = '';
let etag: string | null = null;
@@ -42,7 +42,7 @@
let data = new FormData();
data.append('vorgang', vorgang);
data.append('name', name);
data.append('password', zugangspasswort);
data.append('vorgangPIN', vorgangPIN);
const response = await fetch('?/validate', { method: 'POST', body: data });
/** @type {import('@sveltejs/kit').ActionResult} */
const result = deserialize(await response.text());
@@ -71,7 +71,7 @@
let data = new FormData();
data.append('vorgang', vorgang);
data.append('name', name);
data.append('password', zugangspasswort);
data.append('vorgangPIN', vorgangPIN);
if (files?.length === 1) {
data.append('type', files[0].type);
data.append('fileName', files[0].name);
@@ -151,37 +151,37 @@
}
// `/(angemeldet)/view` return true or false
async function caseExists(caseName: string) {
async function checkVorgangExists(vorgangName: string) {
if (caseName == '') {
zugangspasswort = zugangspasswordOld;
if (vorgangName == '') {
vorgangPIN = vorgangPINOld;
return;
}
let url = `/api/list/${caseName}`
let url = `/api/list/${vorgangName}`
const response = await fetch(url, { method: 'HEAD'});
const status = response.status;
if (status == 200) {
caseExisting = true;
const passwort = await getPassword(caseName);
zugangspasswort = passwort;
vorgangExists = true;
const token = await getVorgangPIN(vorgangName);
vorgangPIN = token;
return true
} else {
caseExisting = false;
zugangspasswort = zugangspasswordOld;
vorgangExists = false;
vorgangPIN = vorgangPINOld;
return false
}
}
async function getPassword(caseName: string) {
async function getVorgangPIN(vorgangName: string) {
if (caseName == '') return;
if (vorgangName == '') return;
let url = `/api/list/${caseName}/casepw`;
let url = `/api/list/${vorgangName}/vorgangPIN`;
const response = await fetch(url);
if (response.status == 200) {
@@ -225,14 +225,14 @@
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={() => caseExists(vorgang)}
on:input={() => checkVorgangExists(vorgang)}
/>
</div>
</div>
{#if formErrors?.vorgang}
<p class="block text-sm leading-6 text-red-900 mt-2">{formErrors.vorgang}</p>
{/if}
{#if caseExisting && vorgang.length > 0}
{#if vorgangExists && vorgang.length > 0}
<span>Datei wird zum existierenden Vorgang hinzugefügt.</span>
{:else if vorgang.length > 0}
<span>Neuer Vorgang wird angelegt.</span>
@@ -267,11 +267,11 @@
</div>
<div>
<label for="zugangscode" class="block text-sm font-medium leading-6 text-gray-900"
<label for="vorgang-pin" class="block text-sm font-medium leading-6 text-gray-900"
><span class="flex"
>{#if formErrors?.zugangscode}
>{#if formErrors?.vorgangPIN}
<span class="inline-block mr-1"><Exclamation /></span>
{/if} Zugangscode</span
{/if} Zugangs-PIN</span
></label
>
<div class="mt-2">
@@ -279,11 +279,11 @@
class="flex rounded-md shadow-sm ring-1 ring-inset ring-gray-300 focus-within:ring-2 focus-within:ring-inset focus-within:ring-indigo-600"
>
<input
bind:value={zugangspasswort}
bind:value={vorgangPIN}
type="text"
name="zugangscode"
id="zugangscode"
on:input="{ (ev) => { zugangspasswordOld = ev.target.value }}"
name="vorgang-pin"
id="vorgang-pin"
on:input="{ (ev) => { vorgangPINOld = ev.target.value }}"
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"
/>
@@ -291,13 +291,13 @@
<button
class="rounded-md bg-blue-500 px-3 py-2 text-sm font-semibold text-white shadow-sm hover:bg-indigo-500 focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-indigo-600"
on:click="{() => {
zugangspasswort = zugangspasswordOld = generatePassword(); }}"
vorgangPIN = vorgangPINOld = generatePIN(); }}"
type="button">
Generiere Zugangscode
Generiere Zugangs-PIN
</button>
</div>
{#if formErrors?.code}
<p class="block text-sm leading-6 text-red-900 mt-2">{formErrors.code}</p>
{#if formErrors?.vorgangPIN}
<p class="block text-sm leading-6 text-red-900 mt-2">{formErrors.vorgangPIN}</p>
{/if}
</div>