summaryrefslogtreecommitdiff
path: root/saleor
diff options
context:
space:
mode:
Diffstat (limited to 'saleor')
-rw-r--r--saleor/core/templatetags/shop.py21
-rw-r--r--saleor/product/templatetags/sort_by.py11
-rw-r--r--saleor/product/templatetags/sort_menu.py17
3 files changed, 19 insertions, 30 deletions
diff --git a/saleor/core/templatetags/shop.py b/saleor/core/templatetags/shop.py
index c1fdacb5..78273c64 100644
--- a/saleor/core/templatetags/shop.py
+++ b/saleor/core/templatetags/shop.py
@@ -7,6 +7,8 @@ except ImportError:
from django.template import Library
from django.utils.http import urlencode
+from ...product.filters import DEFAULT_SORT
+
register = Library()
@@ -18,8 +20,23 @@ def slice(items, group_size=1):
@register.simple_tag(takes_context=True)
-def get_sort_by_url(context, field):
+def get_sort_by_url(context, field, descending=False):
request = context['request']
request_get = request.GET.dict()
- request_get['sort_by'] = field
+ if descending:
+ request_get['sort_by'] = '-' + field
+ else:
+ request_get['sort_by'] = field
return '%s?%s' % (request.path, urlencode(request_get))
+
+
+@register.inclusion_tag('category/_sort_by.html', takes_context=True)
+def sort_by(context, attributes):
+ ctx = {
+ 'request': context['request'],
+ 'sort_by': (context['request'].GET.get('sort_by', DEFAULT_SORT)
+ .strip('-')),
+ 'sort_by_choices': attributes,
+ 'arrow_down': (context['request'].GET.get('sort_by', DEFAULT_SORT)
+ .startswith('-'))}
+ return ctx
diff --git a/saleor/product/templatetags/sort_by.py b/saleor/product/templatetags/sort_by.py
deleted file mode 100644
index 58395c07..00000000
--- a/saleor/product/templatetags/sort_by.py
+++ /dev/null
@@ -1,11 +0,0 @@
-from django import template
-
-register = template.Library()
-
-
-@register.inclusion_tag('category/_sort_by.html', takes_context=True)
-def sort_by(context, attribute):
- return {'request': context['request'],
- 'label': attribute['label'],
- 'ascending_attribute': attribute['value'],
- 'descending_attribute': '-' + str(attribute['value'])}
diff --git a/saleor/product/templatetags/sort_menu.py b/saleor/product/templatetags/sort_menu.py
deleted file mode 100644
index d538f055..00000000
--- a/saleor/product/templatetags/sort_menu.py
+++ /dev/null
@@ -1,17 +0,0 @@
-from django import template
-
-from ..filters import DEFAULT_SORT
-
-register = template.Library()
-
-
-@register.inclusion_tag('category/_sort_menu.html', takes_context=True)
-def sort_menu(context, attributes):
- ctx = {
- 'request': context['request'],
- 'sort_by': (context['request'].GET.get('sort_by', DEFAULT_SORT)
- .strip('-')),
- 'sort_by_choices': attributes,
- 'arrow_down': (context['request'].GET.get('sort_by', DEFAULT_SORT)
- .startswith('-'))}
- return ctx