Send out-of-date notifications to co-maintainers

Currently, only package maintainers receive out-of-date notifications
for their packages. Add package base co-maintainers to the list of
recipients for out-of-date notifications.

Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
This commit is contained in:
Lukas Fleischer 2016-11-13 15:35:37 +01:00
parent d987d756b0
commit e9ac4b9b9e

View file

@ -73,12 +73,15 @@ def get_user_email(conn, uid):
return cur.fetchone()[0] return cur.fetchone()[0]
def get_maintainer_email(conn, pkgbase_id): def get_flag_recipients(conn, pkgbase_id):
cur = conn.execute('SELECT Users.Email FROM Users ' + cur = conn.execute('SELECT DISTINCT Users.Email FROM Users ' +
'LEFT JOIN PackageComaintainers ' +
'ON PackageComaintainers.UsersID = Users.ID ' +
'INNER JOIN PackageBases ' + 'INNER JOIN PackageBases ' +
'ON PackageBases.MaintainerUID = Users.ID WHERE ' + 'ON PackageBases.MaintainerUID = Users.ID OR ' +
'PackageBases.ID = ?', [pkgbase_id]) 'PackageBases.ID = PackageComaintainers.PackageBaseID ' +
return cur.fetchone()[0] 'WHERE PackageBases.ID = ?', [pkgbase_id])
return [row[0] for row in cur.fetchall()]
def get_recipients(conn, pkgbase_id, uid): def get_recipients(conn, pkgbase_id, uid):
@ -247,7 +250,7 @@ def update(conn, uid, pkgbase_id):
def flag(conn, uid, pkgbase_id): def flag(conn, uid, pkgbase_id):
user = username_from_id(conn, uid) user = username_from_id(conn, uid)
pkgbase = pkgbase_from_id(conn, pkgbase_id) pkgbase = pkgbase_from_id(conn, pkgbase_id)
to = [get_maintainer_email(conn, pkgbase_id)] to = get_flag_recipients(conn, pkgbase_id)
text = get_flagger_comment(conn, pkgbase_id) text = get_flagger_comment(conn, pkgbase_id)
user_uri = aur_location + '/account/' + user + '/' user_uri = aur_location + '/account/' + user + '/'