diff -r b6ff1877cb48 -r bcee7f49b3ea src/pyams_default_theme/features/header/skin/__init__.py --- a/src/pyams_default_theme/features/header/skin/__init__.py Mon Nov 26 11:04:35 2018 +0100 +++ b/src/pyams_default_theme/features/header/skin/__init__.py Mon Nov 26 11:05:06 2018 +0100 @@ -23,6 +23,7 @@ from pyams_content.features.header.interfaces import IHeaderRenderer, IHeaderRendererSettings, IHeaderSettings, \ IHeaderTarget from pyams_content.features.renderer.interfaces import HIDDEN_RENDERER_NAME +from pyams_content.root import ISiteRoot from pyams_default_theme.features.header import SimpleHeaderRendererSettings from pyams_default_theme.features.header.interfaces import ISimpleHeaderRendererSettings from pyams_default_theme.features.header.skin.interfaces import IHeaderClass @@ -30,6 +31,7 @@ from pyams_portal.interfaces import PREVIEW_MODE from pyams_portal.portlet import PORTLETS_CACHE_KEY, PORTLETS_CACHE_NAME, PORTLETS_CACHE_REGION from pyams_sequence.interfaces import IInternalReference +from pyams_sequence.reference import get_reference_target from pyams_skin.layer import IPyAMSLayer from pyams_template.template import template_config from pyams_utils.adapter import adapter_config @@ -81,7 +83,13 @@ request = self.request return request.registry.queryMultiAdapter((request.context, request), IHeaderClass, default='') + @property + def search_target(self): + return get_reference_target(self.settings.search_target, request=self.request) + def render(self): + if ISiteRoot.providedBy(self.request.context) and not self.settings.can_apply_on_root: + return '' preview_mode = self.request.annotations.get(PREVIEW_MODE, False) if preview_mode: return super(BaseHeaderRenderer, self).render()