#1077: ScriptingTaskTree.kt
projectforge-business/src/main/kotlin/org/projectforge/business/task/ScriptingTaskTree.kt Scripting Proxy / Task Tree, projectforge-business/src/main/kotlin/org/projectforge/business/task/ScriptingTaskTree.kt 192 lines · 126 code · 42 comments · 24 blank
Script-safe proxy wrapping TaskTree for script execution. Converts internal TaskNode objects to ScriptingTaskNode wrappers that prevent accidental modification. Provides: path traversal (getPath(), getPathToRoot()), task lookup by id, matchesMarker() for searching task/subtasks by text in title/description/reference, filterTimesheets() to filter timesheets by marker-matching tasks, project lookup, order position checks, and person-days calculations. Exposed to scripts as taskTree variable. Includes the inner FilteredTimesheets class for result grouping.
Git History
868d6abb7 2025 -> 2026
63081666f Source file headers: 2024-> 2025.
2e9839891 Migration stuff in progress...
e66d5f5f7 Migration stuff in progress... TaskTree -> Kotlin and runs now in isolated entity manager
4c04cfd65 MAJOR-CHANGE! Migration of integer id's to Long id's (including fk's etc.)
b6092df09 Copyright 2023 -> 2024
ab45d51fa Copyright 2001-2022 -> 2001-2023.
34ce24159 Minor fixes.
dcfc7c1a9 Old calendar moved to sub menu, ScriptingTask*, JiraUtils
ed2323071 ScriptingTaskTree.filterTimesheets(timesheets, marker) implemented.
6fb55191f ScriptingTaskTree -> Kotlin, fun matchesMarker implemented.