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

import-points: Import všech úloh najednou

parent 8b7dacb6
No related branches found
No related tags found
1 merge request!125Průvodce soutěží pro garanty
...@@ -10,9 +10,9 @@ import mo.users ...@@ -10,9 +10,9 @@ import mo.users
import mo.util import mo.util
from mo.util import die from mo.util import die
parser = argparse.ArgumentParser(description='Importuje body za úlohu (bez --import vypíše šablonu).') parser = argparse.ArgumentParser(description='Importuje body za jednu nebo více úloh (bez --import vypíše šablonu).')
parser.add_argument('--round', '-r', type=str, required=True, metavar='YY-C-S[p]', help='kód kola') parser.add_argument('--round', '-r', type=str, required=True, metavar='YY-C-S[p]', help='kód kola')
parser.add_argument('--task', '-t', type=str, required=True, metavar='ID', help='kód úlohy') parser.add_argument('--task', '-t', type=str, metavar='ID', help='kód úlohy (default: všechny úlohy kola)')
parser.add_argument('--user', '-u', type=str, required=True, metavar='EMAIL', help='uživatel, ktery provádí import') parser.add_argument('--user', '-u', type=str, required=True, metavar='EMAIL', help='uživatel, ktery provádí import')
parser.add_argument('--import', '-i', dest='import_file', type=str, metavar='NAME', help='importuje data ze souboru (TSV)') parser.add_argument('--import', '-i', dest='import_file', type=str, metavar='NAME', help='importuje data ze souboru (TSV)')
parser.add_argument('--add-del', default=False, action='store_true', help='povolí zakládat/rušit řešení') parser.add_argument('--add-del', default=False, action='store_true', help='povolí zakládat/rušit řešení')
...@@ -29,9 +29,12 @@ round = mo.util.get_round_by_code(round_code) ...@@ -29,9 +29,12 @@ round = mo.util.get_round_by_code(round_code)
if round is None: if round is None:
die("Kolo s tímto kódem neexistuje!") die("Kolo s tímto kódem neexistuje!")
if args.task is not None:
task = sess.query(db.Task).filter_by(round=round, code=args.task).one_or_none() task = sess.query(db.Task).filter_by(round=round, code=args.task).one_or_none()
if task is None: if task is None:
die("Úloha s tímto kódem neexistuje") die("Úloha s tímto kódem neexistuje")
else:
task = None
user = mo.users.user_by_email(args.user) user = mo.users.user_by_email(args.user)
if user is None: if user is None:
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment