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

Add permissions to timetable

parent 6a6aa00d
No related branches found
No related tags found
1 merge request!86Merge school-apps
# Generated by Django 2.0.7 on 2018-10-31 14:51
from django.conf import settings
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('aub', '0002_aub_status'),
]
operations = [
migrations.AlterField(
model_name='aub',
name='created_by',
field=models.ForeignKey(default=3, on_delete=models.SET(3), related_name='aubs',
to=settings.AUTH_USER_MODEL),
),
migrations.AlterField(
model_name='aub',
name='status',
field=models.ForeignKey(default=5, on_delete=models.SET(5), related_name='aubs', to='aub.Status'),
),
]
......@@ -8,7 +8,7 @@
<title>SchoolApps – Katharineum zu Lübeck</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- Favicon -->
<link rel="shortcut icon" type="image/png" href="{% static 'common/favicon.ico' %}" />
<link rel="shortcut icon" type="image/png" href="{% static 'common/favicon.ico' %}"/>
<!--------->
<!-- CSS -->
......@@ -88,9 +88,9 @@
m = m.toString()
h = h.toString()
if (m.length == 1) {
m = '0'+m
m = '0' + m
}
var newTime = h+':'+m;
var newTime = h + ':' + m;
$('[id=id_to_time]').val(newTime);
}
}
......@@ -137,10 +137,13 @@
<i class="material-icons">home</i> Dashboard
</a>
</li>
<li>
<div class="divider"></div>
</li>
<li><a class="subheader grey lighten-3">Lehrerfunktionen</a></li>
{% if perms.aub.apply_for_aub or perms.aub.check1_aub or perms.aub.check2_aub %}
<li>
<div class="divider"></div>
</li>
<li><a class="subheader grey lighten-3">Lehrerfunktionen</a></li>
{% endif %}
{% if perms.aub.apply_for_aub %}
<li><a href="{% url 'aub_index' %}"><i class="material-icons">business_center</i> Unterrichtsbefreiungen</a>
</li>
......@@ -152,30 +155,34 @@
<li><a href="{% url 'aub_check2' %}"><i class="material-icons">check_box</i> Anträge genehmigen 2</a>
</li>
{% endif %}
<li>
<div class="divider"></div>
</li>
<li>
<a class="subheader grey lighten-3">Stundenplan</a>
</li>
<li>
<a href="{% url 'timetable_admin_all' %}">
<i class="material-icons">grid_on</i> Übersicht
</a>
</li>
<li>
<a href="{% url 'timetable_quicklaunch' %}">
<i class="material-icons">directions</i> Schnellzugriff
</a>
</li>
<li>
<a href="{% url 'timetable_substitutions' %}">
<i class="material-icons">person</i> Vertretungsplan
</a>
</li>
<li>
<div class="divider"></div>
</li>
{% if perms.aub.apply_for_aub or perms.aub.check1_aub or perms.aub.check2_aub %}
<li>
<div class="divider"></div>
</li>
{% endif %}
{% if perms.timetable.show_plan %}
<li>
<a class="subheader grey lighten-3">Stundenplan</a>
</li>
<li>
<a href="{% url 'timetable_admin_all' %}">
<i class="material-icons">grid_on</i> Übersicht
</a>
</li>
<li>
<a href="{% url 'timetable_quicklaunch' %}">
<i class="material-icons">directions</i> Schnellzugriff
</a>
</li>
<li>
<a href="{% url 'timetable_substitutions' %}">
<i class="material-icons">person</i> Vertretungsplan
</a>
</li>
<li>
<div class="divider"></div>
</li>
{% endif %}
<li>
<a href="{% url 'logout' %}">
<i class="material-icons">exit_to_app</i> Abmelden
......
from django import forms
import dbsettings
from django.db import models
from untisconnect.api_helper import get_terms
......@@ -9,6 +10,13 @@ for term in terms:
choices.append((term.id, term.name))
class Timetable(models.Model):
class Meta:
permissions = (
('show_plan', 'Show plan'),
)
class UNTISSettings(dbsettings.Group):
term = dbsettings.IntegerValue(widget=forms.Select, choices=choices)
......
from django.contrib.auth.decorators import login_required
from django.contrib.auth.decorators import login_required, permission_required
from django.http import Http404
from django.shortcuts import render
from untisconnect.parse import *
......@@ -24,18 +24,21 @@ def get_all_context():
@login_required
@permission_required("timetable.show_plan")
def all(request):
context = get_all_context()
return render(request, 'timetable/all.html', context)
@login_required
@permission_required("timetable.show_plan")
def quicklaunch(request):
context = get_all_context()
return render(request, 'timetable/quicklaunch.html', context)
@login_required
@permission_required("timetable.show_plan")
def plan(request, plan_type, plan_id):
if plan_type == 'teacher':
_type = TYPE_TEACHER
......@@ -61,5 +64,6 @@ def plan(request, plan_type, plan_id):
@login_required
@permission_required("timetable.show_plan")
def substitutions(request):
return render(request, 'timetable/substitution.html')
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