X-Git-Url: https://git.plutz.net/?p=confetti;a=blobdiff_plain;f=actions%2Fgenerate_courselist.sh;h=07fb0bbb79bf1f19c94afa7a4f0c86b345aa79de;hp=f2f2aecddaf5506844dcee0e56a656f8e6354c40;hb=16a2240ce347132c7000ca22989e83801cf3ebf0;hpb=a8dcdb19d3c744ffb2b0776eea12546edaf06627 diff --git a/actions/generate_courselist.sh b/actions/generate_courselist.sh index f2f2aec..07fb0bb 100755 --- a/actions/generate_courselist.sh +++ b/actions/generate_courselist.sh @@ -35,36 +35,10 @@ list_attendee() { #Parameter: Cardfile id="$1" cardfile="$_DATA/vcard/${id}" - unset key - declare -A tags declare -A values if [ -r "$cardfile" ]; then - vcf_parse "$cardfile" |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 - values[$key]="$(tex_clean "$value")" - for t in ${(k)tag}; do - tags[${key}_$t]="$tag[$t]" - done - eval "$line" - if [ -n "$values[$key]" ]; then - n=0 - while [ -n "$values[$key$n]" ]; do n=$(($n + 1)); done - key=$key$n - fi - unset value - unset tag - fi - ;; - esac - done + vcf_parse "$cardfile" n=$(printf %s "$values[N]" \ | sed -rn 's:^([^;]*)(;[^;]*)(;[^;]*)?(;[^;]*)?(;[^;]*)?$:\4 \2 \3 \1 \5:gp' \ @@ -88,35 +62,9 @@ list_attendee() { #Parameter: Cardfile get_dates() { #Parameter: Calendarfile calendarfile="$_DATA/ical/$course" - unset key - declare -A tags declare -A values - ics_parse "$calendarfile" |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 - values[$key]="$(tex_clean "$value")" - for t in ${(k)tag}; do - tags[${key}_$t]="$tag[$t]" - done - eval "$line" - if [ -n "$values[$key]" ]; then - n=0 - while [ -n "$values[$key$n]" ]; do n=$(($n + 1)); done - key=$key$n - fi - unset value - unset tag - fi - ;; - esac - done + ics_parse "$calendarfile" dtstart="$values[DTSTART]" [ -z "$dtstart" ] && dtstart=$(date +%Y%m%dT%H%M%S)