diff --git a/cspell.json b/cspell.json
index f0314ed..a821b93 100644
--- a/cspell.json
+++ b/cspell.json
@@ -8,7 +8,8 @@
"Reparateure",
"reparateur_id",
"organisator_id",
- "Reparateurs"
+ "Reparateurs",
+ "repapp"
],
"ignoreWords": [],
"import": []
diff --git a/rc_hip/repapp/templates/repapp/index.html b/rc_hip/repapp/templates/repapp/index.html
index b2b8798..febc8f8 100644
--- a/rc_hip/repapp/templates/repapp/index.html
+++ b/rc_hip/repapp/templates/repapp/index.html
@@ -7,7 +7,9 @@
{% for cafe in object_list %}
-
-
+
+
+
{% empty %}
- Es gibt keine geplanten Repair-Cafés.
diff --git a/rc_hip/repapp/templates/repapp/register_device.html b/rc_hip/repapp/templates/repapp/register_device.html
new file mode 100644
index 0000000..679344a
--- /dev/null
+++ b/rc_hip/repapp/templates/repapp/register_device.html
@@ -0,0 +1,30 @@
+{% extends "repapp/base.html" %}
+
+{% block title %}- Gerät anmelden{% endblock title %}
+
+{% block content %}
+
+{% endblock content %}
\ No newline at end of file
diff --git a/rc_hip/repapp/urls.py b/rc_hip/repapp/urls.py
index 1249c1c..c3037fc 100644
--- a/rc_hip/repapp/urls.py
+++ b/rc_hip/repapp/urls.py
@@ -1,7 +1,11 @@
+"""
+Urls of RepApp.
+"""
from django.urls import path
from . import views
urlpatterns = [
path("", views.IndexView.as_view(), name="index"),
+ path("/", views.register_device, name="register_device"),
]
diff --git a/rc_hip/repapp/views.py b/rc_hip/repapp/views.py
index a308bda..efe6184 100644
--- a/rc_hip/repapp/views.py
+++ b/rc_hip/repapp/views.py
@@ -1,15 +1,37 @@
-from django.shortcuts import render
-from django.http import HttpResponse
+"""
+Views of RepApp.
+"""
+import datetime
+from django.shortcuts import get_object_or_404, render
+from django.http import HttpResponse, HttpResponseRedirect
from django.views import generic
-from .models import Cafe
-
-
-def index(request):
- return HttpResponse("Hello from RepApp.")
+from .models import Cafe, Guest, Device
class IndexView(generic.ListView):
+ """
+ The IndexView lists all future Repair-Cafés.
+ """
template_name = "repapp/index.html"
def get_queryset(self):
- return Cafe.objects.all()
+ return Cafe.objects.filter(event_date__gte=datetime.date.today())
+
+
+def register_device(request, cafe_id):
+ if request.method == "POST":
+ mail = request.POST.get('email_address', '')
+ device = request.POST.get('device', '')
+ issue = request.POST.get('issue', ''),
+ follow_up = request.POST.get('follow_up', 'false') == 'on'
+ return HttpResponse(f"{mail} {device} {issue} {follow_up}")
+ # return HttpResponseRedirect(reverse("polls:results", args=(question.id,)))
+ else:
+ cafe = get_object_or_404(Cafe, pk=cafe_id)
+ return render(
+ request,
+ "repapp/register_device.html",
+ {
+ "cafe": cafe,
+ },
+ )