##// END OF EJS Templates
Limit only first posting by this session. Assume messages created by spam bots...
Limit only first posting by this session. Assume messages created by spam bots can be removed afterwards

File last commit:

r1090:a66d091f default
r1494:89a50a1d default
Show More
middlewares.py
44 lines | 1008 B | text/x-python | PythonLexer
import pytz
from django.shortcuts import redirect
from django.utils import timezone
from boards import utils
from boards.models import Ban
SESSION_TIMEZONE = 'django_timezone'
RESPONSE_CONTENT_TYPE = 'Content-Type'
TYPE_HTML = 'text/html'
class BanMiddleware:
"""
This is run before showing the thread. Banned users don't need to see
anything
"""
def __init__(self):
pass
def process_view(self, request, view_func, view_args, view_kwargs):
if request.path != '/banned/':
ip = utils.get_client_ip(request)
bans = Ban.objects.filter(ip=ip)
if bans.exists():
ban = bans[0]
if not ban.can_read:
return redirect('banned')
class TimezoneMiddleware(object):
def process_request(self, request):
tzname = request.session.get(SESSION_TIMEZONE)
if tzname:
timezone.activate(pytz.timezone(tzname))
else:
timezone.deactivate()