X-Git-Url: https://git.plutz.net/?a=blobdiff_plain;f=cards%2Fwidgets.sh;h=9a71f198c4a9322ef6f465dba321290b5d6cc0f1;hb=e039a460402b12988170c50f9a57b90af3183ed7;hp=d2ed32611932d5fd9bf7067b904679892f797e69;hpb=705c924c81dd8a77706c6c37543f0da8af5aec41;p=lobster diff --git a/cards/widgets.sh b/cards/widgets.sh index d2ed326..9a71f19 100755 --- a/cards/widgets.sh +++ b/cards/widgets.sh @@ -1,4 +1,4 @@ -# Copyright 2014 - 2019 Paul Hänsch +# Copyright 2014 - 2019, 2021 Paul Hänsch # # This file is part of Confetti. # @@ -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 } @@ -73,7 +74,7 @@ card_item(){ 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"]' \ + printf '[span .item .NICKNAME . aka. "%s"]' \ "$(pdi_value "$card" NICKNAME $c |unescape |HTML)" done ;; @@ -135,13 +136,19 @@ card_item(){ 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 .item .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')" @@ -171,8 +178,7 @@ edit_item(){ EOF else N="$(pdi_value "$card" FN |unescape)" - n1="${N%%[a-z]*}" n1="${N#$n1}" - [ "$n1" ] || n1="${N##* }" + 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 '' \ - "$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)" ;; @@ -257,14 +263,14 @@ edit_item(){ -->[select class="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 name="hi_number" value="$(pdi_unescape "$hi_number" |HTML)" placeholder="$(l10n hi_number)"] + [input name="hi_status" value="$(pdi_unescape "$hi_status" |HTML)" placeholder="$(l10n hi_status)"] EOF done ;; @@ -273,7 +279,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)" ;;