Mercurial > wikked
changeset 277:4d84736d125a
Fix page preview.
author | Ludovic Chabant <ludovic@chabant.com> |
---|---|
date | Fri, 26 Sep 2014 07:53:23 -0700 |
parents | 24d5464274bb |
children | 83827f24563e |
files | wikked/views/edit.py |
diffstat | 1 files changed, 13 insertions(+), 10 deletions(-) [+] |
line wrap: on
line diff
--- a/wikked/views/edit.py Thu Sep 25 16:37:32 2014 -0700 +++ b/wikked/views/edit.py Fri Sep 26 07:53:23 2014 -0700 @@ -3,6 +3,7 @@ from flask.ext.login import current_user from wikked.page import Page, PageData from wikked.formatter import PageFormatter, FormattingContext +from wikked.resolver import PageResolver from wikked.views import (make_page_title, get_page_or_none, is_page_writable, get_page_meta, url_from_viewarg, split_url_from_viewarg) @@ -13,25 +14,24 @@ """ A dummy page for previewing in-progress editing. """ def __init__(self, wiki, url, text): - Page.__init__(self, wiki, url) - self._text = text + data = self._loadData(wiki, url, text) + super(DummyPage, self).__init__(wiki, data) - def _loadData(self): - extension = self.wiki.fs.default_extension + def _loadData(self, wiki, url, text): data = PageData() + extension = wiki.fs.default_extension + data.url = url data.path = '__preview__.' + extension - data.filename = '__preview__' - data.extension = extension - data.raw_text = self._text + data.raw_text = text - ctx = FormattingContext(self.url) - f = PageFormatter(self.wiki) + ctx = FormattingContext(url) + f = PageFormatter() data.formatted_text = f.formatText(ctx, data.raw_text) data.local_meta = ctx.meta data.local_links = ctx.out_links data.title = (data.local_meta.get('title') or - make_page_title(self.url)) + make_page_title(url)) if isinstance(data.title, list): data.title = data.title[0] @@ -132,6 +132,9 @@ text = request.form.get('text') dummy = DummyPage(g.wiki, url, text) + resolver = PageResolver(dummy) + dummy._setExtendedData(resolver.run()) + result = {'text': dummy.text} return jsonify(result)