Add breadcrumb/section links

This commit is contained in:
Stefan Wehrmeyer 2022-03-14 19:16:52 +01:00
parent 635d73d18b
commit 14413d9437
5 changed files with 23 additions and 5 deletions

View file

@ -287,6 +287,18 @@ class GovernmentPlanUpdate(models.Model):
def __str__(self): def __str__(self):
return "{} - {} ({})".format(self.title, self.timestamp, self.plan) return "{} - {} ({})".format(self.title, self.timestamp, self.plan)
def get_absolute_url(self):
return "{}#update-{}".format(
reverse(
"govplan:plan",
kwargs={"gov": self.government.slug, "plan": self.plan.slug},
),
self.id,
)
def get_absolute_domain_url(self):
return settings.SITE_URL + self.get_absolute_url()
class GovernmentPlanFollower(Follower): class GovernmentPlanFollower(Follower):
content_object = models.ForeignKey( content_object = models.ForeignKey(

View file

@ -9,8 +9,8 @@
<nav class="breadcrumb-container" aria-label="breadcrumb"> <nav class="breadcrumb-container" aria-label="breadcrumb">
<div class="container"> <div class="container">
<ol class="breadcrumb"> <ol class="breadcrumb">
{# TODO: make this dynamic #} {% page_url 'koalitionstracker' as base_url %}
<li class="breadcrumb-item"><a href="/koalitionstracker/">Koalitionstracker</a></li> <li class="breadcrumb-item"><a href="{{ base_url }}">Koalitionstracker</a></li>
{% block govplan_breadcrumbs %}{% endblock %} {% block govplan_breadcrumbs %}{% endblock %}
</ol> </ol>
</div> </div>

View file

@ -33,7 +33,7 @@
</li> </li>
{% for cat in object.categories.all %} {% for cat in object.categories.all %}
<li> <li>
<a href="{% comment %} TODO: link to category {% endcomment %}"> <a href="{{ section.get_absolute_url }}">
<span class="badge badge-light mr-2">{{ cat.name }}</span> <span class="badge badge-light mr-2">{{ cat.name }}</span>
</a> </a>
</li> </li>

View file

@ -57,8 +57,8 @@
{% endblocktranslate %} {% endblocktranslate %}
</p> </p>
{# TODO: make this dynamic #} {% page_url 'koalitionstracker' as base_url %}
<a href="/koalitionstracker/" class="action-link">zurück zu allen Kategorien</a> <a href="{{ base_url }}" class="action-link">zurück zu allen Kategorien</a>
</div> </div>
</div> </div>
</div> </div>

View file

@ -41,11 +41,17 @@ class GovPlanDetailView(GovernmentMixin, DetailView):
return qs return qs
return qs.filter(public=True) return qs.filter(public=True)
def get_section(self):
return GovernmentPlanSection.objects.filter(
categories__in=self.object.categories.all()
).first()
def get_context_data(self, **kwargs): def get_context_data(self, **kwargs):
context = super().get_context_data(**kwargs) context = super().get_context_data(**kwargs)
context["updates"] = self.object.updates.filter(public=True).order_by( context["updates"] = self.object.updates.filter(public=True).order_by(
"-timestamp" "-timestamp"
) )
context["section"] = self.get_section()
return context return context