Udfyld username og password, startdato (hvornår I bliver opskrevet) og targetdataHR (som er datoen I har angivet for hvornår I har behov for institutionspladsen).
Scriptet checker placeringer i forhold til Mariendal, Regnbuen, og Smørblomsten, men kan let tilpasses andre institutioner.
#!/bin/sh
dir=/var/tmp/venteliste/
username=username
password=password
startdate=2010-05-25
targetdateHR=2011-01-03
mkdir -p $dir
cd $dir
curl google.com || exit 1
test -f mycookie && rm mycookie
curl -s -c mycookie -b mycookie -d username=$username -d password=$password -d LoginMethod=DexterLogged https://plads.frederiksberg.dk/login.asp > /dev/null
qid=$(curl -s -c mycookie -b mycookie -d username=$username -d password=$password -d LoginMethod=DexterLogged "https://plads.frederiksberg.dk/default.asp?page=auth/common/startpage" |grep -o "childqueue.*Parent"|grep -o "[0-9]*")
curl -s -c mycookie -b mycookie -d username=$username -d password=$password -d LoginMethod=DexterLogged "https://plads.frederiksberg.dk/Default.asp?page=bo/bas/application_queuestatus&childqueueid=${qid}&Parent=Yes"|grep ">Din plads på ventelisten:"|grep -o " [0-9]*"|cut -d";" -f2 | cut -d"<" -f1 > venteliste
Mv=$(sed -n '1p' venteliste)
Rv=$(sed -n '2p' venteliste)
Sv=$(sed -n '3p' venteliste)
Mv2=$(sed -n '1p' venteliste.old)
Rv2=$(sed -n '2p' venteliste.old)
Sv2=$(sed -n '3p' venteliste.old)
daystarted=$(echo `date -d "$startdate" +%s` / 86400 | bc)
today=$(perl -e 'print int(time/(60*60*24))')
targetdate=$(echo `date -d "$targetdateHR" +%s` / 86400 | bc)
daystotarget=$(echo $targetdate - $today | bc)
daysincestarted=$(echo $today - $daystarted | bc)
# "Mariendal"
curl -s -c mycookie -b mycookie -d username=$username -d password=$password -d LoginMethod=DexterLogged "https://plads.frederiksberg.dk/Default.asp?page=bo/bas/selection_showunit&UnitId=334113&NavHelp=&NavExtra=queuestatus&ChildQueueId=${qid}&Parent=Yes"|grep "[0-9]* børn under.*venteliste" > mariendal
# børn under 2 år på venteliste:
Mu2=$(cat mariendal | cut -d" " -f1 | cut -d">" -f2)
# børn startet inden for det sidste år:
Maar=$(cat mariendal | grep -o "startet [0-9]* børn i institutionen" |awk '{print $2}')
# Hvornår så?
Mhv=$(echo "$Mv / $Maar * 365" | bc -l|cut -d"." -f1)
# "Regnbuen"
curl -s -c mycookie -b mycookie -d username=$username -d password=$password -d LoginMethod=DexterLogged "https://plads.frederiksberg.dk/Default.asp?page=bo/bas/selection_showunit&UnitId=334478&NavHelp=&NavExtra=queuestatus&ChildQueueId=${qid}&Parent=Yes"|grep "[0-9]* børn under" > regnbuen
# børn under 2 år på venteliste:
Ru2=$(cat regnbuen | cut -d" " -f1 | cut -d">" -f2)
# børn startet inden for det sidste år:
Raar=$(cat regnbuen | grep -o "startet [0-9]* børn i institutionen" |awk '{print $2}')
# Hvornår så?
Rhv=$(echo "$Rv / $Raar * 365" | bc -l|cut -d"." -f1)
# "Smørblomsten"
curl -s -c mycookie -b mycookie -d username=$username -d password=$password -d LoginMethod=DexterLogged "https://plads.frederiksberg.dk/Default.asp?page=bo/bas/selection_showunit&UnitId=334502&NavHelp=&NavExtra=queuestatus&ChildQueueId=${qid}&Parent=Yes"|grep "[0-9]* børn er på venteliste" > smoerblomsten
# børn under 2 år på venteliste:
Su2=$(cat smoerblomsten | cut -d" " -f1 | cut -d">" -f2)
# børn startet inden for det sidste år:
Saar=$(cat smoerblomsten | grep -o "startet [0-9]* børn i institutionen" |awk '{print $2}')
# Hvornår så?
Shv=$(echo "$Sv / $Saar * 365" | bc -l|cut -d"." -f1)
# Send notification?
touch venteliste.old
md5old=$(md5sum venteliste.old|awk '{print $1}')
md5new=$(md5sum venteliste|awk '{print $1}')
if [ "$md5old" != "$md5new" ]; then
cat > note <<EOF
Institution A B C D E
Mariendal $Mv $Mv2 $Maar $Mu2 $Mhv
Regnbuen $Rv $Rv2 $Raar $Ru2 $Rhv
Smørblomsten $Sv $Sv2 $Saar $Su2 $Shv
Antal dage til $targetdateHR: $daystotarget
Antal dage på venteliste (siden $startdate): $daysincestarted
Søjle A: Hvad nummer vi er på ventelisten
Søjle B: Hvad nummer var vi sidst vi checkede (så vi kan se udviklingen)
Søjle C: Hvor mange børn er startet inden for de sidste 12 måneder
Søjle D: Hvor mange børn under 2 år er der totalt på ventelisten
Søjle E: Udfra hvor mange der er startet inden for det sidste år, og hvad nummer vi er på listen, hvornår får vi så en plads?
EOF
# send mail
cat note | mail -s "Placering på ventelisten aendret" -t email1@example.com -t email2@example.com -a "From: email3@example.com"
else
echo files are the same
fi
mv venteliste venteliste.old