equal
deleted
inserted
replaced
13 from persistent import Persistent |
13 from persistent import Persistent |
14 from zope.container.contained import Contained |
14 from zope.container.contained import Contained |
15 from zope.interface import Interface |
15 from zope.interface import Interface |
16 from zope.schema.fieldproperty import FieldProperty |
16 from zope.schema.fieldproperty import FieldProperty |
17 |
17 |
|
18 from pyams_content.shared.logo import IWfLogo |
18 from pyams_content.shared.view.portlet.interfaces import IViewItemsPortletSettings |
19 from pyams_content.shared.view.portlet.interfaces import IViewItemsPortletSettings |
19 from pyams_default_theme.features.search.portlet import HIDDEN_HEADER_DISPLAY, START_HEADER_DISPLAY |
20 from pyams_default_theme.features.search.portlet import HIDDEN_HEADER_DISPLAY, START_HEADER_DISPLAY |
20 from pyams_default_theme.shared.view.portlet.interfaces import \ |
21 from pyams_default_theme.shared.view.portlet.interfaces import \ |
21 IViewItemsPortletHorizontalRendererSettings, IViewItemsPortletSummaryRendererSettings, \ |
22 IViewItemsPortletHorizontalRendererSettings, IViewItemsPortletSummaryRendererSettings, \ |
22 IViewItemsPortletVerticalRendererSettings |
23 IViewItemsPortletVerticalRendererSettings |
38 |
39 |
39 class BaseViewItemsPortletRenderer(PortletRenderer): |
40 class BaseViewItemsPortletRenderer(PortletRenderer): |
40 """Base view items portlet renderer""" |
41 """Base view items portlet renderer""" |
41 |
42 |
42 def get_url(self, target): |
43 def get_url(self, target): |
|
44 if IWfLogo.providedBy(target): |
|
45 if target.target is None: |
|
46 return target.url |
|
47 target = target.target |
43 if self.settings.force_canonical_url: |
48 if self.settings.force_canonical_url: |
44 return canonical_url(target, self.request) |
49 return canonical_url(target, self.request) |
45 else: |
50 return relative_url(target, self.request) |
46 return relative_url(target, self.request) |
|
47 |
51 |
48 def render(self): |
52 def render(self): |
49 result = super(BaseViewItemsPortletRenderer, self).render() |
53 result = super(BaseViewItemsPortletRenderer, self).render() |
50 if self.settings.first_page_only: |
54 if self.settings.first_page_only: |
51 start = int(self.request.params.get('start', 0)) |
55 start = int(self.request.params.get('start', 0)) |