diff --git a/web_dev/sas_web/news/__init__.py b/web_dev/sas_web/news/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/web_dev/sas_web/news/admin.py b/web_dev/sas_web/news/admin.py
new file mode 100644
index 0000000..8c8896d
--- /dev/null
+++ b/web_dev/sas_web/news/admin.py
@@ -0,0 +1,9 @@
+from django.contrib import admin
+from .models import ParteiWerbung
+
+
+# Register your models here.
+class ParteiWerbungAdmin(admin.ModelAdmin):
+ list_display = ('partei',)
+
+admin.site.register(ParteiWerbung, ParteiWerbungAdmin)
diff --git a/web_dev/sas_web/news/apps.py b/web_dev/sas_web/news/apps.py
new file mode 100644
index 0000000..5a7b92d
--- /dev/null
+++ b/web_dev/sas_web/news/apps.py
@@ -0,0 +1,5 @@
+from django.apps import AppConfig
+
+
+class NewsConfig(AppConfig):
+ name = 'news'
diff --git a/web_dev/sas_web/news/models.py b/web_dev/sas_web/news/models.py
new file mode 100644
index 0000000..7d6a25f
--- /dev/null
+++ b/web_dev/sas_web/news/models.py
@@ -0,0 +1,24 @@
+from django.db import models
+
+
+# Create your models here.
+class ParteiWerbung(models.Model):
+ partei = models.ForeignKey('meingoethopia.Partei')
+
+ def __str__(self):
+ return str(self.partei)
+
+ class Meta:
+ verbose_name = 'Parteiwerbung'
+ verbose_name_plural = 'Parteienwerbung'
+
+
+class PraesidentWerbung(models.Model):
+ partei = models.ForeignKey('meingoethopia.PresidentCandidate')
+
+ def __str__(self):
+ return str(self.partei)
+
+ class Meta:
+ verbose_name = 'Präsidentwerbung'
+ verbose_name_plural = 'Präsidentenwerbung'
diff --git a/web_dev/sas_web/news/templates/news/index.html b/web_dev/sas_web/news/templates/news/index.html
new file mode 100644
index 0000000..0ac46c9
--- /dev/null
+++ b/web_dev/sas_web/news/templates/news/index.html
@@ -0,0 +1,49 @@
+{% extends "public/default.html" %}
+{% load static %}
+
+{% block content %}
+
+
+
+
+
+ |
+ |
+ |
+
+
+ |
+
+ Bald wird gewählt in Goethopia! Hier erfährst du welche Parteien zur Wahl stehen
+ und wer als Präsidentin kandidiert!
+
+ |
+
+ {% if rows|length == 0 %}
+
+ |
+
+ Keine Parteien gefunden
+
+ |
+
+ {% endif %}
+ {% for row in rows %}
+
+ {% for entry in row %}
+
+
+
+
+
+
+ {{ entry.partei.name }}
+
+
+ |
+ {% endfor %}
+
+ {% endfor %}
+
+
+{% endblock %}
diff --git a/web_dev/sas_web/news/tests.py b/web_dev/sas_web/news/tests.py
new file mode 100644
index 0000000..7ce503c
--- /dev/null
+++ b/web_dev/sas_web/news/tests.py
@@ -0,0 +1,3 @@
+from django.test import TestCase
+
+# Create your tests here.
diff --git a/web_dev/sas_web/news/urls.py b/web_dev/sas_web/news/urls.py
new file mode 100644
index 0000000..9cb3403
--- /dev/null
+++ b/web_dev/sas_web/news/urls.py
@@ -0,0 +1,7 @@
+from django.conf.urls import url
+
+from . import views
+
+urlpatterns = [
+ url(r'^$', views.index, name='index')
+]
diff --git a/web_dev/sas_web/news/views.py b/web_dev/sas_web/news/views.py
new file mode 100644
index 0000000..0794aa7
--- /dev/null
+++ b/web_dev/sas_web/news/views.py
@@ -0,0 +1,16 @@
+from django.shortcuts import render
+import math
+
+from .models import ParteiWerbung
+
+
+# Create your views here.
+def index(request):
+ objects = ParteiWerbung.objects.all()
+ rows = group(objects, 3)
+ return render(request, "news/index.html", {'rows': rows,
+ })
+
+
+def group(l, n):
+ return [l[k*n:k*n+n] for k in range(math.ceil(len(l) / n))]
diff --git a/web_dev/sas_web/sas_web/settings.py b/web_dev/sas_web/sas_web/settings.py
index c48f391..dfe0638 100644
--- a/web_dev/sas_web/sas_web/settings.py
+++ b/web_dev/sas_web/sas_web/settings.py
@@ -49,6 +49,7 @@ USE_X_FORWARDED_HOST = True
# Application definition
INSTALLED_APPS = (
+ 'news',
'captcha',
'datenbank',
'meingoethopia',
diff --git a/web_dev/sas_web/sas_web/urls.py b/web_dev/sas_web/sas_web/urls.py
index ec36f58..3be8a61 100644
--- a/web_dev/sas_web/sas_web/urls.py
+++ b/web_dev/sas_web/sas_web/urls.py
@@ -23,6 +23,9 @@ from .views import error_400, error_403, error_404, error_500
urlpatterns = static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
urlpatterns += [
+ url(r'^news/', include('news.urls',
+ namespace='news',
+ app_name='news')),
url(r'^meingoethopia/', include('meingoethopia.urls',
namespace='meingoethopia',
app_name='meingoethopia')),
diff --git a/web_dev/sas_web/static/public/css/header.css b/web_dev/sas_web/static/public/css/header.css
index d29d6eb..9347053 100644
--- a/web_dev/sas_web/static/public/css/header.css
+++ b/web_dev/sas_web/static/public/css/header.css
@@ -81,7 +81,7 @@ ul.navbar {
li.navbar {
float: left;
- width: 30%;
+ width: 21%;
margin-top: 0.5%;
margin-bottom: 0.5%;
vertical-align: middle;
diff --git a/web_dev/sas_web/templates/public/header.html b/web_dev/sas_web/templates/public/header.html
index b5fb3b2..8eb956d 100644
--- a/web_dev/sas_web/templates/public/header.html
+++ b/web_dev/sas_web/templates/public/header.html
@@ -34,6 +34,7 @@