17 |
17 |
18 # import interfaces |
18 # import interfaces |
19 from pyams_skin.interfaces import IContextTitlePrefix |
19 from pyams_skin.interfaces import IContextTitlePrefix |
20 from pyams_skin.interfaces.configuration import IBackOfficeConfiguration |
20 from pyams_skin.interfaces.configuration import IBackOfficeConfiguration |
21 from pyams_skin.layer import IPyAMSLayer |
21 from pyams_skin.layer import IPyAMSLayer |
22 from pyams_utils.interfaces.site import ISiteRoot |
|
23 |
22 |
24 # import packages |
23 # import packages |
25 from pyams_utils.adapter import adapter_config, ContextRequestAdapter |
24 from pyams_utils.adapter import adapter_config, ContextRequestAdapter |
26 from pyams_utils.traversing import get_parent |
|
27 from zope.interface import Interface |
25 from zope.interface import Interface |
28 |
26 |
29 |
27 |
30 @adapter_config(context=(Interface, IPyAMSLayer), provides=IContextTitlePrefix) |
28 @adapter_config(context=(Interface, IPyAMSLayer), provides=IContextTitlePrefix) |
31 class ContextTitlePrefixAdapter(ContextRequestAdapter): |
29 class ContextTitlePrefixAdapter(ContextRequestAdapter): |
32 """Context title prefix adapter""" |
30 """Context title prefix adapter""" |
33 |
31 |
34 @property |
32 @property |
35 def prefix(self): |
33 def prefix(self): |
36 root = get_parent(self.context, ISiteRoot) |
34 configuration = IBackOfficeConfiguration(self.request.root, None) |
37 if root is not None: |
35 if configuration is not None: |
38 configuration = IBackOfficeConfiguration(root, None) |
36 return configuration.short_title |
39 if configuration is not None: |
|
40 return configuration.short_title |
|