+
-
-
3D Tatort
- {#if item.lastModified}
-
- Zuletzt geändert
+
+
+ {#if admin}
+
(editingId = i)}
+ variant="crimename"
+ existings={crimesList}
+ save={(e) => console.log('Gespeichert:', e)}
+ deleteItem={(e) => console.log('Gelöscht:', e)}
+ >
+ {:else}
+
{item.name}
+ {/if}
+ {#if item.size}
+
+ {shortenFileSize(item.size)}
{/if}
-
+
+
+
3D Tatort
+ {#if item.lastModified}
+
+ Zuletzt geändert
+
+ {/if}
+
{/each}
diff --git a/src/routes/api/list/[[vorgang]]/+server.ts b/src/routes/api/list/[[vorgang]]/+server.ts
index 5a76090..dcd9078 100644
--- a/src/routes/api/list/[[vorgang]]/+server.ts
+++ b/src/routes/api/list/[[vorgang]]/+server.ts
@@ -1,24 +1,83 @@
import { client } from '$lib/minio';
+import type { RequestHandler } from '@sveltejs/kit';
+import { json } from '@sveltejs/kit';
-export async function DELETE({ params }) {
- const vorgang = params.vorgang;
- const object_list = await new Promise((resolve, reject) => {
- const res = [];
- const items_str = client.listObjects('tatort', vorgang, true);
- items_str.on('data', (obj) => {
- res.push(obj.name);
- });
+// Beispiel-Datenquelle (ersetzen durch echte DB oder Datei)
+let mockList = [ "202505-test-se", "Minas-TestVorgang", "Testing-Mina", "xyz-123" ];
- items_str.on('error', reject);
+export const GET: RequestHandler = async ({ params }) => {
+ const { filename } = params;
- items_str.on('end', async () => {
- resolve(res);
- });
- });
+ // TODO: Datei lesen oder Datenbankabfrage
+ return json({ filename, list: mockList });
+};
- await client.removeObjects('tatort', object_list);
+export const PUT: RequestHandler = async ({ request, params }) => {
+ const { filename } = params;
+ const { oldName, newName } = await request.json();
- return new Response(null, { status: 204 });
-}
+ if (!newName || !newName.trim()) {
+ return new Response('Ungültiger Name', { status: 400 });
+ }
+
+ const index = mockList.findIndex((name) => name === oldName);
+ if (index === -1) {
+ return new Response('Name nicht gefunden', { status: 404 });
+ }
+
+ if (mockList.includes(newName)) {
+ return new Response('Name existiert bereits', { status: 409 });
+ }
+
+
+ console.log('📥 PUT-Request empfangen:', mockList);
+ mockList[index] = newName;
+ console.log('📄 Datei:', filename);
+ console.log('🔁 Umbenennen:', oldName, '→', newName, mockList);
+
+// return new Response(JSON.stringify({ success: true }), { status: 200 });
+
+ return json({ success: true, updated: newName });
+};
+
+export const DELETE: RequestHandler = async ({ request, params }) => {
+ const { filename } = params;
+ const { name } = await request.json();
+
+ const index = mockList.findIndex((n) => n === name);
+ if (index === -1) {
+ return new Response('Name nicht gefunden', { status: 404 });
+ }
+
+
+ console.log('📥 DELETE-Request empfangen:', mockList);
+ mockList.splice(index, 1);
+ console.log('📄 Datei:', filename);
+ console.log('🔁 gelöscht', mockList);
+ return json({ success: true, deleted: name });
+};
+
+// export async function DELETE({ params }) {
+// const vorgang = params.vorgang;
+
+// const object_list = await new Promise((resolve, reject) => {
+// const res = [];
+// const items_str = client.listObjects('tatort', vorgang, true);
+
+// items_str.on('data', (obj) => {
+// res.push(obj.name);
+// });
+
+// items_str.on('error', reject);
+
+// items_str.on('end', async () => {
+// resolve(res);
+// });
+// });
+
+// await client.removeObjects('tatort', object_list);
+
+// return new Response(null, { status: 204 });
+// }