add partei page for wahl

This commit is contained in:
erichhasl
2018-01-08 16:05:24 +01:00
parent 115ea6093a
commit d9a74f45ef
9 changed files with 126 additions and 17 deletions
+6 -1
View File
@@ -1,9 +1,14 @@
from django.contrib import admin
from .models import ParteiWerbung
from .models import ParteiWerbung, PraesidentWerbung
# Register your models here.
class ParteiWerbungAdmin(admin.ModelAdmin):
list_display = ('partei',)
class PraesidentWerbungAdmin(admin.ModelAdmin):
list_display = ('praesident',)
admin.site.register(ParteiWerbung, ParteiWerbungAdmin)
admin.site.register(PraesidentWerbung, PraesidentWerbungAdmin)
+8 -1
View File
@@ -4,6 +4,12 @@ from django.db import models
# Create your models here.
class ParteiWerbung(models.Model):
partei = models.ForeignKey('meingoethopia.Partei')
image = models.ImageField('Bild', upload_to='partei_bilder')
wahlprogramm = models.TextField('Wahlprogramm')
@property
def url(self):
return "/wahl/partei/{}".format(self.pk)
def __str__(self):
return str(self.partei)
@@ -14,7 +20,8 @@ class ParteiWerbung(models.Model):
class PraesidentWerbung(models.Model):
partei = models.ForeignKey('meingoethopia.PresidentCandidate')
praesident = models.ForeignKey('meingoethopia.PresidentCandidate')
image = models.ImageField('Bild', upload_to='praesident_bilder')
def __str__(self):
return str(self.partei)
@@ -0,0 +1,45 @@
#news_html {
margin-left: 2%;
width: 96%;
}
.tablenews {
width: 100%;
}
.trnews {
padding-top: 50px;
padding-bottom: 50px;
}
.tdnews {
padding-left: 10px;
padding-right: 10px;
padding-bottom: 10px;
padding-top: 10px;
}
.thumbnail {
display: block;
margin: 0 auto;
width: 80%;
}
img {
max-width: 100%;
height: auto;
}
div.polaroid {
border: 2px solid #e7e7e7;
width: 80%;
background-color: white;
box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
margin-bottom: 25px;
}
div.container {
text-align: center;
padding: 10px 20px;
font-family: Helvetica, serif;
font-size: 12px;
}
#description {
text-align: center;
}
@@ -0,0 +1,3 @@
#partei_bild {
max-width: 20%
}
+11 -11
View File
@@ -3,16 +3,16 @@
{% block content %}
<p></p>
<link rel="stylesheet" type="text/css" href="{% static "datenbank/css/index.css"%}">
<div id="datenbank_html">
<table class="tabledatabase">
<link rel="stylesheet" type="text/css" href="{% static "news/css/index.css"%}">
<div id="news_html">
<table class="tablenews">
<tr>
<th style="width:33%"/>
<th style="width:33%"/>
<th style="width:33%"/>
</tr>
<tr class="trdatabase">
<td class="tddatabase" colspan="3">
<tr class="trnews">
<td class="tdnews" colspan="3">
<p id="description">
Bald wird gewählt in Goethopia! Hier erfährst du welche Parteien zur Wahl stehen
und wer als Präsidentin kandidiert!
@@ -21,7 +21,7 @@
</tr>
{% if rows|length == 0 %}
<tr>
<td class="tddatabase" colspan="3">
<td class="tdnews" colspan="3">
<p id="description">
<b>Keine Parteien gefunden</b>
</p>
@@ -29,13 +29,13 @@
</tr>
{% endif %}
{% for row in rows %}
<tr class="trdatabase">
<tr class="trnews">
{% for entry in row %}
<td class="tddatabase" align="{% cycle "left" "center" "right" %}">
<td class="tdnews" align="{% cycle "left" "center" "right" %}">
<div class="polaroid">
<!--<a class="thumbnail" href="{{ entry.element.url }}">-->
<!--<img src="{{ entry.image.url }}" alt="Verfassung">-->
<!--</a>-->
<a class="thumbnail" href="{{ entry.url }}">
<img src="{{ entry.image.url }}" alt="Verfassung">
</a>
<div class="container">
<p>{{ entry.partei.name }}</p>
</div>
@@ -0,0 +1,37 @@
{% extends "public/default.html" %}
{% load static %}
{% block content %}
<link rel="stylesheet" type="text/css" href="{% static "news/css/partei.css"%}">
<img src="{{ entry.image.url }}" id="partei_bild">
<table>
<tr>
<td>
<p>Name</p>
</td>
<td>
<p>{{ entry.partei.name }} ({{ entry.partei.abbreviation }})</p>
</td>
</tr>
<tr>
<td>
<p>Vorsitzende(r)</p>
</td>
<td>
<p>{{ entry.partei.chef }}</p>
</td>
</tr>
<tr>
<td>
<p>Wahlprogramm</p>
</td>
<td>
<p>{{ entry.wahlprogramm }}</p>
</td>
</tr>
</table>
{% endblock %}
+3 -1
View File
@@ -3,5 +3,7 @@ from django.conf.urls import url
from . import views
urlpatterns = [
url(r'^$', views.index, name='index')
url(r'^$', views.index, name='index'),
url(r'^partei/(?P<partei_id>[0-9]+)', views.partei, name='partei'),
url(r'^partei/(?P<praesident_id>[0-9]+)', views.praesident, name='praesident')
]
+11 -1
View File
@@ -1,7 +1,7 @@
from django.shortcuts import render
import math
from .models import ParteiWerbung
from .models import ParteiWerbung, PraesidentWerbung
# Create your views here.
@@ -12,5 +12,15 @@ def index(request):
})
def partei(request, partei_id):
return render(request, "news/partei.html",
{'entry': ParteiWerbung.objects.get(pk=partei_id)})
def praesident(request, praesident_id):
return render(request, "news/praesident.html",
{'entry': PraesidentWerbung.objects.get(pk=praesident_id)})
def group(l, n):
return [l[k*n:k*n+n] for k in range(math.ceil(len(l) / n))]