From aff0614d2ed81743cf0c11b4c174c88b5932a06d Mon Sep 17 00:00:00 2001 From: Stephan Richter Date: Fri, 25 Jul 2025 08:48:43 +0200 Subject: [PATCH] working on task creation form --- .../srsoftware/umbrella/core/model/Task.java | 6 ++ frontend/src/routes/task/Add.svelte | 66 ++++++++++++++++++- translations/src/main/resources/de.json | 6 ++ 3 files changed, 76 insertions(+), 2 deletions(-) diff --git a/core/src/main/java/de/srsoftware/umbrella/core/model/Task.java b/core/src/main/java/de/srsoftware/umbrella/core/model/Task.java index f085376..44179d4 100644 --- a/core/src/main/java/de/srsoftware/umbrella/core/model/Task.java +++ b/core/src/main/java/de/srsoftware/umbrella/core/model/Task.java @@ -65,6 +65,10 @@ public record Task(long id, long projectId, Long parentTaskId, String name, Stri @Override public Map toMap() { var map = new HashMap(); + var memberMap = new HashMap>(); + if (members != null) for (var entry : members.entrySet()){ + memberMap.put(entry.getKey(),entry.getValue().toMap()); + } map.put(ID, id); map.put(PROJECT_ID, projectId); map.put(PARENT_TASK_ID, parentTaskId); @@ -76,6 +80,8 @@ public record Task(long id, long projectId, Long parentTaskId, String name, Stri map.put(DUE_DATE,dueDate); map.put(SHOW_CLOSED,showClosed); map.put(NO_INDEX,noIndex); + map.put(MEMBERS,memberMap); + return map; } diff --git a/frontend/src/routes/task/Add.svelte b/frontend/src/routes/task/Add.svelte index 6665024..77eaa11 100644 --- a/frontend/src/routes/task/Add.svelte +++ b/frontend/src/routes/task/Add.svelte @@ -10,7 +10,8 @@ let { project_id = null } = $props(); let error = $state(null); - let project = $state(null) + let project = $state(null); + let extendedSettings = $state(false); let task = $state({ name : '', description : { source : '', rendered : '' }, @@ -67,6 +68,10 @@ } } + function toggleSettings(){ + extendedSettings = !extendedSettings; + } + onMount(load); @@ -98,9 +103,10 @@ {t('description')} - + + {#if extendedSettings} {t('members')} @@ -109,6 +115,62 @@ + + + {t('estimated_time')} + + + {t('hours')} + + + + + {t('start_date')} + + + + + + + + {t('due_date')} + + + + + + + + {t('subtasks')} + + + + + + + + {t('index_page')} + + + + + + {:else} + + + {t('extended_settings')} + + + + + + {/if} diff --git a/translations/src/main/resources/de.json b/translations/src/main/resources/de.json index d66228b..b420b27 100644 --- a/translations/src/main/resources/de.json +++ b/translations/src/main/resources/de.json @@ -14,6 +14,7 @@ "bookmark": "Lesezeichen", "by": "von", + "client_id": "Client-ID", "client_secret": "Client-Geheimnis", "code": "Code", @@ -52,6 +53,7 @@ "do_login" : "anmelden", "do_send" : "versenden", "double_click_to_edit": "Doppel-klicken zum Bearbeiten", + "due_date": "Fälligkeitsdatum", "edit": "Bearbeiten", "editing": "Nutzer {0} bearbeiten", @@ -75,11 +77,13 @@ "gross_sum": "Brutto-Summe", "head": "Kopf-Text", + "hide_on_index_page": "Nicht in der Aufgabenübersicht anzeigen", "hours": "Stunden", "id": "Id", "impersonate": "zu Nutzer wechseln", "IMPERSONATE": "Nutzer wechseln", + "index_page": "Aufgabenübersicht", "invoice": "Rechnung", "items": "Artikel", @@ -173,6 +177,8 @@ "sent_email": "Email gesendet", "service": "Service", "settings" : "Einstellungen", + "show": "anzeigen", + "start_date": "Startdatum", "state": "Status", "state_cancelled": "abgebrochen", "state_complete": "abgeschlossen",