@@ -515,25 +515,25 @@ class User(Base, BaseDbModel):
return ext_json.loads(self._user_data)
except TypeError:
return {}
@user_data.setter
def user_data(self, val):
try:
self._user_data = ascii_bytes(ext_json.dumps(val))
except Exception:
log.error(traceback.format_exc())
def __repr__(self):
return "<%s %s: %r')>" % (self.__class__.__name__, self.user_id, self.username)
return "<%s %s: %r>" % (self.__class__.__name__, self.user_id, self.username)
@classmethod
def guess_instance(cls, value):
return super(User, cls).guess_instance(value, User.get_by_username)
def get_or_404(cls, id_, allow_default=True):
'''
Overridden version of BaseDbModel.get_or_404, with an extra check on
the default user.
user = super(User, cls).get_or_404(id_)
@@ -755,25 +755,25 @@ class UserLog(Base, BaseDbModel):
)
user_log_id = Column(Integer(), primary_key=True)
user_id = Column(Integer(), ForeignKey('users.user_id'), nullable=True)
username = Column(String(255), nullable=False)
repository_id = Column(Integer(), ForeignKey('repositories.repo_id'), nullable=True)
repository_name = Column(Unicode(255), nullable=False)
user_ip = Column(String(255), nullable=True)
action = Column(UnicodeText(), nullable=False)
action_date = Column(DateTime(timezone=False), nullable=False)
return "<%s %r: %r')>" % (self.__class__.__name__,
return "<%s %r: %r>" % (self.__class__.__name__,
self.repository_name,
self.action)
@property
def action_as_day(self):
return datetime.date(*self.action_date.timetuple()[:3])
user = relationship('User')
repository = relationship('Repository', cascade='')
class UserGroup(Base, BaseDbModel):
@@ -808,25 +808,25 @@ class UserGroup(Base, BaseDbModel):
return ext_json.loads(self._group_data)
@group_data.setter
def group_data(self, val):
self._group_data = ascii_bytes(ext_json.dumps(val))
return "<%s %s: %r')>" % (self.__class__.__name__,
return "<%s %s: %r>" % (self.__class__.__name__,
self.users_group_id,
self.users_group_name)
return super(UserGroup, cls).guess_instance(value, UserGroup.get_by_group_name)
def get_by_group_name(cls, group_name, case_insensitive=False):
if case_insensitive:
q = cls.query().filter(sqlalchemy.func.lower(cls.users_group_name) == sqlalchemy.func.lower(group_name))
else:
Status change: