Updated the state to be active on payment
This commit is contained in:
@@ -45,7 +45,7 @@ async function post(req: NextApiRequest, res: NextApiResponse) {
|
|||||||
|
|
||||||
const updatedSubscriptionExpirationDate = moment(initialDate).add(duration, duration_unit).endOf("day").subtract(2, "hours").toISOString();
|
const updatedSubscriptionExpirationDate = moment(initialDate).add(duration, duration_unit).endOf("day").subtract(2, "hours").toISOString();
|
||||||
|
|
||||||
await setDoc(userSnapshot.ref, {subscriptionExpirationDate: updatedSubscriptionExpirationDate}, {merge: true});
|
await setDoc(userSnapshot.ref, {subscriptionExpirationDate: updatedSubscriptionExpirationDate, status: "active"}, {merge: true});
|
||||||
await setDoc(doc(db, "paypalpayments", v4()), {
|
await setDoc(doc(db, "paypalpayments", v4()), {
|
||||||
createdAt: new Date().toISOString(),
|
createdAt: new Date().toISOString(),
|
||||||
currency: transactionResult.transaction.currency,
|
currency: transactionResult.transaction.currency,
|
||||||
@@ -65,10 +65,16 @@ async function post(req: NextApiRequest, res: NextApiResponse) {
|
|||||||
const participants = (await Promise.all(
|
const participants = (await Promise.all(
|
||||||
groups.flatMap((x) => x.participants).map(async (x) => ({...(await getDoc(doc(db, "users", x))).data(), id: x})),
|
groups.flatMap((x) => x.participants).map(async (x) => ({...(await getDoc(doc(db, "users", x))).data(), id: x})),
|
||||||
)) as User[];
|
)) as User[];
|
||||||
const sameExpiryDateParticipants = participants.filter((x) => x.subscriptionExpirationDate === subscriptionExpirationDate);
|
const sameExpiryDateParticipants = participants.filter(
|
||||||
|
(x) => x.subscriptionExpirationDate === subscriptionExpirationDate && x.status !== "disabled",
|
||||||
|
);
|
||||||
|
|
||||||
for (const participant of sameExpiryDateParticipants) {
|
for (const participant of sameExpiryDateParticipants) {
|
||||||
await setDoc(doc(db, "users", participant.id), {subscriptionExpirationDate: updatedSubscriptionExpirationDate}, {merge: true});
|
await setDoc(
|
||||||
|
doc(db, "users", participant.id),
|
||||||
|
{subscriptionExpirationDate: updatedSubscriptionExpirationDate, status: "active"},
|
||||||
|
{merge: true},
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user