X-Git-Url: http://git.ozlabs.org/?a=blobdiff_plain;f=apps%2Fpatchwork%2Ffilters.py;h=8c9690eeaf22de4fbe152354ce1bdccea946cc8e;hb=a48f76a2d3a98c21d4b37f19cf84073e77db55c8;hp=52fc03fe19d655f78324cea43ef3533a7d232b6e;hpb=5d56a58406cbc06012d1f1c994be4b5118ecda9c;p=patchwork diff --git a/apps/patchwork/filters.py b/apps/patchwork/filters.py index 52fc03f..8c9690e 100644 --- a/apps/patchwork/filters.py +++ b/apps/patchwork/filters.py @@ -350,11 +350,11 @@ class DelegateFilter(Filter): def condition(self): if self.delegate: - return self.delegate.get_profile().name() + return self.delegate.profile.name() return self.no_delegate_str def _form(self): - delegates = User.objects.filter(userprofile__maintainer_projects = + delegates = User.objects.filter(profile__maintainer_projects = self.filters.project) str = '' return mark_safe(str) @@ -445,8 +445,15 @@ class Filters: if remove.param in params.keys(): del params[remove.param] - return '?' + '&'.join(['%s=%s' % (quote(k), quote(v)) - for (k,v) in params.iteritems()]) + pairs = params.iteritems() + + def sanitise(s): + if not isinstance(s, basestring): + s = unicode(s) + return quote(s.encode('utf-8')) + + return '?' + '&'.join(['%s=%s' % (sanitise(k), sanitise(v)) + for (k, v) in pairs]) def querystring_without_filter(self, filter): return self.querystring(filter)