common/view.py
branchtls-sprint
changeset 635 305da8d6aa2d
parent 633 087e3f1e87c8
child 640 8e64f12be69c
equal deleted inserted replaced
634:0badd061ce0f 635:305da8d6aa2d
    11 from warnings import warn
    11 from warnings import warn
    12 
    12 
    13 from logilab.mtconverter import html_escape
    13 from logilab.mtconverter import html_escape
    14 
    14 
    15 from cubicweb import NotAnEntity, NoSelectableObject
    15 from cubicweb import NotAnEntity, NoSelectableObject
       
    16 from cubicweb.selectors import (yes, match_user_groups, implements,
       
    17                                 nonempty_rset, none_rset)
       
    18 from cubicweb.selectors import require_group_compat, accepts_compat
    16 from cubicweb.common.registerers import accepts_registerer, priority_registerer
    19 from cubicweb.common.registerers import accepts_registerer, priority_registerer
    17 from cubicweb.common.selectors import (yes, match_user_groups, implements,
       
    18                                        nonempty_rset, none_rset)
       
    19 from cubicweb.common.appobject import AppRsetObject, ComponentMixIn
    20 from cubicweb.common.appobject import AppRsetObject, ComponentMixIn
    20 from cubicweb.common.utils import UStringIO, HTMLStream
    21 from cubicweb.common.utils import UStringIO, HTMLStream
    21 
    22 
    22 _ = unicode
    23 _ = unicode
    23 
       
    24 
       
    25 def require_group_compat(registered):
       
    26     def plug_selector(cls, vreg):
       
    27         cls = registered(cls, vreg)
       
    28         if getattr(cls, 'require_groups', None):
       
    29             warn('use "use match_user_groups(group1, group2)" instead of using require_groups',
       
    30                  DeprecationWarning)
       
    31             cls.__selectors__ += (match_user_groups(cls.require_groups),)
       
    32         return cls
       
    33     return classmethod(plug_selector)
       
    34 
       
    35 def accepts_compat(registered):
       
    36     def plug_selector(cls, vreg):
       
    37         cls = registered(cls, vreg)
       
    38         if getattr(cls, 'accepts', None):
       
    39             warn('use "use match_user_groups(group1, group2)" instead of using require_groups',
       
    40                  DeprecationWarning)
       
    41             cls.__selectors__ += (implements(*cls.accepts),)
       
    42         return cls
       
    43     return classmethod(plug_selector)
       
    44 
    24 
    45 
    25 
    46 # robots control
    26 # robots control
    47 NOINDEX = u'<meta name="ROBOTS" content="NOINDEX" />'
    27 NOINDEX = u'<meta name="ROBOTS" content="NOINDEX" />'
    48 NOFOLLOW = u'<meta name="ROBOTS" content="NOFOLLOW" />'
    28 NOFOLLOW = u'<meta name="ROBOTS" content="NOFOLLOW" />'