Adds delete functionality
This commit is contained in:
parent
7638f99c1b
commit
d28db51a14
|
@ -45,11 +45,14 @@
|
||||||
</a>
|
</a>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
{% trans "Delete" as button_text %}
|
<form name="remove-{{ domain.id }}" action="{% url 'settings-email-blocks-delete' domain.id %}" method="post">
|
||||||
<button class="button">
|
{% csrf_token %}
|
||||||
<span class="icon icon-x" title="{{ button_text }}" aria-hidden="true"></span>
|
{% trans "Delete" as button_text %}
|
||||||
<span class="is-hidden-mobile">{{ button_text }}</span>
|
<button class="button" type="submit">
|
||||||
</button>
|
<span class="icon icon-x" title="{{ button_text }}" aria-hidden="true"></span>
|
||||||
|
<span class="is-hidden-mobile">{{ button_text }}</span>
|
||||||
|
</button>
|
||||||
|
</form>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
|
|
|
@ -146,6 +146,11 @@ urlpatterns = [
|
||||||
views.EmailBlocklist.as_view(),
|
views.EmailBlocklist.as_view(),
|
||||||
name="settings-email-blocks",
|
name="settings-email-blocks",
|
||||||
),
|
),
|
||||||
|
re_path(
|
||||||
|
r"^settings/email-blocks/(?P<domain_id>\d+)/delete/?$",
|
||||||
|
views.EmailBlocklist.as_view(),
|
||||||
|
name="settings-email-blocks-delete",
|
||||||
|
),
|
||||||
# moderation
|
# moderation
|
||||||
re_path(r"^settings/reports/?$", views.Reports.as_view(), name="settings-reports"),
|
re_path(r"^settings/reports/?$", views.Reports.as_view(), name="settings-reports"),
|
||||||
re_path(
|
re_path(
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
""" moderation via flagged posts and users """
|
""" moderation via flagged posts and users """
|
||||||
from django.contrib.auth.decorators import login_required, permission_required
|
from django.contrib.auth.decorators import login_required, permission_required
|
||||||
|
from django.shortcuts import get_object_or_404, redirect
|
||||||
from django.template.response import TemplateResponse
|
from django.template.response import TemplateResponse
|
||||||
from django.utils.decorators import method_decorator
|
from django.utils.decorators import method_decorator
|
||||||
from django.views import View
|
from django.views import View
|
||||||
|
@ -23,8 +24,11 @@ class EmailBlocklist(View):
|
||||||
}
|
}
|
||||||
return TemplateResponse(request, "settings/email_blocklist.html", data)
|
return TemplateResponse(request, "settings/email_blocklist.html", data)
|
||||||
|
|
||||||
def post(self, request):
|
def post(self, request, domain_id=None):
|
||||||
"""create a new domain block"""
|
"""create a new domain block"""
|
||||||
|
if domain_id:
|
||||||
|
return self.delete(request, domain_id)
|
||||||
|
|
||||||
form = forms.EmailBlocklistForm(request.POST)
|
form = forms.EmailBlocklistForm(request.POST)
|
||||||
data = {
|
data = {
|
||||||
"domains": models.EmailBlocklist.objects.order_by("-created_date").all(),
|
"domains": models.EmailBlocklist.objects.order_by("-created_date").all(),
|
||||||
|
@ -36,3 +40,10 @@ class EmailBlocklist(View):
|
||||||
|
|
||||||
data["form"] = forms.EmailBlocklistForm()
|
data["form"] = forms.EmailBlocklistForm()
|
||||||
return TemplateResponse(request, "settings/email_blocklist.html", data)
|
return TemplateResponse(request, "settings/email_blocklist.html", data)
|
||||||
|
|
||||||
|
# pylint: disable=unused-argument
|
||||||
|
def delete(self, request, domain_id):
|
||||||
|
"""remove a domain block"""
|
||||||
|
domain = get_object_or_404(models.EmailBlocklist, id=domain_id)
|
||||||
|
domain.delete()
|
||||||
|
return redirect("settings-email-blocks")
|
||||||
|
|
Loading…
Reference in New Issue