X-Git-Url: https://git.plutz.net/?p=confetti;a=blobdiff_plain;f=pages%2Fattendees.sh;h=dfa7dfbf9d6654b3fcae9c2eccbdae9390288e5a;hp=35e790ec6d934bdcc0e83de4c8f3d7465c892fa1;hb=25a24a7d834757e006b46b863453d5f79780a63f;hpb=19a85441a8f173c3d2cd3d29fd7d95d2b471bb3c diff --git a/pages/attendees.sh b/pages/attendees.sh index 35e790e..dfa7dfb 100755 --- a/pages/attendees.sh +++ b/pages/attendees.sh @@ -1,8 +1,7 @@ #!/bin/sh -[ "$_GET[\"choice\"]" = "del_filter" ] && _GET["filter"]="" && _GET["filtertype"]="" listcards() { - case "$_GET["filtertype"]" in + case "$_GET[\"filtertype\"]" in any) grep -il "$_GET[\"filter\"]" ${_DATA}/vcard/*vcf ;; @@ -25,7 +24,29 @@ listcards() { ;; *) ls -1 ${_DATA}/vcard/*vcf ;; - esac |sed -r 's:^(.*/)([^/]+)$:\2:' + esac |case "$_GET[\"order\"]" in + firstname) + while read file; do + fn=$(sed -rn 's:^N(;.+)*\:([^;]*;){1} *([^;]*).*$:\3:p' "$file") + echo "$fn\t$file" + done + ;; + lastname) + while read file; do + ln=$(sed -rn 's:^N(;.+)*\:([^;]*;){0} *([^;]*).*$:\3:p' "$file") + echo "$ln\t$file" + done + ;; + bdate) + while read file; do + bd=$(sed -rn 's:^BDAY(;.+)*\:(.*)$:\2:p' "$file") + echo "$bd\t$file" + done + ;; + *) + sed -r 's:^.*$:x\t&:' + ;; + esac |sort |sed -r 's:^.*\t(.*/)([^/]+)$:\2:' } vcf_parse() {