X-Git-Url: https://git.plutz.net/?a=blobdiff_plain;f=cards%2Fexport_csv.sh;h=d6185c8a1c24c04aa23506ee329f79e4a04c2da0;hb=b67065bfb57b072dd1c344eedabfbb545eae6629;hp=a1004f7083bd4c84231c65dbcb409fb9ab2ec699;hpb=047067c2f45ea5ba54ad972a19d9682b36dfd347;p=lobster diff --git a/cards/export_csv.sh b/cards/export_csv.sh index a1004f7..d6185c8 100755 --- a/cards/export_csv.sh +++ b/cards/export_csv.sh @@ -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;­\;;;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