fix(SW-2414): Removed continue button on single room member bookings
Approved-by: Christian Andolf Approved-by: Matilda Landström
This commit is contained in:
@@ -33,10 +33,13 @@ export default function Details({ user }: DetailsProps) {
|
|||||||
const intl = useIntl()
|
const intl = useIntl()
|
||||||
const [isMemberPriceModalOpen, setIsMemberPriceModalOpen] = useState(false)
|
const [isMemberPriceModalOpen, setIsMemberPriceModalOpen] = useState(false)
|
||||||
|
|
||||||
const { canProceedToPayment, lastRoom } = useEnterDetailsStore((state) => ({
|
const { canProceedToPayment, lastRoom, isMultiRoom } = useEnterDetailsStore(
|
||||||
canProceedToPayment: state.canProceedToPayment,
|
(state) => ({
|
||||||
lastRoom: state.lastRoom,
|
canProceedToPayment: state.canProceedToPayment,
|
||||||
}))
|
lastRoom: state.lastRoom,
|
||||||
|
isMultiRoom: state.rooms.length > 1,
|
||||||
|
})
|
||||||
|
)
|
||||||
const {
|
const {
|
||||||
actions: { updateDetails },
|
actions: { updateDetails },
|
||||||
idx,
|
idx,
|
||||||
@@ -47,6 +50,7 @@ export default function Details({ user }: DetailsProps) {
|
|||||||
|
|
||||||
const memberRate = "member" in room.roomRate ? room.roomRate.member : null
|
const memberRate = "member" in room.roomRate ? room.roomRate.member : null
|
||||||
const isPaymentNext = idx === lastRoom
|
const isPaymentNext = idx === lastRoom
|
||||||
|
const showContinueButton = isMultiRoom || !user
|
||||||
|
|
||||||
const methods = useForm<DetailsSchema>({
|
const methods = useForm<DetailsSchema>({
|
||||||
criteriaMode: "all",
|
criteriaMode: "all",
|
||||||
@@ -151,36 +155,38 @@ export default function Details({ user }: DetailsProps) {
|
|||||||
)}
|
)}
|
||||||
<SpecialRequests />
|
<SpecialRequests />
|
||||||
</div>
|
</div>
|
||||||
<footer className={styles.footer}>
|
{showContinueButton ? (
|
||||||
<Button
|
<footer className={styles.footer}>
|
||||||
isDisabled={
|
<Button
|
||||||
!(
|
isDisabled={
|
||||||
methods.formState.isValid ||
|
!(
|
||||||
(isPaymentNext && canProceedToPayment)
|
methods.formState.isValid ||
|
||||||
)
|
(isPaymentNext && canProceedToPayment)
|
||||||
}
|
)
|
||||||
variant="Tertiary"
|
}
|
||||||
typography="Body/Paragraph/mdBold"
|
variant="Tertiary"
|
||||||
size="Medium"
|
typography="Body/Paragraph/mdBold"
|
||||||
type="submit"
|
size="Medium"
|
||||||
onPress={
|
type="submit"
|
||||||
isPaymentNext && canProceedToPayment && !room.isFlexRate
|
onPress={
|
||||||
? trackPaymentSectionOpen
|
isPaymentNext && canProceedToPayment && !room.isFlexRate
|
||||||
: undefined
|
? trackPaymentSectionOpen
|
||||||
}
|
: undefined
|
||||||
>
|
}
|
||||||
{isPaymentNext
|
>
|
||||||
? intl.formatMessage({
|
{isPaymentNext
|
||||||
defaultMessage: "Continue",
|
? intl.formatMessage({
|
||||||
})
|
defaultMessage: "Continue",
|
||||||
: intl.formatMessage(
|
})
|
||||||
{
|
: intl.formatMessage(
|
||||||
defaultMessage: "Continue to room {nextRoomNumber}",
|
{
|
||||||
},
|
defaultMessage: "Continue to room {nextRoomNumber}",
|
||||||
{ nextRoomNumber: roomNr + 1 }
|
},
|
||||||
)}
|
{ nextRoomNumber: roomNr + 1 }
|
||||||
</Button>
|
)}
|
||||||
</footer>
|
</Button>
|
||||||
|
</footer>
|
||||||
|
) : null}
|
||||||
<MemberPriceModal
|
<MemberPriceModal
|
||||||
isOpen={isMemberPriceModalOpen}
|
isOpen={isMemberPriceModalOpen}
|
||||||
setIsOpen={setIsMemberPriceModalOpen}
|
setIsOpen={setIsMemberPriceModalOpen}
|
||||||
|
|||||||
@@ -130,7 +130,7 @@ export function createDetailsStore(
|
|||||||
},
|
},
|
||||||
[StepEnum.details]: {
|
[StepEnum.details]: {
|
||||||
step: StepEnum.details,
|
step: StepEnum.details,
|
||||||
isValid: false,
|
isValid: isMember && idx === 0,
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user