diff --git a/app/helpers/admin/editions_helper.rb b/app/helpers/admin/editions_helper.rb index a36801997d5..8ed00ff5718 100644 --- a/app/helpers/admin/editions_helper.rb +++ b/app/helpers/admin/editions_helper.rb @@ -14,44 +14,26 @@ def edition_type(edition) end def admin_organisation_filter_options(selected_organisation) - organisations = Organisation.with_translations(:en).order(:name).excluding_govuk_status_closed || [] - closed_organisations = Organisation.with_translations(:en).closed || [] + blank_option = [ + { + text: "All organisations", + value: "", + selected: selected_organisation.blank?, + }, + ] + open_organisations = Organisation.with_translations(:en).order(:name).excluding_govuk_status_closed || [] if current_user.organisation - organisations = [current_user.organisation] + (organisations - [current_user.organisation]) + open_organisations = [current_user.organisation] + (organisations - [current_user.organisation]) end + closed_organisations = Organisation.with_translations(:en).closed || [] - [ - [ - "", - [ - { - text: "All organisations", - value: "", - selected: selected_organisation.blank?, - }, - ], - ], - [ - "Live organisations", - organisations.map do |organisation| - { - text: organisation.select_name, - value: organisation.id, - selected: selected_organisation.to_s == organisation.id.to_s, - } - end, - ], - [ - "Closed organisations", - closed_organisations.map do |organisation| - { - text: organisation.select_name, - value: organisation.id, - selected: selected_organisation.to_s == organisation.id.to_s, - } - end, - ], - ] + blank_option + (open_organisations + closed_organisations).map do |organisation| + { + text: organisation.select_name, + value: organisation.id, + selected: selected_organisation.to_s == organisation.id.to_s, + } + end end def admin_author_filter_options(current_user) diff --git a/app/views/admin/editions/_filter_options.html.erb b/app/views/admin/editions/_filter_options.html.erb index e0d844611ae..e41f7d65f12 100644 --- a/app/views/admin/editions/_filter_options.html.erb +++ b/app/views/admin/editions/_filter_options.html.erb @@ -40,12 +40,12 @@ <% end %> <% if filter_by.include?(:organisation) %> - <%= render "components/select_with_search", { + <%= render "components/autocomplete", { label: "Organisation", id: "organisation_filter", name: "organisation", heading_size: "s", - grouped_options: admin_organisation_filter_options(@filter.options[:organisation]), + options: admin_organisation_filter_options(@filter.options[:organisation]), } %> <% end %> diff --git a/app/views/admin/statistics_announcements/_filter_options.html.erb b/app/views/admin/statistics_announcements/_filter_options.html.erb index 0761e3d4c74..0088fd3ea1d 100644 --- a/app/views/admin/statistics_announcements/_filter_options.html.erb +++ b/app/views/admin/statistics_announcements/_filter_options.html.erb @@ -15,12 +15,12 @@ value: @filter.options[:title], } %> - <%= render "components/select_with_search", { + <%= render "components/autocomplete", { label: "Organisation", id: "organisation_filter", name: "organisation_id", heading_size: "s", - grouped_options: admin_organisation_filter_options(@filter.options[:organisation_id]), + options: admin_organisation_filter_options(@filter.options[:organisation_id]), } %> <%= render "govuk_publishing_components/components/select", {