You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
36 lines
1009 B
36 lines
1009 B
from django.urls import reverse_lazy
|
|
|
|
from products.context_processors import product_categories, product_detail
|
|
|
|
|
|
def breadcrumbs(request):
|
|
view_name = 'index:index'
|
|
if request.resolver_match:
|
|
view_name = request.resolver_match.view_name
|
|
crumbs = {
|
|
'breadcrumb': {},
|
|
'is_index': view_name == 'index:index'
|
|
}
|
|
if crumbs['is_index']:
|
|
return crumbs
|
|
# if 'products' in view_name:
|
|
# crumbs['breadcrumb'] = _product_breadcrumbs(request=request)
|
|
# elif 'news' in view_name:
|
|
# crumbs['breadcrumb'] = _news_breadcrumbs(request=request)
|
|
return crumbs
|
|
|
|
|
|
def _product_breadcrumbs(request):
|
|
if 'list' in request.resolver_match.view_name:
|
|
breadcrumb = product_categories(request).get('the_product_category')
|
|
elif 'details' in request.resolver_match.view_name:
|
|
breadcrumb = product_detail(request).get('the_product')
|
|
else:
|
|
breadcrumb = None
|
|
|
|
return breadcrumb
|
|
|
|
|
|
|
|
def _news_breadcrumbs(request):
|
|
pass
|
|
|