equal
deleted
inserted
replaced
26 |
26 |
27 # import packages |
27 # import packages |
28 from pyams_content.features.menu import MenusContainer |
28 from pyams_content.features.menu import MenusContainer |
29 from pyams_portal.portlet import PortletSettings, portlet_config, Portlet |
29 from pyams_portal.portlet import PortletSettings, portlet_config, Portlet |
30 from pyams_utils.adapter import get_annotation_adapter, adapter_config |
30 from pyams_utils.adapter import get_annotation_adapter, adapter_config |
|
31 from pyams_utils.factory import factory_config |
31 from pyramid.events import subscriber |
32 from pyramid.events import subscriber |
32 from zope.interface import implementer, alsoProvides |
33 from zope.interface import implementer, alsoProvides |
33 from zope.schema.fieldproperty import FieldProperty |
34 from zope.schema.fieldproperty import FieldProperty |
34 |
35 |
35 from pyams_content import _ |
36 from pyams_content import _ |
38 DOUBLE_NAVIGATION_PORTLET_NAME = 'pyams_content.portlet.navigation.double' |
39 DOUBLE_NAVIGATION_PORTLET_NAME = 'pyams_content.portlet.navigation.double' |
39 DOUBLE_NAVIGATION_LINKS_KEY = '{0}::menus'.format(ASSOCIATION_CONTAINER_KEY) |
40 DOUBLE_NAVIGATION_LINKS_KEY = '{0}::menus'.format(ASSOCIATION_CONTAINER_KEY) |
40 |
41 |
41 |
42 |
42 @implementer(IDoubleNavigationPortletSettings, IMenusContainerTarget) |
43 @implementer(IDoubleNavigationPortletSettings, IMenusContainerTarget) |
|
44 @factory_config(provided=IDoubleNavigationPortletSettings) |
43 class DoubleNavigationPortletSettings(PortletSettings): |
45 class DoubleNavigationPortletSettings(PortletSettings): |
44 """Double navigation portlet settings""" |
46 """Double navigation portlet settings""" |
45 |
47 |
46 title = FieldProperty(IDoubleNavigationPortletSettings['title']) |
48 title = FieldProperty(IDoubleNavigationPortletSettings['title']) |
47 subtitle = FieldProperty(IDoubleNavigationPortletSettings['subtitle']) |
49 subtitle = FieldProperty(IDoubleNavigationPortletSettings['subtitle']) |
63 """Double navigation portlet""" |
65 """Double navigation portlet""" |
64 |
66 |
65 name = DOUBLE_NAVIGATION_PORTLET_NAME |
67 name = DOUBLE_NAVIGATION_PORTLET_NAME |
66 label = _("Double navigation") |
68 label = _("Double navigation") |
67 |
69 |
68 settings_class = DoubleNavigationPortletSettings |
70 toolbar_css_class = 'fa fa-fw fa-2x fa-list-alt' |
|
71 |
|
72 settings_factory = IDoubleNavigationPortletSettings |
69 |
73 |
70 |
74 |
71 @subscriber(IObjectAddedEvent, parent_selector=IDoubleNavigationMenusContainer) |
75 @subscriber(IObjectAddedEvent, parent_selector=IDoubleNavigationMenusContainer) |
72 def handle_added_navigation_menu(event): |
76 def handle_added_navigation_menu(event): |
73 """Add marker interface to added menus container""" |
77 """Add marker interface to added menus container""" |