Skip to content
Snippets Groups Projects
Commit e0edb263 authored by Martin Mareš's avatar Martin Mareš
Browse files

Inicializace ročníku nastavuje termíny, třídy a tex_hacks

Viz #404, #402, #405, #383, #381.
parent de3a0ae1
No related branches found
No related tags found
No related merge requests found
...@@ -7,44 +7,137 @@ if [ $# != 1 ] ; then ...@@ -7,44 +7,137 @@ if [ $# != 1 ] ; then
fi fi
YEAR=$1 YEAR=$1
YY1=$((1950+$YEAR))
YY2=$((1951+$YEAR))
# Datum konání
declare -A D
D[START]=$YY1-09-01
D[Z5_DOMACI]=$YY2-01-05
D[Z5_OKRESNI]=$YY2-01-05
D[Z6_DOMACI]=$YY2-03-01
D[Z6_OKRESNI]=$YY2-04-03
D[Z7_DOMACI]=${D[Z6_DOMACI]}
D[Z7_OKRESNI]=${D[Z6_OKRESNI]}
D[Z8_DOMACI]=${D[Z6_DOMACI]}
D[Z8_OKRESNI]=${D[Z6_OKRESNI]}
D[Z9_DOMACI]=${D[Z5_DOMACI]}
D[Z9_OKRESNI]=${D[Z5_OKRESNI]}
D[Z9_KRAJSKE]=$YY2-03-26
D[A_DOMACI]=$YY1-12-03
D[A_SKOLNI]=$YY1-12-10
D[A_KRAJSKE]=$YY2-01-14
D[B_DOMACI]=$YY2-01-21
D[B_SKOLNI]=$YY2-01-28
D[B_KRAJSKE]=$YY2-04-01
D[C_DOMACI]=${D[B_DOMACI]}
D[C_SKOLNI]=${D[B_SKOLNI]}
D[C_KRAJSKE]=${D[B_KRAJSKE]}
D[P_DOMACI]=$YY1-11-15
D[P_KRAJSKE]=$YY2-01-23
D[USTREDNI_PONDELI]=$YY2-03-16
# Délka soutěže v minutách
declare -A L
L[Z5_OKRESNI]=90
L[Z6_OKRESNI]=120
L[Z7_OKRESNI]=120
L[Z8_OKRESNI]=120
L[Z9_OKRESNI]=240
L[Z9_KRAJSKE]=240
# Hacky do výsledkovek
KDE_USTREDNI="Plzeň"
HACK_A_USTREDNI="podhlavicka={$KDE_USTREDNI 16.--18. března $YY2}"
HACK_P_USTREDNI="podhlavicka={$KDE_USTREDNI 18.--20. března $YY2}"
dd()
{
date -d "$1" -Idate
}
dt()
{
date -d "$1" -Iminutes
}
create_ss() create_ss()
{ {
local CAT=$1 local CAT=$1
local ADV="$2" local ADV="$2"
local MIN_GRADE="$3"
local MAX_GRADE="$4"
local D_START=${D[START]}
local D_DOMACI=${D[${CAT}_DOMACI]}
local D_SKOLNI=${D[${CAT}_SKOLNI]}
local D_OKRESNI=${D[${CAT}_OKRESNI]}
local D_KRAJSKE=${D[${CAT}_KRAJSKE]}
local D_ENROLL=$(dd "+2 days $D_DOMACI")
bin/create-round --year $YEAR --cat $CAT --seq 1 \ bin/create-round --year $YEAR --cat $CAT --seq 1 \
--level 4 \ --level 4 \
--type domaci --name 'Domácí kolo' \ --type domaci --name 'Domácí kolo' \
--enroll-mode register --enroll-advert "$ADV" --enroll-mode register --enroll-advert "$ADV" \
--min-rec-grade $MIN_GRADE --max-rec-grade $MAX_GRADE \
--ct-tasks-start $D_START \
--ct-submit-end "$D_DOMACI 23:59" \
--pr-tasks-start $D_START \
--pr-submit-end "$D_DOMACI 23:59" \
--enroll-deadline "$D_ENROLL 23:59" \
--switch-to-grading $(dd "+1 day $D_DOMACI") \
--score-successful-limit 20 --score-advance-limit 20
bin/create-tasks --round $YEAR-$CAT-1 --code $CAT-I-1 \ bin/create-tasks --round $YEAR-$CAT-1 --code $CAT-I-1 \
--name 'Úloha 1' --points 6 --count 6 --name 'Úloha 1' --points 6 --count 6
bin/create-round --year $YEAR --cat $CAT --seq 2 \ bin/create-round --year $YEAR --cat $CAT --seq 2 \
--level 4 \ --level 4 \
--type skolni --name 'Školní kolo' --type skolni --name 'Školní kolo' \
--ct-tasks-start "$D_SKOLNI 10:00" \
--ct-submit-end "$D_SKOLNI 14:20" \
--pr-tasks-start $(dt "-1 day $D_SKOLNI 7:00") \
--pr-submit-end "$D_SKOLNI 18:00" \
--switch-to-grading "$D_SKOLNI 19:00" \
--score-successful-limit 10
bin/create-tasks --round $YEAR-$CAT-2 --code $CAT-II-1 \ bin/create-tasks --round $YEAR-$CAT-2 --code $CAT-II-1 \
--name 'Úloha 1' --points 6 --count 3 --name 'Úloha 1' --points 6 --count 3
bin/create-round --year $YEAR --cat $CAT --seq 3 \ bin/create-round --year $YEAR --cat $CAT --seq 3 \
--level 1 \ --level 1 \
--type krajske --name 'Krajské kolo' \ --type krajske --name 'Krajské kolo' \
--ct-tasks-start "$D_KRAJSKE 10:00" \
--ct-submit-end "$D_KRAJSKE 14:20" \
--pr-tasks-start $(dt "-1 day $D_KRAJSKE 7:00") \
--pr-submit-end "$D_KRAJSKE 18:00" \
--switch-to-grading "$D_KRAJSKE 19:00" \
--publish-score --publish-score
bin/create-tasks --round $YEAR-$CAT-3 --code $CAT-III-1 \ bin/create-tasks --round $YEAR-$CAT-3 --code $CAT-III-1 \
--name 'Úloha 1' --points 6 --count 4 --name 'Úloha 1' --points 6 --count 4
bin/create-contests $YEAR-$CAT-3 bin/create-contests $YEAR-$CAT-3
if [ $CAT = A ] ; then if [ $CAT = A ] ; then
local D_USTREDNI_DEN1=${D[USTREDNI_PONDELI]}
bin/create-round --year $YEAR --cat $CAT --seq 4 --part 1 \ bin/create-round --year $YEAR --cat $CAT --seq 4 --part 1 \
--level 0 \ --level 0 \
--type ustredni --name 'Ústřední kolo (1. den)' \ --type ustredni --name 'Ústřední kolo (1. den)' \
--ct-tasks-start "$D_USTREDNI_DEN1 13:00" \
--ct-submit-end "$D_USTREDNI_DEN1 13:00" \
--pr-tasks-start "$D_USTREDNI_DEN1 13:00" \
--pr-submit-end "$D_USTREDNI_DEN1 13:00" \
--publish-score --publish-score
bin/create-tasks --round $YEAR-$CAT-4a --code $CAT-IV-1 \ bin/create-tasks --round $YEAR-$CAT-4a --code $CAT-IV-1 \
--name 'Úloha 1' --points 7 --count 3 --name 'Úloha 1' --points 7 --count 3
bin/create-contests $YEAR-$CAT-4a bin/create-contests $YEAR-$CAT-4a \
--tex-hacks "$HACK_A_USTREDNI"
local D_USTREDNI_DEN2=$(dd "+1 days ${D[USTREDNI_PONDELI]}")
bin/create-round --year $YEAR --cat $CAT --seq 4 --part 2 \ bin/create-round --year $YEAR --cat $CAT --seq 4 --part 2 \
--level 0 \ --level 0 \
--type ustredni --name 'Ústřední kolo (2. den)' --type ustredni --name 'Ústřední kolo (2. den)' \
--ct-tasks-start "$D_USTREDNI_DEN2 13:00" \
--ct-submit-end "$D_USTREDNI_DEN2 13:00" \
--pr-tasks-start "$D_USTREDNI_DEN2 13:00" \
--pr-submit-end "$D_USTREDNI_DEN2 13:00"
bin/create-tasks --round $YEAR-$CAT-4b --code $CAT-IV-4 \ bin/create-tasks --round $YEAR-$CAT-4b --code $CAT-IV-4 \
--name 'Úloha 4' --points 7 --count 3 --name 'Úloha 4' --points 7 --count 3
bin/create-contests $YEAR-$CAT-4b bin/create-contests $YEAR-$CAT-4b
...@@ -53,28 +146,53 @@ create_ss() ...@@ -53,28 +146,53 @@ create_ss()
create_zs() create_zs()
{ {
local CAT=$1 local GRADE=$1
local ADV="$2" local CAT=Z$GRADE
local D_START=${D[START]}
local D_DOMACI=${D[${CAT}_DOMACI]}
local D_OKRESNI=${D[${CAT}_OKRESNI]}
local D_ENROLL=$(dd "+7 days $D_DOMACI")
local L_OKRESNI=${L[${CAT}_OKRESNI]}
bin/create-round --year $YEAR --cat $CAT --seq 1 \ bin/create-round --year $YEAR --cat $CAT --seq 1 \
--level 4 \ --level 4 \
--type domaci --name 'Domácí kolo' \ --type domaci --name 'Domácí kolo' \
--enroll-mode register --enroll-advert "$ADV" --enroll-mode register --enroll-advert "$GRADE. ročník ZŠ" \
--min-rec-grade $GRADE --max-rec-grade $GRADE \
--ct-tasks-start $D_START \
--ct-submit-end "$D_DOMACI 23:59" \
--enroll-deadline "$D_ENROLL 23:59" \
--switch-to-grading $(dd "+1 day $D_DOMACI") \
--score-successful-limit 20 --score-advance-limit 20
bin/create-tasks --round $YEAR-$CAT-1 --code $CAT-I-1 \ bin/create-tasks --round $YEAR-$CAT-1 --code $CAT-I-1 \
--name 'Úloha 1' --points 6 --count 6 --name 'Úloha 1' --points 6 --count 6
bin/create-round --year $YEAR --cat $CAT --seq 2 \ bin/create-round --year $YEAR --cat $CAT --seq 2 \
--level 2 \ --level 2 \
--type okresni --name 'Okresní kolo' \ --type okresni --name 'Okresní kolo' \
--ct-tasks-start "$D_OKRESNI 10:00" \
--ct-submit-end $(dt "$L_OKRESNI minutes $D_OKRESNI 10:20") \
--pr-tasks-start "$D_OKRESNI 10:00" \
--pr-submit-end "$D_OKRESNI 18:00" \
--switch-to-grading "$D_OKRESNI 19:00" \
--score-successful-limit $(if [ $CAT = Z9 ] ; then echo 12 ; else echo 9 ; fi) \
--publish-score --publish-score
bin/create-tasks --round $YEAR-$CAT-2 --code $CAT-II-1 \ bin/create-tasks --round $YEAR-$CAT-2 --code $CAT-II-1 \
--name 'Úloha 1' --points 6 --count $(if [ $CAT = Z9 ] ; then echo 4 ; else echo 3 ; fi) --name 'Úloha 1' --points 6 --count $(if [ $CAT = Z9 ] ; then echo 4 ; else echo 3 ; fi)
bin/create-contests $YEAR-$CAT-2 bin/create-contests $YEAR-$CAT-2
if [ $CAT = Z9 ] ; then if [ $CAT = Z9 ] ; then
local D_KRAJSKE=${D[${CAT}_KRAJSKE]}
local L_KRAJSKE=${L[${CAT}_KRAJSKE]}
bin/create-round --year $YEAR --cat $CAT --seq 3 \ bin/create-round --year $YEAR --cat $CAT --seq 3 \
--level 1 \ --level 1 \
--type krajske --name 'Krajské kolo' \ --type krajske --name 'Krajské kolo' \
--ct-tasks-start "$D_KRAJSKE 10:00" \
--ct-submit-end $(dt "$L_KRAJSKE minutes $D_KRAJSKE 10:20") \
--pr-tasks-start "$D_KRAJSKE 10:00" \
--pr-submit-end "$D_KRAJSKE 18:00" \
--switch-to-grading "$D_KRAJSKE 19:00" \
--score-successful-limit 12 \
--publish-score --publish-score
bin/create-tasks --round $YEAR-$CAT-3 --code $CAT-III-1 \ bin/create-tasks --round $YEAR-$CAT-3 --code $CAT-III-1 \
--name 'Úloha 1' --points 6 --count 4 --name 'Úloha 1' --points 6 --count 4
...@@ -84,10 +202,17 @@ create_zs() ...@@ -84,10 +202,17 @@ create_zs()
create_p() create_p()
{ {
local D_START=${D[START]}
local D_DOMACI=${D[P_DOMACI]}
local D_KRAJSKE=${D[P_KRAJSKE]}
bin/create-round --year $YEAR --cat P --seq 1 \ bin/create-round --year $YEAR --cat P --seq 1 \
--level 0 \ --level 1 \
--type domaci --name 'Domácí kolo' \ --type domaci --name 'Domácí kolo' \
--enroll-mode register --enroll-advert "Programování" \ --enroll-mode register --enroll-advert "Programování" \
--ct-tasks-start $D_START \
--ct-submit-end "$D_DOMACI 23:59" \
--switch-to-grading $(dd "+1 day $D_DOMACI 7:00") \
--online-submit --online-submit
bin/create-tasks --round $YEAR-P-1 --code P-I-1 \ bin/create-tasks --round $YEAR-P-1 --code P-I-1 \
--name 'Úloha 1' --points 10 --type cms --count 2 --name 'Úloha 1' --points 10 --type cms --count 2
...@@ -97,34 +222,50 @@ create_p() ...@@ -97,34 +222,50 @@ create_p()
bin/create-round --year $YEAR --cat P --seq 2 \ bin/create-round --year $YEAR --cat P --seq 2 \
--level 1 \ --level 1 \
--type krajske --name 'Krajské kolo' --type krajske --name 'Krajské kolo' \
--ct-tasks-start "$D_KRAJSKE 10:00" \
--ct-submit-end "$D_KRAJSKE 14:20" \
--pr-tasks-start $(dt "-1 day $D_KRAJSKE 7:00") \
--pr-submit-end "$D_KRAJSKE 18:00" \
--switch-to-grading "$D_KRAJSKE 19:00"
bin/create-tasks --round $YEAR-P-2 --code P-II-1 \ bin/create-tasks --round $YEAR-P-2 --code P-II-1 \
--name 'Úloha 1' --points 10 --count 4 --name 'Úloha 1' --points 10 --count 4
bin/create-contests $YEAR-P-2 bin/create-contests $YEAR-P-2
local D_USTREDNI_DEN1=$(dd "+3 days ${D[USTREDNI_PONDELI]}")
bin/create-round --year $YEAR --cat P --seq 3 --part 1 \ bin/create-round --year $YEAR --cat P --seq 3 --part 1 \
--level 0 \ --level 0 \
--type ustredni --name 'Ústřední kolo (1. den)' --type ustredni --name 'Ústřední kolo (1. den)' \
--ct-tasks-start "$D_USTREDNI_DEN1 13:00" \
--ct-submit-end "$D_USTREDNI_DEN1 13:00" \
--pr-tasks-start "$D_USTREDNI_DEN1 13:00" \
--pr-submit-end "$D_USTREDNI_DEN1 13:00"
bin/create-tasks --round $YEAR-P-3a --code P-III-1 \ bin/create-tasks --round $YEAR-P-3a --code P-III-1 \
--name 'Úloha 1' --points 10 --count 3 --name 'Úloha 1' --points 10 --count 3
bin/create-contests $YEAR-P-3a bin/create-contests $YEAR-P-3a \
--tex-hacks "$HACK_P_USTREDNI"
local D_USTREDNI_DEN2=$(dd "+4 days ${D[USTREDNI_PONDELI]}")
bin/create-round --year $YEAR --cat P --seq 3 --part 2 \ bin/create-round --year $YEAR --cat P --seq 3 --part 2 \
--level 0 \ --level 0 \
--type ustredni --name 'Ústřední kolo (2. den)' --type ustredni --name 'Ústřední kolo (2. den)' \
--ct-tasks-start "$D_USTREDNI_DEN2 13:00" \
--ct-submit-end "$D_USTREDNI_DEN2 13:00" \
--pr-tasks-start "$D_USTREDNI_DEN2 13:00" \
--pr-submit-end "$D_USTREDNI_DEN2 13:00"
bin/create-tasks --round $YEAR-P-3b --code P-III-4 \ bin/create-tasks --round $YEAR-P-3b --code P-III-4 \
--name 'Úloha 4' --points 10 --type cms --count 3 --name 'Úloha 4' --points 10 --type cms --count 3
bin/create-contests $YEAR-P-3b bin/create-contests $YEAR-P-3b
} }
create_ss A "3. a 4. ročník středních škol" create_ss A "3. a 4. ročník středních škol" 3 4
create_ss B "2. ročník středních škol" create_ss B "2. ročník středních škol" 2 2
create_ss C "1. ročník středních škol" create_ss C "1. ročník středních škol" 1 1
create_zs Z9 "9. ročník ZŠ" create_zs 9
create_zs Z8 "8. ročník ZŠ" create_zs 8
create_zs Z7 "7. ročník ZŠ" create_zs 7
create_zs Z6 "6. ročník ZŠ" create_zs 6
create_zs Z5 "5. ročník ZŠ" create_zs 5
create_p create_p
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment