web/facet.py
changeset 2656 a93ae0f6c0ad
parent 2650 18aec79ec3a3
child 2658 5535857eeaa5
equal deleted inserted replaced
2655:48cd71bdb5cd 2656:a93ae0f6c0ad
    22 
    22 
    23 from cubicweb import Unauthorized, typed_eid
    23 from cubicweb import Unauthorized, typed_eid
    24 from cubicweb.schema import display_name
    24 from cubicweb.schema import display_name
    25 from cubicweb.utils import datetime2ticks, make_uid, ustrftime
    25 from cubicweb.utils import datetime2ticks, make_uid, ustrftime
    26 from cubicweb.selectors import match_context_prop, partial_relation_possible
    26 from cubicweb.selectors import match_context_prop, partial_relation_possible
    27 from cubicweb.appobject import AppRsetObject
    27 from cubicweb.appobject import AppObject
    28 from cubicweb.web.htmlwidgets import HTMLWidget
    28 from cubicweb.web.htmlwidgets import HTMLWidget
    29 
    29 
    30 ## rqlst manipulation functions used by facets ################################
    30 ## rqlst manipulation functions used by facets ################################
    31 
    31 
    32 def prepare_facets_rqlst(rqlst, args=None):
    32 def prepare_facets_rqlst(rqlst, args=None):
   239                 toremove.add(rqlst.defined_vars[ovarname])
   239                 toremove.add(rqlst.defined_vars[ovarname])
   240 
   240 
   241 
   241 
   242 
   242 
   243 ## base facet classes #########################################################
   243 ## base facet classes #########################################################
   244 class AbstractFacet(AppRsetObject):
   244 class AbstractFacet(AppObject):
   245     __abstract__ = True
   245     __abstract__ = True
   246     __registry__ = 'facets'
   246     __registry__ = 'facets'
   247     property_defs = {
   247     property_defs = {
   248         _('visible'): dict(type='Boolean', default=True,
   248         _('visible'): dict(type='Boolean', default=True,
   249                            help=_('display the box or not')),
   249                            help=_('display the box or not')),
   263     def selected(cls, req, rset=None, rqlst=None, context=None,
   263     def selected(cls, req, rset=None, rqlst=None, context=None,
   264                  filtered_variable=None):
   264                  filtered_variable=None):
   265         assert rset is not None or rqlst is not None
   265         assert rset is not None or rqlst is not None
   266         assert filtered_variable
   266         assert filtered_variable
   267         instance = super(AbstractFacet, cls).selected(req, rset)
   267         instance = super(AbstractFacet, cls).selected(req, rset)
   268         #instance = AppRsetObject.selected(req, rset)
   268         #instance = AppObject.selected(req, rset)
   269         #instance.__class__ = cls
   269         #instance.__class__ = cls
   270         # facet retreived using `object_by_id` from an ajax call
   270         # facet retreived using `object_by_id` from an ajax call
   271         if rset is None:
   271         if rset is None:
   272             instance.init_from_form(rqlst=rqlst)
   272             instance.init_from_form(rqlst=rqlst)
   273         # facet retreived from `select` using the result set to filter
   273         # facet retreived from `select` using the result set to filter