From a3ae62afd2eecb3831e2483f94d2db6a1d6bb748 Mon Sep 17 00:00:00 2001 From: Tor Andersson Date: Wed, 6 Sep 2023 20:41:52 +0200 Subject: Notification system improvements. Enable webhook notification support with .env WEBHOOKS=1 Send notifications when invited to a game. Use notification "too soon" logic for webhooks as well. Try sending webhooks 3 times before giving up. Check if player is on the join page instead of the funky "offline" check when sending "your game is ready" notification. Only show mail/webhook notification settings if they are enabled. --- views/header.pug | 3 ++- views/index.pug | 5 +++++ views/profile.pug | 33 +++++++++++++++++++-------------- 3 files changed, 26 insertions(+), 15 deletions(-) (limited to 'views') diff --git a/views/header.pug b/views/header.pug index 61f5250..c417665 100644 --- a/views/header.pug +++ b/views/header.pug @@ -4,7 +4,8 @@ header nav a(href="/about") About if user - a(href="/forum") Forum + if ENABLE_FORUM + a(href="/forum") Forum a(href="/games/public") Public if user.active > 0 a(href="/games/active") Games (#{user.active}) diff --git a/views/index.pug b/views/index.pug index 6b90638..8e399a7 100644 --- a/views/index.pug +++ b/views/index.pug @@ -48,3 +48,8 @@ html a(href="/"+title.title_id)= title.title_name p!= process.env.SITE_INVITE + + if !ENABLE_MAIL + p.error Mail notifications disabled. + if !ENABLE_WEBHOOKS + p.error Webhook notifications disabled. diff --git a/views/profile.pug b/views/profile.pug index 63d3018..d884f8f 100644 --- a/views/profile.pug +++ b/views/profile.pug @@ -12,10 +12,14 @@ html p Welcome, #{user.name}! p Your mail address is #{user.mail} - if user.notify - p Disable mail notifications - else - p Enable mail notifications + if ENABLE_MAIL + if !user.is_verified + p Verify your mail address + + if user.notify + p Disable mail notifications + else + p Enable mail notifications p | Change password @@ -28,16 +32,17 @@ html br | Delete account - if !user.webhook - p Configure webhook - else if user.webhook.error - dl - dt Configure webhook - dd.error ERROR: #{user.webhook.error} - else - dl - dt Configure webhook - dd= new URL(user.webhook.url).hostname + if ENABLE_WEBHOOKS + if !user.webhook + p Configure webhook + else if user.webhook.error + dl + dt Configure webhook + dd.error ERROR: #{user.webhook.error} + else + dl + dt Configure webhook + dd= new URL(user.webhook.url).hostname p form(action="/logout" method="post") -- cgit v1.2.3