X-Git-Url: http://git.plutz.net/?a=blobdiff_plain;f=ledgers%2Fiban_assign.awk;h=68a572716be79a172e86975d561426a1b46c3153;hb=819aebfb5343f918d510ba65c56e84ea24496ae6;hp=090d950bbfe513f974f6e051c45fdbce6a112791;hpb=cbfa134047e26cde3814fc0a3036be78dcb5d2c7;p=confetti diff --git a/ledgers/iban_assign.awk b/ledgers/iban_assign.awk index 090d950..68a5727 100755 --- a/ledgers/iban_assign.awk +++ b/ledgers/iban_assign.awk @@ -41,16 +41,15 @@ BEGIN { /^BEGIN;:VCARD$/ { fn = n = id = iban = tmp = ""; } - /^UID;[^:]*:/ { uid = $0; sub(/^[^;]+;[^:]*:/, "", uid); } - /^FN;[^:]*:/ { fn = $0; sub(/^[^;]+;[^:]*:/, "", fn); } - /^N;[^:]*:/ { n = $0; sub(/^[^;]+;[^:]*:/, "", n); sub(/;.*$/, "", n); } -/^X-IBAN;[^:]*:/ { tmp = $0; sub(/^[^;]+;[^:]*:/, "", tmp); iban = iban ? iban " " tmp : tmp; } + /^UID;[^:]*:/ { uid = $0; sub(/^[^;]+;[^:]*:/, "", uid); } + /^FN;[^:]*:/ { fn = $0; sub(/^[^;]+;[^:]*:/, "", fn); } + /^N;[^:]*:/ { n = $0; sub(/^[^;]+;[^:]*:/, "", n); sub(/;.*$/, "", n); } +/^X-IBAN;[^:]*:/ { iban = $0; sub(/^[^;]+;[^:]*:/, "", iban); ibans[length(ibans)] = iban; } /^END;:VCARD$/ { uid_n[uid] = n; uid_fn[uid] = fn; uid_iban[uid] = iban; - split(iban, ibans, / /); - for (iban in ibans) iban_uid[iban] = iban_uid[iban] ? iban_uid[iban] " " uid : uid; - fn = n = uid = iban = tmp = ""; + for (iban in ibans) iban_uid[ibans[iban]] = iban_uid[ibans[iban]] ? iban_uid[ibans[iban]] " " uid : uid; + fn = n = uid = iban = tmp = ""; split("", ibans); } strftime("%Y-%m-%d", $1, "UTC") == $2 && strftime("%Y-%m-%d", $3, "UTC") == $4 { ledger = 1; } @@ -74,8 +73,8 @@ ledger && strftime("%Y-%m-%d", $2, "UTC") == $1 { END { for (iban in sure) { line = "sure " iban; - split(iban_uid[iban], uids, / /); - for (uid in uids) line = line " " STRING(uid "/" uid_fn[uid]); + split(sure[iban], uids, / /); + for (k in uids) line = line " " STRING(uids[k] "/" uid_fn[uids[k]]); print line; } for (iban in unsure) {