# HG changeset patch # User Sylvain Thénault # Date 1267541919 -3600 # Node ID 5d937aeaa6fb7e388e00fb4ff6d46b5753fe7a54 # Parent a2c73b272c9b30a8085c260324f5a279dcb99f42 do not check for use template permission when session is super session or integrity hooks are deactivated diff -r a2c73b272c9b -r 5d937aeaa6fb schema.py --- a/schema.py Tue Mar 02 15:57:32 2010 +0100 +++ b/schema.py Tue Mar 02 15:58:39 2010 +0100 @@ -1082,8 +1082,16 @@ cw = entity._cw elif form is not None: cw = form._cw - if cw is not None and cw.user.has_permission(PERM_USE_TEMPLATE_FORMAT): - return self.regular_formats + tuple(NEED_PERM_FORMATS) + if cw is not None: + if hasattr(cw, 'is_super_session'): + # cw is a server session + hasperm = cw.is_super_session or \ + not cw.vreg.config.is_hook_category_activated('integrity') or \ + cw.user.has_permission(PERM_USE_TEMPLATE_FORMAT) + else: + hasperm = cw.user.has_permission(PERM_USE_TEMPLATE_FORMAT) + if hasperm: + return self.regular_formats + tuple(NEED_PERM_FORMATS) return self.regular_formats # XXX monkey patch PyFileReader.import_erschema until bw_normalize_etype is