---
import Headline from '~/components/ui/Headline.astro';
import WidgetWrapper from '~/components/ui/WidgetWrapper.astro';
import Button from '~/components/ui/Button.astro';
import Image from '~/components/common/Image.astro';
import { Icon } from 'astro-icon/components';
import type { Testimonials as Props } from '~/types';
// Import certification images
import SN_Logo2 from '~/assets/images/certificates/SN_Logo2.webp';
import CertifiedNexthinkProfessionalinApplicationExperienceManagement from '~/assets/images/certificates/CertifiedNexthinkProfessionalinApplicationExperienceManagement.webp';
import NexthinkAdministrator from '~/assets/images/certificates/NexthinkAdministrator.webp';
import NexthinkAssociate from '~/assets/images/certificates/NexthinkAssociate.webp';
import CrucialConversations_FMD_logo from '~/assets/images/certificates/CrucialConversations_FMD-logo.webp';
import PCEP from '~/assets/images/certificates/PCEP.webp';
import MicrosoftCertifiedAssociateBadge from '~/assets/images/certificates/microsoft-certified-associate-badge.webp';
import MicrosoftCertifiedFundamentalsBadge from '~/assets/images/certificates/microsoft-certified-fundamentals-badge.webp';
const {
title = '',
subtitle = '',
tagline = '',
testimonials = [],
callToAction,
id,
isDark = false,
classes = {},
bg = await Astro.slots.render('bg'),
} = Astro.props;
// Function to get the correct certification icon based on title
const getCertificationIcon = (name: string): string => {
const nameLower = name.toLowerCase();
if (nameLower.includes('stakeholder')) return 'tabler:users';
if (nameLower.includes('nexthink professional')) return 'tabler:chart-bar';
if (nameLower.includes('nexthink administrator')) return 'tabler:settings';
if (nameLower.includes('nexthink associate')) return 'tabler:certificate';
if (nameLower.includes('crucial conversations')) return 'tabler:message-circle';
if (nameLower.includes('python')) return 'tabler:brand-python';
if (nameLower.includes('desktop administrator')) return 'tabler:device-desktop';
if (nameLower.includes('microsoft 365')) return 'tabler:brand-office';
if (nameLower.includes('teams')) return 'tabler:brand-teams';
if (nameLower.includes('azure')) return 'tabler:cloud';
return 'tabler:award';
};
// Function to get the correct gradient colors based on certification
const getCertificationGradient = (name: string): string => {
const nameLower = name.toLowerCase();
if (nameLower.includes('stakeholder')) return 'from-blue-500 to-purple-600';
if (nameLower.includes('nexthink')) return 'from-green-500 to-teal-600';
if (nameLower.includes('crucial')) return 'from-orange-500 to-red-500';
if (nameLower.includes('python')) return 'from-yellow-500 to-green-500';
if (nameLower.includes('microsoft')) return 'from-blue-600 to-indigo-600';
if (nameLower.includes('azure')) return 'from-blue-400 to-cyan-500';
return 'from-gray-500 to-gray-600';
};
// Function to get the correct image source
const getImageSrc = (imagePath: string) => {
switch (imagePath) {
case '/images/certificates/SN_Logo2.webp':
return SN_Logo2;
case '/images/certificates/CertifiedNexthinkProfessionalinApplicationExperienceManagement.webp':
return CertifiedNexthinkProfessionalinApplicationExperienceManagement;
case '/images/certificates/NexthinkAdministrator.webp':
return NexthinkAdministrator;
case '/images/certificates/NexthinkAssociate.webp':
return NexthinkAssociate;
case '/images/certificates/CrucialConversations_FMD-logo.webp':
return CrucialConversations_FMD_logo;
case '/images/certificates/PCEP.webp':
return PCEP;
case '/images/certificates/microsoft-certified-associate-badge.webp':
return MicrosoftCertifiedAssociateBadge;
case '/images/certificates/microsoft-certified-fundamentals-badge.webp':
return MicrosoftCertifiedFundamentalsBadge;
default:
return imagePath;
}
};
---
{issueDate}
{name}