src/pyams_content/features/menu/portlet/navigation/zmi/simple.py
changeset 840 3dcf565c711e
parent 695 096cfad5eeb5
child 878 6bc257d7f53f
equal deleted inserted replaced
839:37c3280e6def 840:3dcf565c711e
    14 
    14 
    15 
    15 
    16 # import standard library
    16 # import standard library
    17 
    17 
    18 # import interfaces
    18 # import interfaces
    19 from pyams_content.component.illustration.interfaces import IIllustration, ILinkIllustration
       
    20 from pyams_content.component.links.interfaces import IInternalLink
    19 from pyams_content.component.links.interfaces import IInternalLink
    21 from pyams_content.features.menu.portlet.navigation.interfaces.simple import ISimpleNavigationPortletSettings, \
    20 from pyams_content.features.menu.portlet.navigation.interfaces.simple import ISimpleNavigationPortletSettings, \
    22     ISimpleNavigationMenu
    21     ISimpleNavigationMenu
    23 from pyams_form.interfaces.form import IInnerSubForm
    22 from pyams_form.interfaces.form import IInnerSubForm
    24 from pyams_pagelet.interfaces import IPagelet
    23 from pyams_pagelet.interfaces import IPagelet
    87     def get_link_status(cls, link):
    86     def get_link_status(cls, link):
    88         if not IInternalLink.providedBy(link):
    87         if not IInternalLink.providedBy(link):
    89             return True
    88             return True
    90         target = link.get_target()
    89         target = link.get_target()
    91         return (target is not None) and IWorkflowPublicationInfo(target).is_published()
    90         return (target is not None) and IWorkflowPublicationInfo(target).is_published()
    92 
       
    93     @classmethod
       
    94     def get_link_illustration(cls, link):
       
    95         illustration = IIllustration(link, None)
       
    96         if (illustration is None) or not illustration.has_data():
       
    97             if IInternalLink.providedBy(link):
       
    98                 target = link.get_target()
       
    99                 if target is None:
       
   100                     return
       
   101                 illustration = ILinkIllustration(target, None)
       
   102                 if (illustration is None) or not illustration.has_data():
       
   103                     illustration = IIllustration(target, None)
       
   104         return illustration