SW-454 Use the API on select room page

This commit is contained in:
Niclas Edenvin
2024-10-08 15:22:51 +02:00
parent 4b9a6d2e8e
commit baf6ed9f2b
12 changed files with 348 additions and 92 deletions

View File

@@ -1,5 +1,8 @@
"use client"
import { useRouter, useSearchParams } from "next/navigation"
import { useIntl } from "react-intl"
import Button from "@/components/TempDesignSystem/Button"
import RoomCard from "./RoomCard"
@@ -8,12 +11,11 @@ import styles from "./roomSelection.module.css"
import { RoomSelectionProps } from "@/types/components/hotelReservation/selectRate/roomSelection"
export default function RoomSelection({
rates,
nrOfNights,
nrOfAdults,
roomConfigurations,
}: RoomSelectionProps) {
const router = useRouter()
const searchParams = useSearchParams()
const intl = useIntl()
function handleSubmit(e: React.FormEvent<HTMLFormElement>) {
e.preventDefault()
@@ -25,31 +27,28 @@ export default function RoomSelection({
return (
<div className={styles.wrapper}>
<ul className={styles.roomList}>
{rates.map((room) => (
<li key={room.id}>
<form
method="GET"
action={`select-bed?${searchParams}`}
onSubmit={handleSubmit}
>
<input
type="hidden"
name="roomClass"
value={room.id}
id={`room-${room.id}`}
/>
<form
method="GET"
action={`select-bed?${searchParams}`}
onSubmit={handleSubmit}
>
<ul className={styles.roomList}>
{roomConfigurations.roomConfigurations.map((roomConfiguration) => (
<li key={roomConfiguration.roomType}>
<RoomCard
room={room}
nrOfAdults={nrOfAdults}
nrOfNights={nrOfNights}
breakfastIncluded={room.breakfastIncluded}
rateDefinitions={roomConfigurations.rateDefinitions}
roomConfiguration={roomConfiguration}
/>
</form>
</li>
))}
</ul>
<div className={styles.summary}>This is summary</div>
</li>
))}
</ul>
<div className={styles.summary}>
This is summary
<Button type="submit" size="small" theme="primaryDark">
{intl.formatMessage({ id: "Choose room" })}
</Button>
</div>
</form>
</div>
)
}