]> git.plutz.net Git - lobster/blobdiff - cards/widgets.sh
clean up obsolete code
[lobster] / cards / widgets.sh
index d2ed32611932d5fd9bf7067b904679892f797e69..ab317fb8afd586b4a2cd5e31947ebeee57b676ef 100755 (executable)
@@ -1,4 +1,4 @@
-# Copyright 2014 - 2019 Paul Hänsch
+# Copyright 2014 - 2019, 2021 Paul Hänsch
 #
 # This file is part of Confetti.
 # 
@@ -22,12 +22,12 @@ cat <<EOF
     [legend $(l10n filter_item):]
 
     $(for field in any name street zip TEL BDAY; do
-      printf '[input id="%s%i" type="radio" name="filter_type%i" value="%s" %s]
+      printf '[input id="%s%i" type="radio" .tab name="filter_type%i" value="%s" %s]
               [label for="%s%i" %s ]' \
               "$field" "$n" "$n" "$field" "$([ "$1" = "$field" ] && printf checked )" \
               "$field" "$n" "$(l10n filter_$field)"
     done)
-    [input type="text" name="filter_text$n" value="$([ "$1" = CATEGORIES ] || HTML "$2")" placeholder="$(l10n filter_placeholder)"]
+    [input type="text" .tab name="filter_text$n" value="$([ "$1" = CATEGORIES ] || HTML "$2")" placeholder="$(l10n filter_placeholder)"]
   ]
 EOF
 }
@@ -44,17 +44,18 @@ w_filter_diag(){
         w_filter_item "${fil%%:*}" "${fil#*:}" $n
         n=$((n + 1))
       done
-      w_filter_item any '' $n
+      [ "$n" -eq 0 -o "$(GET newfilter)" ] && w_filter_item any '' $n
     )
-  
+    [button type="submit" name="choice" value="new_filter" $(l10n filter_more)]
     [fieldset class="order"
       [legend $(l10n filter_order):]
-      [label [radio "order" "firstname" $( [ "$order" = firstname ] && printf checked )] $(l10n filter_firstname)]
       [label [radio "order" "lastname"  $( [ "$order" = lastname  ] && printf checked )] $(l10n filter_lastname)]
+      [label [radio "order" "firstname" $( [ "$order" = firstname ] && printf checked )] $(l10n filter_firstname)]
       [label [radio "order" "bdate"     $( [ "$order" = bdate     ] && printf checked )] $(l10n filter_bdate)]
     ]
-    [button type="submit" name="choice" value="new_filter" $(l10n filter_apply)]
+    [button type="submit" name="choice" value="filter" $(l10n filter_apply)]
     [button type="submit" name="choice" value="del_filter" $(l10n filter_cancel)]
+    [button type="submit" name="choice" value="export_csv" $(l10n export_csv)]
   ]
 EOF
 }
@@ -68,13 +69,13 @@ card_item(){
     cnt="$(pdi_count "$card" "$item")"
 
     case $item in
-      FN) printf '[h2 .item .FN . %s]' "$(pdi_value "$card" FN |unescape |HTML)"
+      FN) printf '[h2 .item .FN . %s]' "$(pdi_value "$card" FN |pdi_unescape |HTML)"
         ;;
       GENDER) printf '[span .item .GENDER . %s]' "$(pdi_value "$card" GENDER |l10n)"
         ;;
       NICKNAME) seq 1 $cnt |while read c; do
-          printf '[span .item .NICKNAME aka. "%s"]' \
-                 "$(pdi_value "$card" NICKNAME $c |unescape |HTML)"
+          printf '[span .item .NICKNAME aka. "%s"]' \
+                 "$(pdi_value "$card" NICKNAME $c |pdi_unescape |HTML)"
         done
         ;;
       X-ZACK-JOINDATE|X-ZACK-LEAVEDATE) if [ $cnt -gt 0 ]; then
@@ -102,8 +103,8 @@ card_item(){
         [ $cnt -gt 0 ] && printf '[h3 %s]' "$(l10n EMAIL)"
         seq 1 $cnt |while read c; do
           printf '[a .item .EMAIL href="mailto:%s" . %s]' \
-                 "$(pdi_value "$card" EMAIL $c |unescape |HTML)" \
-                 "$(pdi_value "$card" EMAIL $c |unescape |HTML)"
+                 "$(pdi_value "$card" EMAIL $c |pdi_unescape |HTML)" \
+                 "$(pdi_value "$card" EMAIL $c |pdi_unescape |HTML)"
         done
         ;;
       TEL)
