changeset 497:98bf58771a61

Make it use + in urls instead of %20
author sheep@ghostwheel
date Sat, 01 Nov 2008 20:02:38 +0100
parents 1744dd3f724d
children 2ec1944c8e75
files dandelion/request.py dandelion/wiki.py dandelion/wikipage.py
diffstat 3 files changed, 5 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/dandelion/request.py	Sat Oct 11 20:03:01 2008 +0200
+++ b/dandelion/request.py	Sat Nov 01 20:02:38 2008 +0100
@@ -4,7 +4,7 @@
 import os
 import tempfile
 
-from werkzeug import BaseRequest, ETagRequestMixin, url_quote, url_unquote
+from werkzeug import BaseRequest, ETagRequestMixin, url_quote, url_unquote, url_unquote_plus
 
 class WikiRequest(BaseRequest, ETagRequestMixin):
     def __init__(self, wiki, environ, populate_request=True, shallow=False):
@@ -16,7 +16,7 @@
             self.view = parts.pop(0)
         else:
             self.view = ""
-        title = u"/".join(parts)
+        title = url_unquote_plus(u"/".join(parts))
         if not title:
             self.page = self.wiki.start_page
         else:
--- a/dandelion/wiki.py	Sat Oct 11 20:03:01 2008 +0200
+++ b/dandelion/wiki.py	Sat Nov 01 20:02:38 2008 +0100
@@ -140,6 +140,7 @@
     def default_macro(self, wiki, name, text, **kw):
         return u"unknown macro %s" % name
 
+
     def page_url(self, title, action=None, rev=None, **kw):
         return self[title].get_url(action, rev, **kw)
 
--- a/dandelion/wikipage.py	Sat Oct 11 20:03:01 2008 +0200
+++ b/dandelion/wikipage.py	Sat Nov 01 20:02:38 2008 +0100
@@ -2,7 +2,7 @@
 # -*- coding: utf-8 -*-
 
 import storage
-from werkzeug import url_quote
+from werkzeug import url_quote, url_unquote, url_fix, url_quote_plus, url_unquote_plus
 import mimetypes
 
 class WikiPage(storage.MercurialPage):
@@ -21,7 +21,7 @@
         elif rev is not None:
             parts.append(url_quote("history", safe=""))
             kw['rev'] = rev
-        parts.append(url_quote(self.title, safe=""))
+        parts.append(url_quote_plus(self.title, safe=""))
         url = "/".join(parts)
         args = "&".join("%s=%s" % (url_quote(k), url_quote(v)) for k, v in kw.iteritems())
         if args: