. "$_EXEC/cgilite/storage.sh"
. "$_EXEC/pdiread.sh"
+if [ "$(POST show_account)" ]; then
+ uid="$(POST show_account)"
+ cfile="$(grep -lxF "UID;:${uid}" "${_DATA}/vcard/"*.vcf || grep -lxF "UID:${uid}" "${_DATA}/vcard/"*.vcf)"
+ REDIRECT "${_BASE}/ledgers/account.sh?card=${cfile##*/}"
+ exit 0;
+fi
+
credit() {
printf '%03i\n' "$1" \
| sed -E 's;[0-9]{2}$;d&;; :0 s;([0-9])([0-9]{3}[dm]);\1m\2;; t0; y;dm;,.;'
}
+IBAN_ASSIGN="$(
+ { pdi_load "${_DATA}"/vcard/*.vcf
+ printf 'BEGIN:LEDGERS\n'
+ cat "${_DATA}"/ledgers/????-??-??\ -\ ????-??-??\ -\ ????.tbl
+ } | "${_EXEC}"/ledgers/iban_assign.awk
+ printf '\n'
+)"
+
+if [ "${PATH_INFO%/iban_assign/}" != "${PATH_INFO}" ]; then
+ . "${_EXEC}/ledgers/iban_assign.sh"
+ exit 0
+fi
+
{ printf '
[form .upload action="%s/ledgers/csv_upload.sh" method="POST" enctype="multipart/form-data"
[label for=ledger_upload . %s:]
"$(HTML "${ledger% - ????.tbl}")" "$(HTML "$ledger")" "$(l10n delete)"
done
printf ' ]'
- printf '
- [form .ledgers action="%s/ledgers/delete.sh" method=POST
- [input type=hidden name=session_id value="%s"]
- [h3 . %s]
- ' "${_BASE}" "$SESSION_ID" "$(l10n "IBAN Assignments")"
- { pdi_load "${_DATA}"/vcard/*.vcf
- cat "${_DATA}"/ledgers/????-??-??\ -\ ????-??-??\ -\ ????.tbl
- } | "${_EXEC}"/ledgers/iban_assign.awk \
- | while read -r state iban data; do
- printf '[fieldset .iban .%s [legend . %s ]' \
- "$state" "$iban"
- if [ $state = sure ]; then
- :
- elif [ $state = guess ]; then
- record="$(UNSTRING "${data%% *}")"
- principal="${record#* * * }" principal="${principal%% *}"
- subject="${record#* * * * }" subject="${subject%% *}"
- amount="${record#* * * * * }" amount="${amount%% *}"
- printf '[p .principal . %s][p .amount %s][p .subject . %s]' \
- "$(UNSTRING "$principal" |HTML)" "$(credit "$amount")" "$(UNSTRING "$subject" |HTML)"
- elif [ $state = unknown ]; then
- principal="${data#* * * }" principal="${principal%% *}"
- subject="${data#* * * * }" subject="${subject%% *}"
- amount="${data#* * * * * }" amount="${amount%% *}"
- printf '[p .principal . %s][p .amount %s][p .subject . %s]' \
- "$(UNSTRING "$principal" |HTML)" "$(credit "$amount")" "$(UNSTRING "$subject" |HTML)"
- fi
- printf ']'
- done
- printf ' ]'
+ unassigned="$(printf %s\\n "$IBAN_ASSIGN" |grep -E '^guess|^unknown' |wc -l)"
+ cat <<-EOF
+ [div
+ [h1 . $(l10n IBAN Assignments)]
+ $(printf "$(l10n "%i IBANs are unassigned")" "$unassigned")
+ [a href="${_BASE}/ledgers/iban_assign/" . $(l10n Assign IBANs)]
+ ]
+ [form action="${_BASE}/ledgers/account.sh" method=POST
+ [select name=uid
+ $(printf %s\\n "$IBAN_ASSIGN" \
+ | sed -E '
+ /^sure /!d;
+ s;^sure [^\t]+;;;
+ s;([^\t]+)/([^\t]+);\1 \2\n;g;
+ s;\n$;;
+ ' \
+ | while read uid fn; do
+ uid="$(HTML "$uid")"
+ fn="$(UNSTRING "$fn" |HTML)"
+ printf '[option value="%s" . %s]' "$uid" "$fn"
+ done)
+ ]
+ [button type="submit" . $(l10n Account)]
+ ]
+ EOF
} | yield_page ledgers