django-defender/defender/signals.py
2019-09-08 10:05:04 -04:00

30 lines
807 B
Python

from django.dispatch import Signal
username_block = Signal(providing_args=['username'])
username_unblock = Signal(providing_args=['username'])
ip_block = Signal(providing_args=['ip_address'])
ip_unblock = Signal(providing_args=['ip_address'])
class BlockSignal:
"""
Providing a sender is mandatory when sending signals, hence
this empty sender class.
"""
pass
def send_username_block_signal(username):
username_block.send(sender=BlockSignal, username=username)
def send_username_unblock_signal(username):
username_unblock.send(sender=BlockSignal, username=username)
def send_ip_block_signal(ip_address):
ip_block.send(sender=BlockSignal, ip_address=ip_address)
def send_ip_unblock_signal(ip_address):
ip_unblock.send(sender=BlockSignal, ip_address=ip_address)