Add government name to breadcrumbs list
This commit is contained in:
parent
3b52d7c808
commit
e029c0c612
2 changed files with 18 additions and 7 deletions
|
|
@ -10,15 +10,13 @@ from django.db import models
|
||||||
from django.urls import reverse
|
from django.urls import reverse
|
||||||
from django.utils import timezone
|
from django.utils import timezone
|
||||||
from django.utils.translation import gettext_lazy as _
|
from django.utils.translation import gettext_lazy as _
|
||||||
|
|
||||||
from filer.fields.image import FilerImageField
|
from filer.fields.image import FilerImageField
|
||||||
from taggit.managers import TaggableManager
|
|
||||||
from taggit.models import TaggedItemBase
|
|
||||||
|
|
||||||
from froide.follow.models import Follower
|
from froide.follow.models import Follower
|
||||||
from froide.georegion.models import GeoRegion
|
from froide.georegion.models import GeoRegion
|
||||||
from froide.organization.models import Organization
|
from froide.organization.models import Organization
|
||||||
from froide.publicbody.models import Category, Jurisdiction, PublicBody
|
from froide.publicbody.models import Category, Jurisdiction, PublicBody
|
||||||
|
from taggit.managers import TaggableManager
|
||||||
|
from taggit.models import TaggedItemBase
|
||||||
|
|
||||||
from . import conf
|
from . import conf
|
||||||
from .utils import make_request_url
|
from .utils import make_request_url
|
||||||
|
|
@ -96,6 +94,13 @@ class Government(models.Model):
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
return self.name
|
return self.name
|
||||||
|
|
||||||
|
def get_absolute_url(self):
|
||||||
|
if self.planning_document:
|
||||||
|
return self.planning_document
|
||||||
|
# No planning document? Just return the base URL
|
||||||
|
url = reverse("govplan:search")
|
||||||
|
return url.rsplit("/", 2)[0]
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def days_available(self):
|
def days_available(self):
|
||||||
if self.start_date is None:
|
if self.start_date is None:
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,6 @@ from django.contrib.auth.mixins import LoginRequiredMixin
|
||||||
from django.shortcuts import get_object_or_404, redirect, render
|
from django.shortcuts import get_object_or_404, redirect, render
|
||||||
from django.utils.translation import gettext_lazy as _
|
from django.utils.translation import gettext_lazy as _
|
||||||
from django.views.generic import DetailView, UpdateView
|
from django.views.generic import DetailView, UpdateView
|
||||||
|
|
||||||
from froide.helper.breadcrumbs import BreadcrumbView
|
from froide.helper.breadcrumbs import BreadcrumbView
|
||||||
|
|
||||||
from .auth import get_visible_plans
|
from .auth import get_visible_plans
|
||||||
|
|
@ -24,15 +23,22 @@ class GovernmentMixin(BreadcrumbView):
|
||||||
Government, slug=self.kwargs["gov"], **filter_kwarg
|
Government, slug=self.kwargs["gov"], **filter_kwarg
|
||||||
)
|
)
|
||||||
|
|
||||||
|
def get_context_data(self, **kwargs):
|
||||||
|
context = super().get_context_data(**kwargs)
|
||||||
|
context["government"] = self.government
|
||||||
|
return context
|
||||||
|
|
||||||
def get_breadcrumbs(self, context):
|
def get_breadcrumbs(self, context):
|
||||||
|
breadcrumbs = []
|
||||||
if "request" in context:
|
if "request" in context:
|
||||||
request = context["request"]
|
request = context["request"]
|
||||||
|
|
||||||
title = request.current_page.get_title()
|
title = request.current_page.get_title()
|
||||||
url = request.current_page.get_absolute_url()
|
url = request.current_page.get_absolute_url()
|
||||||
return [(title, url)]
|
breadcrumbs.append((title, url))
|
||||||
|
|
||||||
return []
|
breadcrumbs.append((self.government.name, self.government.get_absolute_url()))
|
||||||
|
return breadcrumbs
|
||||||
|
|
||||||
|
|
||||||
class GovPlanSectionDetailView(GovernmentMixin, DetailView):
|
class GovPlanSectionDetailView(GovernmentMixin, DetailView):
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue