diff --git a/app/helpers/alchemy/pages_helper.rb b/app/helpers/alchemy/pages_helper.rb index f5675f9404..47a160b4dc 100644 --- a/app/helpers/alchemy/pages_helper.rb +++ b/app/helpers/alchemy/pages_helper.rb @@ -100,7 +100,9 @@ def render_menu(menu_type, options = {}) # Returns true if page is in the active branch def page_active?(page) - @_page_ancestors ||= Page.ancestors_for(@page) + Alchemy::Deprecation.warn("page_active? is deprecated and will be removed from Alchemy 6.0") + + @_page_ancestors ||= @page.self_and_ancestors.contentpages @_page_ancestors.include?(page) end diff --git a/spec/helpers/alchemy/pages_helper_spec.rb b/spec/helpers/alchemy/pages_helper_spec.rb index 9dde29b07c..10feb431d7 100644 --- a/spec/helpers/alchemy/pages_helper_spec.rb +++ b/spec/helpers/alchemy/pages_helper_spec.rb @@ -14,6 +14,14 @@ module Alchemy @root_page = language_root # We need this instance variable in the helpers end + describe "page_active?" do + it "shows a deprecation warning" do + @page = public_page + expect(Alchemy::Deprecation).to receive(:warn).with /will be removed from Alchemy 6/ + helper.page_active?(public_page) + end + end + describe "#render_page_layout" do it "should render the current page layout" do @page = public_page