[ckan-changes] [okfn/ckan] 1117ca: [#1184] Fix failing test due to not providing the ...
GitHub
noreply at github.com
Fri Aug 16 16:55:15 UTC 2013
Branch: refs/heads/1184-package_create-auth-fixes
Home: https://github.com/okfn/ckan
Commit: 1117ca25e0a675cfc9024165e412899f0615fee0
https://github.com/okfn/ckan/commit/1117ca25e0a675cfc9024165e412899f0615fee0
Author: amercader <amercadero at gmail.com>
Date: 2013-08-16 (Fri, 16 Aug 2013)
Changed paths:
M ckan/tests/functional/test_package.py
Log Message:
-----------
[#1184] Fix failing test due to not providing the user
Commit: 11eff7eb3cfe8bc6627a84cdf45170e574a9cdb2
https://github.com/okfn/ckan/commit/11eff7eb3cfe8bc6627a84cdf45170e574a9cdb2
Author: amercader <amercadero at gmail.com>
Date: 2013-08-16 (Fri, 16 Aug 2013)
Changed paths:
M ckan/logic/auth/create.py
M ckan/logic/auth/update.py
M ckan/new_authz.py
Log Message:
-----------
[#1184] Revert 243cd1c with a better anon user check
Due to how the controllers set up the user in the context it was
impossible with the current logic to identify an anonymous request on
the auth functions.
On ckan/lib/base.py:232 the following are set on the pylons context object
(c):
* Anon request (not logged in):
c.user = None
c.author = IP (or 'Unknown IP Address')
* Logged in user:
c.user = User name
c.author = User name
Once in the controllers, these are normally used in:
context = {'user': c.user or c.auhtor}
That means that once in the auth functions we need way to check if
a call is anonymous that works both for requests made via the web
(object c) or called directly from an extension, where the user is
defined directly on the context. The new `auth_is_anon_user` function
does that.
Ideally this should be handled automatically at a higher level, and the
logic layer should always work with users defined on the context object.
Compare: https://github.com/okfn/ckan/compare/243cd1c68435...11eff7eb3cfe
More information about the ckan-changes
mailing list