Skip to content

Commit cda697f

Browse files
committed
TLM Final Merge
1 parent 118ff42 commit cda697f

16 files changed

Lines changed: 547 additions & 233 deletions

File tree

corpus/corpus/decorators.py

Lines changed: 44 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,13 @@
1+
from datetime import datetime
2+
from functools import wraps
3+
from zoneinfo import ZoneInfo
4+
15
from accounts.models import ExecutiveMember
26
from config.models import ModuleConfiguration
37
from django.contrib import messages
48
from django.shortcuts import redirect
9+
from django.shortcuts import render
10+
from django.utils import timezone
511

612

713
def module_enabled(module_name):
@@ -77,11 +83,14 @@ def wrapper(request, *args, **kwargs):
7783

7884
return decorator
7985

86+
8087
def ensure_view_current_envision():
8188
def decorator(view_func):
8289
@wraps(view_func)
8390
def wrapper(request, *args, **kwargs):
84-
config = ModuleConfiguration.objects.get(module_name="virtual_expo").module_config
91+
config = ModuleConfiguration.objects.get(
92+
module_name="virtual_expo"
93+
).module_config
8594

8695
try:
8796
ExecutiveMember.objects.get(user=request.user.id)
@@ -90,8 +99,40 @@ def wrapper(request, *args, **kwargs):
9099
exec_member = False
91100

92101
can_view_current_envision = exec_member or config.get(
93-
"view_current_envision")
94-
kwargs['can_view_current_envision '] = can_view_current_envision
102+
"view_current_envision"
103+
)
104+
kwargs["can_view_current_envision"] = can_view_current_envision
95105
return view_func(request, *args, **kwargs)
106+
96107
return wrapper
108+
109+
return decorator
110+
111+
112+
def event_time_gate(
113+
start_time,
114+
end_time=None,
115+
pre_template="tlm/403.html",
116+
post_template="tlm/event_ended.html",
117+
context=None,
118+
):
119+
def decorator(view_func):
120+
@wraps(view_func)
121+
def wrapper(request, *args, **kwargs):
122+
now = timezone.now()
123+
ctx = context or {}
124+
125+
# Before launch
126+
if now < start_time:
127+
return render(request, pre_template, ctx, status=403)
128+
129+
# After event end
130+
if end_time and now > end_time:
131+
return render(request, post_template, ctx, status=403)
132+
133+
# During event
134+
return view_func(request, *args, **kwargs)
135+
136+
return wrapper
137+
97138
return decorator

corpus/corpus/settings.py

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,6 @@
7676

7777
MIDDLEWARE = [
7878
"django.middleware.security.SecurityMiddleware",
79-
"tlm.middleware.TLMLaunchGateMiddleware",
8079
"django.contrib.sessions.middleware.SessionMiddleware",
8180
"django.middleware.common.CommonMiddleware",
8281
"django.middleware.csrf.CsrfViewMiddleware",
@@ -202,14 +201,14 @@
202201

203202
# Celery Settings
204203

205-
CELERY_BROKER_URL = 'redis://redis:6379/0'
204+
CELERY_BROKER_URL = "redis://redis:6379/0"
206205
# CELERY_RESULT_BACKEND = 'redis://redis:6379/0'
207206

208207
# CELERY_BROKER_URL="redis://default:AZZ-AAIjcDExZTljY2M1NTI5MmU0OGMxOGUzMDYwNmRlZjhkZGRjZXAxMA@divine-puma-38526.upstash.io:6379"
209208
# CELERY_RESULT_BACKEND = "redis://default:AZZ-AAIjcDExZTljY2M1NTI5MmU0OGMxOGUzMDYwNmRlZjhkZGRjZXAxMA@divine-puma-38526.upstash.io:6379"
210-
CELERY_TIMEZONE='UTC'
211-
CELERY_ACCEPT_CONTENT=['json']
212-
CELERY_TASK_SERIALIZER = 'json'
209+
CELERY_TIMEZONE = "UTC"
210+
CELERY_ACCEPT_CONTENT = ["json"]
211+
CELERY_TASK_SERIALIZER = "json"
213212

214213

215214
USE_TAILWIND_CDN_LINK = os.getenv("LIVECYCLE") is not None
-1.18 MB
Binary file not shown.
-2.94 MB
Binary file not shown.
-709 KB
Binary file not shown.
-2.32 MB
Binary file not shown.
216 KB
Loading
190 KB
Loading
2.25 MB
Loading
181 KB
Loading

0 commit comments

Comments
 (0)