Skip to content

Commit 8b5ed9a

Browse files
Merge pull request #1292 from Metro-Records/feature/1273-agenda
Add person titles to wagtail + handle events with unpublished agendas
2 parents fc80b6b + d70569f commit 8b5ed9a

7 files changed

Lines changed: 54 additions & 8 deletions

File tree

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
# Generated by Django 3.2.25 on 2026-02-19 20:54
2+
3+
from django.db import migrations, models
4+
5+
6+
class Migration(migrations.Migration):
7+
8+
dependencies = [
9+
("lametro", "0026_fiscalyearcalendar_cal_type"),
10+
]
11+
12+
operations = [
13+
migrations.AddField(
14+
model_name="boardmemberdetails",
15+
name="title",
16+
field=models.CharField(
17+
blank=True,
18+
help_text="The position that will show up on this person's detail page e.g. Board Member",
19+
max_length=64,
20+
null=True,
21+
),
22+
),
23+
]

lametro/models/cms.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,12 @@ class Meta:
7878
max_length=256, blank=True, null=True, default="Metro"
7979
)
8080
bio = RichTextField(blank=True, null=True)
81+
title = models.CharField(
82+
max_length=64,
83+
blank=True,
84+
null=True,
85+
help_text="The position that will show up on this person's detail page e.g. Board Member",
86+
)
8187
_revisions = GenericRelation(
8288
"wagtailcore.Revision", related_query_name="member_details"
8389
)

lametro/models/legislative.py

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -389,6 +389,22 @@ def latest_council_membership(self):
389389
return primary_memberships.order_by("-end_date").first()
390390
return None
391391

392+
@property
393+
def latest_committee_membership(self):
394+
return (
395+
self.memberships.exclude(organization__name=settings.OCD_CITY_COUNCIL_NAME)
396+
.order_by("-end_date")
397+
.first()
398+
)
399+
400+
@property
401+
def current_committee_seat(self):
402+
m = self.latest_committee_membership
403+
if m and m.end_date_dt > timezone.now():
404+
return m
405+
406+
return None
407+
392408
@property
393409
def current_district(self):
394410
m = self.latest_council_membership

lametro/templates/committee.html

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -85,11 +85,7 @@ <h2 class="d-inline h4">
8585
</div>
8686
</td>
8787
<td>
88-
{% if membership.person.latest_council_membership %}
89-
<a href="{% url 'lametro:person' membership.person.slug %}">{{ membership.person.name }}</a>
90-
{% else %}
91-
{{ membership.person.name }}
92-
{% endif %}
88+
<a href="{% url 'lametro:person' membership.person.slug %}">{{ membership.person.name }}</a>
9389
</td>
9490
<td>
9591
{{ membership.extras | clean_membership_extras }} {{ membership.person.latest_council_membership.post.label | format_label }}

lametro/templates/event/event.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,7 @@ <h2 class="h4">Minutes</h2>
139139
{% endif %}
140140
</div>
141141
<div class="col-lg-5 mt-4 mt-lg-0">
142-
{% if related_board_reports %}
142+
{% if related_board_reports and agenda %}
143143
{% include 'event/_related_bills.html' %}
144144
{% endif %}
145145
</div>

lametro/templates/person/person.html

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,13 @@
1616
<h1 class="d-inline-block me-1">{{ person.name }}</h1>
1717
<div class="d-inline-block">
1818
<div class="text-secondary d-inline-block fw-normal h4">
19-
{% if person.current_council_seat %}
19+
{% if person.details.title %}
20+
{{ person.details.title }}
21+
{% elif person.current_council_seat %}
2022
{{ person.current_council_seat.role }}
21-
{% elif person.latest_council_membership.role %}
23+
{% elif person.current_committee_seat %}
24+
Committee Member
25+
{% elif person.latest_council_membership.role and not person.current_committee_seat %}
2226
Former {{ person.latest_council_membership.role }}
2327
{% endif %}
2428
</div>

lametro/wagtail_hooks.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -193,6 +193,7 @@ def permission_policy(self):
193193
"on the live page.</p>"
194194
)
195195
),
196+
FieldPanel("title"),
196197
MultiFieldPanel(
197198
[
198199
FieldPanel("headshot", heading="Image"),

0 commit comments

Comments
 (0)