8 |
8 |
9 from cubicweb.common.appobject import Component, SingletonComponent |
9 from cubicweb.common.appobject import Component, SingletonComponent |
10 from cubicweb.common.utils import merge_dicts |
10 from cubicweb.common.utils import merge_dicts |
11 from cubicweb.common.view import VComponent, SingletonVComponent |
11 from cubicweb.common.view import VComponent, SingletonVComponent |
12 from cubicweb.common.registerers import action_registerer |
12 from cubicweb.common.registerers import action_registerer |
13 from cubicweb.common.selectors import (largerset_selector, onelinerset_selector, |
13 from cubicweb.common.selectors import (paginated_rset, one_line_rset, |
14 etype_rtype_selector, rqlcondition_selector, |
14 etype_rtype_selector, rqlcondition_selector, |
15 accept_selector, contextprop_selector, |
15 accept_selector, contextprop_selector, |
16 primaryview_selector, accept_rtype_selector) |
16 primaryview_selector, accept_rtype_selector) |
17 from cubicweb.common.uilib import html_escape |
17 from cubicweb.common.uilib import html_escape |
18 |
18 |
30 .context class attributes |
30 .context class attributes |
31 """ |
31 """ |
32 |
32 |
33 __registry__ = 'contentnavigation' |
33 __registry__ = 'contentnavigation' |
34 __registerer__ = action_registerer |
34 __registerer__ = action_registerer |
35 __selectors__ = (onelinerset_selector, primaryview_selector, |
35 __selectors__ = (one_line_rset, primaryview_selector, |
36 contextprop_selector, etype_rtype_selector, |
36 contextprop_selector, etype_rtype_selector, |
37 accept_rtype_selector, accept_selector, |
37 accept_rtype_selector, accept_selector, |
38 rqlcondition_selector) |
38 rqlcondition_selector) |
39 |
39 |
40 property_defs = { |
40 property_defs = { |
59 raise RuntimeError() |
59 raise RuntimeError() |
60 |
60 |
61 |
61 |
62 class NavigationComponent(VComponent): |
62 class NavigationComponent(VComponent): |
63 """abstract base class for navigation components""" |
63 """abstract base class for navigation components""" |
64 __selectors__ = (largerset_selector,) |
64 __selectors__ = (paginated_rset,) |
65 id = 'navigation' |
65 id = 'navigation' |
66 page_size_property = 'navigation.page-size' |
66 page_size_property = 'navigation.page-size' |
67 start_param = '__start' |
67 start_param = '__start' |
68 stop_param = '__stop' |
68 stop_param = '__stop' |
69 page_link_templ = u'<span class="slice"><a href="%s" title="%s">%s</a></span>' |
69 page_link_templ = u'<span class="slice"><a href="%s" title="%s">%s</a></span>' |
133 return self.next_page_link_templ % (url, title, content) |
133 return self.next_page_link_templ % (url, title, content) |
134 |
134 |
135 |
135 |
136 class RelatedObjectsVComponent(EntityVComponent): |
136 class RelatedObjectsVComponent(EntityVComponent): |
137 """a section to display some related entities""" |
137 """a section to display some related entities""" |
138 __selectors__ = (onelinerset_selector, primaryview_selector, |
138 __selectors__ = (one_line_rset, primaryview_selector, |
139 etype_rtype_selector, accept_rtype_selector, |
139 etype_rtype_selector, accept_rtype_selector, |
140 contextprop_selector, accept_selector) |
140 contextprop_selector, accept_selector) |
141 vid = 'list' |
141 vid = 'list' |
142 |
142 |
143 def rql(self): |
143 def rql(self): |