##// END OF EJS Templates
auth: fix failure when editing inactive users...
Mads Kiilerich -
r7638:1f831a8a default
parent child Browse files
Show More
@@ -440,32 +440,18 b' class AuthUser(object):'
440 440 assert dbuser is not None
441 441 log.debug('Auth User lookup by database user %s', dbuser)
442 442
443 if self._fill_data(dbuser):
444 self.is_default_user = dbuser.is_default_user
445 else:
446 assert dbuser.is_default_user
447 assert not self.username
443 log.debug('filling %s data', dbuser)
444 self.is_anonymous = dbuser.is_default_user
445 if dbuser.is_default_user and not dbuser.active:
448 446 self.username = 'None'
449 447 self.is_default_user = False
450 self.is_anonymous = dbuser.is_default_user
451
452 log.debug('Auth User is now %s', self)
453
454 def _fill_data(self, dbuser):
455 """
456 Copies database fields from a `db.User` to this `AuthUser`. Does
457 not copy `api_keys` and `permissions` attributes.
458
459 Checks that `dbuser` is `active` (and not None) before copying;
460 returns True on success.
461 """
462 if dbuser is not None and dbuser.active:
463 log.debug('filling %s data', dbuser)
448 else:
449 # copy non-confidential database fields from a `db.User` to this `AuthUser`.
464 450 for k, v in dbuser.get_dict().iteritems():
465 451 assert k not in ['api_keys', 'permissions']
466 452 setattr(self, k, v)
467 return True
468 return False
453 self.is_default_user = dbuser.is_default_user
454 log.debug('Auth User is now %s', self)
469 455
470 456 @LazyProperty
471 457 def permissions(self):
General Comments 0
You need to be logged in to leave comments. Login now