'use client' import { useEffect, useState } from "react" import Link from "next/link" import { Swiper, SwiperSlide } from "swiper/react" import { Autoplay, Pagination, Navigation } from "swiper/modules" import GallerySlider1 from '@/components/slider/GallerySlider1' import GoogleReviewsBranding from "@/components/GoogleReviewsBranding" const swiperOptions = { modules: [Autoplay, Pagination, Navigation], slidesPerView: 1, spaceBetween: 30, loop: true, autoplay: { delay: 3000, disableOnInteraction: false, }, navigation: { nextEl: '.srn', prevEl: '.srp', }, pagination: { el: '.swiper-pagination', clickable: true, }, } const testimonialSwiperOptions = { modules: [Autoplay], slidesPerView: 3, spaceBetween: 20, loop: true, autoplay: { delay: 2000, disableOnInteraction: false, pauseOnMouseEnter: false, }, breakpoints: { 0: { slidesPerView: 1 }, 768: { slidesPerView: 2 }, 1024: { slidesPerView: 3 }, }, }; export default function AboutContent() { const [reviews, setReviews] = useState([]); const [loading, setLoading] = useState(true); const [expandedReview, setExpandedReview] = useState(null); const [isClient, setIsClient] = useState(false); useEffect(() => { setIsClient(true); }, []); useEffect(() => { async function loadReviews() { try { const res = await fetch("/api/reviews"); const data = await res.json(); const cleaned = (data.reviews || []).filter(r => (r.text || r.description || r.snippet || r.review_text || r.body || r.content) && r.rating >= 4 ); setReviews(cleaned); } catch (error) { console.error("Failed to fetch reviews", error); } finally { setLoading(false); } } loadReviews(); }, []); const displayedReviews = reviews.length > 0 && reviews.length < 3 ? [...reviews, ...reviews, ...reviews] : reviews; function renderStars(rating) { return [...Array(5)].map((_, i) => ( )); } function getReviewText(r) { return r.text || r.description || r.snippet || r.review_text || r.body || r.content || ""; } function truncateText(text) { return text.length > 150 ? text.substring(0, 150) + "..." : text; } function getProfileImage(r) { const url = r.profile_photo_url || r.author_profile_photo_url || r.user?.thumbnail; if (!url) return "/default-user.png"; return url.startsWith("http") ? url : `https://lh3.googleusercontent.com/${url}`; } return ( <> {/* History Section */}
{/* Image Column */}
About Sixty5 Street restaurant in Brampton Ontario
Sixty5 Street about page design element Brampton
{/* Content Column */}
{/* Sec Title */}
About Us

Street Fresh. Full of Flavour.

At Sixty5 Street, we believe great food starts with freshness and ends with bold, memorable flavour. Our menu is inspired by the vibrant energy of street-style eats, where every dish and every blend is crafted to feel lively, colourful, and satisfying. Whether it’s one of our refreshing fruit mixes or a flavour-packed bowl, everything we serve is designed to bring you real taste made from real ingredients.
  • Fresh fruits and ingredients in every blend
  • Street-inspired flavours prepared with care
  • A vibrant experience that keeps you feeling energized
{/* End History Section */} {/* Menu Page Section */}
Sixty5 Street fresh ingredients card Brampton ON

Bold Flavours

Every item is created to deliver bright, bold flavour. From our signature blends to our colourful bowls, we make sure each serving tastes fresh, lively, and instantly enjoyable.
Sixty5 Street fast service card Brampton Ontario

Real Fruits

We use high-quality fruits chosen for their natural sweetness and freshness. This ensures every mix, topping, and serving brings out authentic, clean flavour.
Sixty5 Street unique flavours card Brampton ON

Healthy Blends

Our blends are crafted to be both nourishing and delicious. Light, refreshing, and made fresh to order — perfect for energizing your day without compromise.
{/* Fluid Section */}

Fresh Flavour
Fusion

At Sixty5 Street, we are always creating something new, fresh, and full of flavour. Our upcoming beverage range is crafted with real fruits, clean ingredients, and creative blends that bring a refreshing twist to your day. These new additions are designed to energize, hydrate, and satisfy—all while staying true to our vibrant, street-style taste.
View Menu
{/* Testimonial Section */}
Google Reviews

What Our Happy Customers Say

{loading &&

Loading reviews...

} {!loading && isClient && displayedReviews.length > 0 && ( {displayedReviews.map((r, index) => { const fullText = getReviewText(r); const isExpanded = expandedReview === index; return (
{r.author_name (e.target.src = "/default-user.png")} />

{r.author_name || r.user?.name || "Customer"}

{renderStars(r.rating)}

{isExpanded ? fullText : truncateText(fullText)}

{r.images && r.images.length > 0 && r.images.some(img => img && img !== "ky") && (
{r.images.map((img, i) => { if (!img || img === "ky") return null; const fixedImg = img.startsWith("http") ? img : `https://lh3.googleusercontent.com/${img}`; return ( Review image (e.target.style.display = "none")} /> ); })}
)} {fullText.length > 150 && ( )}
); })}
)}
Review us on Google
{/* Gallery Section */} {/*
*/} ) }