From 27844b7da2567491661f9ddd2d4662f9f1b3ce40 Mon Sep 17 00:00:00 2001 From: Vyr Cossont Date: Mon, 3 Feb 2025 02:25:53 -0800 Subject: [feature] Implement Web Push notification policy (#3721) * Web Push: add policy column to subscriptions * Web Push: add policy to API * Web Push: test notification policy * go-fmt unrelated file (how did this get thru?) --- internal/processing/push/update.go | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'internal/processing/push/update.go') diff --git a/internal/processing/push/update.go b/internal/processing/push/update.go index 370536f9b..94529455a 100644 --- a/internal/processing/push/update.go +++ b/internal/processing/push/update.go @@ -24,6 +24,7 @@ import ( apimodel "github.com/superseriousbusiness/gotosocial/internal/api/model" "github.com/superseriousbusiness/gotosocial/internal/db" "github.com/superseriousbusiness/gotosocial/internal/gtserror" + "github.com/superseriousbusiness/gotosocial/internal/typeutils" ) // Update updates the Web Push subscription for the given access token. @@ -50,10 +51,13 @@ func (p *Processor) Update( // Update it. subscription.NotificationFlags = alertsToNotificationFlags(request.Data.Alerts) + subscription.Policy = typeutils.APIWebPushNotificationPolicyToWebPushNotificationPolicy(*request.Data.Policy) + if err = p.state.DB.UpdateWebPushSubscription( ctx, subscription, "notification_flags", + "policy", ); err != nil { err := gtserror.Newf("couldn't update Web Push subscription for token ID %s: %w", tokenID, err) return nil, gtserror.NewErrorInternalError(err) -- cgit v1.2.3