aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexis Metaireau <alexis@notmyidea.org>2013-10-17 04:41:00 -0700
committerAlexis Metaireau <alexis@notmyidea.org>2013-10-17 04:41:00 -0700
commit229fe41a0ceb207e8d6d4b24adfa0aa2c32b436d (patch)
treec4946b541f4f15b9e537737da78f37db7c9bbee9
parent85a92e048583a9ca8cf6d5460124edb25e01ca95 (diff)
parent74e6f9f11db2fa460f2b6f3a8c7863bd46f90fd0 (diff)
downloadihatemoney-mirror-229fe41a0ceb207e8d6d4b24adfa0aa2c32b436d.zip
ihatemoney-mirror-229fe41a0ceb207e8d6d4b24adfa0aa2c32b436d.tar.gz
ihatemoney-mirror-229fe41a0ceb207e8d6d4b24adfa0aa2c32b436d.tar.bz2
Merge pull request #106 from aavenel/bugfix105
Bugfix #105 : TypeError: object of type 'NoneType' has no len()
-rw-r--r--budget/tests.py5
-rw-r--r--budget/web.py9
2 files changed, 13 insertions, 1 deletions
diff --git a/budget/tests.py b/budget/tests.py
index 9eea518..0f7c2a2 100644
--- a/budget/tests.py
+++ b/budget/tests.py
@@ -289,6 +289,11 @@ class BudgetTestCase(TestCase):
self.assertTrue(models.Project.query.get("demo") is not None)
def test_authentication(self):
+ # try to authenticate without credentials should redirect
+ # to the authentication page
+ resp = self.app.post("/authenticate")
+ self.assertIn("Authentication", resp.data)
+
# raclette that the login / logout process works
self.create_project("raclette")
diff --git a/budget/web.py b/budget/web.py
index 0b302cd..77de026 100644
--- a/budget/web.py
+++ b/budget/web.py
@@ -72,7 +72,14 @@ def authenticate(project_id=None):
if not form.id.data and request.args.get('project_id'):
form.id.data = request.args['project_id']
project_id = form.id.data
- project = Project.query.get(project_id)
+ if project_id is None:
+ #User doesn't provide project identifier, return to authenticate form
+ msg = _("You need to enter a project identifier")
+ form.errors["id"] = [msg]
+ return render_template("authenticate.html", form=form)
+ else:
+ project = Project.query.get(project_id)
+
create_project = False # We don't want to create the project by default
if not project:
# But if the user try to connect to an unexisting project, we will