#!/bin/zsh info="$(sed -r 's:(^|.*&)i=([0-9]{10}_[0-9]{3}).*|.*:\2:;s:&.*::' <<<"${QUERY_STRING}")" edit="$(sed -r 's:(^|.*&)e=([0-9]{10}_[0-9]{3}).*|.*:\2:;s:&.*::' <<<"${QUERY_STRING}")" search="$(sed -r 's:(^|.*&)s=(.*)|.*:\2:;s:&.*::;s:\+: :g;s:%:\\x:g' <<<"${QUERY_STRING}")" search="$(echo -e "${search}" |sed -rn '1{s:\t: :g;s:\r::g;s:\\:\\\\:g;p}')" new="$(sed -r 's:(^|.*&)n=(.*)|.*:\2:;s:&.*::;s:\+: :g;s:%:\\x:g' <<<"${QUERY_STRING}")" new="$(echo -e "${new}" |sed -rn '1{s:\t: :g;s:\r::g;s:\\:\\\\:g;p}')" [ -z "$ACL_CREATETASK" ] && ACL_CREATETASK=false cat <


TasksEND #search results if [ -n "$search" ]; then echo "

Tasks search results for: $search

" for each in $(grep -ile "$search" Tasks/<0000000000-9999999999>_<000-999>); do id=$(sed -r 's:^.*/::;s:.task$::' <<<$each) echo "' done echo '
' fi echo '
' #Display single task if [ -n "$info" -a -r "Tasks/$info" -a -r "Tasks/$info.meta" ]; then datafile="Tasks/$info" metafile="Tasks/$info.meta" headline="$(sed -rn '/^headline=/{s:^[a-z]+=(.+)$:\1:p;q}' "$metafile")" taskstatus="$(sed -rn '/^status=/{s:^[a-z]+=(.+)$:\1:p;q}' "$metafile")" section="$(sed -rn '/^section=/{s:^[a-z]+=(.+)$:\1:p;q}' "$metafile")" attendant="$(sed -rn '/^attendant=/{s:^[a-z]+=(.+)$:\1:p;q}' "$metafile")" [ -z "$section" ] && section='(none)' [ -z "$attendant" ] && attendant='(none)' cat <

$headline

$(_wiki "$datafile")
Status
$taskstatus
Section
$section
Attendant
$attendant
TasksEND fi #create task main dialog [ -z "$info" -a -n "$new" ] && cat <

$new

Description:
Section:

other section:
TaskEnd #Plain list of tasks (default) [ -z "$info" -a -z "$new" ] && stat -c '' Tasks/<0000000000-9999999999>_<000-999>.meta && for each in Tasks/<0000000000-9999999999>_<000-999>.meta(.om); do info="$(basename "$each" |sed 's:.meta$::')" headline="$(sed -rn '/^headline=/{s:^[a-z]+=(.+)$:\1:p;q}' "$each")" taskstatus="$(sed -rn '/^status=/{s:^[a-z]+=(.+)$:\1:p;q}' "$each")" section="$(sed -rn '/^section=/{s:^[a-z]+=(.+)$:\1:p;q}' "$each")" attendant="$(sed -rn '/^attendant=/{s:^[a-z]+=(.+)$:\1:p;q}' "$each")" [ -z "$section" ] && section='(none)' [ -z "$attendant" ] && attendant='(none)' cat < $headline
Status: $taskstatus Section: $section Attendant: $attendant TasksEND done #dropdown dialog for adding a task echo ' '