X-Git-Url: http://git.plutz.net/?a=blobdiff_plain;f=ledgers%2Faccount.sh;fp=ledgers%2Faccount.sh;h=2cc279bb10e8b3f82cc79b64f379d64b3551f241;hb=207eb8177406ef0cc1f7629337a2c328394ba752;hp=0000000000000000000000000000000000000000;hpb=efd5370cddd0cfc4a0e94e7f4ec1792abb7259c6;p=confetti diff --git a/ledgers/account.sh b/ledgers/account.sh new file mode 100755 index 0000000..2cc279b --- /dev/null +++ b/ledgers/account.sh @@ -0,0 +1,41 @@ +#!/bin/sh + +if [ "$REQUEST_METHOD" = POST ]; then + uid="$(POST uid)" + cfile="$(grep -lxF "UID;:${uid}" "${_DATA}/vcard/"*.vcf || grep -lxF "UID:${uid}" "${_DATA}/vcard/"*.vcf)" + REDIRECT "${_BASE}/ledgers/account.sh?card=${cfile##*/}" +fi + +. "${_EXEC}/pdiread.sh" +. "${_EXEC}/cards/l10n.sh" +. "${_EXEC}/cards/widgets.sh" + +cardfile="${_DATA}/vcard/$(GET card |PATH)" +if [ ! -f "$cardfile" ]; then + SET_COOKIE 0 message="Invalid account: $cardfile" + REDIRECT "${_BASE}/ledgers/" +fi + +{ + card="$(pdi_load "$cardfile")" + cat <<-EOF + [div .card #${cardfile##*/} + [div .section .basic . $( + card_item "$card" FN GENDER NICKNAME BDAY X-ZACK-JOINDATE X-ZACK-LEAVEDATE SOUND PHOTO LOGO + )] + [div .section .phone . $(card_item "$card" TEL)] + [div .section .message . $(card_item "$card" EMAIL IMPP URL)] + [div .section .address . $(card_item "$card" ADR X-IBAN)] + [div .section .note . $(card_item "$card" NOTE)] + [div .section .attendance [h3 $(l10n course_attendance) ] [ul + $(grep -F " ${cardfile##*/}" "$_DATA/mappings/attendance" |while read each discard; do + printf '[li [a .item .attendance href="%s/courses#%s" . %s]]' \ + "${_BASE}" "$each" \ + "$(pdi_value "$(pdi_load "$_DATA/ical/$each")" SUMMARY || l10n "(unnamed course)" |unescape |HTML)" + done |sort -k7)] + $(card_item "$card" CATEGORIES) + ] + ] + EOF +} \ +| yield_page ledgers