summaryrefslogtreecommitdiffstats
path: root/packages/templatetags
diff options
context:
space:
mode:
Diffstat (limited to 'packages/templatetags')
-rw-r--r--packages/templatetags/package_extras.py6
1 files changed, 4 insertions, 2 deletions
diff --git a/packages/templatetags/package_extras.py b/packages/templatetags/package_extras.py
index 5644583..b6868ec 100644
--- a/packages/templatetags/package_extras.py
+++ b/packages/templatetags/package_extras.py
@@ -1,3 +1,4 @@
+import cgi, urllib
from django import template
register = template.Library()
@@ -6,7 +7,8 @@ class BuildQueryStringNode(template.Node):
def __init__(self, sortfield):
self.sortfield = sortfield
def render(self, context):
- qs = context['querystring'].copy()
+ #qs = context['querystring'].copy()
+ qs = dict(cgi.parse_qsl(context['current_query'][1:]))
if qs.has_key('sort') and qs['sort'] == self.sortfield:
if self.sortfield.startswith('-'):
qs['sort'] = self.sortfield[1:]
@@ -14,7 +16,7 @@ class BuildQueryStringNode(template.Node):
qs['sort'] = '-' + self.sortfield
else:
qs['sort'] = self.sortfield
- return '?' + qs.urlencode()
+ return '?' + urllib.urlencode(qs)
@register.tag(name='buildsortqs')
def do_buildsortqs(parser, token):