From 6e91eda5b19a9f54cc72bc9ff73c5eca87751f3a Mon Sep 17 00:00:00 2001
From: Martin Mares <mj@ucw.cz>
Date: Fri, 18 Oct 2024 23:05:29 +0200
Subject: [PATCH] =?UTF-8?q?Skript=20na=20pl=C3=A1nov=C3=A1n=C3=AD=20job?=
 =?UTF-8?q?=C5=AF=20na=20spr=C3=A1vu=20kol?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 bin/schedule-round-job | 31 +++++++++++++++++++++++++++++++
 1 file changed, 31 insertions(+)
 create mode 100755 bin/schedule-round-job

diff --git a/bin/schedule-round-job b/bin/schedule-round-job
new file mode 100755
index 00000000..f173981b
--- /dev/null
+++ b/bin/schedule-round-job
@@ -0,0 +1,31 @@
+#!/usr/bin/env python3
+
+import argparse
+
+from mo.arg_attrs import parse_time
+import mo.db as db
+from mo.jobs.round import schedule_round_switch_to_grading
+import mo.users
+import mo.util
+from mo.util import die, init_standalone
+
+parser = argparse.ArgumentParser(description='Naplánuje dávku pro správu kola')
+parser.add_argument('--round', type=str, required=True, metavar='YY-C-S[p]', help='kód kola')
+parser.add_argument('--time', type=parse_time, required=True, metavar='T', help='čas, kdy se má dávka spustit')
+parser.add_argument('--switch-to-grading', dest='type', action='store_const', const=db.JobType.round_switch_to_grading, help='Dávka: Přepnutí do stavu opravuje se / po oblastech')
+
+args = parser.parse_args()
+init_standalone()
+
+if args.type is None:
+    die("Není vybrán žádný typ dávky")
+
+round_code = mo.util.RoundCode.parse(args.round)
+if round_code is None:
+    die("Chybná syntaxe kódu kola")
+round = mo.util.get_round_by_code(round_code)
+if round is None:
+    die("Kolo s tímto kódem neexistuje!")
+
+if args.type == db.JobType.round_switch_to_grading:
+    schedule_round_switch_to_grading(round, db.get_system_user(), args.time)
-- 
GitLab