entities/authobjs.py
changeset 3378 2f25f701301d
parent 3377 dd9d292b6a6d
child 3380 3be33dc83d8b
equal deleted inserted replaced
3377:dd9d292b6a6d 3378:2f25f701301d
    89         # to config['anonymous-user'], we don't have this info on
    89         # to config['anonymous-user'], we don't have this info on
    90         # the server side.
    90         # the server side.
    91         return self.groups == frozenset(('guests', ))
    91         return self.groups == frozenset(('guests', ))
    92 
    92 
    93     def owns(self, eid):
    93     def owns(self, eid):
    94         if hasattr(self.req, 'unsafe_execute'):
    94         if hasattr(self._cw, 'unsafe_execute'):
    95             # use unsafe_execute on the repository side, in case
    95             # use unsafe_execute on the repository side, in case
    96             # session's user doesn't have access to CWUser
    96             # session's user doesn't have access to CWUser
    97             execute = self.req.unsafe_execute
    97             execute = self._cw.unsafe_execute
    98         else:
    98         else:
    99             execute = self.req.execute
    99             execute = self._cw.execute
   100         try:
   100         try:
   101             return execute('Any X WHERE X eid %(x)s, X owned_by U, U eid %(u)s',
   101             return execute('Any X WHERE X eid %(x)s, X owned_by U, U eid %(u)s',
   102                            {'x': eid, 'u': self.eid}, 'x')
   102                            {'x': eid, 'u': self.eid}, 'x')
   103         except Unauthorized:
   103         except Unauthorized:
   104             return False
   104             return False
   112         if contexteid is not None:
   112         if contexteid is not None:
   113             rql += ', X require_permission P, X eid %(x)s'
   113             rql += ', X require_permission P, X eid %(x)s'
   114             kwargs['x'] = contexteid
   114             kwargs['x'] = contexteid
   115             cachekey = 'x'
   115             cachekey = 'x'
   116         try:
   116         try:
   117             return self.req.execute(rql, kwargs, cachekey)
   117             return self._cw.execute(rql, kwargs, cachekey)
   118         except Unauthorized:
   118         except Unauthorized:
   119             return False
   119             return False
   120 
   120 
   121     # presentation utilities ##################################################
   121     # presentation utilities ##################################################
   122 
   122 
   123     def name(self):
   123     def name(self):
   124         """construct a name using firstname / surname or login if not defined"""
   124         """construct a name using firstname / surname or login if not defined"""
   125 
   125 
   126         if self.firstname and self.surname:
   126         if self.firstname and self.surname:
   127             return self.req._('%(firstname)s %(surname)s') % {
   127             return self._cw._('%(firstname)s %(surname)s') % {
   128                 'firstname': self.firstname, 'surname' : self.surname}
   128                 'firstname': self.firstname, 'surname' : self.surname}
   129         if self.firstname:
   129         if self.firstname:
   130             return self.firstname
   130             return self.firstname
   131         return self.login
   131         return self.login
   132 
   132