site configs

This commit is contained in:
brooktewabe 2026-04-14 15:41:11 +03:00
parent c4748aa0ee
commit bcc3a8de15
4 changed files with 56 additions and 13 deletions

View File

@ -3,15 +3,14 @@ import Link from "next/link";
import { AmenityItem } from "@/components/AmenityItem";
import { BookingSearchWidget } from "@/components/BookingSearchWidget";
import { OutletCard } from "@/components/OutletCard";
import { RoomCard } from "@/components/RoomCard";
import { CatalogRoomsSection } from "@/components/CatalogRoomsSection";
import { GoogleMapEmbed } from "@/components/GoogleMapEmbed";
import { VirtualTourBlock } from "@/components/VirtualTourBlock";
import { roomAmenities } from "@/lib/mocks/amenities";
import { bookingStyleReviews } from "@/lib/mocks/bookingReviews";
import { outlets } from "@/lib/mocks/outlets";
import { rooms } from "@/lib/mocks/rooms";
import { siteConfig } from "@/lib/mocks/site";
import { wellnessFacilities } from "@/lib/mocks/wellness";
import { roomAmenities } from "@/lib/data/amenities";
import { bookingStyleReviews } from "@/lib/data/bookingReviews";
import { outlets } from "@/lib/data/outlets";
import { siteConfig } from "@/lib/site-config";
import { wellnessFacilities } from "@/lib/data/wellness";
const heroImage =
"https://images.unsplash.com/photo-1566073771259-6a8506099945?w=1920&q=80";
@ -164,11 +163,7 @@ export default function HomePage() {
Book a room
</Link>
</div>
<div className="mt-12 grid gap-8 md:grid-cols-2 lg:grid-cols-4">
{rooms.map((room) => (
<RoomCard key={room.id} room={room} />
))}
</div>
<CatalogRoomsSection />
</div>
</section>

View File

@ -1,4 +1,3 @@
/** API origin including /api prefix, e.g. http://localhost:7777/api */
export function getPublicApiUrl(): string {
const u = process.env.NEXT_PUBLIC_API_URL?.trim();
if (u) return u.replace(/\/$/, "");

7
src/lib/format-etb.ts Normal file
View File

@ -0,0 +1,7 @@
export function formatEtb(amount: number, maximumFractionDigits: 0 | 1 | 2 = 2): string {
return new Intl.NumberFormat("en-GB", {
style: "currency",
currency: "ETB",
maximumFractionDigits,
}).format(amount);
}

42
src/lib/site-config.ts Normal file
View File

@ -0,0 +1,42 @@
/** Site-wide static config until CMS / API-backed content exists. */
export const siteConfig = {
name: "Shitaye Suite Hotel",
tagline: "The Unwinding Choice",
city: "Addis Ababa",
address: "Ethio China Street, Kirkos, Addis Ababa, Ethiopia",
/** Google Maps — search result embed (hotel place). */
googleMapsEmbedUrl:
"https://www.google.com/maps?q=Shitaye+Suite+Hotel+Addis+Ababa+Ethiopia&output=embed&z=16",
/** Opens Google Maps with directions to the hotel (destination preset). */
googleMapsDirectionsUrl:
"https://www.google.com/maps/dir/?api=1&destination=Shitaye+Suite+Hotel+Ethio+China+Street+Kirkos+Addis+Ababa+Ethiopia",
/** Place search — opens the hotel pin in Google Maps (not directions mode). */
googleMapsPlaceUrl:
"https://www.google.com/maps/search/?api=1&query=Shitaye+Suite+Hotel+Addis+Ababa+Ethiopia",
phones: ["+251 96 688 4400", "+251 96 688 2200", "+251 11 46 21000"],
/** Primary number shown on FAB / quick call */
primaryPhone: "+251 96 688 4400",
email: "reservation@shitayesuitehotel.com",
/** Departments (from official site) */
departments: [
{ label: "Marketing", phones: ["+251 96 688 4400", "+251 96 688 2200"] },
{ label: "Reception", phones: ["+251 11 46 21000"] },
],
videoTourUrl: "https://www.youtube.com/watch?v=oH4hH1P7vdM",
hotelTourEmbedUrl: null as string | null,
/** Property listing (guest reviews, photos) */
bookingComReviewsUrl: "https://www.booking.com/hotel/et/shitaye-suite.html",
/**
* Lobby / lounge photo from the Booking.com gallery (same listing as above).
* Caption on Booking: living area with seating property-authentic asset.
*/
lobbyImageUrl:
"https://cf.bstatic.com/xdata/images/hotel/max1024x768/536142684.jpg?k=e550cdbc87e2b08b7fd6b261d0c719149024f47369a5f53a628fca9630631bb6&o=",
social: {
facebook: "https://www.facebook.com/shitayesuitehotel/",
twitter: "https://twitter.com/ShitayeSuite",
whatsapp: "https://wa.me/0966884400",
instagram: "https://instagram.com/shitaye_suite_hotel",
},
taxRate: 0.15,
};