From 9f3dfb966460d599745e4e4bc5e902f373ecb83a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9ment=20Schreiner?= Date: Tue, 1 Feb 2011 16:50:16 +0100 Subject: [PATCH] Makes sure the browser is on the right page before retrieving the preview. --- weboob/backends/redmine/browser.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/weboob/backends/redmine/browser.py b/weboob/backends/redmine/browser.py index c5b03d28..c11904c1 100644 --- a/weboob/backends/redmine/browser.py +++ b/weboob/backends/redmine/browser.py @@ -34,7 +34,7 @@ class RedmineBrowser(BaseBrowser): PAGES = {'%s/': IndexPage, '%s/login': LoginPage, '%s/my/page': MyPage, - '%s/projects/\w+/wiki/\w+/edit': WikiEditPage, + '%s/projects/(\w+)/wiki/(\w+)/edit': WikiEditPage, '%s/projects/\w+/wiki/\w*': WikiPage, } @@ -77,6 +77,14 @@ class RedmineBrowser(BaseBrowser): self.page.set_source(data, message) def get_wiki_preview(self, project, page, data): + if self.is_on_page(WikiEditPage): + current_project, current_page = self.page.groups + if current_project != project or current_page != page: + self.location('%s/projects/%s/wiki/%s/edit' % (self.BASEPATH, + project, page)) + else: + self.location('%s/projects/%s/wiki/%s/edit' % (self.BASEPATH, + project, page)) url = '%s/projects/%s/wiki/%s/preview' % (self.BASEPATH, project, page) params = {} params['content[text]'] = data.encode('utf-8')