diff --git a/app/aviary/migrations/0001_initial.py b/app/aviary/migrations/0001_initial.py deleted file mode 100644 index e467c55..0000000 --- a/app/aviary/migrations/0001_initial.py +++ /dev/null @@ -1,29 +0,0 @@ -# Generated by Django 4.2.6 on 2023-10-09 21:31 - -from django.db import migrations, models -import uuid - - -class Migration(migrations.Migration): - - initial = True - - dependencies = [ - ] - - operations = [ - migrations.CreateModel( - name='Aviary', - fields=[ - ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)), - ('description', models.CharField(max_length=256, unique=True, verbose_name='Beschreibung')), - ('condition', models.CharField(choices=[('Offen', 'Offen'), ('Geschlossen', 'Geschlossen'), ('Gesperrt', 'Gesperrt')], max_length=256, verbose_name='Zustand')), - ('last_ward_round', models.DateField(verbose_name='letzte Visite')), - ('comment', models.CharField(blank=True, max_length=512, null=True, verbose_name='Bemerkungen')), - ], - options={ - 'verbose_name': 'Voliere', - 'verbose_name_plural': 'Volieren', - }, - ), - ] diff --git a/app/bird/migrations/0001_initial.py b/app/bird/migrations/0001_initial.py deleted file mode 100644 index a019dbf..0000000 --- a/app/bird/migrations/0001_initial.py +++ /dev/null @@ -1,81 +0,0 @@ -# Generated by Django 4.2.6 on 2023-10-09 21:31 - -import ckeditor.fields -from django.conf import settings -from django.db import migrations, models -import django.db.models.deletion -import uuid - - -class Migration(migrations.Migration): - - initial = True - - dependencies = [ - ('aviary', '0001_initial'), - migrations.swappable_dependency(settings.AUTH_USER_MODEL), - ] - - operations = [ - migrations.CreateModel( - name='Bird', - fields=[ - ('id', models.BigAutoField(primary_key=True, serialize=False)), - ('name', models.CharField(max_length=256, unique=True, verbose_name='Bezeichnung')), - ('description', ckeditor.fields.RichTextField(verbose_name='Erläuterungen')), - ], - options={ - 'verbose_name': 'Vogel', - 'verbose_name_plural': 'Vögel', - 'ordering': ['name'], - }, - ), - migrations.CreateModel( - name='BirdStatus', - fields=[ - ('id', models.BigAutoField(primary_key=True, serialize=False)), - ('description', models.CharField(max_length=256, unique=True, verbose_name='Bezeichnung')), - ], - options={ - 'verbose_name': 'Patientenstatus', - 'verbose_name_plural': 'Patientenstatus', - }, - ), - migrations.CreateModel( - name='Circumstance', - fields=[ - ('id', models.BigAutoField(primary_key=True, serialize=False)), - ('description', models.CharField(max_length=256, verbose_name='Bezeichnung')), - ], - options={ - 'verbose_name': 'Fundumstand', - 'verbose_name_plural': 'Fundumstände', - }, - ), - migrations.CreateModel( - name='FallenBird', - fields=[ - ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)), - ('bird_identifier', models.CharField(max_length=256, verbose_name='Patienten Alias')), - ('age', models.CharField(choices=[('unbekannt', 'unbekannt'), ('Ei', 'Ei'), ('Nestling', 'Nestling'), ('Ästling', 'Ästling'), ('Juvenil', 'Juvenil'), ('Adult', 'Adult')], max_length=15, verbose_name='Alter')), - ('sex', models.CharField(choices=[('Weiblich', 'Weiblich'), ('Männlich', 'Männlich'), ('Unbekannt', 'Unbekannt')], max_length=15, verbose_name='Geschlecht')), - ('date_found', models.DateField(verbose_name='Datum des Fundes')), - ('place', models.CharField(max_length=256, verbose_name='Ort des Fundes')), - ('created', models.DateTimeField(auto_now_add=True, verbose_name='angelegt am')), - ('updated', models.DateTimeField(auto_now=True, verbose_name='geändert am')), - ('diagnostic_finding', models.CharField(max_length=256, verbose_name='Diagnose bei Fund')), - ('sent_to', models.CharField(blank=True, max_length=256, null=True, verbose_name='Übersandt nach')), - ('comment', models.TextField(blank=True, null=True, verbose_name='Bemerkungen')), - ('finder', models.TextField(blank=True, null=True, verbose_name='Finder')), - ('aviary', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='aviary.aviary', verbose_name='Voliere')), - ('bird', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='bird.bird', verbose_name='Vogel')), - ('find_circumstances', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='bird.circumstance', verbose_name='Fundumstände')), - ('status', models.ForeignKey(default=1, on_delete=django.db.models.deletion.CASCADE, to='bird.birdstatus')), - ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='Benutzer')), - ], - options={ - 'verbose_name': 'Patient', - 'verbose_name_plural': 'Patienten', - }, - ), - ] diff --git a/app/bird/migrations/0002_alter_fallenbird_comment.py b/app/bird/migrations/0002_alter_fallenbird_comment.py deleted file mode 100644 index ca64834..0000000 --- a/app/bird/migrations/0002_alter_fallenbird_comment.py +++ /dev/null @@ -1,18 +0,0 @@ -# Generated by Django 4.2.6 on 2023-10-10 06:34 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('bird', '0001_initial'), - ] - - operations = [ - migrations.AlterField( - model_name='fallenbird', - name='comment', - field=models.TextField(blank=True, null=True, verbose_name='Bemerkung'), - ), - ] diff --git a/app/bird/migrations/0002_alter_fallenbird_comment_alter_fallenbird_finder.py b/app/bird/migrations/0002_alter_fallenbird_comment_alter_fallenbird_finder.py deleted file mode 100644 index 1aba545..0000000 --- a/app/bird/migrations/0002_alter_fallenbird_comment_alter_fallenbird_finder.py +++ /dev/null @@ -1,23 +0,0 @@ -# Generated by Django 4.2.6 on 2023-10-11 15:49 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('bird', '0001_initial'), - ] - - operations = [ - migrations.AlterField( - model_name='fallenbird', - name='comment', - field=models.TextField(blank=True, null=True, verbose_name='Bemerkung'), - ), - migrations.AlterField( - model_name='fallenbird', - name='finder', - field=models.TextField(blank=True, default='Vorname:\nName:\\Straße und Hausnummer:\\PLZ:\\Ort', null=True, verbose_name='Finder'), - ), - ] diff --git a/app/contact/__init__.py b/app/contact/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/app/contact/admin.py b/app/contact/admin.py new file mode 100644 index 0000000..a444f08 --- /dev/null +++ b/app/contact/admin.py @@ -0,0 +1,15 @@ +from django.contrib import admin + +from .models import Contact + + +@admin.register(Contact) +class FallenBirdAdmin(admin.ModelAdmin): + list_display = [ + "name", + "phone", + "email", + "address", + "comment", + ] + list_filter = ("name", "phone", "email", "address", "comment") diff --git a/app/contact/apps.py b/app/contact/apps.py new file mode 100644 index 0000000..594aa3a --- /dev/null +++ b/app/contact/apps.py @@ -0,0 +1,8 @@ +from django.apps import AppConfig +from django.utils.translation import gettext_lazy as _ + + +class ContactConfig(AppConfig): + default_auto_field = "django.db.models.BigAutoField" + name = "contact" + verbose_name = _("Kontakte") diff --git a/app/contact/migrations/__init__.py b/app/contact/migrations/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/app/contact/models.py b/app/contact/models.py new file mode 100644 index 0000000..9b566af --- /dev/null +++ b/app/contact/models.py @@ -0,0 +1,27 @@ +from django.db import models +from uuid import uuid4 + +from django.utils.translation import gettext_lazy as _ + + +class Contact(models.Model): + id = models.UUIDField(primary_key=True, default=uuid4, editable=False) + name = models.CharField( + max_length=50, null=True, blank=True, verbose_name=_("Kontakt Name") + ) + phone = models.CharField( + max_length=50, null=True, blank=True, verbose_name=_("Telefon") + ) + email = models.CharField( + max_length=50, null=True, blank=True, verbose_name=_("Email") + ) + address = models.CharField( + max_length=50, null=True, blank=True, verbose_name=_("Adresse") + ) + comment = models.CharField( + max_length=50, null=True, blank=True, verbose_name=_("Bemerkungen") + ) + + class Meta: + verbose_name = _("Kontakt") + verbose_name_plural = _("Kontakte") diff --git a/app/contact/templates/contact/contact_all.html b/app/contact/templates/contact/contact_all.html new file mode 100644 index 0000000..949c475 --- /dev/null +++ b/app/contact/templates/contact/contact_all.html @@ -0,0 +1,75 @@ +{% extends "base.html" %} +{% load static %} +{% block header %} + + + + + + + + + + + + + + + + + + +{% endblock header %} + +{% block content %} +
Die Übersicht aller bisher hinterlegten Kontakte.
+ +Name | +Telefon | +Adresse | +Bemerkung | +|
---|---|---|---|---|
{{ item.name }} | +{{ item.phone|default_if_none:"" }} | +{{ item.email|default_if_none:"" }} | +{{ item.address|default_if_none:"" }} | +{{ item.comment|default_if_none:"" }} | +