web/views/facets.py
branchtls-sprint
changeset 1132 96752791c2b6
parent 758 0c0dfd33a76d
child 1802 d628defebc17
equal deleted inserted replaced
1131:544609e83317 1132:96752791c2b6
     9 from simplejson import dumps
     9 from simplejson import dumps
    10 
    10 
    11 from logilab.mtconverter import html_escape
    11 from logilab.mtconverter import html_escape
    12 
    12 
    13 from cubicweb.vregistry import objectify_selector
    13 from cubicweb.vregistry import objectify_selector
    14 from cubicweb.selectors import (chainfirst, chainall, non_final_entity,
    14 from cubicweb.selectors import (non_final_entity, two_lines_rset,
    15                                 two_lines_rset, match_context_prop,
    15                                 match_context_prop, yes, relation_possible)
    16                                 yes, relation_possible)
       
    17 from cubicweb.web.box import BoxTemplate
    16 from cubicweb.web.box import BoxTemplate
    18 from cubicweb.web.facet import (AbstractFacet, VocabularyFacet, FacetStringWidget,
    17 from cubicweb.web.facet import (AbstractFacet, FacetStringWidget, RelationFacet,
    19                              RelationFacet, prepare_facets_rqlst, filter_hiddens)
    18                                 prepare_facets_rqlst, filter_hiddens)
    20 
    19 
    21 @objectify_selector
    20 @objectify_selector
    22 def contextview_selector(cls, req, rset, row=None, col=None, view=None,
    21 def contextview_selector(cls, req, rset, row=None, col=None, view=None,
    23                          **kwargs):
    22                          **kwargs):
    24     if view and getattr(view, 'filter_box_context_info', lambda: None)():
    23     if view and getattr(view, 'filter_box_context_info', lambda: None)():
    58         req = self.req
    57         req = self.req
    59         req.add_js( ('cubicweb.ajax.js', 'cubicweb.formfilter.js') )
    58         req.add_js( ('cubicweb.ajax.js', 'cubicweb.formfilter.js') )
    60         req.add_css('cubicweb.facets.css')
    59         req.add_css('cubicweb.facets.css')
    61         if self.roundcorners:
    60         if self.roundcorners:
    62             req.html_headers.add_onload('jQuery(".facet").corner("tl br 10px");')
    61             req.html_headers.add_onload('jQuery(".facet").corner("tl br 10px");')
    63         rset, vid, divid, paginate=self._get_context(view)
    62         rset, vid, divid, paginate = self._get_context(view)
    64         if rset.rowcount < 2: # XXX done by selectors, though maybe necessary when rset has been hijacked
    63         if rset.rowcount < 2: # XXX done by selectors, though maybe necessary when rset has been hijacked
    65             return
    64             return
    66         if vid is None:
    65         if vid is None:
    67             vid = req.form.get('vid')
    66             vid = req.form.get('vid')
    68         rqlst = rset.syntax_tree()
    67         rqlst = rset.syntax_tree()