diff options
| author | Alexis Metaireau <alexis@notmyidea.org> | 2011-08-21 22:20:50 +0200 |
|---|---|---|
| committer | Alexis Metaireau <alexis@notmyidea.org> | 2011-08-21 22:20:50 +0200 |
| commit | 63777c16bc90560a20184b5cd6c99e947842dfce (patch) | |
| tree | bd6c713025ed04df7bf22ee2e9b8433df6f8b5cf /budget/web.py | |
| parent | 16fcfd284e3a99bc57449f18501e6f75e91c9d94 (diff) | |
| download | ihatemoney-mirror-63777c16bc90560a20184b5cd6c99e947842dfce.zip ihatemoney-mirror-63777c16bc90560a20184b5cd6c99e947842dfce.tar.gz ihatemoney-mirror-63777c16bc90560a20184b5cd6c99e947842dfce.tar.bz2 | |
authentication dance
Diffstat (limited to 'budget/web.py')
| -rw-r--r-- | budget/web.py | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/budget/web.py b/budget/web.py index d91bbb7..fa3f485 100644 --- a/budget/web.py +++ b/budget/web.py @@ -47,13 +47,14 @@ def pull_project(endpoint, values): else: # redirect to authentication page raise RequestRedirect( - url_for("authenticate", redirect_url=request.url, - project_id=project_id)) + url_for("authenticate", project_id=project_id)) @app.route("/authenticate", methods=["GET", "POST"]) -def authenticate(redirect_url=None, project_id=None): +def authenticate(project_id=None): form = AuthenticationForm() - project_id = form.id.data or request.args['project_id'] + if not form.id.data and request.args['project_id']: + form.id.data = request.args['project_id'] + project_id = form.id.data project = Project.query.get(project_id) create_project = False # We don't want to create the project by default if not project: @@ -65,8 +66,7 @@ def authenticate(redirect_url=None, project_id=None): # if credentials are already in session, redirect if project_id in session and project.password == session[project_id]: setattr(g, 'project', project) - redirect_url = redirect_url or url_for("list_bills") - return redirect(redirect_url) + return redirect(url_for("list_bills")) # else process the form if request.method == "POST": @@ -82,8 +82,7 @@ def authenticate(redirect_url=None, project_id=None): session[project_id] = form.password.data session.update() setattr(g, 'project', project) - redirect_url = redirect_url or url_for("list_bills") - return redirect(redirect_url) + return redirect(url_for("list_bills")) return render_template("authenticate.html", form=form, create_project=create_project) |