@@ -113,9 +114,9 @@ card_item(){
           [ "$teltype" ] \
           && printf '[span .item .TEL [span .type . %s:] %s]' \
                     "$(l10n "TYPE=$teltype" |HTML)" \
-                    "$(pdi_value "$card" TEL $c |unescape |HTML)" \
+                    "$(pdi_value "$card" TEL $c |pdi_unescape |HTML)" \
           || printf '[span .item .TEL . %s]' \
-                    "$(pdi_value "$card" TEL $c |unescape |HTML)"
+                    "$(pdi_value "$card" TEL $c |pdi_unescape |HTML)"
         done
         ;;
       X-HEALTH-INSURANCE)
@@ -127,27 +128,33 @@ card_item(){
           printf '[span .item .hi_company . %s]
                   [span .item .hi_number [label %s:] %s]
                   [span .item .hi_status [label %s:] %s]
-                 ' "$(unescape "$hi_name" |HTML)" \
-                   "$(l10n hi_number)" "$(unescape "$hi_number" |HTML)" \
-                   "$(l10n hi_status)" "$(unescape "$hi_status" |HTML)"
+                 ' "$(pdi_unescape "$hi_name" |HTML)" \
+                   "$(l10n hi_number)" "$(pdi_unescape "$hi_number" |HTML)" \
+                   "$(l10n hi_status)" "$(pdi_unescape "$hi_status" |HTML)"
         done
         ;;
       therapies)
         client="$(pdi_value "$card" UID)"
         printf '[h3 %s]' "$(l10n therapies)"
-        (cd "$_DATA/prescriptions/"; printf '%s\n' "${client}".*.mpx) \
-        | while read mpxfile; do
-          [ "$mpxfile" = "${client}.*.mpx" ] && break
-          mpx="${mpxfile%.mpx}";
-          printf '[a .item .therapy href="/therapies/%s" . Therapy - %s]' \
-            "${mpx%.*}/${mpx#*.}" "$(sed -E '/^date:.*/{s;^date:;;;q;};d;' "$_DATA/prescriptions/$mpxfile")"
-        done |sort -r
+        (cd "$_DATA/therapies/"; printf '%s\n' "${client}".*.tpy) \
+        | while read tpyfile; do
+          [ "$tpyfile" = "${client}.*.tpy" ] \
+          && printf '[a .button .therapy href="/therapies/%s/new" . +]' "${client}" \
+          && break
+          tpy="${tpyfile%.tpy}";
+          tpydates="$(sed -En 's;^session[0-9]+_date:;;p;' "$_DATA/therapies/$tpyfile" \
+                      | sort \
+                      | sed -E ':X;N;$!bX; s;^[\n ]+;;; s;[\n ]+$;;; s;(\n.*\n|\n); - ;;'
+                     )"
+          printf '[a .item .therapy href="/therapies/%s" . %s] ' \
+                 "${tpy%.*}/${tpy#*.}" "$(HTML "${tpydates:--}")"
+        done |sort -n
         ;;
       *)[ $cnt -gt 0 ] && printf '[h3 %s]' "$(l10n "$item")"
         shy="$(printf '\302\255')"
         seq 1 $cnt |while read c; do
           printf '[span .item .%s . %s]' "$item" \
-                 "$(pdi_value "$card" "$item" $c |sed -r "s;(straße|weg|damm|allee|ufer);${shy}\1;g" |unescape |HTML)"
+                 "$(pdi_value "$card" "$item" $c |sed -r "s;(straße|weg|damm|allee|ufer);${shy}\1;g" |pdi_unescape |HTML)"
         done
         ;;
     esac
