From 7b3b71984d4c4017e4d321cca2c7eec8b6fb0edd Mon Sep 17 00:00:00 2001
From: nicolasito1411 <60229704+Marchand-Nicolas@users.noreply.github.com>
Date: Wed, 31 Jan 2024 16:08:58 +0100
Subject: [PATCH] showing a regular quest as featured if no trending ones
available
---
app/page.tsx | 30 ++++++++++++++----------------
context/QuestsProvider.tsx | 10 ++++++++++
2 files changed, 24 insertions(+), 16 deletions(-)
diff --git a/app/page.tsx b/app/page.tsx
index 8b3cf54f..2bf2bfe5 100644
--- a/app/page.tsx
+++ b/app/page.tsx
@@ -23,22 +23,20 @@ export default function Page() {
- {featuredQuest && (
- router.push(`/quest/${featuredQuest?.id}`)}
- imgSrc={featuredQuest?.img_card}
- issuer={{
- name: featuredQuest?.issuer ?? "",
- logoFavicon: featuredQuest?.logo ?? "",
- }}
- reward={featuredQuest?.rewards_title}
- desc={featuredQuest?.desc}
- expiry={featuredQuest?.expiry_timestamp}
- />
- )}
+ router.push(`/quest/${featuredQuest?.id}`)}
+ imgSrc={featuredQuest?.img_card}
+ issuer={{
+ name: featuredQuest?.issuer ?? "",
+ logoFavicon: featuredQuest?.logo ?? "",
+ }}
+ reward={featuredQuest?.rewards_title}
+ desc={featuredQuest?.desc}
+ expiry={featuredQuest?.expiry_timestamp}
+ />
diff --git a/context/QuestsProvider.tsx b/context/QuestsProvider.tsx
index 731440bc..489b4a04 100644
--- a/context/QuestsProvider.tsx
+++ b/context/QuestsProvider.tsx
@@ -108,6 +108,16 @@ export const QuestsContextProvider = ({
);
}, [address]);
+ useMemo(() => {
+ if (!quests || featuredQuest) return;
+ const notExpired = quests.filter((quest) => !quest.expired);
+ setFeaturedQuest(
+ notExpired.length >= 1
+ ? notExpired[Math.floor(Math.random() * notExpired.length)]
+ : undefined
+ );
+ }, [quests]);
+
useMemo(() => {
if (!address) return;
getCompletedBoosts(hexToDecimal(address)).then(