]> git.plutz.net Git - confetti/blobdiff - templates/view_attendee.sh
optical preparation for vcard display
[confetti] / templates / view_attendee.sh
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..fa9241ecd9465b33f266f734517cfa248f8d1c8d 100755 (executable)
@@ -0,0 +1,95 @@
+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
+item_name[RELATED]="Kontakte"
+item_name
+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 "$item_name[$1]" || echo "$1"
+}
+
+view_card_item() {
+  debug "Item: $key"
+  case "$key" in
+    BEGIN|VERSION|END);;
+    PHOTO)
+      debug "Type: $tag[TYPE]"
+      echo "<img class=\"PHOTO\" src=\"data:image/$tag[TYPE];base64,$value\"/>"
+      ;;
+    FN)
+      echo "<h2 CLASS=\"FN\">$value</h2>"
+      ;;
+    *)
+      echo "<span class=\"KEY $key\">$(l10n "$key")"
+      [ -n "$tag[TYPE]" ] && echo "($tag[TYPE])"
+      echo ":</span>"
+      ;|
+    EMAIL)
+      echo "<a href=\"mailto:$value\" class=\"VALUE $key\">$value</a><br/>"
+      ;;
+    IMPP)
+      echo "<a href=\"$value\" class=\"VALUE $key\">"$(echo "$value" |cut -d: -f2-)"</a><br/>"
+      ;;
+    *)
+      echo "<span class=\"VALUE $key\">$value</span><br/>"
+      ;;
+  esac
+}
+
+view_attendee() {  #Parameter: Cardfile
+  key=""
+  vcf_parse "$1" |while read -r line; do
+    declare -A tag
+    case "$line" in
+      value*) eval "$line";;
+      tag*)   eval "$line";;
+      key*)
+        if [ -z "$key" ]; then
+          eval "$line"
+        else
+          view_card_item
+          eval "$line"
+        fi
+      ;;
+    esac
+  done
+}