From: Harris Lapiroff Date: Thu, 9 Jun 2011 17:19:06 +0000 (-0400) Subject: Merge branch 'gilbert' of https://github.com/melinath/philo into gilbert X-Git-Url: http://git.ithinksw.org/philo.git/commitdiff_plain/9b93dd34886adff50f1415db3a97b09fa1e728fb?ds=inline;hp=-c Merge branch 'gilbert' of https://github.com/melinath/philo into gilbert --- 9b93dd34886adff50f1415db3a97b09fa1e728fb diff --combined philo/contrib/shipherd/templatetags/shipherd.py index b05ff0f,e3019e1..4723246 --- a/philo/contrib/shipherd/templatetags/shipherd.py +++ b/philo/contrib/shipherd/templatetags/shipherd.py @@@ -60,10 -60,6 +60,6 @@@ class LazyNavigationRecurser(object) context['item'] = item context['children'] = self.__class__(self.template_nodes, item.get_children(), context, request) - # Django 1.2.X compatibility - a lazy recurser will not be called if accessed as a template variable. - if django_version < (1,3): - context['children'] = context['children']() - # Then render the nodelist bit by bit. for node in self.template_nodes: bits.append(node.render(context)) @@@ -72,10 -68,10 +68,10 @@@ class RecurseNavigationNode(template.Node): - def __init__(self, template_nodes, instance_var, key): + def __init__(self, template_nodes, instance_var, key_var): self.template_nodes = template_nodes self.instance_var = instance_var - self.key = key + self.key_var = key_var def render(self, context): try: @@@ -84,18 -80,9 +80,18 @@@ return '' instance = self.instance_var.resolve(context) + key = self.key_var.resolve(context) + + # Fall back on old behavior if the key doesn't seem to be a variable. + if not key: + token = self.key_var.token + if token[0] not in ["'", '"'] and '.' not in token: + key = token + else: + return settings.TEMPLATE_STRING_IF_INVALID try: - items = instance.navigation[self.key] + items = instance.navigation[key] except: return settings.TEMPLATE_STRING_IF_INVALID @@@ -148,11 -135,17 +144,11 @@@ def recursenavigation(parser, token) raise template.TemplateSyntaxError(_('%s tag requires two arguments: a node and a navigation section name') % bits[0]) instance_var = parser.compile_filter(bits[1]) - key = bits[2] - - template_nodes = parser.parse(('recurse', 'endrecursenavigation',)) - - token = parser.next_token() - if token.contents == 'recurse': - template_nodes.append(RecurseNavigationMarker()) - template_nodes.extend(parser.parse(('endrecursenavigation'))) - parser.delete_first_token() + key_var = parser.compile_filter(bits[2]) - return RecurseNavigationNode(template_nodes, instance_var, key) + template_nodes = parser.parse(('endrecursenavigation',)) + token = parser.delete_first_token() + return RecurseNavigationNode(template_nodes, instance_var, key_var) @register.filter diff --combined philo/contrib/sobol/templates/admin/sobol/search/grappelli_results.html index f01eb88,45135ff..f01eb88 --- a/philo/contrib/sobol/templates/admin/sobol/search/grappelli_results.html +++ b/philo/contrib/sobol/templates/admin/sobol/search/grappelli_results.html @@@ -28,8 -28,9 +28,8 @@@ {% block content %}
{% for search in queryset %} - {% if not forloop.first and not forloop.last %}

{{ search.string }}

{% endif %}
-

{% blocktrans %}Results{% endblocktrans %}

{% comment %}For the favored results, add a class?{% endcomment %} +

{{ search_string }}

diff --combined philo/contrib/sobol/templates/admin/sobol/search/results.html index 24442c7,44d4e7c..24442c7 --- a/philo/contrib/sobol/templates/admin/sobol/search/results.html +++ b/philo/contrib/sobol/templates/admin/sobol/search/results.html @@@ -23,8 -23,9 +23,8 @@@ {% block content %} {% for search in queryset %} - {% if not forloop.first and not forloop.last %}

{{ search.string }}

{% endif %}
-

{% blocktrans %}Results{% endblocktrans %}

{% comment %}For the favored results, add a class?{% endcomment %} +

{{ search.string }}