From cc22d47d1ef01dcb5e9af7799927cef49f6f0f51 Mon Sep 17 00:00:00 2001 From: pradeepkumar Date: Tue, 24 Feb 2026 03:37:02 +0530 Subject: [PATCH] Fix: Conditionally apply CMS content to about page sections and refine rendering of "Why Choose Us" section elements based on data availability. --- src/app/about/page.tsx | 84 +++++++++++++++++++++++++----------------- 1 file changed, 51 insertions(+), 33 deletions(-) diff --git a/src/app/about/page.tsx b/src/app/about/page.tsx index 4608a40..c1ba5a7 100644 --- a/src/app/about/page.tsx +++ b/src/app/about/page.tsx @@ -91,12 +91,24 @@ export default function AboutPage() { useEffect(() => { cmsService.getPageContent('about').then((sections) => { sections.forEach((s: CmsContentRecord) => { + const c = s.content as Record; + // Only apply CMS content if it has meaningful data; otherwise keep defaults switch (s.sectionKey) { - case 'hero': setHero(s.content as AboutHeroContent); break; - case 'stats': setStats(s.content as AboutStatsContent); break; - case 'features': setFeatures(s.content as AboutFeaturesContent); break; - case 'team': setTeam(s.content as AboutTeamContent); break; - case 'cta': setCta(s.content as AboutCtaContent); break; + case 'hero': + if (c.headline || c.description) setHero(c as unknown as AboutHeroContent); + break; + case 'stats': + if (Array.isArray(c.stats) && c.stats.length > 0) setStats(c as unknown as AboutStatsContent); + break; + case 'features': + if (c.badge || (Array.isArray(c.features) && c.features.length > 0)) setFeatures(c as unknown as AboutFeaturesContent); + break; + case 'team': + if (Array.isArray(c.members) && c.members.length > 0) setTeam(c as unknown as AboutTeamContent); + break; + case 'cta': + if (c.title || c.description) setCta(c as unknown as AboutCtaContent); + break; } }); }); @@ -184,39 +196,45 @@ export default function AboutPage() { )} {/* Why Choose Us Section */} - {features.features.length > 0 && ( + {(features.badge || features.features.length > 0) && (
{/* Section Header */} -
- - {features.badge} - -
+ {features.badge && ( +
+ + {features.badge} + +
+ )} {/* Feature Cards */} -
- {features.features.map((feature, index) => ( -
-
- + {features.features.length > 0 && ( +
+ {features.features.map((feature, index) => ( +
+ {feature.iconPath && ( +
+ +
+ )} +

+ {feature.title} +

+

+ {feature.description} +

-

- {feature.title} -

-

- {feature.description} -

-
- ))} -
+ ))} +
+ )}
)}