diff --git a/app/controllers/alchemy/admin/pages_controller.rb b/app/controllers/alchemy/admin/pages_controller.rb index c355123a2d..db655fed74 100644 --- a/app/controllers/alchemy/admin/pages_controller.rb +++ b/app/controllers/alchemy/admin/pages_controller.rb @@ -38,7 +38,9 @@ class PagesController < ResourcesController only: [:show] add_alchemy_filter :by_page_layout, type: :select, options: ->(_q) do - PageDefinition.all.map { |p| [Alchemy.t(p[:name], scope: "page_layout_names"), p[:name]] } + PageDefinition.all.reject(&:layoutpage).tap do |page_layouts| + page_layouts.map! { |p| [Alchemy.t(p[:name], scope: "page_layout_names"), p[:name]] } + end end add_alchemy_filter :updated_at_gteq, type: :datepicker diff --git a/spec/features/admin/page_list_feature_spec.rb b/spec/features/admin/page_list_feature_spec.rb index 0c9b87a51d..b2837119a1 100644 --- a/spec/features/admin/page_list_feature_spec.rb +++ b/spec/features/admin/page_list_feature_spec.rb @@ -116,5 +116,13 @@ expect(page).to_not have_css("tr:nth-child(3)") end end + + specify "page type filter only includes content pages" do + visit admin_pages_path(view: "list") + options = find_all("select#q_by_page_layout > option") + options.each do |option| + expect(option.value).to_not eq("footer") + end + end end end