diff options
| author | Chris McDonough <chrism@plope.com> | 2011-11-28 15:53:55 -0500 |
|---|---|---|
| committer | Chris McDonough <chrism@plope.com> | 2011-11-28 15:53:55 -0500 |
| commit | ed252bfa447e29a2cf56f51d759be342baf16f3a (patch) | |
| tree | 3096622146a2a390e3ea7cc26b50ba41c1be8ee6 /docs/tutorials/wiki/src/authorization | |
| parent | 69d09d906230c9f22699075c1ea07970b21e8ab4 (diff) | |
| download | pyramid-ed252bfa447e29a2cf56f51d759be342baf16f3a.tar.gz pyramid-ed252bfa447e29a2cf56f51d759be342baf16f3a.tar.bz2 pyramid-ed252bfa447e29a2cf56f51d759be342baf16f3a.zip | |
move code from login.py to views.py (like sqla tutorial)
Diffstat (limited to 'docs/tutorials/wiki/src/authorization')
| -rw-r--r-- | docs/tutorials/wiki/src/authorization/tutorial/login.py | 43 | ||||
| -rw-r--r-- | docs/tutorials/wiki/src/authorization/tutorial/views.py | 45 |
2 files changed, 44 insertions, 44 deletions
diff --git a/docs/tutorials/wiki/src/authorization/tutorial/login.py b/docs/tutorials/wiki/src/authorization/tutorial/login.py deleted file mode 100644 index 11dea050f..000000000 --- a/docs/tutorials/wiki/src/authorization/tutorial/login.py +++ /dev/null @@ -1,43 +0,0 @@ -from pyramid.httpexceptions import HTTPFound - -from pyramid.security import remember -from pyramid.security import forget -from pyramid.view import view_config - -from .security import USERS - -@view_config(context='.models.Wiki', name='login', - renderer='templates/login.pt') -@view_config(context='pyramid.httpexceptions.HTTPForbidden', - renderer='templates/login.pt') -def login(request): - login_url = request.resource_url(request.context, 'login') - referrer = request.url - if referrer == login_url: - referrer = '/' # never use the login form itself as came_from - came_from = request.params.get('came_from', referrer) - message = '' - login = '' - password = '' - if 'form.submitted' in request.params: - login = request.params['login'] - password = request.params['password'] - if USERS.get(login) == password: - headers = remember(request, login) - return HTTPFound(location = came_from, - headers = headers) - message = 'Failed login' - - return dict( - message = message, - url = request.application_url + '/login', - came_from = came_from, - login = login, - password = password, - ) - -@view_config(context='.models.Wiki', name='logout') -def logout(request): - headers = forget(request) - return HTTPFound(location = request.resource_url(request.context), - headers = headers) diff --git a/docs/tutorials/wiki/src/authorization/tutorial/views.py b/docs/tutorials/wiki/src/authorization/tutorial/views.py index 7ac5eeab6..2f0502c17 100644 --- a/docs/tutorials/wiki/src/authorization/tutorial/views.py +++ b/docs/tutorials/wiki/src/authorization/tutorial/views.py @@ -2,9 +2,16 @@ from docutils.core import publish_parts import re from pyramid.httpexceptions import HTTPFound + from pyramid.view import view_config -from pyramid.security import authenticated_userid +from pyramid.security import ( + authenticated_userid, + remember, + forget, + ) + +from .security import USERS from .models import Page # regular expression used to find WikiWords @@ -72,3 +79,39 @@ def edit_page(context, request): return dict(page = context, save_url = request.resource_url(context, 'edit_page'), logged_in = logged_in) + +@view_config(context='.models.Wiki', name='login', + renderer='templates/login.pt') +@view_config(context='pyramid.httpexceptions.HTTPForbidden', + renderer='templates/login.pt') +def login(request): + login_url = request.resource_url(request.context, 'login') + referrer = request.url + if referrer == login_url: + referrer = '/' # never use the login form itself as came_from + came_from = request.params.get('came_from', referrer) + message = '' + login = '' + password = '' + if 'form.submitted' in request.params: + login = request.params['login'] + password = request.params['password'] + if USERS.get(login) == password: + headers = remember(request, login) + return HTTPFound(location = came_from, + headers = headers) + message = 'Failed login' + + return dict( + message = message, + url = request.application_url + '/login', + came_from = came_from, + login = login, + password = password, + ) + +@view_config(context='.models.Wiki', name='logout') +def logout(request): + headers = forget(request) + return HTTPFound(location = request.resource_url(request.context), + headers = headers) |
