From 00e6320b9973260cfdcf7c697d851549dd599699 Mon Sep 17 00:00:00 2001 From: Leopere Date: Wed, 4 Mar 2026 18:35:43 -0500 Subject: [PATCH] Grant active subscription on payment: add user to customers group in success + webhook Made-with: Cursor --- docker/ss-atlas/internal/handlers/subscription.go | 5 +++++ docker/ss-atlas/internal/handlers/webhook.go | 3 +++ 2 files changed, 8 insertions(+) diff --git a/docker/ss-atlas/internal/handlers/subscription.go b/docker/ss-atlas/internal/handlers/subscription.go index 9eb2788..4706753 100644 --- a/docker/ss-atlas/internal/handlers/subscription.go +++ b/docker/ss-atlas/internal/handlers/subscription.go @@ -149,6 +149,11 @@ func (a *App) handleSuccess(w http.ResponseWriter, r *http.Request) { } } + // Grant active subscription: add to customers group so dashboard shows subscribed. + if err := a.ldap.AddToGroup(result.Username, "customers"); err != nil { + log.Printf("ldap add to customers failed for %s: %v", result.Username, err) + } + inGroup, _ := a.ldap.IsInGroup(result.Username, "customers") if result.IsNew || !inGroup { diff --git a/docker/ss-atlas/internal/handlers/webhook.go b/docker/ss-atlas/internal/handlers/webhook.go index df06152..e69f0c4 100644 --- a/docker/ss-atlas/internal/handlers/webhook.go +++ b/docker/ss-atlas/internal/handlers/webhook.go @@ -73,6 +73,9 @@ func (a *App) onCheckoutCompleted(event stripego.Event) { if err := a.ldap.EnsureUser(username, email, customerID, phone); err != nil { log.Printf("webhook: ldap ensure user failed: %v", err) } + if err := a.ldap.AddToGroup(username, "customers"); err != nil { + log.Printf("webhook: ldap add to customers failed for %s: %v", username, err) + } if sess.Metadata != nil { if d := sess.Metadata["customer_domain"]; d != "" { if err := a.ldap.SetCustomerDomain(username, d); err != nil {