Merged in feat/SW-1573-subpage-url (pull request #1297)
Feat(SW-1573): Use pageInUrl for hotel subpages * feat(SW-1573): use pageInUrl for hotel subpages Approved-by: Erik Tiekstra Approved-by: Fredrik Thorsson
This commit is contained in:
@@ -1,9 +1,3 @@
|
||||
import {
|
||||
accessibilitySubPage,
|
||||
parkingSubPage,
|
||||
wellnessSubPage,
|
||||
} from "@/constants/routes/hotelSubpages"
|
||||
|
||||
import { getLang } from "@/i18n/serverContext"
|
||||
|
||||
import AccessibilityAdditionalContent from "./Accessibility"
|
||||
@@ -22,14 +16,12 @@ export default function HotelSubpageAdditionalContent({
|
||||
hotel,
|
||||
additionalData,
|
||||
}: HotelSubpageAdditionalContentProps) {
|
||||
const lang = getLang()
|
||||
|
||||
switch (subpage) {
|
||||
case parkingSubPage[lang]:
|
||||
case additionalData.hotelParking.nameInUrl:
|
||||
return <ParkingAdditionalContent hotel={hotel} />
|
||||
case wellnessSubPage[lang]:
|
||||
case additionalData.healthAndFitness.nameInUrl:
|
||||
return null
|
||||
case accessibilitySubPage[lang]:
|
||||
case additionalData.hotelSpecialNeeds.nameInUrl:
|
||||
return <AccessibilityAdditionalContent additionalData={additionalData} />
|
||||
default:
|
||||
return null
|
||||
|
||||
@@ -1,32 +1,25 @@
|
||||
import {
|
||||
accessibilitySubPage,
|
||||
parkingSubPage,
|
||||
wellnessSubPage,
|
||||
} from "@/constants/routes/hotelSubpages"
|
||||
|
||||
import { getLang } from "@/i18n/serverContext"
|
||||
|
||||
import ParkingSidebar from "./ParkingSidebar"
|
||||
import WellnessSidebar from "./WellnessSidebar"
|
||||
|
||||
import type { Hotel } from "@/types/hotel"
|
||||
import type { AdditionalData, Hotel } from "@/types/hotel"
|
||||
|
||||
interface HotelSubpageSidebarProps {
|
||||
subpage: string
|
||||
hotel: Hotel
|
||||
additionalData: AdditionalData
|
||||
}
|
||||
|
||||
export default function HotelSubpageSidebar({
|
||||
subpage,
|
||||
hotel,
|
||||
additionalData,
|
||||
}: HotelSubpageSidebarProps) {
|
||||
const lang = getLang()
|
||||
switch (subpage) {
|
||||
case parkingSubPage[lang]:
|
||||
case additionalData.hotelParking.nameInUrl:
|
||||
return <ParkingSidebar hotel={hotel} />
|
||||
case wellnessSubPage[lang]:
|
||||
case additionalData.healthAndFitness.nameInUrl:
|
||||
return <WellnessSidebar hotel={hotel} />
|
||||
case accessibilitySubPage[lang]:
|
||||
case additionalData.hotelSpecialNeeds.nameInUrl:
|
||||
return null
|
||||
default:
|
||||
return null
|
||||
|
||||
@@ -78,7 +78,11 @@ export default async function HotelSubpage({
|
||||
/>
|
||||
</main>
|
||||
|
||||
<HotelSubpageSidebar subpage={subpage} hotel={hotelData.hotel} />
|
||||
<HotelSubpageSidebar
|
||||
subpage={subpage}
|
||||
hotel={hotelData.hotel}
|
||||
additionalData={hotelData.additionalData}
|
||||
/>
|
||||
</div>
|
||||
</section>
|
||||
{/* Tracking */}
|
||||
|
||||
@@ -1,11 +1,3 @@
|
||||
import {
|
||||
accessibilitySubPage,
|
||||
parkingSubPage,
|
||||
wellnessSubPage,
|
||||
} from "@/constants/routes/hotelSubpages"
|
||||
|
||||
import { getLang } from "@/i18n/serverContext"
|
||||
|
||||
import type { IntlShape } from "react-intl"
|
||||
|
||||
import type { HotelData } from "@/types/hotel"
|
||||
@@ -15,11 +7,11 @@ export function getSubpageData(
|
||||
subpage: string,
|
||||
hotelData: HotelData
|
||||
) {
|
||||
const lang = getLang()
|
||||
const additionalData = hotelData.additionalData
|
||||
const hotel = hotelData.hotel
|
||||
|
||||
switch (subpage) {
|
||||
case parkingSubPage[lang]:
|
||||
case additionalData.hotelParking.nameInUrl:
|
||||
const parkingImage = additionalData.parkingImages?.heroImages[0]
|
||||
return {
|
||||
...additionalData.hotelParking,
|
||||
@@ -31,7 +23,7 @@ export function getSubpageData(
|
||||
}
|
||||
: null,
|
||||
}
|
||||
case wellnessSubPage[lang]:
|
||||
case additionalData.healthAndFitness.nameInUrl:
|
||||
const wellnessImage = hotel.healthFacilities.find(
|
||||
(fac) => fac.content.images.length
|
||||
)?.content.images[0]
|
||||
@@ -45,7 +37,7 @@ export function getSubpageData(
|
||||
}
|
||||
: null,
|
||||
}
|
||||
case accessibilitySubPage[lang]:
|
||||
case additionalData.hotelSpecialNeeds.nameInUrl:
|
||||
const accessibilityImage = additionalData.accessibility?.heroImages[0]
|
||||
return {
|
||||
...additionalData.hotelSpecialNeeds,
|
||||
|
||||
Reference in New Issue
Block a user