equal
deleted
inserted
replaced
26 |
26 |
27 # import packages |
27 # import packages |
28 from pyams_content.features.menu import Menu |
28 from pyams_content.features.menu import Menu |
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 SIMPLE_NAVIGATION_PORTLET_NAME = 'pyams_content.portlet.navigation.simple' |
39 SIMPLE_NAVIGATION_PORTLET_NAME = 'pyams_content.portlet.navigation.simple' |
39 SIMPLE_NAVIGATION_LINKS_KEY = '{0}::links'.format(ASSOCIATION_CONTAINER_KEY) |
40 SIMPLE_NAVIGATION_LINKS_KEY = '{0}::links'.format(ASSOCIATION_CONTAINER_KEY) |
40 |
41 |
41 |
42 |
42 @implementer(ISimpleNavigationPortletSettings, IMenuLinksContainerTarget) |
43 @implementer(ISimpleNavigationPortletSettings, IMenuLinksContainerTarget) |
|
44 @factory_config(provided=ISimpleNavigationPortletSettings) |
43 class SimpleNavigationPortletSettings(PortletSettings): |
45 class SimpleNavigationPortletSettings(PortletSettings): |
44 """Simple navigation portlet settings""" |
46 """Simple navigation portlet settings""" |
45 |
47 |
46 title = FieldProperty(ISimpleNavigationPortletSettings['title']) |
48 title = FieldProperty(ISimpleNavigationPortletSettings['title']) |
47 subtitle = FieldProperty(ISimpleNavigationPortletSettings['subtitle']) |
49 subtitle = FieldProperty(ISimpleNavigationPortletSettings['subtitle']) |
63 """Simple navigation portlet""" |
65 """Simple navigation portlet""" |
64 |
66 |
65 name = SIMPLE_NAVIGATION_PORTLET_NAME |
67 name = SIMPLE_NAVIGATION_PORTLET_NAME |
66 label = _("Simple navigation") |
68 label = _("Simple navigation") |
67 |
69 |
68 settings_class = SimpleNavigationPortletSettings |
70 toolbar_css_class = 'fa fa-fw fa-2x fa-bars' |
|
71 |
|
72 settings_factory = ISimpleNavigationPortletSettings |
69 |
73 |
70 |
74 |
71 @subscriber(IObjectAddedEvent, parent_selector=ISimpleNavigationMenu) |
75 @subscriber(IObjectAddedEvent, parent_selector=ISimpleNavigationMenu) |
72 def handle_added_navigation_link(event): |
76 def handle_added_navigation_link(event): |
73 alsoProvides(event.object, IBasicIllustrationTarget) |
77 alsoProvides(event.object, IBasicIllustrationTarget) |