feat: add page for updating the exclusion reason where it's not set yet
This commit is contained in:
@@ -19,53 +19,10 @@
|
||||
<div class="columns">
|
||||
<div class="column">
|
||||
<div class="block">
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
<h1 class="card-header-title">{{ org.name }}</h1>
|
||||
</div>
|
||||
<div class="card-content">
|
||||
<div class="block">
|
||||
<b><i class="fa-solid fa-location-dot"></i></b>
|
||||
{% if org.location %}
|
||||
{{ org.location }}
|
||||
{% else %}
|
||||
{{ org.location_string }}
|
||||
{% endif %}
|
||||
{% if org.description %}
|
||||
<div class="block content">
|
||||
<p>{{ org.description | render_markdown }}</p>
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
{% if org.specializations %}
|
||||
<div class="block">
|
||||
<h3 class="title is-5">{% translate 'Spezialisierung' %}</h3>
|
||||
<div class="content">
|
||||
<ul>
|
||||
{% for specialization in org.specializations.all %}
|
||||
<li>{{ specialization }}</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% if org.parent_org %}
|
||||
<div class="block">
|
||||
<h3 class="title is-5">{% translate 'Übergeordnete Organisation' %}</h3>
|
||||
<p>
|
||||
<span>
|
||||
<i class="fa-solid fa-building fa-fw"
|
||||
aria-label="{% trans 'Tierschutzorganisation' %}"></i>
|
||||
<a href="{{ org.parent_org.get_absolute_url }}"> {{ org.parent_org }}</a>
|
||||
</span>
|
||||
</p>
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
{% include "fellchensammlung/partials/rescue_orgs/partial-basic-info-card.html" %}
|
||||
</div>
|
||||
<div class="block">
|
||||
{% include "fellchensammlung/partials/partial-rescue-organization-contact.html" %}
|
||||
{% include "fellchensammlung/partials/rescue_orgs/partial-rescue-organization-contact.html" %}
|
||||
</div>
|
||||
<div class="block">
|
||||
<a class="button is-warning is-fullwidth" href="{% url org_meta|admin_urlname:'change' org.pk %}">
|
||||
|
||||
@@ -1,18 +1,35 @@
|
||||
{% extends "fellchensammlung/base.html" %}
|
||||
{% load i18n %}
|
||||
{% load widget_tweaks %}
|
||||
{% load admin_urls %}
|
||||
|
||||
{% block title %}
|
||||
<title>Organisation {{ rescue_org }} von regelmäßiger Prüfung ausschließen</title>
|
||||
<title>Organisation {{ org }} von regelmäßiger Prüfung ausschließen</title>
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<h1 class="title is-1">Organisation {{ rescue_org }} von regelmäßiger Prüfung ausschließen</h1>
|
||||
<form method="post">
|
||||
{% csrf_token %}
|
||||
{{ form }}
|
||||
<h1 class="title is-1">Organisation {{ org }} von regelmäßiger Prüfung ausschließen</h1>
|
||||
<div class="columns block">
|
||||
<div class="column">
|
||||
{% include "fellchensammlung/partials/rescue_orgs/partial-basic-info-card.html" %}
|
||||
</div>
|
||||
<div class="column">
|
||||
{% include "fellchensammlung/partials/rescue_orgs/partial-rescue-organization-contact.html" %}
|
||||
</div>
|
||||
</div>
|
||||
<div class="block">
|
||||
<form method="post">
|
||||
{% csrf_token %}
|
||||
{{ form }}
|
||||
|
||||
<a class="button" href="{% url 'organization-check' %}">{% translate "Zurück (nicht exkludieren)" %}</a>
|
||||
<input class="button is-danger" type="submit" name="delete" value="{% translate "Von regelmäßiger Prüfung ausschließen" %}">
|
||||
</form>
|
||||
<a class="button" href="{% url 'organization-check' %}">{% translate "Zurück (nicht exkludieren)" %}</a>
|
||||
<input class="button is-danger" type="submit" name="delete"
|
||||
value="{% translate "Von regelmäßiger Prüfung ausschließen" %}">
|
||||
</form>
|
||||
</div>
|
||||
<div class="block">
|
||||
<a class="button is-warning is-fullwidth" href="{% url org_meta|admin_urlname:'change' org.pk %}">
|
||||
<i class="fa-solid fa-tools fa-fw"></i> Admin interface
|
||||
</a>
|
||||
</div>
|
||||
{% endblock %}
|
||||
@@ -3,7 +3,7 @@
|
||||
{% if rescue_organizations %}
|
||||
{% for rescue_organization in rescue_organizations %}
|
||||
<div class="cell">
|
||||
{% include "fellchensammlung/partials/partial-rescue-organization.html" %}
|
||||
{% include "fellchensammlung/partials/rescue_orgs/partial-rescue-organization.html" %}
|
||||
</div>
|
||||
{% endfor %}
|
||||
{% else %}
|
||||
|
||||
@@ -0,0 +1,46 @@
|
||||
{% load i18n %}
|
||||
{% load custom_tags %}
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
<h1 class="card-header-title">{{ org.name }}</h1>
|
||||
</div>
|
||||
<div class="card-content">
|
||||
<div class="block">
|
||||
<b><i class="fa-solid fa-location-dot"></i></b>
|
||||
{% if org.location %}
|
||||
{{ org.location }}
|
||||
{% else %}
|
||||
{{ org.location_string }}
|
||||
{% endif %}
|
||||
{% if org.description %}
|
||||
<div class="block content">
|
||||
<p>{{ org.description | render_markdown }}</p>
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
{% if org.specializations %}
|
||||
<div class="block">
|
||||
<h3 class="title is-5">{% translate 'Spezialisierung' %}</h3>
|
||||
<div class="content">
|
||||
<ul>
|
||||
{% for specialization in org.specializations.all %}
|
||||
<li>{{ specialization }}</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% if org.parent_org %}
|
||||
<div class="block">
|
||||
<h3 class="title is-5">{% translate 'Übergeordnete Organisation' %}</h3>
|
||||
<p>
|
||||
<span>
|
||||
<i class="fa-solid fa-building fa-fw"
|
||||
aria-label="{% trans 'Tierschutzorganisation' %}"></i>
|
||||
<a href="{{ org.parent_org.get_absolute_url }}"> {{ org.parent_org }}</a>
|
||||
</span>
|
||||
</p>
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
@@ -38,7 +38,7 @@
|
||||
<div class="grid is-col-min-15">
|
||||
{% for rescue_org in rescue_orgs_to_check %}
|
||||
<div class="cell">
|
||||
{% include "fellchensammlung/partials/partial-check-rescue-org.html" %}
|
||||
{% include "fellchensammlung/partials/rescue_orgs/partial-check-rescue-org.html" %}
|
||||
</div>
|
||||
{% endfor %}
|
||||
</div>
|
||||
@@ -50,7 +50,7 @@
|
||||
<div class="grid is-col-min-15">
|
||||
{% for rescue_org in rescue_orgs_with_ongoing_communication %}
|
||||
<div class="cell">
|
||||
{% include "fellchensammlung/partials/partial-check-rescue-org.html" %}
|
||||
{% include "fellchensammlung/partials/rescue_orgs/partial-check-rescue-org.html" %}
|
||||
</div>
|
||||
{% endfor %}
|
||||
</div>
|
||||
@@ -62,7 +62,7 @@
|
||||
<div class="grid is-col-min-15">
|
||||
{% for rescue_org in rescue_orgs_last_checked %}
|
||||
<div class="cell">
|
||||
{% include "fellchensammlung/partials/partial-check-rescue-org.html" %}
|
||||
{% include "fellchensammlung/partials/rescue_orgs/partial-check-rescue-org.html" %}
|
||||
</div>
|
||||
{% endfor %}
|
||||
</div>
|
||||
|
||||
@@ -49,6 +49,8 @@ urlpatterns = [
|
||||
name="rescue-organization-detail"),
|
||||
path("tierschutzorganisationen/<int:rescue_organization_id>/exkludieren", views.exclude_from_regular_check,
|
||||
name="rescue-organization-exclude"),
|
||||
path("tierschutzorganisationen/add-exclusion-reason", views.update_exclusion_reason,
|
||||
name="rescue-organization-add-exclusion-reason"),
|
||||
path("tierschutzorganisationen/spezialisierung/<slug:species_slug>", views.specialized_rescues,
|
||||
name="specialized-rescue-organizations"),
|
||||
|
||||
|
||||
@@ -897,23 +897,38 @@ def rescue_organization_check_dq(request):
|
||||
return rescue_organization_check(request, context)
|
||||
|
||||
|
||||
@user_passes_test(user_is_trust_level_or_above)
|
||||
def exclude_from_regular_check(request, rescue_organization_id):
|
||||
def exclude_from_regular_check(request, rescue_organization_id, source="organization-check"):
|
||||
rescue_org = get_object_or_404(RescueOrganization, pk=rescue_organization_id)
|
||||
if request.method == "POST":
|
||||
form = UpdateRescueOrgRegularCheckStatus(request.POST, instance=rescue_org)
|
||||
if form.is_valid():
|
||||
form.save()
|
||||
if form.cleaned_data["regular_check_status"] != RegularCheckStatusChoices.REGULAR_CHECK:
|
||||
rescue_org.exclude_from_check = True
|
||||
rescue_org.save()
|
||||
return redirect(reverse("organization-check"))
|
||||
to_be_excluded = form.cleaned_data["regular_check_status"] != RegularCheckStatusChoices.REGULAR_CHECK
|
||||
rescue_org.exclude_from_check = to_be_excluded
|
||||
rescue_org.save()
|
||||
|
||||
return redirect(reverse(source))
|
||||
else:
|
||||
form = UpdateRescueOrgRegularCheckStatus(instance=rescue_org)
|
||||
context = {"form": form, rescue_org: rescue_org}
|
||||
org_meta = rescue_org._meta
|
||||
context = {"form": form, "org": rescue_org, "org_meta": org_meta}
|
||||
return render(request, 'fellchensammlung/forms/form-exclude-org-from-check.html', context=context)
|
||||
|
||||
|
||||
@user_passes_test(user_is_trust_level_or_above)
|
||||
def update_exclusion_reason(request):
|
||||
"""
|
||||
This view will redirect to update a rescue org that not yet has an exclusion reason but is excluded
|
||||
"""
|
||||
orgs_to_check = RescueOrganization.objects.filter(exclude_from_check=True,
|
||||
regular_check_status=RegularCheckStatusChoices.REGULAR_CHECK)
|
||||
if orgs_to_check.count() > 0:
|
||||
return exclude_from_regular_check(request, orgs_to_check[0].pk,
|
||||
source="rescue-organization-add-exclusion-reason")
|
||||
else:
|
||||
return render(request, "fellchensammlung/errors/404.html", status=404)
|
||||
|
||||
|
||||
@user_passes_test(user_is_trust_level_or_above)
|
||||
def moderation_tools_overview(request):
|
||||
context = None
|
||||
|
||||
Reference in New Issue
Block a user