]> git.plutz.net Git - lobster/blobdiff - cards/export_csv.sh
quick fix: put temp file into lock, should switch to session_lock functions
[lobster] / cards / export_csv.sh
index a1004f7083bd4c84231c65dbcb409fb9ab2ec699..d6185c8a1c24c04aa23506ee329f79e4a04c2da0 100755 (executable)
@@ -13,7 +13,7 @@ order="$(GET o)"
 
 list_attendance() {
   grep -F "    ${cardfile##*/}" "$_DATA/mappings/attendance" |while read each discard; do
-    { pdi_value "$(pdi_load "$_DATA/ical/$each")" SUMMARY || l10n "(unnamed course)"; } |unescape
+    { pdi_value "$(pdi_load "$_DATA/ical/$each")" SUMMARY || l10n "(unnamed course)"; } |pdi_unescape
   done \
   | sed -E 's;";\\";g;'
 }
@@ -25,14 +25,19 @@ list_item() {
   
   seq 1 $cnt |while read n; do case $item in
     TEL)
-      tel="$(pdi_value "$card" "$item" "$n" |unescape)"
-      [ "$tel" ] && printf '%s: %s\n' "$(l10n "TYPE=$(pdi_attrib "$card" "$item" "$n" TYPE)")" "$tel"
+      tel="$(pdi_value "$card" "$item" "$n" |pdi_unescape)"
+      ttype="$(pdi_attrib "$card" "$item" "$n" TYPE)"
+      if [ "$tel" -a "$ttype" ]; then 
+        printf '%s: %s\n' "$(l10n "TYPE=$ttype")" "$tel"
+      elif [ "$tel" ]; then
+        printf '%s\n' "$tel"
+      fi
       ;;
     GENDER)
-      gen="$(pdi_value "$card" "$item" "$n" |unescape)"
+      gen="$(pdi_value "$card" "$item" "$n" |pdi_unescape)"
       [ "$gen" ] && l10n "gender_$gen"
       ;;
-    *) pdi_value "$card" "$item" "$n" |unescape
+    *) pdi_value "$card" "$item" "$n" |pdi_unescape
       ;;
   esac; done \
   | sed -E 's;";\\";g;'
@@ -40,13 +45,13 @@ list_item() {
 
 printf '%s\r\n' \
        'Content-Type: text/csv; charset=utf-8' \
-       'Content-Disposition: inline; filename="confetti_export_'$(date +%F_%T)'.csv"' \
+       'Content-Disposition: inline; filename="lobster_export_'$(date +%F_%T)'.csv"' \
        ''
 
 printf '"%s";"%s";"%s";"%s";"%s";"%s";"%s";"%s";"%s"\n' \
        "$(l10n FN)" "$(l10n GENDER)" "$(l10n BDAY)" \
        "$(l10n TEL)" "$(l10n EMAIL)" "$(l10n ADR)" \
-       "$(l10n NOTE)" "$(l10n courses)" "$(l10n CATEGORIES)" \
+       "$(l10n NOTE)" "$(l10n hi_company)" "$(l10n hi_number)" \
 | sed -E 's;&shy\;;;g;'
 
 
@@ -54,8 +59,12 @@ filter_cards \
 | order_cards \
 | while read cardfile; do
   card="$(pdi_load "$cardfile")"
+  IFS=';' read -r h_comp h_num h_stat <<-EOF
+       $(pdi_value "$card" X-HEALTH-INSURANCE |sed -E 's;";\\";g;')
+       EOF
+
   printf '"%s";"%s";"%s";"%s";"%s";"%s";"%s";"%s";"%s"\n' \
   "$(list_item FN)" "$(list_item GENDER)" "$(list_item BDAY)" \
   "$(list_item TEL)" "$(list_item EMAIL)" "$(list_item ADR)" \
-  "$(list_item NOTE)" "$(list_attendance)" "$(list_item CATEGORIES)"
+  "$(list_item NOTE)" "$(pdi_unescape "$h_comp")" "$(pdi_unescape "$h_num")"
 done