Add a logs view for specific members of an organization
This commit is contained in:
parent
59046b2e79
commit
a0f9e1646a
7 changed files with 124 additions and 8 deletions
|
@ -459,12 +459,13 @@ def get_organization_team(orgname, teamname):
|
|||
return result[0]
|
||||
|
||||
|
||||
def get_organization_members_with_teams(organization):
|
||||
def get_organization_members_with_teams(organization, membername = None):
|
||||
joined = TeamMember.select().annotate(Team).annotate(User)
|
||||
query = joined.where(Team.organization == organization)
|
||||
if membername:
|
||||
query = query.where(User.username == membername)
|
||||
return query
|
||||
|
||||
|
||||
def get_organization_team_members(teamid):
|
||||
joined = User.select().join(TeamMember).join(Team)
|
||||
query = joined.where(Team.id == teamid)
|
||||
|
@ -1058,11 +1059,14 @@ def delete_webhook(namespace_name, repository_name, public_id):
|
|||
webhook.delete_instance()
|
||||
return webhook
|
||||
|
||||
def list_logs(user_or_organization_name, start_time, repository = None):
|
||||
def list_logs(user_or_organization_name, start_time, performer = None, repository = None):
|
||||
joined = LogEntry.select().join(User)
|
||||
if repository:
|
||||
joined = joined.where(LogEntry.repository == repository)
|
||||
|
||||
if performer:
|
||||
joined = joined.where(LogEntry.performer == performer)
|
||||
|
||||
return joined.where(User.username == user_or_organization_name, LogEntry.datetime >= start_time).order_by(LogEntry.datetime.desc())
|
||||
|
||||
def log_action(kind_name, user_or_organization_name, performer=None, repository=None,
|
||||
|
|
Reference in a new issue