diff options
author | 2018-05-20 00:18:22 +0100 | |
---|---|---|
committer | 2018-05-20 00:18:22 +0100 | |
commit | 0d012bf1c2e0a702e368ce7a1dfe09e68bef3740 (patch) | |
tree | d465d4664d651dd0d9bb81fad8ac0e0545082083 /pysite | |
parent | [Jams] Fix infraction table display when user is not on server (diff) |
[Jams] Redirect user back to form from profile page
Diffstat (limited to 'pysite')
-rw-r--r-- | pysite/views/main/jams/join.py | 2 | ||||
-rw-r--r-- | pysite/views/main/jams/profile.py | 20 |
2 files changed, 20 insertions, 2 deletions
diff --git a/pysite/views/main/jams/join.py b/pysite/views/main/jams/join.py index 3c45ed6e..24931f72 100644 --- a/pysite/views/main/jams/join.py +++ b/pysite/views/main/jams/join.py @@ -51,7 +51,7 @@ class JamsJoinView(RouteView, DBMixin, OauthMixin): participant = self.db.get(self.participants_table, self.user_data["user_id"]) if not participant: - return redirect(url_for("main.jams.profile")) + return redirect(url_for("main.jams.profile", form=jam)) if self.get_response(jam, self.user_data["user_id"]): return self.render("main/jams/already.html", jam=jam_obj) diff --git a/pysite/views/main/jams/profile.py b/pysite/views/main/jams/profile.py index 407f842e..ce8dfdf1 100644 --- a/pysite/views/main/jams/profile.py +++ b/pysite/views/main/jams/profile.py @@ -23,8 +23,16 @@ class JamsProfileView(RouteView, DBMixin, OauthMixin): if not participant: participant = {"id": self.user_data["user_id"]} + form = request.args.get("form") + + if form: + try: + form = int(form) + except ValueError: + pass # Someone trying to have some fun I guess + return self.render( - "main/jams/profile.html", participant=participant + "main/jams/profile.html", participant=participant, form=form ) @csrf @@ -54,6 +62,16 @@ class JamsProfileView(RouteView, DBMixin, OauthMixin): self.db.insert(self.table_name, participant, conflict="replace") + form = request.args.get("form") + + if form: + try: + form = int(form) + except ValueError: + pass # Someone trying to have some fun I guess + else: + return redirect(url_for("main.jams.join", jam=form)) + return self.render( "main/jams/profile.html", participant=participant, done=True ) |