Files
www/membership/members/urls.py
T
claudeandClaude Opus 5.5 98e09627ed Membership: newsletter opt-in at signup and on the profile
An unticked checkbox on registration subscribes the verified address to
the listmonk list (preconfirmed) once the account exists. The profile
page gets a subscribe/unsubscribe toggle, and verified email changes
follow through to listmonk. Newsletter outages never block accounts.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-06 20:27:40 -05:00

26 lines
1.3 KiB
Python
Executable File

from django.urls import path
from . import views
app_name = "members"
urlpatterns = [
path("", views.home, name="home"),
path("register/", views.register, name="register"),
path("verify/<str:token>/", views.verify, name="verify"),
path("register/finish/", views.finish_registration, name="finish_registration"),
path("login/", views.login, name="login"),
path("oidc/callback/", views.callback, name="callback"),
path("logout/", views.logout, name="logout"),
path("profile/", views.profile, name="profile"),
path("profile/photo/", views.profile_photo, name="profile_photo"),
path("profile/email/verify/<str:token>/", views.verify_profile_email, name="verify_profile_email"),
path("profile/email/confirm/", views.confirm_profile_email, name="confirm_profile_email"),
path("profile/newsletter/", views.newsletter_preference, name="newsletter"),
path("checkout/<slug:tier>/", views.checkout, name="checkout"),
path("billing/", views.portal, name="portal"),
path("stripe/webhook/", views.webhook, name="webhook"),
path("crypto/checkout/<slug:tier>/", views.crypto_checkout, name="crypto_checkout"),
path("crypto/invoice/<uuid:invoice_id>/", views.crypto_invoice, name="crypto_invoice"),
path("shkeeper/callback/", views.shkeeper_callback, name="shkeeper_callback"),
]