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 from django.contrib import admin
# Register your models here. # 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 from datetime import date
import dbsettings
from django.db import models 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 = [] classes = get_all_classes()
terms = get_terms() class_choices = [(x.id, x.name) for x in classes]
for term in terms:
choices.append((term.id, term.name))
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: class Meta:
permissions = ( verbose_name = "Hinweis"
('show_plan', 'Show plan'), 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 ...@@ -17,7 +17,7 @@ from userinformation import UserInformation
from schoolapps.settings import BASE_DIR from schoolapps.settings import BASE_DIR
from .models import Hint
def get_all_context(): def get_all_context():
teachers = get_all_teachers() teachers = get_all_teachers()
classes = get_all_classes() 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