From 0e123f64590f07831ba665be822572eb45d6f29c Mon Sep 17 00:00:00 2001 From: Vins Date: Mon, 8 Apr 2024 15:32:01 +0200 Subject: [PATCH 1/2] Redirect manage subscription / upgradre subscription to stripe customer dashboard --- .../SubscriptionFacturation/index.tsx | 36 +++++++++---------- 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/src/front/Components/Layouts/Subscription/SubscriptionFacturation/index.tsx b/src/front/Components/Layouts/Subscription/SubscriptionFacturation/index.tsx index 7fe790bf..a6f71a62 100644 --- a/src/front/Components/Layouts/Subscription/SubscriptionFacturation/index.tsx +++ b/src/front/Components/Layouts/Subscription/SubscriptionFacturation/index.tsx @@ -106,23 +106,23 @@ export default function SubscriptionFacturation() {
{subscription.type === "UNLIMITED" && ( - - - + // + + // )} {subscription.type === "STANDARD" && ( <> - - - + }> */} + + {/* */} )} {subscription.type === "STANDARD" && ( - - - + // + + // )}
From 2e9d50f62e10c260f3a3ef08dce4c03e4507897d Mon Sep 17 00:00:00 2001 From: Vins Date: Mon, 8 Apr 2024 15:51:42 +0200 Subject: [PATCH 2/2] Added redirection to stripe dashboard --- .../SubscriptionFacturation/index.tsx | 40 ++++++++++++++----- 1 file changed, 30 insertions(+), 10 deletions(-) diff --git a/src/front/Components/Layouts/Subscription/SubscriptionFacturation/index.tsx b/src/front/Components/Layouts/Subscription/SubscriptionFacturation/index.tsx index a6f71a62..62e07d4a 100644 --- a/src/front/Components/Layouts/Subscription/SubscriptionFacturation/index.tsx +++ b/src/front/Components/Layouts/Subscription/SubscriptionFacturation/index.tsx @@ -22,14 +22,34 @@ export default function SubscriptionFacturation() { const router = useRouter(); const [subscription, setSubscription] = useState(null); - const { close: closeCancelSubscription, isOpen: isCancelSubscriptionOpen, open: openCancelSubscription } = useOpenable(); - const { close: closeConfirmation, isOpen: isConfirmationOpen, open: openConfirmation } = useOpenable(); + const { close: closeCancelSubscription, isOpen: isCancelSubscriptionOpen } = useOpenable(); + const { close: closeConfirmation, isOpen: isConfirmationOpen } = useOpenable(); - const cancelSubscription = useCallback(() => { - closeCancelSubscription(); - openConfirmation(); - return; - }, [closeCancelSubscription, openConfirmation]); + // const cancelSubscription = useCallback(() => { + // closeCancelSubscription(); + // openConfirmation(); + // return; + // }, [closeCancelSubscription, openConfirmation]); + + const manageSubscription = async () => { + try { + const jwt = JwtService.getInstance().decodeJwt(); + const subscription = await Subscriptions.getInstance().get({ where: { office: { uid: jwt?.office_Id } } }); + if (!subscription[0]) return; + const stripe_client_portal = await Stripe.getInstance().getClientPortalSession(subscription[0].stripe_subscription_id!); + router.push(stripe_client_portal.url + "/subscriptions/" + subscription[0].stripe_subscription_id + "/update"); + } catch (error) {} + }; + + const cancelSubscription = async () => { + try { + const jwt = JwtService.getInstance().decodeJwt(); + const subscription = await Subscriptions.getInstance().get({ where: { office: { uid: jwt?.office_Id } } }); + if (!subscription[0]) return; + const stripe_client_portal = await Stripe.getInstance().getClientPortalSession(subscription[0].stripe_subscription_id!); + router.push(stripe_client_portal.url + "/subscriptions/" + subscription[0].stripe_subscription_id + "/cancel"); + } catch (error) {} + }; const manageBilling = async () => { try { @@ -108,7 +128,7 @@ export default function SubscriptionFacturation() { {subscription.type === "UNLIMITED" && ( // - // @@ -177,7 +197,7 @@ export default function SubscriptionFacturation() { {subscription.type === "STANDARD" && ( // - // @@ -186,7 +206,7 @@ export default function SubscriptionFacturation() {
-