From 5a4028d77413be16dd52572c4651f7cbbd178037 Mon Sep 17 00:00:00 2001 From: Stephan Richter Date: Fri, 15 Aug 2025 14:35:56 +0200 Subject: [PATCH] working on timetracking module --- .../umbrella/backend/Application.java | 2 +- frontend/src/App.svelte | 2 ++ frontend/src/Components/Menu.svelte | 1 + frontend/src/routes/document/TimeList.svelte | 2 +- frontend/src/routes/time/Index.svelte | 23 +++++++++++++++++++ .../srsoftware/umbrella/time/TimeModule.java | 5 ++++ translations/src/main/resources/de.json | 2 +- 7 files changed, 34 insertions(+), 3 deletions(-) create mode 100644 frontend/src/routes/time/Index.svelte diff --git a/backend/src/main/java/de/srsoftware/umbrella/backend/Application.java b/backend/src/main/java/de/srsoftware/umbrella/backend/Application.java index 60b01cb..a2497a5 100644 --- a/backend/src/main/java/de/srsoftware/umbrella/backend/Application.java +++ b/backend/src/main/java/de/srsoftware/umbrella/backend/Application.java @@ -79,7 +79,7 @@ public class Application { new ProjectModule(registry, config).bindPath("/api/project").on(server); new ProjectLegacy(registry,config).bindPath("/legacy/project").on(server); new TaskModule(registry, config).bindPath("/api/task").on(server); - new TimeModule(registry, config).bindPath("/api/times").on(server); + new TimeModule(registry, config).bindPath("/api/time").on(server); new WebHandler().bindPath("/").on(server); server.setExecutor(Executors.newFixedThreadPool(threads)); diff --git a/frontend/src/App.svelte b/frontend/src/App.svelte index 8d827fa..9f0d21a 100644 --- a/frontend/src/App.svelte +++ b/frontend/src/App.svelte @@ -27,6 +27,7 @@ import SendDoc from "./routes/document/Send.svelte"; import TagUses from "./routes/tags/TagUses.svelte"; import TaskList from "./routes/task/Index.svelte"; + import Times from "./routes/time/Index.svelte"; import User from "./routes/user/User.svelte"; import ViewDoc from "./routes/document/View.svelte"; import ViewPrj from "./routes/project/View.svelte"; @@ -74,6 +75,7 @@ + diff --git a/frontend/src/Components/Menu.svelte b/frontend/src/Components/Menu.svelte index ed11c49..a9b9b42 100644 --- a/frontend/src/Components/Menu.svelte +++ b/frontend/src/Components/Menu.svelte @@ -44,6 +44,7 @@ onMount(fetchModules); go('/document')}>{t('documents')} go('/bookmark')}>{t('bookmarks')} go('/notes')}>{t('notes')} + go('/time')}>{t('timetracking')} {t('tutorial')} {#each modules as module,i} {#if module.name.trim()}{module.name}{/if} diff --git a/frontend/src/routes/document/TimeList.svelte b/frontend/src/routes/document/TimeList.svelte index 982f715..160f7ed 100644 --- a/frontend/src/routes/document/TimeList.svelte +++ b/frontend/src/routes/document/TimeList.svelte @@ -29,7 +29,7 @@ } async function loadTimes(projectId){ - const url = api('times/list'); + const url = api('time/list'); let data = { company_id: company_id, project_id: projectId }; const resp = await fetch(url,{ credentials : 'include', diff --git a/frontend/src/routes/time/Index.svelte b/frontend/src/routes/time/Index.svelte new file mode 100644 index 0000000..f025ad8 --- /dev/null +++ b/frontend/src/routes/time/Index.svelte @@ -0,0 +1,23 @@ + + +

{t('timetracking')}

+{#if error} +{error} +{/if} \ No newline at end of file diff --git a/time/src/main/java/de/srsoftware/umbrella/time/TimeModule.java b/time/src/main/java/de/srsoftware/umbrella/time/TimeModule.java index 36bddbe..2335773 100644 --- a/time/src/main/java/de/srsoftware/umbrella/time/TimeModule.java +++ b/time/src/main/java/de/srsoftware/umbrella/time/TimeModule.java @@ -45,6 +45,11 @@ public class TimeModule extends BaseHandler implements TimeService { this.registry = registry.add(this); } + @Override + public boolean doGet(Path path, HttpExchange ex) throws IOException { + return super.doGet(path, ex); + } + @Override public boolean doPost(Path path, HttpExchange ex) throws IOException { addCors(ex); diff --git a/translations/src/main/resources/de.json b/translations/src/main/resources/de.json index 8ae5a2a..f00b05a 100644 --- a/translations/src/main/resources/de.json +++ b/translations/src/main/resources/de.json @@ -229,7 +229,7 @@ "template": "Vorlage", "theme": "Design", "times": "Zeiterfassung", - "timetrack": "Zeiterfassung", + "timetracking": "Zeiterfassung", "title_or_desc": "Titel/Beschreibung", "tutorial": "Tutorial", "type": "Dokumententyp",