#!/bin/sh BASEURL="http://localhost:8081" PART_FILE="Challenge_Liste des participants.csv" new_team() { head -n "$1" team-names.txt | tail -1 | sed -E 's/^.*\|\[\[([^|]+\|)?([^|]+)\]\][^|]*\|([A-Fa-f0-9]{1,2})\|([A-Fa-f0-9]{1,2})\|([A-Fa-f0-9]{1,2})\|([0-9]{1,3})\|([0-9]{1,3})\|([0-9]{1,3})\|.*$/\6 \7 \8 \2/' | while read line; do R=`echo $line | cut -d " " -f 1` G=`echo $line | cut -d " " -f 2` B=`echo $line | cut -d " " -f 3` N=`echo $line | cut -d " " -f 4` COLOR=$((($R*256 + $G) * 256 + $B)) curl -s -d "{\"name\": \"$N\",\"color\": $COLOR}" "${BASEURL}/api/teams/" done | grep -Eo '"id":[0-9]+,' | grep -Eo "[0-9]+" } TNUM=0 TMAX=`sed "1d" "$PART_FILE" | cut -d \; -f 15 | sort | uniq | wc -l` sed "1d" "$PART_FILE" | cut -d \; -f 15 | sort | uniq | while read TEAMID do TNUM=$(($TNUM + 1)) echo "Doing team $TNUM/$TMAX ("$(($TNUM*100/$TMAX))"%)..." TID=`new_team $TNUM` ( echo -n "[" HAS_MEMBER=1 grep ";$TEAMID\$" "$PART_FILE" | while read MEMBER do LASTNAME=`echo $MEMBER | cut -d ";" -f 2` FIRSTNAME=`echo $MEMBER | cut -d ";" -f 3` COMPANY=`echo $MEMBER | cut -d ";" -f 4` if [ $HAS_MEMBER = 0 ] then echo -n , else HAS_MEMBER=0 fi cat < /dev/null if ! curl -s -f "${BASEURL}/api/teams/${TID}/certificate" > /dev/null then curl -s -f "${BASEURL}/api/teams/${TID}/certificate/generate" fi echo done