diff --git a/account/src/routers/auth-router.ts b/account/src/routers/auth-router.ts index 925a51e..566504e 100644 --- a/account/src/routers/auth-router.ts +++ b/account/src/routers/auth-router.ts @@ -42,7 +42,12 @@ const authRouter = (passport: PassportStatic) => { if (!req.isAuthenticated()) { return res.redirect("/"); } - res.render("user", { user: req.user, error: null, removeProviderOption: canRemoveOneOutsideProvider(req.user) }); + res.render("user", { + user: req.user, + error: null, + removeProviderOption: canRemoveOneOutsideProvider(req.user), + upgrade: req.query.upgrade, + }); }); router.post("/user", async (req, res, next) => { diff --git a/account/src/routers/payment-router.ts b/account/src/routers/payment-router.ts index 0cd0ea1..89ce73d 100644 --- a/account/src/routers/payment-router.ts +++ b/account/src/routers/payment-router.ts @@ -25,21 +25,19 @@ paymentRouter.post("/create-checkout-session", async (req, res, next) => { lookup_keys: [req.body.lookup_key], expand: ['data.product'], }); - console.log(prices); const session = await stripe.checkout.sessions.create({ billing_address_collection: 'auto', line_items: [ { - price: prices.data[0].id, - // For metered billing, do not pass quantity - quantity: 1, - + price: prices.data[0].id, + // For metered billing, do not pass quantity + quantity: 1, }, ], mode: 'subscription', // TODO ADD URLS - success_url: `https://account.lingdocs.com/`, - cancel_url: `https://account.lingdocs.com/`, + success_url: `https://account.lingdocs.com/user?upgrade=success`, + cancel_url: `https://account.lingdocs.com/user`, }); if (!session.url) { return next("error creating session url"); diff --git a/account/views/user.ejs b/account/views/user.ejs index 19e2baa..5f1061f 100644 --- a/account/views/user.ejs +++ b/account/views/user.ejs @@ -52,11 +52,18 @@
Account Level: <%= user.level.charAt(0).toUpperCase() + user.level.slice(1) %>
+ <% if (upgrade === "success") { %> +

🎉 Subscription started. Thank you for your purchase! 🎉

+ <% } %> <% if (user.level === "basic") { %> <% if (user.upgradeToStudentRequest === "waiting") { %>

Wating for upgrade approval

- <% } else { %> - + <% } %> + <% if (user.tester) { %> +
+ + +
<% } %> <% } %> <% if (user.email) { %> @@ -173,24 +180,23 @@ console.error(e); } } - function handleRequestUpgrade() { - console.log("got here"); - const btn = document.getElementById("upgrade-request-button"); - btn.innerHTML = "Sending..."; - fetch("/api/user/upgradeToStudentRequest", { - method: "POST", - }).then((res) => res.json()).then((res) => { - console.log(res); - if (res.ok) { - btn.innerHTML = "Upgrade request sent"; - } else { - btn.innerHTML = "Error requesting upgrade"; - } - }).catch((e) => { - console.error(e); - btn.innerHTML = "Error requesting upgrade"; - }); - } + // function handleRequestUpgrade() { + // const btn = document.getElementById("upgrade-request-button"); + // btn.innerHTML = "Sending..."; + // fetch("/api/user/upgradeToStudentRequest", { + // method: "POST", + // }).then((res) => res.json()).then((res) => { + // console.log(res); + // if (res.ok) { + // btn.innerHTML = "Upgrade request sent"; + // } else { + // btn.innerHTML = "Error requesting upgrade"; + // } + // }).catch((e) => { + // console.error(e); + // btn.innerHTML = "Error requesting upgrade"; + // }); + // } function clearPasswordForm() { document.getElementById("oldPassword").value = ""; document.getElementById("password").value = "";