mirror of
https://expo.survex.com/repositories/troggle/.git
synced 2024-11-25 08:41:51 +00:00
18 lines
539 B
Python
18 lines
539 B
Python
from django.contrib.auth.decorators import login_required
|
|
from django.conf import settings
|
|
"""This enforces the login requirement for non-public pages using
|
|
the decorator mechanism.
|
|
https://www.fullstackpython.com/django-contrib-auth-decorators-login-required-examples.html
|
|
"""
|
|
|
|
class login_required_if_public(object):
|
|
|
|
def __init__(self, f):
|
|
if settings.PUBLIC_SITE:
|
|
self.f = login_required(f)
|
|
else:
|
|
self.f = f
|
|
|
|
def __call__(self, *args, **kwargs):
|
|
return self.f(*args, **kwargs)
|