mirror of
https://github.com/GSA/notifications-admin.git
synced 2026-08-25 08:44:23 -04:00
add back links
previously the back link went to choosing a library. Now, if you view a district from a county, go back to the county page. Otherwise, go back to the top level of the library.
This commit is contained in:
@@ -147,6 +147,25 @@ def choose_broadcast_area(service_id, broadcast_message_id, library_slug):
|
||||
)
|
||||
|
||||
|
||||
def _get_broadcast_sub_area_back_link(service_id, broadcast_message_id, library_slug):
|
||||
prev_area_slug = request.args.get('prev_area_slug')
|
||||
if prev_area_slug:
|
||||
return url_for(
|
||||
'.choose_broadcast_sub_area',
|
||||
service_id=service_id,
|
||||
broadcast_message_id=broadcast_message_id,
|
||||
library_slug=library_slug,
|
||||
area_slug=prev_area_slug,
|
||||
)
|
||||
else:
|
||||
return url_for(
|
||||
'.choose_broadcast_area',
|
||||
service_id=service_id,
|
||||
broadcast_message_id=broadcast_message_id,
|
||||
library_slug=library_slug,
|
||||
)
|
||||
|
||||
|
||||
@main.route(
|
||||
'/services/<uuid:service_id>/broadcast/<uuid:broadcast_message_id>/libraries/<library_slug>/<area_slug>',
|
||||
methods=['GET', 'POST'],
|
||||
@@ -160,6 +179,8 @@ def choose_broadcast_sub_area(service_id, broadcast_message_id, library_slug, ar
|
||||
)
|
||||
area = BroadcastMessage.libraries.get_areas(area_slug)[0]
|
||||
|
||||
back_link = _get_broadcast_sub_area_back_link(service_id, broadcast_message_id, library_slug)
|
||||
|
||||
is_county = any(sub_area.sub_areas for sub_area in area.sub_areas)
|
||||
|
||||
form = BroadcastAreaFormWithSelectAll.from_library(
|
||||
@@ -185,6 +206,7 @@ def choose_broadcast_sub_area(service_id, broadcast_message_id, library_slug, ar
|
||||
page_title=f'Choose an area of {area.name}',
|
||||
broadcast_message=broadcast_message,
|
||||
county=area,
|
||||
back_link=back_link,
|
||||
)
|
||||
|
||||
return render_template(
|
||||
@@ -195,6 +217,7 @@ def choose_broadcast_sub_area(service_id, broadcast_message_id, library_slug, ar
|
||||
library_slug=library_slug,
|
||||
page_title=f'Choose an area of {area.name}',
|
||||
broadcast_message=broadcast_message,
|
||||
back_link=back_link,
|
||||
)
|
||||
|
||||
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
|
||||
{{ page_header(
|
||||
page_title,
|
||||
back_link=url_for('.choose_broadcast_library', service_id=current_service.id, broadcast_message_id=broadcast_message.id),
|
||||
back_link=back_link,
|
||||
)}}
|
||||
|
||||
{% call form_wrapper() %}
|
||||
@@ -30,7 +30,7 @@
|
||||
{# these are districts within a county#}
|
||||
<a
|
||||
class="file-list-filename-large govuk-link govuk-link--no-visited-state"
|
||||
href="{{ url_for('.choose_broadcast_sub_area', service_id=current_service.id, broadcast_message_id=broadcast_message.id, library_slug=library_slug, area_slug=area.id) }}"
|
||||
href="{{ url_for('.choose_broadcast_sub_area', service_id=current_service.id, broadcast_message_id=broadcast_message.id, library_slug=library_slug, area_slug=area.id, prev_area_slug=county.id) }}"
|
||||
>{{ area.name }}</a>
|
||||
</div>
|
||||
{% endfor %}
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
|
||||
{{ page_header(
|
||||
page_title,
|
||||
back_link=url_for('.choose_broadcast_library', service_id=current_service.id, broadcast_message_id=broadcast_message.id),
|
||||
back_link=back_link,
|
||||
)}}
|
||||
|
||||
{% call form_wrapper() %}
|
||||
|
||||
Reference in New Issue
Block a user