add member onboarding
This commit is contained in:
@@ -4,17 +4,22 @@ import checkSubscriptionByEmail from "./checkSubscriptionByEmail";
|
||||
|
||||
interface UserIncludingSubscription extends User {
|
||||
subscriptions: Subscription | null;
|
||||
parentSubscription: Subscription | null;
|
||||
}
|
||||
|
||||
export default async function verifySubscription(
|
||||
user?: UserIncludingSubscription | null
|
||||
) {
|
||||
if (!user || !user.subscriptions) {
|
||||
if (!user || (!user.subscriptions && !user.parentSubscription)) {
|
||||
return null;
|
||||
}
|
||||
|
||||
if (user.parentSubscription?.active) {
|
||||
return user;
|
||||
}
|
||||
|
||||
if (
|
||||
!user.subscriptions.active ||
|
||||
!user.subscriptions?.active ||
|
||||
new Date() > user.subscriptions.currentPeriodEnd
|
||||
) {
|
||||
const subscription = await checkSubscriptionByEmail(user.email as string);
|
||||
|
||||
Reference in New Issue
Block a user