diff --git a/src/app/auth/resource/[resourceGuid]/page.tsx b/src/app/auth/resource/[resourceGuid]/page.tsx index 4ff33734..e6d87075 100644 --- a/src/app/auth/resource/[resourceGuid]/page.tsx +++ b/src/app/auth/resource/[resourceGuid]/page.tsx @@ -27,6 +27,7 @@ import { GetOrgTierResponse } from "@server/routers/billing/types"; import { TierId } from "@server/lib/billing/tiers"; import { CheckOrgUserAccessResponse } from "@server/routers/org"; import OrgPolicyRequired from "@app/components/OrgPolicyRequired"; +import { isOrgSubscribed } from "@app/lib/api/isOrgSubscribed"; export const dynamic = "force-dynamic"; @@ -65,22 +66,7 @@ export default async function ResourceAuthPage(props: { ); } - let subscriptionStatus: GetOrgTierResponse | null = null; - if (build === "saas") { - try { - const getSubscription = cache(() => - priv.get>( - `/org/${authInfo.orgId}/billing/tier` - ) - ); - const subRes = await getSubscription(); - subscriptionStatus = subRes.data.data; - } catch {} - } - const subscribed = - build === "enterprise" - ? true - : subscriptionStatus?.tier === TierId.STANDARD; + const subscribed = await isOrgSubscribed(authInfo.orgId); const allHeaders = await headers(); const host = allHeaders.get("host"); @@ -254,7 +240,7 @@ export default async function ResourceAuthPage(props: { resourceId={authInfo.resourceId} skipToIdpId={authInfo.skipToIdpId} redirectUrl={redirectUrl} - orgId={build == "saas" ? authInfo.orgId : undefined} + orgId={build === "saas" ? authInfo.orgId : undefined} /> ); } @@ -262,11 +248,13 @@ export default async function ResourceAuthPage(props: { let branding: LoadLoginPageBrandingResponse | null = null; try { - const res = await priv.get< - AxiosResponse - >(`/login-page-branding?orgId=${authInfo.orgId}`); - if (res.status === 200) { - branding = res.data.data; + if (subscribed) { + const res = await priv.get< + AxiosResponse + >(`/login-page-branding?orgId=${authInfo.orgId}`); + if (res.status === 200) { + branding = res.data.data; + } } } catch (error) {} diff --git a/src/lib/api/getSubscriptionStatus.ts b/src/lib/api/isOrgSubscribed.ts similarity index 76% rename from src/lib/api/getSubscriptionStatus.ts rename to src/lib/api/isOrgSubscribed.ts index e9b05e40..251b9219 100644 --- a/src/lib/api/getSubscriptionStatus.ts +++ b/src/lib/api/isOrgSubscribed.ts @@ -4,7 +4,7 @@ import { cache } from "react"; import { getCachedSubscription } from "./getCachedSubscription"; import type { GetOrgTierResponse } from "@server/routers/billing/types"; -export const isSubscribed = cache(async (orgId: string) => { +export const isOrgSubscribed = cache(async (orgId: string) => { let subscriptionStatus: GetOrgTierResponse | null = null; try { const subRes = await getCachedSubscription(orgId); @@ -14,7 +14,8 @@ export const isSubscribed = cache(async (orgId: string) => { const subscribed = build === "enterprise" ? true - : subscriptionStatus?.tier === TierId.STANDARD; + : subscriptionStatus?.tier === TierId.STANDARD && + subscriptionStatus.active; return subscribed; });