]> git.plutz.net Git - confetti/blobdiff - templates/view_attendee.sh
implemented vcf caching
[confetti] / templates / view_attendee.sh
index c9adf7f9c8169b96ca487125826f183bd59c951a..1e02e3db017c1845f1a753927c91d73e8029ccbd 100755 (executable)
@@ -74,8 +74,11 @@ view_card_item() {
 }
 
 view_attendee() {  #Parameter: Cardfile
-  key=""
-  vcf_parse "$1" |while read -r line; do
+  cardfile="$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 +94,5 @@ view_attendee() {  #Parameter: Cardfile
         fi
       ;;
     esac
-  done
+  done |tee "$cachefile"
 }