From 8fd9e9b38c74819cc666c048e2ea686bd6f69bb0 Mon Sep 17 00:00:00 2001 From: Tom Irgang Date: Wed, 19 Apr 2023 21:28:59 +0200 Subject: [PATCH] register device flow views --- rc_hip/rc_hip/settings.py | 5 + rc_hip/repapp/forms.py | 42 ++++++ rc_hip/repapp/models.py | 2 +- rc_hip/repapp/templates/repapp/base.html | 38 +++-- rc_hip/repapp/templates/repapp/index.html | 3 +- .../templates/repapp/register_device.html | 25 +--- .../repapp/register_device_final.html | 12 ++ .../templates/repapp/register_guest.html | 15 ++ rc_hip/repapp/urls.py | 13 +- rc_hip/repapp/views.py | 137 +++++++++++++++--- requirements_dev.txt | 2 + requirements_prod.txt | 2 + 12 files changed, 244 insertions(+), 52 deletions(-) create mode 100644 rc_hip/repapp/forms.py create mode 100644 rc_hip/repapp/templates/repapp/register_device_final.html create mode 100644 rc_hip/repapp/templates/repapp/register_guest.html diff --git a/rc_hip/rc_hip/settings.py b/rc_hip/rc_hip/settings.py index c3bd9df..4bc1163 100644 --- a/rc_hip/rc_hip/settings.py +++ b/rc_hip/rc_hip/settings.py @@ -48,8 +48,13 @@ INSTALLED_APPS = [ 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', + 'crispy_forms', + 'crispy_bootstrap4', ] +CRISPY_ALLOWED_TEMPLATE_PACKS = 'bootstrap4' +CRISPY_TEMPLATE_PACK = 'bootstrap4' + MIDDLEWARE = [ 'django.middleware.security.SecurityMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', diff --git a/rc_hip/repapp/forms.py b/rc_hip/repapp/forms.py new file mode 100644 index 0000000..faa99d8 --- /dev/null +++ b/rc_hip/repapp/forms.py @@ -0,0 +1,42 @@ +from django import forms + + +class RegisterDevice(forms.Form): + mail = forms.EmailField( + label="eMail Adresse", + help_text="Diese eMail-Adresse wird für Aktualisierungen" + " zur Anfrage verwendet.", + max_length=200) + device = forms.CharField( + label="Gerätebezeichnung", + help_text="Bitte geben Sie den Hersteller und die" + " Gerätebezeichnung an.", + max_length=200 + ) + error = forms.CharField( + label="Fehlerbeschreibung", + help_text="Beschreiben Sie hier das Problem ihres Gerätes.", + widget=forms.Textarea + ) + follow_up = forms.BooleanField( + label="Folgetermin", + help_text="Klicken Sie dieses Kästchen an wenn sie mit diesem" + " Gerät bereits bei einem Repair-Café waren.", + required=False + ) + + +class RegisterGuest(forms.Form): + name = forms.CharField( + label="Name", + max_length=200 + ) + phone = forms.CharField( + label="Telefonnummer", + max_length=200, + help_text="Diese Telefonnummer wird für Rückfragen verwendet." + ) + residence = forms.CharField( + label="Wohnort", + max_length=200 + ) diff --git a/rc_hip/repapp/models.py b/rc_hip/repapp/models.py index f029e8e..5775a44 100644 --- a/rc_hip/repapp/models.py +++ b/rc_hip/repapp/models.py @@ -85,7 +85,7 @@ class Device(models.Model): verbose_name_plural = _('Geräte') def __str__(self): - return f'Gerät {self.device} von {self.guest_id.name}' + return f'Gerät {self.device}' class Appointment(models.Model): diff --git a/rc_hip/repapp/templates/repapp/base.html b/rc_hip/repapp/templates/repapp/base.html index 66d4f08..7d18e85 100644 --- a/rc_hip/repapp/templates/repapp/base.html +++ b/rc_hip/repapp/templates/repapp/base.html @@ -1,13 +1,29 @@ - - - RepApp{% block title %}{% endblock title %} - - - - - - - {% block content %}{% endblock content %} - + + + + + + + RepApp{% block title %}{% endblock title %} + + +
+
+
{% block content %} {% endblock %}
+
+
+ diff --git a/rc_hip/repapp/templates/repapp/index.html b/rc_hip/repapp/templates/repapp/index.html index febc8f8..b8169e0 100644 --- a/rc_hip/repapp/templates/repapp/index.html +++ b/rc_hip/repapp/templates/repapp/index.html @@ -3,7 +3,8 @@ {% block title %}- Repair-Cafés{% endblock title %} {% block content %} -

Repair-Cafés

+

Repair-Cafés

+