From bfa78741088db3ab920aa6a6ceb48a9c55e328e4 Mon Sep 17 00:00:00 2001 From: Shahbaz Shabbir <32649010+shahbaz-arbisoft@users.noreply.github.com> Date: Thu, 27 Jul 2023 10:54:57 +0500 Subject: [PATCH] fix: add popular and trending products lists (#1000) --- src/config/index.js | 5 ++++- src/recommendations/RecommendationsPage.jsx | 6 ++++-- src/recommendations/tests/RecommendationsPage.test.jsx | 2 ++ 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/src/config/index.js b/src/config/index.js index 5b84e461..ff01c92f 100644 --- a/src/config/index.js +++ b/src/config/index.js @@ -24,8 +24,11 @@ const configuration = { BANNER_IMAGE_MEDIUM: process.env.BANNER_IMAGE_MEDIUM || '', BANNER_IMAGE_SMALL: process.env.BANNER_IMAGE_SMALL || '', BANNER_IMAGE_EXTRA_SMALL: process.env.BANNER_IMAGE_EXTRA_SMALL || '', - // Miscellaneous + // Recommendation constants GENERAL_RECOMMENDATIONS: process.env.GENERAL_RECOMMENDATIONS || '[]', + POPULAR_PRODUCTS: process.env.POPULAR_PRODUCTS || '[]', + TRENDING_PRODUCTS: process.env.TRENDING_PRODUCTS || '[]', + // Miscellaneous INFO_EMAIL: process.env.INFO_EMAIL || '', ZENDESK_KEY: process.env.ZENDESK_KEY, ZENDESK_LOGO_URL: process.env.ZENDESK_LOGO_URL, diff --git a/src/recommendations/RecommendationsPage.jsx b/src/recommendations/RecommendationsPage.jsx index 2f91101b..199d4438 100644 --- a/src/recommendations/RecommendationsPage.jsx +++ b/src/recommendations/RecommendationsPage.jsx @@ -18,13 +18,15 @@ const RecommendationsPage = (props) => { const registrationResponse = location.state?.registrationResult; const userId = location.state?.userId; const DASHBOARD_URL = getConfig().LMS_BASE_URL.concat(DEFAULT_REDIRECT_URL); - + const POPULAR_PRODUCTS = JSON.parse(getConfig().POPULAR_PRODUCTS); + const TRENDING_PRODUCTS = JSON.parse(getConfig().TRENDING_PRODUCTS); const { formatMessage } = useIntl(); const [selectedRecommendationsType, setSelectedRecommendationsType] = useState(RECOMMENDATIONS_OPTION_LIST[1]); - const [recommendations] = useState([]); + const [recommendations, setRecommendations] = useState(POPULAR_PRODUCTS); const handleRecommendationType = (option) => { setSelectedRecommendationsType(option); + setRecommendations(option.value === 'popular' ? POPULAR_PRODUCTS : TRENDING_PRODUCTS); }; if (!registrationResponse) { diff --git a/src/recommendations/tests/RecommendationsPage.test.jsx b/src/recommendations/tests/RecommendationsPage.test.jsx index 81a70c11..239aab33 100644 --- a/src/recommendations/tests/RecommendationsPage.test.jsx +++ b/src/recommendations/tests/RecommendationsPage.test.jsx @@ -25,6 +25,8 @@ jest.mock('../data/service', () => ({ describe('RecommendationsPageTests', () => { mergeConfig({ GENERAL_RECOMMENDATIONS: '[]', + POPULAR_PRODUCTS: '[]', + TRENDING_PRODUCTS: '[]', }); let defaultProps = {};