From f72e87f404c03a266382fff3aa836dbc23be8a49 Mon Sep 17 00:00:00 2001 From: krmax44 Date: Fri, 23 Feb 2024 14:15:14 +0100 Subject: [PATCH] =?UTF-8?q?=E2=9C=A8=20use=20view-based=20breadcrumbs?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../templates/froide_govplan/base.html | 23 +++++-------------- .../templates/froide_govplan/detail.html | 17 +++----------- .../templates/froide_govplan/section.html | 8 +------ froide_govplan/views.py | 23 +++++++++++++++++++ 4 files changed, 33 insertions(+), 38 deletions(-) diff --git a/froide_govplan/templates/froide_govplan/base.html b/froide_govplan/templates/froide_govplan/base.html index 3b4fff1..01e2ab3 100644 --- a/froide_govplan/templates/froide_govplan/base.html +++ b/froide_govplan/templates/froide_govplan/base.html @@ -4,26 +4,15 @@ {% load menu_tags %} {% block navbar %} - {% include "header_reduced.html" %} -{% endblock %} + {{ block.super }} + + {% include "snippets/breadcrumbs.html" with breadcrumbs_background="blue-10" overlay=True %} +{% endblock navbar %} {% block body %} - - {% static_placeholder "govplan_header" %} {% block app_body %} {% placeholder "content" %} - {% endblock %} + {% endblock app_body %} {% static_placeholder "govplan_footer" %} -{% endblock %} +{% endblock body %} diff --git a/froide_govplan/templates/froide_govplan/detail.html b/froide_govplan/templates/froide_govplan/detail.html index e565d54..25b780b 100644 --- a/froide_govplan/templates/froide_govplan/detail.html +++ b/froide_govplan/templates/froide_govplan/detail.html @@ -9,20 +9,11 @@ {% load content_helper %} {% load thumbnail %} -{% block title %}{{ object.title }}{% endblock %} +{% block title %}{{ object.title }}{% endblock title %} {% block meta %} {% include "snippets/meta.html" %} -{% endblock %} - -{% block govplan_breadcrumbs %} - - -{% endblock %} +{% endblock meta %} {% block app_body %}
@@ -203,7 +194,5 @@
- - -{% endblock %} +{% endblock app_body %} diff --git a/froide_govplan/templates/froide_govplan/section.html b/froide_govplan/templates/froide_govplan/section.html index 84e084a..45802e3 100644 --- a/froide_govplan/templates/froide_govplan/section.html +++ b/froide_govplan/templates/froide_govplan/section.html @@ -12,12 +12,6 @@ {% include "snippets/meta.html" %} {% endblock %} -{% block govplan_breadcrumbs %} - -{% endblock %} - {% block app_body %}
@@ -54,4 +48,4 @@ {% include "froide_govplan/plugins/card_cols.html" with object_list=plans %}
-{% endblock %} +{% endblock app_body %} diff --git a/froide_govplan/views.py b/froide_govplan/views.py index dd6772b..0cea2c6 100644 --- a/froide_govplan/views.py +++ b/froide_govplan/views.py @@ -22,6 +22,16 @@ class GovernmentMixin: Government, slug=self.kwargs["gov"], **filter_kwarg ) + def get_breadcrumbs(self, context): + if "request" in context: + request = context["request"] + + title = request.current_page.get_title() + url = request.current_page.get_absolute_url() + return [(title, url)] + + return [] + class GovPlanSectionDetailView(GovernmentMixin, DetailView): slug_url_kwarg = "section" @@ -38,6 +48,11 @@ class GovPlanSectionDetailView(GovernmentMixin, DetailView): context["plans"] = context["object"].get_plans(queryset=queryset) return context + def get_breadcrumbs(self, context): + return super().get_breadcrumbs(context) + [ + (self.object.title, self.object.get_absolute_url()) + ] + class GovPlanDetailView(GovernmentMixin, DetailView): slug_url_kwarg = "plan" @@ -63,6 +78,14 @@ class GovPlanDetailView(GovernmentMixin, DetailView): self.request.govplan = self.object return context + def get_breadcrumbs(self, context): + obj = context["object"] + section = context["section"] + return super().get_breadcrumbs(context) + [ + (section.title, section.get_absolute_url()), + (obj.title, obj.get_absolute_url()), + ] + class GovPlanProposeUpdateView(GovernmentMixin, LoginRequiredMixin, UpdateView): slug_url_kwarg = "plan"