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):
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):
content_object = models.ForeignKey(

View file

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

View file

@ -33,7 +33,7 @@
</li>
{% for cat in object.categories.all %}
<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>
</a>
</li>

View file

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

View file

@ -41,11 +41,17 @@ class GovPlanDetailView(GovernmentMixin, DetailView):
return qs
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):
context = super().get_context_data(**kwargs)
context["updates"] = self.object.updates.filter(public=True).order_by(
"-timestamp"
)
context["section"] = self.get_section()
return context