X-Git-Url: https://git.plutz.net/?p=confetti;a=blobdiff_plain;f=pages%2Fattendees.sh;h=2d06f6b9561ca6e5d6189a98d3888534ce14b122;hp=b6088d660a4a7a028c17b7b0526bc984b93393e0;hb=737e7f91162ec98b99dd2796ca26dd95e8c21f49;hpb=28a2c1efac4c9bb93a57f09a387f5991e0c7573c diff --git a/pages/attendees.sh b/pages/attendees.sh index b6088d6..2d06f6b 100755 --- a/pages/attendees.sh +++ b/pages/attendees.sh @@ -1,9 +1,35 @@ #!/bin/sh +[ "$_GET[\"action\"]" = "del_filter" ] && _GET["filter"]="" && _GET["filtertype"]="" listcards() { - ls -1 ${_DATA}/vcard/*vcf + case "$_GET["filtertype"]" in + any) + grep -il "$_GET[\"filter\"]" ${_DATA}/vcard/*vcf + ;; + name) + egrep -xil "(FN|NICKNAME|N)(;.+)*:.*$_GET[\"filter\"].*" ${_DATA}/vcard/*vcf + ;; + street) + egrep -xil "(ADR)(;.+)*:([^;]*;){2}$_GET[\"filter\"].*" ${_DATA}/vcard/*vcf + ;; + zip) + egrep -xil "(ADR)(;.+)*:([^;]*;){5}$_GET[\"filter\"].*" ${_DATA}/vcard/*vcf + ;; + telephone) + egrep -xil "(TEL)(;.+)*:.*$_GET[\"filter\"].*" ${_DATA}/vcard/*vcf + ;; + birth) + egrep -xil "(BDAY)(;.+)*:$_GET[\"filter\"].*" ${_DATA}/vcard/*vcf + ;; + course) + ;; + *) ls -1 ${_DATA}/vcard/*vcf + ;; + esac } +FIELDLIST="$(echo PHOTO LOGO FN NICKNAME SOUND GENDER KIND TITLE ROLE ORG MEMBER CATEGORIES ANNIVERSARY BDAY EMAIL TEL IMPP ADR URL LANG NOTE RELATED |tr ' ' '\n')" + vcf_parse() { tr -d '\n' <"$1" |sed -r 's:\r ::g;s:\r:\n:g' \ | sed -rn ' @@ -11,8 +37,8 @@ vcf_parse() { s:^X-MS-CARDPICTURE:001 PHOTO:p; s:^LOGO:002 LOGO:p; s:^FN:003 FN:p; - s:^NICKNAME:005 NICKNAME:p; s:^N:004 N:p + s:^NICKNAME:005 NICKNAME:p; s:^SOUND:006 SOUND:p; s:^GENDER:007 GENDER:p; s:^X-GENDER:007 GENDER:p;