|
|
|
<% item_label = format_label(@pagy.count, "location") %>
|
|
|
|
<% title = format_title(@searched, @scheme.service_name, current_user, item_label, @pagy.count, nil) %>
|
|
|
|
<% content_for :title, title %>
|
|
|
|
|
|
|
|
<% content_for :before_content do %>
|
|
|
|
<%= govuk_back_link(
|
|
|
|
href: "/schemes/#{@scheme.id}",
|
|
|
|
) %>
|
|
|
|
<% end %>
|
|
|
|
|
|
|
|
<%= render partial: "organisations/headings", locals: { main: @scheme.service_name, sub: nil } %>
|
|
|
|
<div class="app-filter-layout" data-controller="filter-layout">
|
|
|
|
|
|
|
|
<%= render SubNavigationComponent.new(items: scheme_items(request.path, @scheme.id, "Locations")) %>
|
|
|
|
|
|
|
|
<%= render partial: "locations/location_filters" %>
|
|
|
|
<div class="app-filter-layout__content">
|
|
|
|
<h2 class="govuk-visually-hidden">Locations</h2>
|
|
|
|
|
|
|
|
<div class="app-filter-toggle"></div>
|
|
|
|
<%= render SearchComponent.new(current_user:, search_label: "Search by location name or postcode", value: @searched) %>
|
|
|
|
|
|
|
|
<%= govuk_section_break(visible: true, size: "m") %>
|
|
|
|
|
|
|
|
<%= govuk_table do |table| %>
|
|
|
|
<%= table.caption(classes: %w[govuk-!-font-size-19 govuk-!-font-weight-regular]) do |caption| %>
|
|
|
|
<%= render(SearchResultCaptionComponent.new(searched: @searched, count: @pagy.count, item_label:, total_count: @total_count, item: "locations", path: request.path)) %>
|
|
|
|
<% end %>
|
|
|
|
<%= table.head do |head| %>
|
|
|
|
<%= head.row do |row| %>
|
|
|
|
<% row.cell(header: true, text: "Postcode", html_attributes: {
|
|
|
|
scope: "col",
|
|
|
|
}) %>
|
|
|
|
<% row.cell(header: true, text: "Name", html_attributes: {
|
|
|
|
scope: "col",
|
|
|
|
}) %>
|
|
|
|
<% row.cell(header: true, text: "Location code", html_attributes: {
|
|
|
|
scope: "col",
|
|
|
|
}) %>
|
|
|
|
<% row.cell(header: true, text: "Status", html_attributes: {
|
|
|
|
scope: "col",
|
|
|
|
}) %>
|
|
|
|
<% end %>
|
|
|
|
<% end %>
|
|
|
|
<% @locations.each do |location| %>
|
|
|
|
<%= table.body do |body| %>
|
|
|
|
<%= body.row do |row| %>
|
|
|
|
<% row.cell(text: simple_format(location_cell_postcode(location, if location.confirmed
|
|
|
|
scheme_location_path(@scheme, location)
|
|
|
|
else
|
|
|
|
location.postcode.present? ? scheme_location_check_answers_path(@scheme, location, route: "locations") : scheme_location_postcode_path(@scheme, location)
|
|
|
|
end), { class: "govuk-!-font-weight-bold" }, wrapper_tag: "div")) %>
|
|
|
|
<% row.cell(text: location.name) %>
|
|
|
|
<% row.cell(text: location.id) %>
|
|
|
|
<% row.cell(text: status_tag_from_resource(location)) %>
|
|
|
|
<% end %>
|
|
|
|
<% end %>
|
|
|
|
<% end %>
|
|
|
|
<% end %>
|
|
|
|
|
|
|
|
<% if LocationPolicy.new(current_user, @scheme.locations.new).create? %>
|
|
|
|
<%= govuk_button_to "Add a location", scheme_locations_path(@scheme), method: "post", secondary: true %>
|
|
|
|
<% end %>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<%== render partial: "pagy/nav", locals: { pagy: @pagy, item_name: "locations" } %>
|