aboutsummaryrefslogtreecommitdiffstats
path: root/pysite/views/main/jams/join.py
diff options
context:
space:
mode:
Diffstat (limited to 'pysite/views/main/jams/join.py')
-rw-r--r--pysite/views/main/jams/join.py14
1 files changed, 12 insertions, 2 deletions
diff --git a/pysite/views/main/jams/join.py b/pysite/views/main/jams/join.py
index eeae1f76..83013a01 100644
--- a/pysite/views/main/jams/join.py
+++ b/pysite/views/main/jams/join.py
@@ -1,7 +1,7 @@
from email.utils import parseaddr
-from flask import request, redirect, url_for
-from werkzeug.exceptions import NotFound, BadRequest
+from flask import redirect, request, url_for
+from werkzeug.exceptions import BadRequest, NotFound
from pysite.base_route import RouteView
from pysite.decorators import csrf
@@ -48,6 +48,11 @@ class JamsJoinView(RouteView, DBMixin, OauthMixin):
# They already tried to apply for this jam
return self.render("main/jams/banned.html", infraction=infraction, jam=jam_obj)
+ participant = self.db.get(self.participants_table, self.user_data["user_id"])
+
+ if not participant:
+ return redirect(url_for("info.jams.profile"))
+
if self.get_response(jam, self.user_data["user_id"]):
return self.render("main/jams/already.html", jam=jam_obj)
@@ -93,6 +98,11 @@ class JamsJoinView(RouteView, DBMixin, OauthMixin):
# They already tried to apply for this jam
return self.render("main/jams/banned.html", infraction=infraction, jam=jam_obj)
+ participant = self.db.get(self.participants_table, self.user_data["user_id"])
+
+ if not participant:
+ return redirect(url_for("info.jams.profile"))
+
if self.get_response(jam, self.user_data["user_id"]):
return self.render("main/jams/already.html", jam=jam_obj)