import React, { useEffect, useState } from 'react';
import type { ReactElement } from 'react';
import Head from 'next/head';
import Link from 'next/link';
import { useAppSelector } from '../stores/hooks';
import LayoutGuest from '../layouts/Guest';
import WebSiteHeader from '../components/WebPageComponents/Header';
import WebSiteFooter from '../components/WebPageComponents/Footer';
import {
  ContactFormDesigns,
  AboutUsDesigns,
  HeroDesigns,
  FeaturesDesigns,
  TestimonialsDesigns,
} from '../components/WebPageComponents/designs';

import ContactFormSection from '../components/WebPageComponents/ContactFormComponent';

import AboutUsSection from '../components/WebPageComponents/AboutUsComponent';

import HeroSection from '../components/WebPageComponents/HeroComponent';

import FeaturesSection from '../components/WebPageComponents/FeaturesComponent';

import TestimonialsSection from '../components/WebPageComponents/TestimonialsComponent';

export default function WebSite() {
  const cardsStyle = useAppSelector((state) => state.style.cardsStyle);
  const bgColor = useAppSelector((state) => state.style.bgLayoutColor);
  const projectName = 'h7h7h7h7';

  useEffect(() => {
    const darkElement = document.querySelector('body .dark');
    if (darkElement) {
      darkElement.classList.remove('dark');
    }
  }, []);
  const pages = [
    {
      href: '/home',
      label: 'home',
    },

    {
      href: '/about',
      label: 'about',
    },

    {
      href: '/services',
      label: 'services',
    },

    {
      href: '/contact',
      label: 'contact',
    },

    {
      href: '/faq',
      label: 'FAQ',
    },
  ];

  const features_points = [
    {
      name: 'Course Management',
      description:
        'Easily create and edit courses with comprehensive syllabi, resource materials, and assessment tools. Streamline your educational offerings effortlessly.',
      icon: 'mdiBookOpenPageVariant',
    },
    {
      name: 'Student Tracking',
      description:
        'Maintain a detailed database of enrolled students, track their progress, and manage grades efficiently. Enhance student engagement and success.',
      icon: 'mdiAccountGroup',
    },
    {
      name: 'Instructor Profiles',
      description:
        'Manage instructor profiles with detailed qualifications, course assignments, and availability. Ensure a seamless teaching experience for your staff.',
      icon: 'mdiAccountTie',
    },
  ];

  const testimonials = [
    {
      text: '${projectName} has revolutionized our online learning experience. The intuitive interface and comprehensive tools make managing courses a breeze.',
      company: 'EduTech Innovations',
      user_name: 'Alex Johnson, Head of Learning',
    },
    {
      text: 'As an instructor, I appreciate the seamless integration of resources and student tracking. ${projectName} truly supports my teaching efforts.',
      company: 'FutureLearn Academy',
      user_name: 'Emily Carter, Senior Instructor',
    },
    {
      text: 'The analytics feature in ${projectName} provides invaluable insights into student engagement and performance. Highly recommend!',
      company: 'Insightful Education',
      user_name: 'Michael Lee, Data Analyst',
    },
    {
      text: 'Our students love the interactive discussion boards. ${projectName} fosters a collaborative learning environment like no other.',
      company: 'Collaborative Learning Hub',
      user_name: 'Sarah Thompson, Community Manager',
    },
    {
      text: 'Managing enrollments and payments has never been easier. ${projectName} streamlines the entire process efficiently.',
      company: 'SmartEnroll Solutions',
      user_name: 'David Brown, Operations Manager',
    },
    {
      text: 'The support team at ${projectName} is exceptional. They are always ready to assist and ensure a smooth user experience.',
      company: 'TechSupport Pro',
      user_name: 'Jessica White, Customer Support Lead',
    },
  ];

  return (
    <div className='flex flex-col min-h-screen'>
      <Head>
        <title>{`Online Education Hub - Your Gateway to Learning`}</title>
        <meta
          name='description'
          content={`Discover a comprehensive online education platform offering a range of courses, student management, and instructor engagement tools. Join us to enhance your learning experience.`}
        />
      </Head>
      <WebSiteHeader projectName={'h7h7h7h7'} pages={pages} />
      <main className={`flex-grow    bg-white  rounded-none  `}>
        <HeroSection
          projectName={'h7h7h7h7'}
          image={['Diverse students learning online']}
          mainText={`Empower Your Learning with ${projectName}`}
          subTitle={`${projectName} is your all-in-one platform for online education. Manage courses, engage with instructors, and track your progress seamlessly.`}
          design={HeroDesigns.IMAGE_BG || ''}
          buttonText={`Start Learning Now`}
        />

        <AboutUsSection
          projectName={'h7h7h7h7'}
          image={['Team collaborating on digital platform']}
          mainText={`Unleashing Potential with ${projectName}`}
          subTitle={`At ${projectName}, we are dedicated to transforming online education. Our platform empowers educators and students to achieve their goals with innovative tools and seamless management.`}
          design={AboutUsDesigns.IMAGE_RIGHT || ''}
          buttonText={`Learn More About Us`}
        />

        <FeaturesSection
          projectName={'h7h7h7h7'}
          image={['Interactive dashboard with analytics']}
          withBg={0}
          features={features_points}
          mainText={`Discover Key Features of ${projectName}`}
          subTitle={`Explore how ${projectName} enhances your online education experience with powerful tools and seamless management.`}
          design={FeaturesDesigns.CARDS_GRID_WITH_ICONS || ''}
        />

        <TestimonialsSection
          projectName={'h7h7h7h7'}
          design={TestimonialsDesigns.MULTI_CARD_DISPLAY || ''}
          testimonials={testimonials}
          mainText={`What Our Users Say About ${projectName} `}
        />

        <ContactFormSection
          projectName={'h7h7h7h7'}
          design={ContactFormDesigns.WITH_IMAGE || ''}
          image={['Person typing on a laptop']}
          mainText={`Get in Touch with ${projectName} `}
          subTitle={`We're here to help! Reach out to us anytime, and our team will respond promptly to assist you with any inquiries or support needs.`}
        />
      </main>
      <WebSiteFooter projectName={'h7h7h7h7'} pages={pages} />
    </div>
  );
}

WebSite.getLayout = function getLayout(page: ReactElement) {
  return <LayoutGuest>{page}</LayoutGuest>;
};
