diff --git a/apps/scandic-web/components/HotelReservation/MyStay/ReferenceCard/GuaranteeInfo/index.tsx b/apps/scandic-web/components/HotelReservation/MyStay/ReferenceCard/GuaranteeInfo/index.tsx index 1cb1d843b..d53266f60 100644 --- a/apps/scandic-web/components/HotelReservation/MyStay/ReferenceCard/GuaranteeInfo/index.tsx +++ b/apps/scandic-web/components/HotelReservation/MyStay/ReferenceCard/GuaranteeInfo/index.tsx @@ -1,6 +1,7 @@ "use client" import { useIntl } from "react-intl" +import { CancellationRuleEnum } from "@scandic-hotels/common/constants/booking" import { MaterialIcon } from "@scandic-hotels/design-system/Icons/MaterialIcon" import { Typography } from "@scandic-hotels/design-system/Typography" @@ -12,14 +13,24 @@ import styles from "./guaranteeInfo.module.css" export default function GuaranteeInfo() { const intl = useIntl() - const { isGuaranteeable, guaranteeInfo, allRoomsAreCancelled } = + const { guaranteeInfo, allRoomsAreCancelled, cancellationRule, priceType } = useMyStayStore((state) => ({ - isGuaranteeable: state.bookedRoom.isGuaranteeable, guaranteeInfo: state.bookedRoom.guaranteeInfo, allRoomsAreCancelled: state.allRoomsAreCancelled, + cancellationRule: state.bookedRoom.rateDefinition.cancellationRule, + priceType: state.bookedRoom.priceType, })) + const isFlexBooking = + cancellationRule === CancellationRuleEnum.CancellableBefore6PM + const isRewardNight = priceType === "points" - if ((isGuaranteeable && !guaranteeInfo) || allRoomsAreCancelled) { + const showGuaranteeInfoModal = + isFlexBooking && !!guaranteeInfo && !isRewardNight + + if ( + allRoomsAreCancelled || + (!guaranteeInfo && isFlexBooking && !isRewardNight) + ) { return null } @@ -38,7 +49,7 @@ export default function GuaranteeInfo() { - + {showGuaranteeInfoModal && } {intl.formatMessage({ id: "myStay.roomHeldAfter18", defaultMessage: "Room held after 18:00",