Skip to content
Snippets Groups Projects
Commit 5e39fac8 authored by Jonathan Weth's avatar Jonathan Weth :keyboard:
Browse files

Init data models for timetable hints

parent 0b4edbf7
No related branches found
No related tags found
No related merge requests found
from django.contrib import admin
# Register your models here.
from timetable.models import Hint, HintClass
admin.site.register(Hint)
admin.site.register(HintClass)
# Generated by Django 2.1.5 on 2019-04-10 12:30
import datetime
from django.db import migrations, models
import martor.models
class Migration(migrations.Migration):
initial = True
dependencies = [
('untisconnect', '0001_initial'),
]
operations = [
migrations.CreateModel(
name='Hint',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('from_date', models.DateField(default=datetime.date.today, verbose_name='Startdatum')),
('to_date', models.DateField(default=datetime.date.today, verbose_name='Enddatum')),
('text', martor.models.MartorField(verbose_name='Hinweistext')),
],
options={
'verbose_name': 'Hinweis',
'verbose_name_plural': 'Hinweise',
},
),
migrations.CreateModel(
name='Timetable',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
],
options={
'permissions': (('show_plan', 'Show plan'),),
},
),
]
# Generated by Django 2.1.5 on 2019-04-10 12:35
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('timetable', '0001_initial'),
]
operations = [
migrations.CreateModel(
name='HintClass',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('class_id', models.IntegerField()),
],
),
]
# Generated by Django 2.1.5 on 2019-04-10 14:34
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('timetable', '0002_hintclass'),
]
operations = [
migrations.AddField(
model_name='hint',
name='classes',
field=models.ManyToManyField(related_name='hints', to='timetable.HintClass'),
),
migrations.AlterField(
model_name='hintclass',
name='class_id',
field=models.IntegerField(
choices=[(1, '5a'), (2, '5b'), (3, '5c'), (4, '5d'), (5, '6a'), (6, '6b'), (7, '6c'), (8, '6d'),
(9, '7a'), (10, '7b'), (11, '7c'), (12, '7d'), (13, '8a'), (14, '8b'), (15, '8c'), (16, '8d'),
(17, '9a'), (18, '9b'), (19, '9c'), (20, '9d'), (21, 'Ea'), (22, 'Eb'), (23, 'Ec'), (24, 'Ed'),
(25, 'Q1a'), (26, 'Q1b'), (27, 'Q1c'), (28, 'Q1d'), (29, 'Q2a'), (30, 'Q2b'), (31, 'Q2c'),
(32, 'Q2d')]),
),
]
from django import forms
import dbsettings
from datetime import date
from django.db import models
from django.db.models import ManyToManyField
from martor.models import MartorField
from untisconnect.api_helper import get_terms
from untisconnect.api import get_class_by_id, get_all_classes
from untisconnect.models import Class
choices = []
terms = get_terms()
for term in terms:
choices.append((term.id, term.name))
classes = get_all_classes()
class_choices = [(x.id, x.name) for x in classes]
class Timetable(models.Model):
class HintClass(models.Model):
class_id = models.IntegerField(choices=class_choices)
def __str__(self):
try:
_class = get_class_by_id(self.class_id)
return _class.name
except Exception:
return "Unbekannte Klasse"
for x in classes:
HintClass.objects.get_or_create(class_id=x.id)
class Hint(models.Model):
# Time
from_date = models.DateField(default=date.today, verbose_name="Startdatum")
to_date = models.DateField(default=date.today, verbose_name="Enddatum")
# Text
text = MartorField(verbose_name="Hinweistext")
# Relations
classes = ManyToManyField(HintClass, related_name="hints")
class Meta:
permissions = (
('show_plan', 'Show plan'),
)
verbose_name = "Hinweis"
verbose_name_plural = "Hinweise"
class UNTISSettings(dbsettings.Group):
term = dbsettings.IntegerValue(widget=forms.Select, choices=choices)
untis_settings = UNTISSettings()
class Timetable(models.Model):
class Meta:
permissions = (
('show_plan', 'Show plan'),
)
import dbsettings
from django import forms
from untisconnect.api_helper import get_terms
choices = []
terms = get_terms()
for term in terms:
choices.append((term.id, term.name))
class UNTISSettings(dbsettings.Group):
term = dbsettings.IntegerValue(widget=forms.Select, choices=choices)
untis_settings = UNTISSettings()
......@@ -17,7 +17,7 @@ from userinformation import UserInformation
from schoolapps.settings import BASE_DIR
from .models import Hint
def get_all_context():
teachers = get_all_teachers()
classes = get_all_classes()
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment