2016-02-01 16:09:28 +00:00
|
|
|
from django.shortcuts import render
|
2015-01-29 01:19:16 +00:00
|
|
|
from django.http import HttpResponseRedirect
|
2015-01-29 13:22:29 +00:00
|
|
|
from django.contrib.admin.views.decorators import staff_member_required
|
2020-11-23 17:43:50 +00:00
|
|
|
from django.urls import reverse
|
2019-11-15 18:22:14 +00:00
|
|
|
|
2015-01-29 01:19:16 +00:00
|
|
|
|
2019-11-15 18:22:14 +00:00
|
|
|
from .utils import get_blocked_ips, get_blocked_usernames, unblock_ip, unblock_username
|
2015-01-29 01:19:16 +00:00
|
|
|
|
|
|
|
|
|
2015-01-29 13:22:29 +00:00
|
|
|
@staff_member_required
|
2015-01-29 01:19:16 +00:00
|
|
|
def block_view(request):
|
|
|
|
|
""" List the blocked IP and Usernames """
|
|
|
|
|
blocked_ip_list = get_blocked_ips()
|
|
|
|
|
blocked_username_list = get_blocked_usernames()
|
|
|
|
|
|
2019-11-15 18:22:14 +00:00
|
|
|
context = {
|
|
|
|
|
"blocked_ip_list": blocked_ip_list,
|
|
|
|
|
"blocked_username_list": blocked_username_list,
|
|
|
|
|
}
|
|
|
|
|
return render(request, "defender/admin/blocks.html", context)
|
2015-01-29 01:19:16 +00:00
|
|
|
|
|
|
|
|
|
2015-01-29 13:22:29 +00:00
|
|
|
@staff_member_required
|
2015-03-20 15:09:45 +00:00
|
|
|
def unblock_ip_view(request, ip_address):
|
2015-01-29 01:19:16 +00:00
|
|
|
""" upblock the given ip """
|
2019-11-15 18:22:14 +00:00
|
|
|
if request.method == "POST":
|
2015-03-20 15:09:45 +00:00
|
|
|
unblock_ip(ip_address)
|
2015-01-29 01:19:16 +00:00
|
|
|
return HttpResponseRedirect(reverse("defender_blocks_view"))
|
|
|
|
|
|
|
|
|
|
|
2015-01-29 13:22:29 +00:00
|
|
|
@staff_member_required
|
2015-01-29 01:19:16 +00:00
|
|
|
def unblock_username_view(request, username):
|
|
|
|
|
""" unblockt he given username """
|
2019-11-15 18:22:14 +00:00
|
|
|
if request.method == "POST":
|
2015-01-29 01:19:16 +00:00
|
|
|
unblock_username(username)
|
|
|
|
|
return HttpResponseRedirect(reverse("defender_blocks_view"))
|