22 lines
801 B
Bash
22 lines
801 B
Bash
#!/usr/bin/env bash
|
|
# description: Remove completed (checked) tasks from the session plan
|
|
# Args: (none)
|
|
|
|
[ -z "$OLLIE_SESSION_ID" ] && echo "error: OLLIE_SESSION_ID not set" >&2 && exit 1
|
|
|
|
OLLIE="${OLLIE:-$HOME/mnt/ollie}"
|
|
plan="$OLLIE/s/$OLLIE_SESSION_ID/plan"
|
|
|
|
[ ! -f "$plan" ] && echo "STATUS=ok CLEARED=0 REMAINING=0 TASK_COMPLETE=true" && echo "no plan found" && exit 0
|
|
|
|
before=$(grep -c '^\- \[.\]' "$plan" 2>/dev/null || echo 0)
|
|
grep -v '^\- \[x\]' "$plan" > "$plan.tmp" && mv "$plan.tmp" "$plan"
|
|
after=$(grep -c '^\- \[.\]' "$plan" 2>/dev/null || echo 0)
|
|
|
|
removed=$(( before - after ))
|
|
task_complete="false"
|
|
[ "$after" -eq 0 ] && task_complete="true"
|
|
|
|
echo "STATUS=ok CLEARED=$removed REMAINING=$after TASK_COMPLETE=$task_complete"
|
|
echo "cleared $removed completed task(s), $after remaining"
|