Merge pull request #726 from ente-io/expired-subscription-renewal

This commit is contained in:
Vishnu Mohandas 2022-09-25 18:44:55 +05:30 committed by GitHub
commit 74443e97dd
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 19 additions and 19 deletions

View file

@ -1,5 +1,5 @@
import { GalleryContext } from 'pages/gallery';
import React, { useContext, useMemo } from 'react';
import React, { MouseEventHandler, useContext, useMemo } from 'react';
import {
hasPaidSubscription,
isFamilyAdmin,
@ -43,19 +43,23 @@ export default function SubscriptionStatus({
}, [userDetails]);
const handleClick = useMemo(() => {
if (userDetails) {
if (isSubscriptionActive(userDetails.subscription)) {
if (hasExceededStorageQuota(userDetails)) {
return showPlanSelectorModal;
}
} else {
if (hasStripeSubscription(userDetails.subscription)) {
return billingService.redirectToCustomerPortal;
const eventHandler: MouseEventHandler<HTMLSpanElement> = (e) => {
e.stopPropagation();
if (userDetails) {
if (isSubscriptionActive(userDetails.subscription)) {
if (hasExceededStorageQuota(userDetails)) {
showPlanSelectorModal();
}
} else {
return showPlanSelectorModal;
if (hasStripeSubscription(userDetails.subscription)) {
billingService.redirectToCustomerPortal();
} else {
showPlanSelectorModal();
}
}
}
}
};
return eventHandler;
}, [userDetails]);
if (!hasAMessage) {
@ -80,13 +84,9 @@ export default function SubscriptionStatus({
)
: hasExceededStorageQuota(userDetails) &&
constants.STORAGE_QUOTA_EXCEEDED_SUBSCRIPTION_INFO(
showPlanSelectorModal
handleClick
)
: constants.SUBSCRIPTION_EXPIRED_MESSAGE(
hasStripeSubscription(userDetails.subscription)
? billingService.redirectToCustomerPortal
: showPlanSelectorModal
)}
: constants.SUBSCRIPTION_EXPIRED_MESSAGE(handleClick)}
</Typography>
</Box>
);

View file

@ -454,7 +454,8 @@ export default function Uploader(props: Props) {
message: constants.SUBSCRIPTION_EXPIRED,
action: {
text: constants.RENEW_NOW,
callback: billingService.redirectToCustomerPortal,
callback: () =>
billingService.redirectToCustomerPortal(),
},
};
break;

View file

@ -153,7 +153,6 @@ export function isUserSubscribedPlan(plan: Plan, subscription: Subscription) {
}
export function hasStripeSubscription(subscription: Subscription) {
return (
hasPaidSubscription(subscription) &&
subscription.paymentProvider.length > 0 &&
subscription.paymentProvider === PAYMENT_PROVIDER_STRIPE
);