Add optional Discord webhook support

This commit is contained in:
rubenwardy
2021-08-17 21:16:43 +01:00
parent e5cc140d42
commit 37a7dd28d6
7 changed files with 97 additions and 6 deletions

View File

@@ -15,6 +15,8 @@
# along with this program. If not, see <https://www.gnu.org/licenses/>.
from flask import *
from app.tasks.webhooktasks import post_discord_webhook
bp = Blueprint("threads", __name__)
from flask_login import current_user, login_required
@@ -243,6 +245,8 @@ def view(id):
approvers = User.query.filter(User.rank >= UserRank.APPROVER).all()
addNotification(approvers, current_user, NotificationType.EDITOR_MISC, msg,
thread.getViewURL(), thread.package)
post_discord_webhook.delay(current_user.username,
"Replied to bot messages: {}".format(thread.getViewURL(absolute=True)), True)
db.session.commit()
@@ -331,7 +335,6 @@ def new():
if is_review_thread:
package.review_thread = thread
notif_msg = "New thread '{}'".format(thread.title)
if package is not None:
addNotification(package.maintainers, current_user, NotificationType.NEW_THREAD, notif_msg, thread.getViewURL(), package)
@@ -339,6 +342,10 @@ def new():
approvers = User.query.filter(User.rank >= UserRank.APPROVER).all()
addNotification(approvers, current_user, NotificationType.EDITOR_MISC, notif_msg, thread.getViewURL(), package)
if is_review_thread:
post_discord_webhook.delay(current_user.username,
"Opened approval thread: {}".format(thread.getViewURL(absolute=True)), True)
db.session.commit()
return redirect(thread.getViewURL())