feat: Add overview page for adoption notice social media actions
This commit is contained in:
@@ -114,7 +114,17 @@
|
||||
<i class="fas fa-chart-line fa-fw"></i> {% trans 'Aufrufe' %}
|
||||
</a>
|
||||
{% endif %}
|
||||
|
||||
<hr class="dropdown-divider">
|
||||
|
||||
<a class="dropdown-item"
|
||||
href="{% url 'adoption-notice-social-media-template-selection' adoption_notice_id=adoption_notice.pk %}">
|
||||
<i class="fab fa-instagram fa-fw"
|
||||
aria-hidden="true"></i> {% trans 'Social Media Vorlagen' %}
|
||||
</a>
|
||||
|
||||
<hr class="dropdown-divider">
|
||||
|
||||
<a class="dropdown-item is-warning"
|
||||
href="{% url adoption_notice_meta|admin_urlname:'change' adoption_notice.pk %}">
|
||||
<i class="fa-solid fa-tools fa-fw"></i> Admin interface
|
||||
|
||||
@@ -0,0 +1,62 @@
|
||||
{% extends "fellchensammlung/base.html" %}
|
||||
{% load i18n %}
|
||||
{% load widget_tweaks %}
|
||||
{% load admin_urls %}
|
||||
|
||||
{% block title %}
|
||||
<title>Social Media Post für {{ adoption_notice }}</title>
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<h1 class="title is-1">Social Media Post für {{ adoption_notice }}</h1>
|
||||
<div class="columns block">
|
||||
<div class="column">
|
||||
<div class="box">
|
||||
{% include 'fellchensammlung/partials/social_media/post-to-fedi.html' %}
|
||||
<p class="block">
|
||||
{% blocktranslate %}
|
||||
|
||||
Die Vermittlung wird auf unserem Fediverse-Account gepostet
|
||||
{% endblocktranslate %}
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="column">
|
||||
<div class="box block">
|
||||
<a href="{% url 'adoption-notice-story-pic' adoption_notice.pk %}"
|
||||
class="button is-primary is-fullwidth">
|
||||
<i class="fab fa-instagram fa-fw"></i> {% trans 'Instagram Storyvorlage' %}
|
||||
</a>
|
||||
<p class="block">
|
||||
{% blocktranslate %}
|
||||
Eine Vorlage für eine Instagram-Story im Format 1080x1980px.
|
||||
{% endblocktranslate %}
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="column">
|
||||
<div class="box block">
|
||||
<a href="{% url 'adoption-notice-sharepic' adoption_notice.pk %}"
|
||||
class="button is-primary block is-fullwidth">
|
||||
<i class="fab fa-instagram fa-fw"></i> {% trans 'Instagram Post' %}
|
||||
</a>
|
||||
<p class="block">
|
||||
{% blocktranslate %}
|
||||
Eine Vorlage für eine Instagram-Post mit einer Slide pro Tier.
|
||||
{% endblocktranslate %}
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="block">
|
||||
<p>
|
||||
{% blocktranslate %}
|
||||
Die Vorlagen werden idealerweise im Grafikprogramm Inkscape weiterbearbeitet.
|
||||
{% endblocktranslate %}
|
||||
</p>
|
||||
<a href="https://inkscape.org/" class="button is-link block is-fullwidth">
|
||||
<i class="fab fa-inkscape fa-fw"></i>
|
||||
{% translate 'Inkscape herunterladen' %}
|
||||
</a>
|
||||
</div>
|
||||
{% endblock %}
|
||||
@@ -30,6 +30,9 @@ urlpatterns = [
|
||||
path("tier/<int:animal_id>/add-photo", views.add_photo_to_animal, name="animal-add-photo"),
|
||||
# ex: /adoption_notice/7/
|
||||
path("vermittlung/<int:adoption_notice_id>/", views.adoption_notice_detail, name="adoption-notice-detail"),
|
||||
# ex: /adoption_notice/7/social-media-templates
|
||||
path("vermittlung/<int:adoption_notice_id>/social-media-templates", views.adoption_notice_social_media_templates,
|
||||
name="adoption-notice-social-media-template-selection"),
|
||||
# ex: /adoption_notice/7/sharepic
|
||||
path("vermittlung/<int:adoption_notice_id>/sharepic", views.adoption_notice_sharepic,
|
||||
name="adoption-notice-sharepic"),
|
||||
|
||||
@@ -13,7 +13,6 @@ from django.contrib.auth.decorators import user_passes_test
|
||||
from django.core.serializers import serialize
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
import json
|
||||
import requests
|
||||
|
||||
from .mail import notify_mods_new_report
|
||||
from notfellchen import settings
|
||||
@@ -1036,6 +1035,18 @@ def adoption_notice_story_pic(request, adoption_notice_id):
|
||||
return HttpResponse(svg_data, content_type="image/svg+xml")
|
||||
|
||||
|
||||
def adoption_notice_social_media_templates(request, adoption_notice_id):
|
||||
context = {}
|
||||
if request.method == "POST":
|
||||
action = request.POST.get("action")
|
||||
if action == "post_to_fedi":
|
||||
context = handle_post_fedi_action()
|
||||
|
||||
adoption_notice = get_object_or_404(AdoptionNotice, pk=adoption_notice_id)
|
||||
context["adoption_notice"] = adoption_notice
|
||||
return render(request, 'fellchensammlung/misc/social-media-template-selection.html', context=context)
|
||||
|
||||
|
||||
@login_required
|
||||
def rescue_org_create_or_update(request, rescue_organization_id=None):
|
||||
"""
|
||||
|
||||
Reference in New Issue
Block a user