badge-axiom-team/generate-all-badges-from-member-list.sh

30 lines
666 B
Bash
Raw Normal View History

#!/bin/bash
set -e
spreadsheet="$1"
normalize_name () {
echo $* | sed -e 's/[^ -]\+/\L\u&/g' -e 's/ De / de /g'
}
while read line; do
eval member=( $line )
if [ "${member[0]}" = "Clef AXIOM" ]; then
break
fi
number="${member[0]}"
2023-09-04 21:50:03 +02:00
if [ -z "$number" ]; then
continue
fi
lastname="$(normalize_name "${member[3]}")"
firstname="$(normalize_name "${member[4]}")"
nickname="${member[5]}"
nickname="${nickname:-${member[6]}}"
key="${member[9]}"
if [ -z "$number" ] || [ -z "$key" ]; then
continue
fi
./create-badge.sh "$number" "$lastname $firstname" "$nickname" "$key"
2023-09-04 21:50:03 +02:00
done < <(xlsx2csv -q all -d ' ' "$spreadsheet" | tail +3)