From 5ad2ffc57b3ab24b52bc480f03dd316ba961a081 Mon Sep 17 00:00:00 2001 From: Dominik George <dominik.george@teckids.org> Date: Wed, 17 Jul 2019 13:40:36 +0200 Subject: [PATCH] Add management command for import. --- .../apps/untis/management/commands/__init__.py | 0 .../untis/management/commands/untis_import.py | 15 +++++++++++++++ biscuit/apps/untis/util.py | 2 +- setup.py | 3 ++- 4 files changed, 18 insertions(+), 2 deletions(-) create mode 100644 biscuit/apps/untis/management/commands/__init__.py create mode 100644 biscuit/apps/untis/management/commands/untis_import.py diff --git a/biscuit/apps/untis/management/commands/__init__.py b/biscuit/apps/untis/management/commands/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/biscuit/apps/untis/management/commands/untis_import.py b/biscuit/apps/untis/management/commands/untis_import.py new file mode 100644 index 0000000..f065c9e --- /dev/null +++ b/biscuit/apps/untis/management/commands/untis_import.py @@ -0,0 +1,15 @@ +from django.core.management.base import BaseCommand +from django.utils.translation import gettext as _ + +from ...util import untis_import_xml + + +class Command(BaseCommand): + def add_arguments(self, parser): + parser.add_argument('untis_xml_path', help=_( + 'Path to Untis XML export file')) + + def handle(self, *args, **options): + untis_xml = open(options['untis_xml_path'], 'rb') + + untis_import_xml(None, untis_xml) diff --git a/biscuit/apps/untis/util.py b/biscuit/apps/untis/util.py index 8ec19df..f9288ce 100644 --- a/biscuit/apps/untis/util.py +++ b/biscuit/apps/untis/util.py @@ -1,12 +1,12 @@ from datetime import date, time from xml.dom import minidom -from django.contrib import messages from django.utils.translation import ugettext_lazy as _ from biscuit.apps.cambro.models import Room from biscuit.apps.chronos.models import Subject, TimePeriod, Lesson from biscuit.core.models import Group, Person +from biscuit.core.util import messages def get_child_node_text(node, tag): diff --git a/setup.py b/setup.py index f030cb2..984527b 100755 --- a/setup.py +++ b/setup.py @@ -9,7 +9,8 @@ setup( author="Teckids e.V.", author_email="verein@teckids.org", packages=[ - 'biscuit.apps.untis' + 'biscuit.apps.untis', + 'biscuit.apps.untis.management.commands' ], namespace_packages=[ 'biscuit', -- GitLab