# HG changeset patch # User Adrien Di Mascio # Date 1234985112 -3600 # Node ID 394927376a01f04cae3756bbf6ad6c7eb9d3a865 # Parent 3f08481e6e51dc0c75ca56f23ef083bd9e28d5c8 two use cases for the 'not' selector diff -r 3f08481e6e51 -r 394927376a01 selectors.py --- a/selectors.py Wed Feb 18 20:23:43 2009 +0100 +++ b/selectors.py Wed Feb 18 20:25:12 2009 +0100 @@ -346,17 +346,14 @@ @objectify_selector @lltrace -def anonymous_user(cls, req, *args, **kwargs): +def authenticated_user(cls, req, *args, **kwargs): """accept if user is anonymous""" if req.cnx.anonymous_connection: - return 1 - return 0 + return 0 + return 1 -@objectify_selector -@lltrace -def authenticated_user(cls, req, *args, **kwargs): - """accept if user is authenticated""" - return not anonymous_user()(cls, req, *args, **kwargs) +def anonymous_user(): + return ~ authenticated_user() @objectify_selector @lltrace diff -r 3f08481e6e51 -r 394927376a01 web/views/basetemplates.py --- a/web/views/basetemplates.py Wed Feb 18 20:23:43 2009 +0100 +++ b/web/views/basetemplates.py Wed Feb 18 20:25:12 2009 +0100 @@ -75,15 +75,11 @@ return 0 return view.templatable -@objectify_selector -def non_templatable_view(cls, req, rset, *args, **kwargs): - return not templatable_view()(cls, req, rset, *args, **kwargs) - class NonTemplatableViewTemplate(MainTemplate): """main template for any non templatable views (xml, binaries, etc.)""" id = 'main-template' - __select__ = non_templatable_view() + __select__ = ~ templatable_view() def call(self, view): view.set_request_content_type()