|
|
|
@ -20,6 +20,7 @@ |
|
|
|
let router = useTinyRouter(); |
|
|
|
let router = useTinyRouter(); |
|
|
|
let showSettings = $state(false); |
|
|
|
let showSettings = $state(false); |
|
|
|
let tasks = $state(null); |
|
|
|
let tasks = $state(null); |
|
|
|
|
|
|
|
let show_closed = $state(false); |
|
|
|
|
|
|
|
|
|
|
|
let new_state = $state({code:null,name:null}) |
|
|
|
let new_state = $state({code:null,name:null}) |
|
|
|
let state_available=$derived(new_state.name && new_state.code && !project.allowed_states[new_state.code]); |
|
|
|
let state_available=$derived(new_state.name && new_state.code && !project.allowed_states[new_state.code]); |
|
|
|
@ -139,6 +140,11 @@ |
|
|
|
update({members:members}); |
|
|
|
update({members:members}); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function showClosed(){ |
|
|
|
|
|
|
|
show_closed = !show_closed; |
|
|
|
|
|
|
|
loadTasks(); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
onMount(loadProject); |
|
|
|
onMount(loadProject); |
|
|
|
</script> |
|
|
|
</script> |
|
|
|
|
|
|
|
|
|
|
|
@ -252,10 +258,11 @@ |
|
|
|
<th> |
|
|
|
<th> |
|
|
|
{t('tasks')} |
|
|
|
{t('tasks')} |
|
|
|
<button onclick={addTask}>{t('add_object',{object:t('task')})}</button> |
|
|
|
<button onclick={addTask}>{t('add_object',{object:t('task')})}</button> |
|
|
|
|
|
|
|
<button onclick={showClosed}>{t('display_closed')}</button> |
|
|
|
</th> |
|
|
|
</th> |
|
|
|
<td class="tasks"> |
|
|
|
<td class="tasks"> |
|
|
|
{#if tasks} |
|
|
|
{#if tasks} |
|
|
|
<TaskList {tasks} {estimated_time} states={project?.allowed_states} show_closed={project.show_closed} /> |
|
|
|
<TaskList {tasks} {estimated_time} states={project?.allowed_states} show_closed={show_closed || project.show_closed} /> |
|
|
|
{/if} |
|
|
|
{/if} |
|
|
|
</td> |
|
|
|
</td> |
|
|
|
</tr> |
|
|
|
</tr> |
|
|
|
|