src/pyams_content/features/footer/skin/__init__.py
changeset 729 f6594cea3d5a
parent 545 ae803782cc37
child 762 2df58f4a11df
equal deleted inserted replaced
728:8a4cd44c9134 729:f6594cea3d5a
    17 
    17 
    18 # import interfaces
    18 # import interfaces
    19 from pyams_content.features.footer.interfaces import IFooterTarget, IFooterRenderer, IFooterSettings
    19 from pyams_content.features.footer.interfaces import IFooterTarget, IFooterRenderer, IFooterSettings
    20 from pyams_content.features.renderer.interfaces import HIDDEN_RENDERER_NAME
    20 from pyams_content.features.renderer.interfaces import HIDDEN_RENDERER_NAME
    21 from pyams_skin.layer import IPyAMSLayer
    21 from pyams_skin.layer import IPyAMSLayer
       
    22 from pyams_utils.interfaces.url import DISPLAY_CONTEXT
    22 
    23 
    23 # import packages
    24 # import packages
    24 from pyams_content.features.renderer.skin import BaseContentRenderer
    25 from pyams_content.features.renderer.skin import BaseContentRenderer
    25 from pyams_utils.adapter import adapter_config
    26 from pyams_utils.adapter import adapter_config
    26 from pyramid.decorator import reify
    27 from pyramid.decorator import reify
    33 
    34 
    34     @reify
    35     @reify
    35     def settings(self):
    36     def settings(self):
    36         if self.settings_interface is None:
    37         if self.settings_interface is None:
    37             return None
    38             return None
    38         settings = IFooterSettings(self.context)
    39         context = self.request.annotations.get(DISPLAY_CONTEXT)
       
    40         if context is None:
       
    41             context = self.context
       
    42         settings = IFooterSettings(context)
    39         while settings.inherit:
    43         while settings.inherit:
    40             settings = IFooterSettings(settings.parent)
    44             settings = IFooterSettings(settings.parent)
    41         return settings.settings
    45         return settings.settings
    42 
    46 
    43 
    47