8 |
8 |
9 from logilab.common.decorators import cached |
9 from logilab.common.decorators import cached |
10 from logilab.mtconverter import html_escape |
10 from logilab.mtconverter import html_escape |
11 |
11 |
12 from cubicweb import Unauthorized, role as get_role |
12 from cubicweb import Unauthorized, role as get_role |
|
13 from cubicweb.selectors import (one_line_rset, primary_view, |
|
14 match_context_prop, has_related_entities, |
|
15 accepts_compat, condition_compat) |
13 from cubicweb.common.registerers import ( |
16 from cubicweb.common.registerers import ( |
14 accepts_registerer, extresources_registerer, |
17 accepts_registerer, extresources_registerer, |
15 etype_rtype_priority_registerer) |
18 etype_rtype_priority_registerer) |
16 from cubicweb.common.selectors import ( |
|
17 one_line_rset, primary_view, match_context_prop, has_related_entities, |
|
18 accept_compat) |
|
19 #etype_rtype_selector, has_relation, |
19 #etype_rtype_selector, has_relation, |
20 from cubicweb.common.view import Template |
20 from cubicweb.common.view import Template |
21 from cubicweb.common.appobject import ReloadableMixIn |
21 from cubicweb.common.appobject import ReloadableMixIn |
22 |
22 |
23 from cubicweb.web.htmlwidgets import (BoxLink, BoxWidget, SideBoxWidget, |
23 from cubicweb.web.htmlwidgets import (BoxLink, BoxWidget, SideBoxWidget, |
151 """base class for boxes related to a single entity""" |
151 """base class for boxes related to a single entity""" |
152 __registerer__ = accepts_registerer |
152 __registerer__ = accepts_registerer |
153 __selectors__ = (one_line_rset, primary_view, |
153 __selectors__ = (one_line_rset, primary_view, |
154 match_context_prop,) |
154 match_context_prop,) |
155 #etype_rtype_selector, has_relation) |
155 #etype_rtype_selector, has_relation) |
156 registered = accepts_compat(condition_compat(BoxTemplate.registered.im_func)) |
156 registered = accepts_compat(condition_compat(BoxTemplate.registered)) |
157 context = 'incontext' |
157 context = 'incontext' |
158 |
158 |
159 def call(self, row=0, col=0, **kwargs): |
159 def call(self, row=0, col=0, **kwargs): |
160 """classes inheriting from EntityBoxTemplate should define cell_call""" |
160 """classes inheriting from EntityBoxTemplate should define cell_call""" |
161 self.cell_call(row, col, **kwargs) |
161 self.cell_call(row, col, **kwargs) |