summaryrefslogtreecommitdiffstats
path: root/aurweb/scripts
diff options
context:
space:
mode:
authorLukas Fleischer <lfleischer@archlinux.org>2016-11-13 15:35:37 +0100
committerLukas Fleischer <lfleischer@archlinux.org>2016-11-13 15:38:44 +0100
commite9ac4b9b9ee797a1a0c09e9c3b14ae7d498ea8ea (patch)
tree98330bca926db5eab285a98d63281f73a9553d8b /aurweb/scripts
parentd987d756b0cf9239425244b26b53d1756c384c4f (diff)
downloadaur-e9ac4b9b9ee797a1a0c09e9c3b14ae7d498ea8ea.tar.gz
aur-e9ac4b9b9ee797a1a0c09e9c3b14ae7d498ea8ea.tar.xz
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>
Diffstat (limited to 'aurweb/scripts')
-rwxr-xr-xaurweb/scripts/notify.py15
1 files changed, 9 insertions, 6 deletions
diff --git a/aurweb/scripts/notify.py b/aurweb/scripts/notify.py
index ddd6e49b..8fdfeb9a 100755
--- a/aurweb/scripts/notify.py
+++ b/aurweb/scripts/notify.py
@@ -73,12 +73,15 @@ def get_user_email(conn, uid):
return cur.fetchone()[0]
-def get_maintainer_email(conn, pkgbase_id):
- cur = conn.execute('SELECT Users.Email FROM Users ' +
+def get_flag_recipients(conn, pkgbase_id):
+ cur = conn.execute('SELECT DISTINCT Users.Email FROM Users ' +
+ 'LEFT JOIN PackageComaintainers ' +
+ 'ON PackageComaintainers.UsersID = Users.ID ' +
'INNER JOIN PackageBases ' +
- 'ON PackageBases.MaintainerUID = Users.ID WHERE ' +
- 'PackageBases.ID = ?', [pkgbase_id])
- return cur.fetchone()[0]
+ 'ON PackageBases.MaintainerUID = Users.ID OR ' +
+ 'PackageBases.ID = PackageComaintainers.PackageBaseID ' +
+ 'WHERE PackageBases.ID = ?', [pkgbase_id])
+ return [row[0] for row in cur.fetchall()]
def get_recipients(conn, pkgbase_id, uid):
@@ -247,7 +250,7 @@ def update(conn, uid, pkgbase_id):
def flag(conn, uid, pkgbase_id):
user = username_from_id(conn, uid)
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)
user_uri = aur_location + '/account/' + user + '/'