fix handle of urls (closes #675)

This commit is contained in:
Romain Bignon 2011-06-21 13:05:19 +02:00
commit 99eff17554

View file

@ -34,11 +34,13 @@ __all__ = ['RedmineBrowser']
# Browser # Browser
class RedmineBrowser(BaseBrowser): class RedmineBrowser(BaseBrowser):
ENCODING = 'utf-8' ENCODING = 'utf-8'
PAGES = {'%s/': IndexPage, PAGES = {'https?://[^/]+/': IndexPage,
'%s/login': LoginPage, 'https?://[^/]+/login': LoginPage,
'%s/my/page': MyPage, # compatibility with redmine 0.9
'%s/projects/([\w-]+)/wiki/([^\/]+)/edit': WikiEditPage, 'https?://[^/]+/login\?back_url.*': MyPage,
'%s/projects/[\w-]+/wiki/[^\/]*': WikiPage, 'https?://[^/]+/my/page': MyPage,
'https?://[^/]+/projects/([\w-]+)/wiki/([^\/]+)/edit': WikiEditPage,
'https?://[^/]+/projects/[\w-]+/wiki/[^\/]*': WikiPage,
} }
def __init__(self, url, *args, **kwargs): def __init__(self, url, *args, **kwargs):
@ -49,12 +51,6 @@ class RedmineBrowser(BaseBrowser):
self.BASEPATH = v.path self.BASEPATH = v.path
if self.BASEPATH.endswith('/'): if self.BASEPATH.endswith('/'):
self.BASEPATH = self.BASEPATH[:-1] self.BASEPATH = self.BASEPATH[:-1]
prefix = '%s://%s%s' % (self.PROTOCOL, self.DOMAIN, self.BASEPATH)
self.PAGES = {}
for key, value in RedmineBrowser.PAGES.iteritems():
self.PAGES[key % prefix] = value
BaseBrowser.__init__(self, *args, **kwargs) BaseBrowser.__init__(self, *args, **kwargs)
def is_logged(self): def is_logged(self):