Files
HokmPlay/site/components/Footer.tsx
T
soroush.asadi 5d38312ef0
CI/CD / CI - API (dotnet build + engine sim) (push) Successful in 4m40s
CI/CD / CI - Web (tsc + next build) (push) Successful in 1m7s
CI/CD / Deploy - local stack (db + server + web) (push) Failing after 41s
Marketing site (bargevasat.ir) + admin-editable store links + subdomain split
- New standalone Next.js marketing site under site/ (static export, SEO):
  landing, download/install guide (Bazaar/Myket/iOS-PWA/web), FAQ (JSON-LD),
  privacy, terms, support, /admin link editor. fa RTL, sitemap/robots/manifest.
- Backend: SiteLinksService (JSON-file persisted) + GET /api/site/links (public)
  + POST /api/admin/site/links (X-Admin-Token). ADMIN_TOKEN + Site__DataDir via env.
- compose: hokm-site service (:1520) + hokm_data volume for links JSON.
- CI deploy job builds + deploys the site container.
- deploy/SUBDOMAIN_SPLIT.md: nginx blocks, cert reissue, DNS, ENV split.
- Exclude site/ from root tsc + web docker context.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-08 07:19:43 +03:30

49 lines
2.0 KiB
TypeScript
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import Link from "next/link";
import { Logo } from "./Logo";
import { BRAND } from "@/lib/site";
export function Footer() {
return (
<footer className="mt-24 border-t border-gold/10 bg-navy-950/60">
<div className="mx-auto grid max-w-6xl gap-8 px-4 py-12 sm:grid-cols-2 md:grid-cols-4">
<div className="sm:col-span-2 md:col-span-1">
<div className="flex items-center gap-2">
<Logo size={30} />
<span className="font-extrabold gold-text">{BRAND.nameFa}</span>
</div>
<p className="mt-3 max-w-xs text-sm leading-7 text-cream/60">{BRAND.descFa}</p>
</div>
<div>
<h4 className="mb-3 font-bold text-cream">بازی</h4>
<ul className="space-y-2 text-sm text-cream/65">
<li><Link href="/#features" className="hover:text-cream">ویژگیها</Link></li>
<li><Link href="/download" className="hover:text-cream">دانلود و نصب</Link></li>
<li><Link href="/faq" className="hover:text-cream">سوالهای متداول</Link></li>
</ul>
</div>
<div>
<h4 className="mb-3 font-bold text-cream">قوانین</h4>
<ul className="space-y-2 text-sm text-cream/65">
<li><Link href="/privacy" className="hover:text-cream">حریم خصوصی</Link></li>
<li><Link href="/terms" className="hover:text-cream">قوانین و مقررات</Link></li>
<li><Link href="/support" className="hover:text-cream">پشتیبانی</Link></li>
</ul>
</div>
<div>
<h4 className="mb-3 font-bold text-cream">ارتباط</h4>
<ul className="space-y-2 text-sm text-cream/65">
<li><a href={`mailto:${BRAND.email}`} className="hover:text-cream">{BRAND.email}</a></li>
</ul>
</div>
</div>
<div className="border-t border-gold/10 py-5 text-center text-xs text-cream/45">
© {new Date().getFullYear()} {BRAND.nameFa} همهٔ حقوق محفوظ است.
</div>
</footer>
);
}