summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--patchwork/context_processors.py32
-rw-r--r--patchwork/requestcontext.py6
-rw-r--r--patchwork/templatetags/filter.py36
-rw-r--r--patchwork/templatetags/listurl.py51
-rw-r--r--patchwork/templatetags/order.py66
-rw-r--r--patchwork/templatetags/patch.py42
-rw-r--r--patchwork/templatetags/pwurl.py76
-rw-r--r--templates/base.html1
8 files changed, 4 insertions, 306 deletions
diff --git a/patchwork/context_processors.py b/patchwork/context_processors.py
deleted file mode 100644
index f4ab5a9..0000000
--- a/patchwork/context_processors.py
+++ /dev/null
@@ -1,32 +0,0 @@
-# Patchwork - automated patch tracking system
-# Copyright (C) 2008 Jeremy Kerr <jk@ozlabs.org>
-#
-# This file is part of the Patchwork package.
-#
-# Patchwork is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# Patchwork is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with Patchwork; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-
-
-from patchwork.models import Bundle
-from patchwork.utils import order_map, get_order
-
-def bundle(request):
- user = request.user
- if not user.is_authenticated():
- return {}
- return {'bundles': Bundle.objects.filter(owner = user)}
-
-
-def patchlists(request):
-
diff --git a/patchwork/requestcontext.py b/patchwork/requestcontext.py
index 342d380..3652edc 100644
--- a/patchwork/requestcontext.py
+++ b/patchwork/requestcontext.py
@@ -30,12 +30,6 @@ def bundle(request):
return {}
return {'bundles': Bundle.objects.filter(owner = user)}
-def _params_as_qs(params):
- return '&'.join([ '%s=%s' % (escape(k), escape(v)) for k, v in params ])
-
-def _params_as_hidden_fields(params):
- return '\n'.join([ '<input type="hidden" name="%s" value="%s"/>' % \
- (escape(k), escape(v)) for k, v in params ])
class PatchworkRequestContext(RequestContext):
def __init__(self, request, project = None,
diff --git a/patchwork/templatetags/filter.py b/patchwork/templatetags/filter.py
deleted file mode 100644
index 7a5d9df..0000000
--- a/patchwork/templatetags/filter.py
+++ /dev/null
@@ -1,36 +0,0 @@
-# Patchwork - automated patch tracking system
-# Copyright (C) 2008 Jeremy Kerr <jk@ozlabs.org>
-#
-# This file is part of the Patchwork package.
-#
-# Patchwork is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# Patchwork is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with Patchwork; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-
-from django import template
-from django.utils.html import escape
-
-import re
-
-
-register = template.Library()
-
-@register.filter
-def personify(person):
- if person.name:
- linktext = escape(person.name)
- else:
- linktext = escape(person.email)
-
- return '<a href="javascript:personpopup(\'%s\')">%s</a>' % (escape(person.email), linktext)
-
diff --git a/patchwork/templatetags/listurl.py b/patchwork/templatetags/listurl.py
index 5fe03e4..6dbdd74 100644
--- a/patchwork/templatetags/listurl.py
+++ b/patchwork/templatetags/listurl.py
@@ -78,8 +78,8 @@ class ListURLNode(template.defaulttags.URLNode):
def listurl(parser, token):
bits = token.contents.split(' ', 1)
if len(bits) < 1:
- raise TemplateSyntaxError("'%s' takes at least one argument"
- " (path to a view)" % bits[0])
+ raise template.TemplateSyntaxError(
+ "'%s' takes at least one argument (path to a view)" % bits[0])
kwargs = {}
if len(bits) > 1:
for arg in bits[1].split(','):
@@ -88,49 +88,6 @@ def listurl(parser, token):
k = k.strip()
kwargs[k] = parser.compile_filter(v)
else:
- raise TemplateSyntaxError("'%s' requires name=value params" \
- % bits[0])
+ raise template.TemplateSyntaxError(
+ "'%s' requires name=value params" % bits[0])
return ListURLNode(kwargs)
-
-class ListFieldsNode(template.Node):
- def __init__(self, params):
- self.params = params
-
- def render(self, context):
- self.view_name = template.Variable('list_view.view').resolve(context)
- try:
- qs_var = template.Variable('list_view.params')
- params = dict(qs_var.resolve(context))
- except Exception:
- pass
-
- params.update(self.params)
-
- if not params:
- return ''
-
- str = ''
- for (k, v) in params.iteritems():
- str += '<input type="hidden" name="%s" value="%s"\>' % \
- (k, escape(v))
-
- return mark_safe(str)
-
-@register.tag
-def listfields(parser, token):
- bits = token.contents.split(' ', 1)
- if len(bits) < 1:
- raise TemplateSyntaxError("'%s' takes at least one argument"
- " (path to a view)" % bits[0])
- params = {}
- if len(bits) > 2:
- for arg in bits[2].split(','):
- if '=' in arg:
- k, v = arg.split('=', 1)
- k = k.strip()
- params[k] = parser.compile_filter(v)
- else:
- raise TemplateSyntaxError("'%s' requires name=value params" \
- % bits[0])
- return ListFieldsNode(bits[1], params)
-
diff --git a/patchwork/templatetags/order.py b/patchwork/templatetags/order.py
deleted file mode 100644
index e392f03..0000000
--- a/patchwork/templatetags/order.py
+++ /dev/null
@@ -1,66 +0,0 @@
-# Patchwork - automated patch tracking system
-# Copyright (C) 2008 Jeremy Kerr <jk@ozlabs.org>
-#
-# This file is part of the Patchwork package.
-#
-# Patchwork is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# Patchwork is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with Patchwork; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-
-
-from django import template
-import re
-
-register = template.Library()
-
-@register.tag(name = 'ifpatcheditable')
-def do_patch_is_editable(parser, token):
- try:
- tag_name, name, cur_order = token.split_contents()
- except ValueError:
- raise template.TemplateSyntaxError("%r tag requires two arguments" \
- % token.contents.split()[0])
-
- end_tag = 'endifpatcheditable'
- nodelist_true = parser.parse([end_tag, 'else'])
-
- token = parser.next_token()
- if token.contents == 'else':
- nodelist_false = parser.parse([end_tag])
- parser.delete_first_token()
- else:
- nodelist_false = template.NodeList()
-
- return EditablePatchNode(patch_var, nodelist_true, nodelist_false)
-
-class EditablePatchNode(template.Node):
- def __init__(self, patch_var, nodelist_true, nodelist_false):
- self.nodelist_true = nodelist_true
- self.nodelist_false = nodelist_false
- self.patch_var = template.Variable(patch_var)
- self.user_var = template.Variable('user')
-
- def render(self, context):
- try:
- patch = self.patch_var.resolve(context)
- user = self.user_var.resolve(context)
- except template.VariableDoesNotExist:
- return ''
-
- if not user.is_authenticated():
- return self.nodelist_false.render(context)
-
- if not patch.is_editable(user):
- return self.nodelist_false.render(context)
-
- return self.nodelist_true.render(context)
diff --git a/patchwork/templatetags/patch.py b/patchwork/templatetags/patch.py
index ea23ebd..57f289e 100644
--- a/patchwork/templatetags/patch.py
+++ b/patchwork/templatetags/patch.py
@@ -19,51 +19,9 @@
from django import template
from django.utils.safestring import mark_safe
-import re
register = template.Library()
-@register.tag(name = 'ifpatcheditable')
-def do_patch_is_editable(parser, token):
- try:
- tag_name, patch_var = token.split_contents()
- except ValueError:
- raise template.TemplateSyntaxError("%r tag requires one argument" \
- % token.contents.split()[0])
-
- end_tag = 'endifpatcheditable'
- nodelist_true = parser.parse([end_tag, 'else'])
-
- token = parser.next_token()
- if token.contents == 'else':
- nodelist_false = parser.parse([end_tag])
- parser.delete_first_token()
- else:
- nodelist_false = template.NodeList()
-
- return EditablePatchNode(patch_var, nodelist_true, nodelist_false)
-
-class EditablePatchNode(template.Node):
- def __init__(self, patch_var, nodelist_true, nodelist_false):
- self.nodelist_true = nodelist_true
- self.nodelist_false = nodelist_false
- self.patch_var = template.Variable(patch_var)
- self.user_var = template.Variable('user')
-
- def render(self, context):
- try:
- patch = self.patch_var.resolve(context)
- user = self.user_var.resolve(context)
- except template.VariableDoesNotExist:
- return ''
-
- if not user.is_authenticated():
- return self.nodelist_false.render(context)
-
- if not patch.is_editable(user):
- return self.nodelist_false.render(context)
-
- return self.nodelist_true.render(context)
@register.filter(name='patch_tags')
def patch_tags(patch):
diff --git a/patchwork/templatetags/pwurl.py b/patchwork/templatetags/pwurl.py
deleted file mode 100644
index 98bc1ca..0000000
--- a/patchwork/templatetags/pwurl.py
+++ /dev/null
@@ -1,76 +0,0 @@
-# Patchwork - automated patch tracking system
-# Copyright (C) 2008 Jeremy Kerr <jk@ozlabs.org>
-#
-# This file is part of the Patchwork package.
-#
-# Patchwork is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# Patchwork is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with Patchwork; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-
-from django import template
-from django.utils.html import escape
-from django.utils.safestring import mark_safe
-from patchwork.filters import filterclasses
-import re
-
-register = template.Library()
-
-# params to preserve across views
-list_params = [ c.param for c in filterclasses ] + ['order', 'page']
-
-class ListURLNode(template.defaulttags.URLNode):
- def __init__(self, *args, **kwargs):
- super(ListURLNode, self).__init__(*args, **kwargs)
- self.params = {}
- for (k, v) in kwargs:
- if k in list_params:
- self.params[k] = v
-
- def render(self, context):
- self.view_name = template.Variable('list_view.view')
- str = super(ListURLNode, self).render(context)
- if str == '':
- return str
- params = []
- try:
- qs_var = template.Variable('list_view.params')
- params = dict(qs_var.resolve(context))
- except Exception:
- pass
-
- params.update(self.params)
-
- if not params:
- return str
-
- return str + '?' + '&'.join(['%s=%s' % (k, escape(v)) \
- for (k, v) in params.iteritems()])
-
-@register.tag
-def listurl(parser, token):
- bits = token.contents.split(' ', 1)
- if len(bits) < 1:
- raise TemplateSyntaxError("'%s' takes at least one argument"
- " (path to a view)" % bits[0])
- args = ['']
- kwargs = {}
- if len(bits) > 1:
- for arg in bits[2].split(','):
- if '=' in arg:
- k, v = arg.split('=', 1)
- k = k.strip()
- kwargs[k] = parser.compile_filter(v)
- else:
- args.append(parser.compile_filter(arg))
- return PatchworkURLNode(bits[1], args, kwargs)
-
diff --git a/templates/base.html b/templates/base.html
index 3d289fb..c2053d4 100644
--- a/templates/base.html
+++ b/templates/base.html
@@ -1,5 +1,4 @@
{% load staticfiles %}
-{% load pwurl %}
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">