Skip to content

Commit

Permalink
display changes to support local council scorecards
Browse files Browse the repository at this point in the history
move range display into include
allow a range related dataset for datasets
  • Loading branch information
struan committed Apr 24, 2024
1 parent 57bb97d commit 3ef66ef
Show file tree
Hide file tree
Showing 3 changed files with 52 additions and 21 deletions.
34 changes: 13 additions & 21 deletions hub/templates/hub/area.html
Original file line number Diff line number Diff line change
Expand Up @@ -475,6 +475,8 @@ <h2 class="mb-3 text-primary">Place</h2>
{% for dataset in categories.place %}
{% if dataset.is_range and dataset.data|length > 9 %}
<div class="card dataset-card area-data--lg {% if dataset.is_favourite or dataset.data.is_favourite %}dataset-card--favourite{% endif %} {% if dataset.featured %} area-data--featured{% endif %}">
{% elif dataset.related_category and dataset.related_category.is_range %}
<div class="card dataset-card area-data--md {% if dataset.is_favourite or dataset.data.is_favourite %}dataset-card--favourite{% endif %} {% if dataset.featured %} area-data--featured{% endif %}">
{% elif dataset.is_range or dataset.data_type == "json" %}
<div class="card dataset-card area-data--md {% if dataset.is_favourite or dataset.data.is_favourite %}dataset-card--favourite{% endif %} {% if dataset.featured %} area-data--featured{% endif %}">
{% else %}
Expand Down Expand Up @@ -502,7 +504,7 @@ <h3 class="h5">{{ dataset.label }}</h3>
{% else %}
<p class="card-text mb-0 display-6 lh-1 text-primary">{{ dataset.data.value|intcomma }}</p>
{% endif %}
{% if dataset.data.average %}
{% if dataset.data.average is not None %}
{% if dataset.subcategory == "date" %}
<p class="card-text mt-2 text-muted">{{dataset.data.average|floatformat:"0" }} national average</p>
{% else %}
Expand All @@ -513,34 +515,24 @@ <h3 class="h5">{{ dataset.label }}</h3>
{% include 'hub/area/_json_data.html' with dataset=dataset.related_category %}
{% endif %}
{% elif dataset.is_range and dataset.data|length > 0 %}
<table class="table mb-0 js-chart" data-chart-type="bar" data-chart-direction="y">
<thead>
<tr>
<th scope="col"></th>
<th scope="col" data-color="#068670">This area</th>
<th scope="col" data-color="#ced4da">National average</th>
</tr>
</thead>
<tbody>
{% for row in dataset.data %}
<tr>
<th>
{{ row.label|html_format_dataset_name|safe }}
</th>
<td>{{ row.value|floatformat }}%</td>
<td>{{ row.average|floatformat }}%</td>
</tr>
{% endfor %}
</tbody>
</table>
{% include 'hub/area/_range_data.html' with dataset=dataset %}
{% else %}
<p class="card-text mb-0 display-6 lh-1 text-primary">{{ dataset.data.value|floatformat }}%</p>
{% if dataset.data.average is not None %}
<p class="card-text mt-2 text-muted">{{dataset.data.average|floatformat }}% national average</p>
{% endif %}
{% if dataset.related_category and dataset.related_category.is_range %}
{% include 'hub/area/_range_data.html' with dataset=dataset.related_category %}
{% endif %}
{% endif %}
</div>
<div class="card-footer">
<p class="card-text">
{% if dataset.name.lower == "council climate action scorecard" %}
<a href="{{ dataset.source_url }}councils/{{ slug }}/">{{ dataset.source_name }}</a>
{% else %}
<a href="{{ dataset.source_url }}">{{ dataset.source_name }}</a>
{% endif %}
{% if dataset.auto_conversion_disclaimer %}
<a href="{% url 'future_constituencies' %}">{{ dataset.auto_conversion_disclaimer|safe }}</a>
{% endif %}
Expand Down
35 changes: 35 additions & 0 deletions hub/templates/hub/area/_range_data.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
{% load hub_filters %}
{% if dataset.name.lower == "action scorecards section scores" %}
<table class="table mb-0 mt-2" data-chart-type="bar" data-chart-direction="y">
<tbody>
{% for row in dataset.data %}
<tr>
<th>
{{ row.label|html_format_dataset_name|safe }}
</th>
<td>{{ row.value|floatformat:"0" }}%</td>
</tr>
{% endfor %}
</tbody>
{% else %}
<table class="table mb-0 js-chart" data-chart-type="bar" data-chart-direction="y">
<thead>
<tr>
<th scope="col"></th>
<th scope="col" data-color="#068670">This area</th>
<th scope="col" data-color="#ced4da">National average</th>
</tr>
</thead>
<tbody>
{% for row in dataset.data %}
<tr>
<th>
{{ row.label|html_format_dataset_name|safe }}
</th>
<td>{{ row.value|floatformat }}%</td>
<td>{{ row.average|floatformat }}%</td>
</tr>
{% endfor %}
</tbody>
{% endif %}
</table>
4 changes: 4 additions & 0 deletions hub/views/area.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
from django.db.models import Count
from django.http import Http404, HttpResponsePermanentRedirect, JsonResponse
from django.shortcuts import get_object_or_404, redirect
from django.utils.text import slugify
from django.views.generic import DetailView, TemplateView, View

from hub.mixins import TitleMixin
Expand Down Expand Up @@ -213,6 +214,8 @@ def get_context_data(self, **kwargs):
if area_type.area_type != "Westminster Constituency":
context["is_westminster_cons"] = False

context["slug"] = slugify(self.object.name)

if context["area_type"] == "WMC23":
context["PPCs"] = [
{
Expand Down Expand Up @@ -348,6 +351,7 @@ def get_context_data(self, **kwargs):
"power_postcodes_count": "power_postcodes",
"tcc_open_letter_signatories_count": "tcc_open_letter_signatories",
"council_net_zero_date": "council_net_zero_details",
"council_action_scorecard_total": "council_action_scorecard_sections",
}

context["is_related_category"] = context["related_categories"].values()
Expand Down

0 comments on commit 3ef66ef

Please sign in to comment.