1.6 KiB
1.6 KiB
status, tags, subtitle
| status | tags | subtitle | |
|---|---|---|---|
| Backlog |
|
<% tp.file.title %> |
[!abstract]- Project Goal:: Progress::
$= dv.view('project-progress', {file: '<% tp.file.title %>'})Target::$= dv.view('project-target', {file: '<% tp.file.title %>'})Bar::$= dv.view('project-progress-bar', {file: '<% tp.file.title %>'})Tasks::$= const aufgaben = dv.page('<% tp.file.title %>').file.inlinks.where(t => { const mt = dv.page(t.path); return mt.tags?.includes('process/task') && mt.status === 'In Arbeit'}); if (aufgaben.length > 0) { dv.header(4, aufgaben.length > 1 ? "Aufgaben" : "Aufgabe"); dv.list(aufgaben) }
Project Info
Thoughts
Resources
Review questions
Aufgaben
Offene Aufgaben
const pages = dv.current().file.inlinks.where(p => dv.page(p.path).tags?.includes('process/task')).where(p => dv.page(p.path).file.tasks.length != dv.page(p.path).file.tasks.where(t => t.fullyCompleted === true).length);
dv.table(["Project", "Status", "Completed", "Tasks"], pages.map(p => {
const page = dv.page(p.path);
const tasks = page.file.tasks;
return [
page.file.link,
page.status,
tasks.where(t => t.fullyCompleted === true).length,
tasks.length
]
}));
Aufgaben
const pages = dv.current().file.inlinks.where(p => dv.page(p.path).tags?.includes('process/task'));
dv.table(["Project", "Status", "Completed", "Tasks"], pages.map(p => {
const page = dv.page(p.path);
const tasks = page.file.tasks;
return [
page.file.link,
page.status,
tasks.where(t => t.fullyCompleted === true).length,
tasks.length
]
}));