1234567891011121314151617181920212223242526272829303132333435363738 |
- from misago.messages import Message
- from misago.security.models import SignInAttempt
- from misago.views import error403
- def block_authenticated(f):
- def decorator(*args, **kwargs):
- request = args[0]
- if not request.firewall.admin and request.user.is_authenticated():
- return error403(request, Message(request, 'security/forbidden_authenticated'))
- return f(*args, **kwargs)
- return decorator
- def block_jammed(f):
- def decorator(*args, **kwargs):
- request = args[0]
- if not request.firewall.admin and request.jam.is_jammed():
- return error403(request, Message(request, 'security/forbidden_jammed'))
- return f(*args, **kwargs)
- return decorator
- def block_guest(f):
- def decorator(*args, **kwargs):
- request = args[0]
- if not request.user.is_authenticated():
- return error403(request, Message(request, 'security/forbidden_guest'))
- return f(*args, **kwargs)
- return decorator
- def check_csrf(f):
- def decorator(*args, **kwargs):
- request = args[0]
- if not request.csrf.request_secure(request):
- return error403(request, Message(request, 'security/forbidden_request'))
- return f(*args, **kwargs)
- return decorator
|