Sto configurando un forum Discourse protetto per un club automobilistico e sto riscontrando problemi quando un abbonato accede al sito. Attualmente ho del codice personalizzato che verifica se l’utente appartiene a un gruppo. In caso contrario, viene reindirizzato al nostro sito Web, che dispone di collegamenti di acquisto Stripe per ciascuna delle tre quote di adesione che offriamo.
Ecco il codice:
<script type="text/discourse-plugin" version="0.8.42"> api.onPageChange((url, title) => { const allowedGroups = ['Lite', 'Member', 'VIP', 'staff']; const isUserInAllowedGroup = api.getCurrentUser().groups.some(group => allowedGroups.includes(group.name)); if (!isUserInAllowedGroup) { window.location.href = "https://centralcoastdriversclub.webflow.io/select-a-plan"; } }); </script>
Ho letto la documentazione sull’installazione, configurato i tre eventi webhook e seguito tutto alla lettera, ma ancora non riesco a farlo funzionare correttamente. Il mio primo problema è che quando utilizzo i collegamenti di acquisto del prodotto da Stripe sul mio sito Web, i webhook sembrano restituire un errore 422 con “email not found” per checkout.session.completed e “customer not found” per customer.subscription.updated. Questo, ovviamente, non crea un abbonamento in Discourse né aggiunge l’utente al gruppo. Idealmente, vorrei avere un collegamento dal mio sito Web che porti le persone alla specifica quota di adesione che stanno acquistando.
Se provo a testarlo tramite l’URL del forum /s/subscriptions, i membri vengono aggiunti a Discourse nella scheda abbonamenti, ma purtroppo non vengono ancora aggiunti al loro rispettivo gruppo. Ho anche notato che quando si passa attraverso Discourse, utilizza un collegamento dinamico che blocca l’e-mail all’account dell’utente, interessante!
Come potresti aver intuito dal mio codice e dalla spiegazione precedente, se l’utente non viene aggiunto al gruppo corretto, non è in grado di visualizzare il forum poiché il codice lo reindirizza.
Devo aver perso qualcosa, ma non riesco a capirlo.
Qualsiasi aiuto è molto apprezzato, grazie in anticipo!