bot
This commit is contained in:
+35
-20
@@ -2,16 +2,6 @@ import Link from "next/link";
|
||||
import Image from "next/image";
|
||||
import { MapPin, Phone, Mail } from "lucide-react";
|
||||
|
||||
const quickLinks = [
|
||||
{ name: "Ana Sayfa", href: "/" },
|
||||
{ name: "Odalar", href: "/odalar" },
|
||||
{ name: "Aktiviteler", href: "/aktiviteler"},
|
||||
{ name: "Restoran", href: "/restoran" },
|
||||
{ name: "Etkinlikler", href: "/etkinlikler"},
|
||||
{ name: "Galeri", href: "/galeri" },
|
||||
{ name: "Hakkımızda", href: "/hakkimizda" },
|
||||
];
|
||||
|
||||
function InstagramIcon() {
|
||||
return (
|
||||
<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round">
|
||||
@@ -39,7 +29,26 @@ function YoutubeIcon() {
|
||||
);
|
||||
}
|
||||
|
||||
export default function Footer() {
|
||||
export default function Footer({ lang = "tr" }: { lang?: string }) {
|
||||
const isEn = lang === "en";
|
||||
const quickLinks = isEn ? [
|
||||
{ name: "Home", href: "/en" },
|
||||
{ name: "Rooms", href: "/en/odalar" },
|
||||
{ name: "Activities", href: "/en/aktiviteler"},
|
||||
{ name: "Restaurant", href: "/en/restoran" },
|
||||
{ name: "Events", href: "/en/etkinlikler"},
|
||||
{ name: "Gallery", href: "/en/galeri" },
|
||||
{ name: "About Us", href: "/en/hakkimizda" },
|
||||
] : [
|
||||
{ name: "Ana Sayfa", href: "/tr" },
|
||||
{ name: "Odalar", href: "/tr/odalar" },
|
||||
{ name: "Aktiviteler", href: "/tr/aktiviteler"},
|
||||
{ name: "Restoran", href: "/tr/restoran" },
|
||||
{ name: "Etkinlikler", href: "/tr/etkinlikler"},
|
||||
{ name: "Galeri", href: "/tr/galeri" },
|
||||
{ name: "Hakkımızda", href: "/tr/hakkimizda" },
|
||||
];
|
||||
|
||||
return (
|
||||
<footer className="bg-dark text-white">
|
||||
{/* Top accent line */}
|
||||
@@ -50,7 +59,7 @@ export default function Footer() {
|
||||
|
||||
{/* Brand */}
|
||||
<div className="md:col-span-4">
|
||||
<Link href="/" className="inline-block mb-5">
|
||||
<Link href={isEn ? "/en" : "/tr"} className="inline-block mb-5">
|
||||
<Image
|
||||
src="/logo.png"
|
||||
alt="Kite Beach Logo"
|
||||
@@ -60,7 +69,9 @@ export default function Footer() {
|
||||
/>
|
||||
</Link>
|
||||
<p className="text-white/40 text-[13px] leading-relaxed mb-7 max-w-xs">
|
||||
Nehrin huzuru, denizin enerjisi — tek bir noktada. Akyaka'nın kalbinde butik bir kaçış noktası.
|
||||
{isEn
|
||||
? "The tranquility of the river, the energy of the sea — in one place. A boutique escape in the heart of Akyaka."
|
||||
: "Nehrin huzuru, denizin enerjisi — tek bir noktada. Akyaka'nın kalbinde butik bir kaçış noktası."}
|
||||
</p>
|
||||
{/* Social icons */}
|
||||
<div className="flex gap-3">
|
||||
@@ -84,7 +95,7 @@ export default function Footer() {
|
||||
{/* Quick Links */}
|
||||
<div className="md:col-span-3">
|
||||
<h3 className="text-[11px] font-bold tracking-[0.25em] text-white/30 uppercase mb-6">
|
||||
Sayfalar
|
||||
{isEn ? "Pages" : "Sayfalar"}
|
||||
</h3>
|
||||
<ul className="space-y-3">
|
||||
{quickLinks.map((link) => (
|
||||
@@ -103,7 +114,7 @@ export default function Footer() {
|
||||
{/* Contact */}
|
||||
<div className="md:col-span-5">
|
||||
<h3 className="text-[11px] font-bold tracking-[0.25em] text-white/30 uppercase mb-6">
|
||||
İletişim
|
||||
{isEn ? "Contact" : "İletişim"}
|
||||
</h3>
|
||||
<ul className="space-y-5">
|
||||
<li className="flex items-start gap-3">
|
||||
@@ -111,7 +122,11 @@ export default function Footer() {
|
||||
<MapPin size={13} className="text-accent" />
|
||||
</div>
|
||||
<span className="text-white/50 text-[13px] leading-relaxed">
|
||||
Akyaka Mahallesi, Akçapınar Mevkii<br />Muğla, Türkiye
|
||||
{isEn ? (
|
||||
<>Akyaka District, Akcapinar Location<br />Mugla, Turkey</>
|
||||
) : (
|
||||
<>Akyaka Mahallesi, Akçapınar Mevkii<br />Muğla, Türkiye</>
|
||||
)}
|
||||
</span>
|
||||
</li>
|
||||
<li className="flex items-center gap-3">
|
||||
@@ -144,17 +159,17 @@ export default function Footer() {
|
||||
{/* Bottom bar */}
|
||||
<div className="border-t border-white/8 pt-8 flex flex-col md:flex-row justify-between items-center gap-4">
|
||||
<p className="text-white/25 text-xs">
|
||||
© 2026 Kite Beach Akyaka. Tüm hakları saklıdır.
|
||||
{isEn ? "© 2026 Kite Beach Akyaka. All rights reserved." : "© 2026 Kite Beach Akyaka. Tüm hakları saklıdır."}
|
||||
</p>
|
||||
<div className="flex gap-6">
|
||||
{[
|
||||
{ name: "KVKK", href: "/kvkk" },
|
||||
{ name: "Gizlilik Politikası", href: "/gizlilik" },
|
||||
{ name: "Çerez Politikası", href: "/cerez" }
|
||||
{ name: isEn ? "Privacy Policy" : "Gizlilik Politikası", href: "/gizlilik" },
|
||||
{ name: isEn ? "Cookie Policy" : "Çerez Politikası", href: "/cerez" }
|
||||
].map((item) => (
|
||||
<Link
|
||||
key={item.name}
|
||||
href={item.href}
|
||||
href={isEn ? `/en${item.href}` : `/tr${item.href}`}
|
||||
className="text-white/25 hover:text-white/60 transition-colors text-xs"
|
||||
>
|
||||
{item.name}
|
||||
|
||||
@@ -12,6 +12,7 @@ export default function HeroVideo() {
|
||||
src="https://img.youtube.com/vi/V9AhK54xsxY/maxresdefault.jpg"
|
||||
alt="Kite Beach Akyaka Video Thumbnail"
|
||||
fill
|
||||
sizes="100vw"
|
||||
className={`object-cover transition-opacity duration-1000 ease-in-out ${
|
||||
isVideoLoaded ? "opacity-0" : "opacity-80"
|
||||
}`}
|
||||
|
||||
+24
-17
@@ -7,17 +7,23 @@ import { usePathname } from "next/navigation";
|
||||
import { motion, AnimatePresence } from "framer-motion";
|
||||
import { Menu, X, Globe } from "lucide-react";
|
||||
|
||||
const navLinks = [
|
||||
// { name: "Odalar", href: "/odalar" },
|
||||
{ name: "Aktiviteler", href: "/aktiviteler" },
|
||||
{ name: "Restoran", href: "/restoran" },
|
||||
{ name: "Etkinlikler", href: "/etkinlikler" },
|
||||
|
||||
{ name: "Hakkımızda", href: "/hakkimizda" },
|
||||
{ name: "İletişim", href: "/iletisim" },
|
||||
const navLinksEn = [
|
||||
{ name: "Activities", href: "/en/aktiviteler" },
|
||||
{ name: "Restaurant", href: "/en/restoran" },
|
||||
{ name: "Events", href: "/en/etkinlikler" },
|
||||
{ name: "About Us", href: "/en/hakkimizda" },
|
||||
{ name: "Contact", href: "/en/iletisim" },
|
||||
];
|
||||
|
||||
export default function Navbar() {
|
||||
const navLinksTr = [
|
||||
{ name: "Aktiviteler", href: "/tr/aktiviteler" },
|
||||
{ name: "Restoran", href: "/tr/restoran" },
|
||||
{ name: "Etkinlikler", href: "/tr/etkinlikler" },
|
||||
{ name: "Hakkımızda", href: "/tr/hakkimizda" },
|
||||
{ name: "İletişim", href: "/tr/iletisim" },
|
||||
];
|
||||
|
||||
export default function Navbar({ lang }: { lang?: string }) {
|
||||
const [isOpen, setIsOpen] = useState(false);
|
||||
const [scrolled, setScrolled] = useState(false);
|
||||
const pathname = usePathname();
|
||||
@@ -30,10 +36,11 @@ export default function Navbar() {
|
||||
|
||||
useEffect(() => { setIsOpen(false); }, [pathname]);
|
||||
|
||||
const isHome = pathname === "/" || pathname === "/tr" || pathname === "/en";
|
||||
|
||||
const currentLang = pathname.startsWith("/en") ? "en" : "tr";
|
||||
const currentLang = lang || (pathname.startsWith("/en") ? "en" : "tr");
|
||||
const toggleLang = currentLang === "en" ? "tr" : "en";
|
||||
const navLinks = currentLang === "en" ? navLinksEn : navLinksTr;
|
||||
|
||||
const isHome = pathname === "/" || pathname === "/tr" || pathname === "/en";
|
||||
|
||||
const getToggleHref = () => {
|
||||
if (pathname === "/") return `/${toggleLang}`;
|
||||
@@ -55,7 +62,7 @@ export default function Navbar() {
|
||||
<div className="flex justify-between items-center">
|
||||
|
||||
{/* Logo */}
|
||||
<Link href="/" className="flex-shrink-0 flex items-center group">
|
||||
<Link href={`/${currentLang}`} className="flex-shrink-0 flex items-center group">
|
||||
<Image
|
||||
src="/logo.png"
|
||||
alt="Kite Beach Logo"
|
||||
@@ -91,10 +98,10 @@ export default function Navbar() {
|
||||
})}
|
||||
|
||||
<Link
|
||||
href="/iletisim"
|
||||
href={`/${currentLang}/iletisim`}
|
||||
className="btn-shimmer bg-accent text-white px-6 py-2.5 rounded-full text-[11px] font-bold tracking-[0.12em] uppercase hover:bg-accent/90 transition-colors shadow-md"
|
||||
>
|
||||
Bize Ulaşın
|
||||
{currentLang === "en" ? "Contact Us" : "Bize Ulaşın"}
|
||||
</Link>
|
||||
|
||||
{/* Lang Toggle */}
|
||||
@@ -160,10 +167,10 @@ export default function Navbar() {
|
||||
{currentLang === "tr" ? "English" : "Türkçe"}
|
||||
</Link>
|
||||
<Link
|
||||
href="/iletisim"
|
||||
href={`/${currentLang}/iletisim`}
|
||||
className="mt-4 block w-full text-center bg-accent text-white px-6 py-3.5 rounded-full text-sm font-bold uppercase tracking-wider"
|
||||
>
|
||||
Bize Ulaşın
|
||||
{currentLang === "en" ? "Contact Us" : "Bize Ulaşın"}
|
||||
</Link>
|
||||
</div>
|
||||
</motion.div>
|
||||
|
||||
Reference in New Issue
Block a user