]> git.plutz.net Git - confetti/blobdiff - templates/view_attendee.sh
basic update functions for vcards
[confetti] / templates / view_attendee.sh
index c9adf7f9c8169b96ca487125826f183bd59c951a..86dad68ea13ec06ea65678460b75e9dbb06a98ab 100755 (executable)
@@ -1,52 +1,3 @@
-declare -A item_name
-
-item_name[PHOTO]="Foto"
-item_name[LOGO]="Logo"
-item_name[FN]="Voller Name"
-item_name[SOUND]="Aussprache"
-item_name[GENDER]="Geschlecht"
-item_name[KIND]="Typ"
-item_name[TITLE]="Beruf"
-item_name[ROLE]="Position"
-item_name[ORG]="Organisation"
-item_name[MEMBER]="Mitglied"
-item_name[CATEGORIES]="Kategorien"
-item_name[ANNIVERSARY]="Jubiläum"
-item_name[BDAY]="Geburtstag"
-item_name[EMAIL]="E-Mail"
-item_name[TEL]="Telefon"
-item_name[IMPP]="Chat"
-item_name[ADR]="Anschrift"
-item_name[URL]="Webseite"
-item_name[LANG]="Sprache"
-item_name[NOTE]="Notiz"
-
-item_name[RELATED]="Kontakte"
-
-item_name[BEGIN]=""
-item_name[CALADRURI]=""
-item_name[CALURI]=""
-item_name[CLASS]=""
-item_name[CLIENTPIDMAP]=""
-item_name[END]=""
-item_name[FBURL]=""
-item_name[GEO]=""
-item_name[MAILER]=""
-item_name[NAME]=""
-item_name[PRODID]=""
-item_name[PROFILE]=""
-item_name[REV]=""
-item_name[SORT-STRING]=""
-item_name[SOURCE]=""
-item_name[TZ]=""
-item_name[UID]=""
-item_name[VERSION]=""
-item_name[XML]=""
-
-l10n() {
-  [ -n "$item_name[$1]" ] && echo -n "$item_name[$1]" || echo -n "$1"
-}
-
 view_card_item() {
   case "$key" in
     BEGIN|VERSION|END);;
@@ -74,8 +25,11 @@ view_card_item() {
 }
 
 view_attendee() {  #Parameter: Cardfile
-  key=""
-  vcf_parse "$1" |while read -r line; do
+  cardfile="vcard/$1"
+  cachefile="cache/vcf_$(basename "$cardfile").cache"
+  unset key
+  [ "$cachefile" -nt "$cardfile" ] && cat "$cachefile" \
+  || vcf_parse "$cardfile" |while read -r line; do
     declare -A tag
     case "$line" in
       value*) eval "$line";;
@@ -91,5 +45,5 @@ view_attendee() {  #Parameter: Cardfile
         fi
       ;;
     esac
-  done
+  done |tee "$cachefile"
 }