@@ -170,9 +177,8 @@ edit_item(){
                $N
                EOF
         else
-         N="$(pdi_value "$card" FN |unescape)"
-          n1="${N%%[a-z]*}" n1="${N#$n1}"
-          [ "$n1" ] || n1="${N##* }"
+         N="$(pdi_value "$card" FN |pdi_unescape)"
+          n1="${N##* }"
           n2="${N%$n1}"
         fi
         printf '
@@ -183,7 +189,7 @@ edit_item(){
         [input .item .N name="5N" placeholder="%s" value="%s"]
         ' "$(l10n "$item")" \
         "$(l10n n_pre)"   "$(HTML "$n4")" \
-        "$(l10n n_first)" "$(HTML "$n2" "$n3")" \
+        "$(l10n n_first)" "$(HTML "${n2}$([ "$n2" -a "$n3" ] && printf ' ')${n3}")" \
         "$(l10n n_last)"  "$(HTML "$n1")" \
         "$(l10n n_post)"  "$(HTML "$n5")"
         ;;
@@ -214,7 +220,7 @@ edit_item(){
           printf '[checkbox "%s_delete_%i" "true" .delete #%s_delete_%i][label for="%s_delete_%i" %s]' \
             "$item" $c "$item" $c "$item" $c "$(l10n delete)"
           printf '<textarea class="item %s" name="%s">%s</textarea>' \
-            "$item" "$item" "$(pdi_value "$card" "$item" $c |unescape |HTML)"
+            "$item" "$item" "$(pdi_value "$card" "$item" $c |pdi_unescape |HTML)"
         done
         printf '[button type="submit" name="action" value="addfield %s" %s ]' "$item" "$(l10n edit_addfield)"
         ;;
@@ -237,7 +243,7 @@ edit_item(){
                   "$([ "$teltype" = 'FAX'  ] && printf 'selected="selected"')" "$(l10n TYPE=FAX)"
 
           printf '[input .item .%s name="%s" value="%s" placeholder="%s"]' \
-            "$item" "$item" "$(pdi_value "$card" "$item" $c |unescape |HTML)" "$(l10n "$item")"
+            "$item" "$item" "$(pdi_value "$card" "$item" $c |pdi_unescape |HTML)" "$(l10n "$item")"
         done
         printf '[button type="submit" name="action" value="addfield %s" %s ]' "$item" "$(l10n edit_addfield)"
         ;;
@@ -250,21 +256,19 @@ edit_item(){
                $(pdi_value "$card" X-HEALTH-INSURANCE $c)
                EOF
           cat <<-EOF
-               [input type="radio" name="$item" value="list" #hi_select_list checked]<!--
-               -->[label for="hi_select_list" $(l10n hi_from_list)]<!--
-               -->[input type="radio" name="$item" value="other" #hi_other checked]<!--
-               -->[label for="hi_other" $(l10n hi_other)]<!--
-               -->[select class="item" name="hi_company"
+               [radio "$item" "list" .tab #hi_select_list checked][label for="hi_select_list" $(l10n hi_from_list)]
+               [radio "$item" "other" .tab #hi_other][label for="hi_other" $(l10n hi_other)]
+               [select .tab .item name="hi_company"
                  [option value="" disabled="disabled" $(selected "${hi_name}" "") . $(l10n hi_company)]
                  $(list_hi_companies |while read f; do
-                   printf '[option value="%s" %s . %s]' "$(unescape "$f" |HTML)" \
+                   printf '[option value="%s" %s . %s]' "$(pdi_unescape "$f" |HTML)" \
                                                         "$(selected "$f" "$hi_name")" \
-                                                        "$(unescape "$f" |HTML)"
+                                                        "$(pdi_unescape "$f" |HTML)"
                  done)
                ]
-               [input type="text" name="hi_other" value="$hi_name" placeholder="$(l10n hi_company)"]
-               [input name="hi_number" value="$(unescape "$hi_number" |HTML)" placeholder="$(l10n hi_number)"]
-               [input name="hi_status" value="$(unescape "$hi_status" |HTML)" placeholder="$(l10n hi_status)"]
+               [input type="text" .tab name="hi_other" value="$hi_name" placeholder="$(l10n hi_company)"]
+               [input type="text" name="hi_number" value="$(pdi_unescape "$hi_number" |HTML)" placeholder="$(l10n hi_number)"]
+               [input type="text" name="hi_status" value="$(pdi_unescape "$hi_status" |HTML)" placeholder="$(l10n hi_status)"]
                EOF
         done
         ;;
@@ -273,7 +277,7 @@ edit_item(){
           printf '[checkbox "%s_delete_%i" "true" .delete #%s_delete_%i][label for="%s_delete_%i" %s]' \
             "$item" $c "$item" $c "$item" $c "$(l10n delete)"
           printf '[input .item .%s name="%s" value="%s" placeholder="%s"]' \
-            "$item" "$item" "$(pdi_value "$card" "$item" $c |unescape |HTML)" "$(l10n "$item")"
+            "$item" "$item" "$(pdi_value "$card" "$item" $c |pdi_unescape |HTML)" "$(l10n "$item")"
         done
         printf '[button type="submit" name="action" value="addfield %s" %s ]' "$item" "$(l10n edit_addfield)"
         ;;