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

Design AUB index | Add status to AUB model

parent de03eb50
No related branches found
No related tags found
1 merge request!86Merge school-apps
from django.contrib import admin
from .models import Aub
from .models import Aub, Status
# Register your models here.
admin.site.register(Aub)
admin.site.register(Status)
# Generated by Django 2.0 on 2017-12-29 13:52
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('aub', '0007_auto_20171222_1738'),
]
operations = [
migrations.CreateModel(
name='Status',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('name', models.CharField(max_length=100)),
('style_classes', models.CharField(max_length=200)),
],
),
]
# Generated by Django 2.0 on 2018-01-01 15:32
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('aub', '0008_status'),
]
operations = [
migrations.AddField(
model_name='aub',
name='status',
field=models.ForeignKey(default=2, on_delete=models.SET(2), related_name='aubs', to='aub.Status'),
),
]
# Generated by Django 2.0 on 2018-01-01 15:34
from django.conf import settings
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('aub', '0009_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),
),
]
......@@ -16,7 +16,21 @@ lessons = (
def get_default_user():
User.objects.get_or_create(username='nouser')
user, created = User.objects.get_or_create(username='nouser')
return user.id
class Status(models.Model):
name = models.CharField(max_length=100)
style_classes = models.CharField(max_length=200)
def __str__(self):
return self.name
def get_default_status():
status, created = Status.objects.get_or_create(name='In Bearbeitung', style_classes='orange')
return status.id
class Aub(models.Model):
......@@ -26,7 +40,8 @@ class Aub(models.Model):
# Information
description = models.TextField()
status = models.ForeignKey(Status, related_name='aubs', on_delete=models.SET(get_default_status()),
default=get_default_status())
# Meta
created_by = models.ForeignKey(User, related_name='aubs', on_delete=models.SET(get_default_user()),
default=get_default_user())
......@@ -37,7 +52,7 @@ class Aub(models.Model):
class Meta:
permissions = (
('apply_for_aub', "Apply for a AUB"),
('allow_aub', "Allow a AUB"),
('check_aub', "Check a AUB")
('apply_for_aub', 'Apply for a AUB'),
('allow_aub', 'Allow a AUB'),
('check_aub', 'Check a AUB')
)
{% include 'partials/header.html' %}
<main>
<ul>
<h5>Ihre Anträge</h5>
<a href="{% url 'aub_apply_for' %}" class="waves-effect waves-light btn green">Neuen Antrag stellen</a>
{% for todo in todos %}
<li><a href='/todos/details/{{todo.id}}'>{{todo.title}}</a>: {{todo.text}}</li>
<h5>Ihre Anträge</h5>
<a href="{% url 'aub_apply_for' %}" class="waves-effect waves-light btn green">Neuen Antrag stellen</a>
<ul class="collection">
{% for aub in aubs %}
<li class="collection-item">
<span class="badge new {{ aub.status.style_classes }}">{{ aub.status.name }}</span>
<p class="title">
<i class="material-icons left">access_time</i>
{{ aub.from_dt }} bis {{ aub.to_dt }}
</p>
<p><a href="{% url 'aub_details' aub.id %}">{{ aub.description }}</a></p>
</li>
{% endfor %}
</ul>
</main>
</main>
{% include 'partials/footer.html' %}
......@@ -4,13 +4,16 @@ from django.shortcuts import render, redirect
from django.urls import reverse
from .forms import ApplyForAUBForm
from .models import Aub
from .models import Aub, Status
IN_PROCESSING_STATUS = Status.objects.get_or_create(name='In Bearbeitung', style_classes='orange')
ALLOWED_STATUS = Status.objects.get_or_create(name='Genehmigt', style_classes='green')
NOT_ALLOWED_STATUS = Status.objects.get_or_create(name='Abgelehnt', style_classes='red')
@login_required
@permission_required('aub.apply_for_aub')
def index(request):
aubs = Aub.objects.all()[:10]
aubs = Aub.objects.filter(created_by=request.user).order_by('-created_at')[:10]
context = {
'aubs': aubs
......
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