Mercurial > wikked
changeset 108:5c24e8f8b095
Added support for the `force_resolve` flag.
author | Ludovic Chabant <ludovic@chabant.com> |
---|---|
date | Tue, 12 Nov 2013 13:52:01 -0800 |
parents | 2654e243de8c |
children | f0172c5d8e2c |
files | manage.py wikked/views.py |
diffstat | 2 files changed, 12 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/manage.py Tue Nov 12 13:51:10 2013 -0800 +++ b/manage.py Tue Nov 12 13:52:01 2013 -0800 @@ -64,10 +64,12 @@ @manager.command -def get(url): +def get(url, resolve=False): """ Gets a page that matches the given URL. """ page = wiki.getPage(url) + if resolve: + page._force_resolve = True print page.text
--- a/wikked/views.py Tue Nov 12 13:51:10 2013 -0800 +++ b/wikked/views.py Tue Nov 12 13:52:01 2013 -0800 @@ -58,17 +58,19 @@ return data -def get_page_or_none(url): +def get_page_or_none(url, force_resolve=False): try: page = g.wiki.getPage(url) + if force_resolve: + page._force_resolve = True page._ensureData() return page except PageNotFoundError: return None -def get_page_or_404(url, check_perms=DONT_CHECK): - page = get_page_or_none(url) +def get_page_or_404(url, check_perms=DONT_CHECK, force_resolve=False): + page = get_page_or_none(url, force_resolve) if page is not None: if check_perms == CHECK_FOR_READ and not is_page_readable(page): abort(401) @@ -181,7 +183,10 @@ @app.route('/api/read/<path:url>') def api_read_page(url): - page = get_page_or_404(url, CHECK_FOR_READ) + page = get_page_or_404( + url, + check_perms=CHECK_FOR_READ, + force_resolve=('force_resolve' in request.args)) result = {'meta': get_page_meta(page), 'text': page.text} return make_auth_response(result)