diff --git a/src/components/Resources/Resources.css b/src/components/Resources/Resources.css index 683975a..9d95de4 100644 --- a/src/components/Resources/Resources.css +++ b/src/components/Resources/Resources.css @@ -680,6 +680,11 @@ font-size: 1.1rem; } +.header-tagline-detail { + font-size: 0.8em !important; + margin-top: 7px !important; +} + /* Feeling Lucky button */ .feeling-lucky-button { display: flex; diff --git a/src/components/Resources/Resources.js b/src/components/Resources/Resources.js index f363884..035e4e1 100644 --- a/src/components/Resources/Resources.js +++ b/src/components/Resources/Resources.js @@ -45,6 +45,14 @@ const Resources = () => { localStorage.setItem('resourcesPreferences', JSON.stringify(preferences)); }, [activeCategory, showNewOnly, showScoreImpactOnly]); + // Hide random resources when filters are applied + useEffect(() => { + // Hide random resources when any filter is active or category is not 'All' + if (showNewOnly || showScoreImpactOnly || activeCategory !== 'All' || searchQuery.trim() !== '') { + setShowRandomResources(false); + } + }, [showNewOnly, showScoreImpactOnly, activeCategory, searchQuery]); + // Fetch resources from Supabase useEffect(() => { async function fetchResources() { @@ -224,10 +232,18 @@ const isNewResource = (date) => { [shuffled[i], shuffled[j]] = [shuffled[j], shuffled[i]]; } - // Take the first 4 items + // Take the first 6 items setRandomResources(shuffled.slice(0, 6)); setShowRandomResources(true); + // Reset all filters when showing random resources + if (activeCategory !== 'All' || showNewOnly || showScoreImpactOnly || searchQuery.trim() !== '') { + setActiveCategory('All'); + setShowNewOnly(false); + setShowScoreImpactOnly(false); + setSearchQuery(''); + } + // Auto-scroll to the random resources section setTimeout(() => { const element = document.getElementById('random-resources-section'); @@ -385,6 +401,19 @@ const filteredResources = useMemo(() => { setSearchQuery(e.target.value); }; + // Handlers for filters to hide random resources + const handleCategoryChange = (e) => { + setActiveCategory(e.target.value); + }; + + const handleNewToggle = () => { + setShowNewOnly(!showNewOnly); + }; + + const handleScoreToggle = () => { + setShowScoreImpactOnly(!showScoreImpactOnly); + }; + return (
@@ -435,7 +464,7 @@ const filteredResources = useMemo(() => {