feat(panettone): Send email notifications for comments
When a user posts a comment on an issue, send email notifications (respecting the enable-email-notifications setting) to the author of that issue and all the other users who have commented on that issue. Since the oauth & gmail API stuff that the relay does is slow, this happens in a background thread. Change-Id: Ic00c265deab1030d9ba64c29c9f56314dd179141 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2805 Tested-by: BuildkiteCI Reviewed-by: sterni <sternenseemann@systemli.org> Reviewed-by: tazjin <mail@tazj.in>
This commit is contained in:
parent
349b98ccc8
commit
8d3ab61e7c
4 changed files with 46 additions and 2 deletions
|
|
@ -32,7 +32,7 @@
|
|||
(:use :cl :panettone.util :klatre :postmodern :iterate)
|
||||
(:import-from :alexandria :if-let :when-let :define-constant)
|
||||
(:export
|
||||
:connect-postgres :ddl/init
|
||||
:connect-postgres :ddl/init :make-thread
|
||||
|
||||
:user-settings
|
||||
:user-dn :enable-email-notifications-p :settings-for-user
|
||||
|
|
@ -46,7 +46,8 @@
|
|||
|
||||
:issue-events
|
||||
|
||||
:issue-comments :num-comments :create-issue-comment))
|
||||
:issue-comments :num-comments :create-issue-comment
|
||||
:issue-commenter-dns))
|
||||
|
||||
(defpackage panettone.email
|
||||
(:nicknames :email)
|
||||
|
|
@ -69,6 +70,7 @@
|
|||
(:import-from :defclass-std :defclass/std)
|
||||
(:import-from :alexandria :if-let :when-let :switch :alist-hash-table)
|
||||
(:import-from :cl-ppcre :split)
|
||||
(:import-from :bordeaux-threads :make-thread)
|
||||
(:import-from
|
||||
:panettone.model
|
||||
:id :subject :body :author-dn :issue-id :status :created-at
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue