X-Git-Url: http://git.plutz.net/?p=busy;a=blobdiff_plain;f=Tasks.page;h=f36a969e2a2b66daf80f6a060ef438b7c493ca5c;hp=20f5e0f776bdb04b011b1451a6e8f4a6cf49c6e8;hb=ab208fff56e536585bc0978898a7c3f610c73dce;hpb=09f3ddead92e8716eabbe3e4dccd415c5a3472b0 diff --git a/Tasks.page b/Tasks.page index 20f5e0f..f36a969 100644 --- a/Tasks.page +++ b/Tasks.page @@ -1,12 +1,14 @@ #!/bin/zsh -info="$(sed -rn 's:(^|.*&)i=([0-9]{10}_[0-9]{3}).*|.*:\2:;s:&.*::' <<<"${QUERY_STRING}")" +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 <
@@ -16,6 +18,7 @@ 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 @@ -28,8 +31,37 @@ if [ -n "$search" ]; then fi echo '
' -[ -n "$new" ] && cat < +#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

@@ -39,23 +71,28 @@ echo '
'
Section:

other section:
- + + +
TaskEnd -[ -z "$new" ] && stat -c '' Tasks/<0000000000-9999999999>_<000-999>.meta && for each in Tasks/<0000000000-9999999999>_<000-999>.meta(.om); do +#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
@@ -66,8 +103,9 @@ TaskEnd TasksEND done +#dropdown dialog for adding a task echo '