Skip to content

Commit 5768eab

Browse files
committed
check if max per user is reached
1 parent 7ba8102 commit 5768eab

File tree

3 files changed

+22
-4
lines changed

3 files changed

+22
-4
lines changed

wondrous-bot-admin/src/components/Referral/index.tsx

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ import { BG_TYPES } from "utils/constants";
1212
import { StyledLink } from "./styles";
1313
import { useQuery } from "@apollo/client";
1414
import { useLocation } from "react-router-dom";
15-
import { GET_REFERRAL_CAMPAIGN_BY_EXTERNAL_ID, GET_REFERRAL_CODE_INFO } from "graphql/queries/referral";
15+
import { GET_REFERRAL_CAMPAIGN_BY_EXTERNAL_ID, GET_REFERRAL_CODE_INFO, GET_REFERRAL_USER_LIMIT_REACHED } from "graphql/queries/referral";
1616
import StartReferralQuests from "components/StartReferralQuests";
1717

1818
const StartReferralPage = () => {
@@ -41,6 +41,15 @@ const StartReferralPage = () => {
4141
skip: !referralCampaignExternalId,
4242
});
4343

44+
const {data: referralLimitReached, loading: referralLimitLoading} = useQuery(GET_REFERRAL_USER_LIMIT_REACHED, {
45+
variables: {
46+
referralCode
47+
},
48+
skip: !referralCode
49+
});
50+
51+
const {hasReachedLimit = false} = referralLimitReached?.getReferralUserLimitReached || {};
52+
4453
return (
4554
<>
4655
<PageWrapper
@@ -64,10 +73,11 @@ const StartReferralPage = () => {
6473
flexDirection="column"
6574
flex="1"
6675
>
67-
{!data?.getReferralCampaignByReferralExternalId || loading ? (
76+
{!data?.getReferralCampaignByReferralExternalId || loading || referralLimitLoading ? (
6877
<PageSpinner color="#fee2ca" />
6978
) : (
7079
<StartReferralQuests
80+
hasReachedLimit={hasReachedLimit}
7181
referralCampaign={data?.getReferralCampaignByReferralExternalId}
7282
referralCode={referralCode}
7383
referralCodeInfo={referralCodeInfoData?.getReferralCodeInfo}

wondrous-bot-admin/src/components/StartReferralQuests/index.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ const TopBarMessage = ({ displayName, hasEnded, orgId }) => {
3333
);
3434
};
3535

36-
const StartReferralQuests = ({ referralCampaign, referralCode, referralCampaignExternalId, referralCodeInfo }) => {
36+
const StartReferralQuests = ({ referralCampaign, referralCode, referralCampaignExternalId, referralCodeInfo, hasReachedLimit }) => {
3737
const [infoModalQuestId, setInfoModalQuestId] = useState(null);
3838
const discordUrlParams = {
3939
referralCode,
@@ -84,7 +84,7 @@ const StartReferralQuests = ({ referralCampaign, referralCode, referralCampaignE
8484
const endDate = referralCampaign?.endDate ? moment(referralCampaign?.endDate) : null;
8585
const hasEnded =
8686
referralCampaign?.status !== REFERRAL_STATUSES.ACTIVE ||
87-
(endDate && endDate.isBefore(moment().utcOffset(0)?.endOf("day")?.toISOString()));
87+
(endDate && endDate.isBefore(moment().utcOffset(0)?.endOf("day")?.toISOString())) || hasReachedLimit;
8888

8989
return (
9090
<>

wondrous-bot-admin/src/graphql/queries/referral.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,3 +97,11 @@ export const GET_REFERRAL_CODE_INFO = gql`
9797
}
9898
}
9999
`;
100+
101+
export const GET_REFERRAL_USER_LIMIT_REACHED = gql`
102+
query getReferralUserLimitReached($referralCode: String!) {
103+
getReferralUserLimitReached(referralCode: $referralCode) {
104+
hasReachedLimit
105+
}
106+
}
107+
`;

0 commit comments

Comments
 (0)