diff --git a/src/fellchensammlung/templates/fellchensammlung/forms/bulma-form-image.html b/src/fellchensammlung/templates/fellchensammlung/forms/bulma-form-image.html
new file mode 100644
index 0000000..cb2c28e
--- /dev/null
+++ b/src/fellchensammlung/templates/fellchensammlung/forms/bulma-form-image.html
@@ -0,0 +1,29 @@
+{% extends "fellchensammlung/base_bulma.html" %}
+
+{% load i18n %}
+{% load widget_tweaks %}
+
+{% block content %}
+
+ {% blocktranslate %}
+ Lade hier ein Foto hoch - wähle den Titel wie du willst und mach bitte eine Bildbeschreibung,
+ damit die Fotos auch für blinde und sehbehinderte Personen zugänglich sind.
+ {% endblocktranslate %}
+
{% translate 'Anleitung für Bildbeschreibungen' %}
+
+
+
+{% endblock %}
\ No newline at end of file
diff --git a/src/fellchensammlung/templates/fellchensammlung/partials/bulma-partial-animal-card.html b/src/fellchensammlung/templates/fellchensammlung/partials/bulma-partial-animal-card.html
index 8858473..78c53e4 100644
--- a/src/fellchensammlung/templates/fellchensammlung/partials/bulma-partial-animal-card.html
+++ b/src/fellchensammlung/templates/fellchensammlung/partials/bulma-partial-animal-card.html
@@ -31,7 +31,7 @@
{% endif %}
diff --git a/src/fellchensammlung/urls.py b/src/fellchensammlung/urls.py
index d58c83b..41b968b 100644
--- a/src/fellchensammlung/urls.py
+++ b/src/fellchensammlung/urls.py
@@ -27,6 +27,7 @@ urlpatterns = [
path("tier//edit", views.animal_edit, name="animal-edit"),
# ex: /animal/5/add-photo
path("tier//add-photo", views.add_photo_to_animal, name="animal-add-photo"),
+ path("bulma/tier//add-photo", views.add_photo_to_animal_bulma, name="animal-add-photo-bulma"),
# ex: /adoption_notice/7/
path("vermittlung//", views.adoption_notice_detail, name="adoption-notice-detail"),
path("bulma/vermittlung//", views.adoption_notice_detail_bulma, name="adoption-notice-detail-bulma"),
@@ -35,6 +36,8 @@ urlpatterns = [
# ex: /vermittlung/5/add-photo
path("vermittlung//add-photo", views.add_photo_to_adoption_notice,
name="adoption-notice-add-photo"),
+ path("bulma/vermittlung//add-photo", views.add_photo_to_adoption_notice_bulma,
+ name="adoption-notice-add-photo-bulma"),
# ex: /adoption_notice/2/add-animal
path("vermittlung//add-animal", views.adoption_notice_add_animal,
name="adoption-notice-add-animal"),
diff --git a/src/fellchensammlung/views.py b/src/fellchensammlung/views.py
index 57900d4..b447df7 100644
--- a/src/fellchensammlung/views.py
+++ b/src/fellchensammlung/views.py
@@ -408,6 +408,38 @@ def add_photo_to_animal(request, animal_id):
form = ImageForm(in_flow=True)
return render(request, 'fellchensammlung/forms/form-image.html', {'form': form})
+@login_required
+def add_photo_to_animal_bulma(request, animal_id):
+ animal = Animal.objects.get(id=animal_id)
+ # Only users that are mods or owners of the animal are allowed to add to it
+ fail_if_user_not_owner_or_trust_level(request.user, animal)
+ if request.method == 'POST':
+ form = ImageForm(request.POST, request.FILES)
+
+ if form.is_valid():
+ instance = form.save(commit=False)
+ instance.owner = request.user
+ instance.save()
+
+ animal.photos.add(instance)
+
+ """Log"""
+ Log.objects.create(user=request.user, action="add_photo_to_animal",
+ text=f"{request.user} hat Foto {instance.pk} zum Tier {animal.pk} hinzugefügt")
+
+ if "save-and-add-another" in request.POST:
+ form = ImageForm(in_flow=True)
+ return render(request, 'fellchensammlung/forms/bulma-form-image.html', {'form': form})
+ else:
+ return redirect(reverse("adoption-notice-detail-bulma", args=[animal.adoption_notice.pk], ))
+ else:
+ return render(request, 'fellchensammlung/forms/bulma-form-image.html', {'form': form})
+
+ else:
+ form = ImageForm(in_flow=True)
+ return render(request, 'fellchensammlung/forms/bulma-form-image.html', {'form': form})
+
+
@login_required
def add_photo_to_adoption_notice(request, adoption_notice_id):
@@ -436,6 +468,33 @@ def add_photo_to_adoption_notice(request, adoption_notice_id):
form = ImageForm(in_flow=True)
return render(request, 'fellchensammlung/forms/form-image.html', {'form': form})
+@login_required
+def add_photo_to_adoption_notice_bulma(request, adoption_notice_id):
+ adoption_notice = AdoptionNotice.objects.get(id=adoption_notice_id)
+ # Only users that are mods or owners of the adoption notice are allowed to add to it
+ fail_if_user_not_owner_or_trust_level(request.user, adoption_notice)
+ if request.method == 'POST':
+ form = ImageForm(request.POST, request.FILES)
+
+ if form.is_valid():
+ instance = form.save(commit=False)
+ instance.owner = request.user
+ instance.save()
+ adoption_notice.photos.add(instance)
+ """Log"""
+ Log.objects.create(user=request.user, action="add_photo_to_animal",
+ text=f"{request.user} hat Foto {instance.pk} zur Vermittlung {adoption_notice.pk} hinzugefügt")
+ if "save-and-add-another" in request.POST:
+ form = ImageForm(in_flow=True)
+ return render(request, 'fellchensammlung/forms/bulma-form-image.html', {'form': form})
+ else:
+ return redirect(reverse("adoption-notice-detail", args=[adoption_notice_id]))
+ else:
+ return render(request, 'fellchensammlung/forms/bulma-form-image.html', {'form': form})
+ else:
+ form = ImageForm(in_flow=True)
+ return render(request, 'fellchensammlung/forms/bulma-form-image.html', {'form': form})
+
@login_required
def animal_edit(request, animal_id):