"use client" import Image from "next/image" import { Button } from "@/components/ui/button" import { useLanguage } from "@/lib/language-context" import ratingsHu from "@/ratings_hu.json" import ratingsEn from "@/ratings_en.json" import { useEffect, useState } from "react" export default function Footer() { const { t, language } = useLanguage() const year = new Date().getFullYear().toString() const ratingsData = language === "hu" ? ratingsHu : ratingsEn const ratingValue = ratingsData?.data?.[0]?.rating ?? 0 const ratingCount = ratingsData?.data?.[0]?.userRatingCount ?? 0 const ratingPercent = Math.max(0, Math.min(100, (ratingValue / 5) * 100)) const reviews = ratingsData?.data?.[0]?.reviews ?? [] const [featuredReviews, setFeaturedReviews] = useState(reviews.slice(0, 2)) const reviewUrl = "https://g.page/r/CRltVP4lAy7lEBM/review" const reviewPreviewText = (text: string) => (text.length > 160 ? `${text.slice(0, 160).trimEnd()}...` : text) const reviewStars = (value: number) => { const safe = Math.max(0, Math.min(5, Math.round(value))) return "★".repeat(safe) + "☆".repeat(5 - safe) } useEffect(() => { if (!reviews.length) { setFeaturedReviews([]) return } if (reviews.length <= 2) { setFeaturedReviews(reviews) return } const first = Math.floor(Math.random() * reviews.length) let second = Math.floor(Math.random() * (reviews.length - 1)) if (second >= first) second += 1 setFeaturedReviews([reviews[first], reviews[second]]) }, [language, reviews.length]) return (

{t.footer.ready}

{t.footer.description}

{t.footer.reviewsTitle}
Google
{ratingValue.toFixed(1)}
({ratingCount})
{featuredReviews.map((review, idx) => (
{reviewStars(review.rating ?? 5)}
{review.author ?? "Customer"}

{reviewPreviewText(review.text ?? "")}

))}
{t.footer.reviewsCta}
{t.footer.impressum} {t.footer.privacy}
Facebook Google Plus X (Twitter) Blogspot Instagram
{t.footer.copyright.replace("{year}", year)} {t.footer.rights}
{t.footer.seoLine}
transzfer.lap.hu | utasszallitas.lap.hu | repuloter.lap.hu
) }