preparing creation of new times

Signed-off-by: Stephan Richter <s.richter@srsoftware.de>
This commit is contained in:
2025-08-26 14:30:57 +02:00
parent dcd51d0ea3
commit d0e3dc8b0c
8 changed files with 127 additions and 12 deletions

View File

@@ -28,6 +28,7 @@
import TagUses from "./routes/tags/TagUses.svelte";
import TaskList from "./routes/task/Index.svelte";
import Times from "./routes/time/Index.svelte";
import TimeTask from "./routes/time/AddTask.svelte";
import User from "./routes/user/User.svelte";
import ViewDoc from "./routes/document/View.svelte";
import ViewPrj from "./routes/project/View.svelte";
@@ -76,6 +77,7 @@
<Route path="/task/:id/edit" component={ViewTask} />
<Route path="/task/:id/view" component={ViewTask} />
<Route path="/time" component={Times} />
<Route path="/time/add_task/:task_id" component={TimeTask} />
<Route path="/user" component={User} />
<Route path="/user/create" component={EditUser} />
<Route path="/user/login" component={User} />

View File

@@ -26,6 +26,10 @@
router.navigate(`/task/${task.id}/add_subtask`);
}
function addTime(){
router.navigate(`/time/add_task/${task.id}`);
}
async function deleteTask(){
if (confirm(t('confirm_delete',{element:task.name}))){
const url = api(`task/${task.id}`);
@@ -147,7 +151,7 @@
{/if}
<button class="symbol" title={t('delete_task')} onclick={deleteTask} ></button>
<button class="symbol" title={t('add_subtask')} onclick={addSubtask}></button>
<a href="/time/add_task?tid={task.id}" class="symbol"></a>
<button class="symbol" title={t('timetracking')} onclick={addTime}></button>
{#if error}
<span class="error">{error}</span>
{/if}

View File

@@ -0,0 +1,16 @@
<script>
import { onMount } from 'svelte';
import { api } from '../../urls.svelte.js';
import { t } from '../../translations.svelte.js';
let { task_id } = $props();
async function addTask(){
const url = api(`time/add_task/${task_id}`);
const resp = await fetch(url,{credentials:'include'}); // create new time or return time with assigned tasks
}
onMount(addTask)
</script>
{t('timetracking')}