diff --git a/.env.example b/.env.example index 24cf2f3..47df83d 100644 --- a/.env.example +++ b/.env.example @@ -10,6 +10,7 @@ MEDIPOST_PASSWORD=your-medipost-password MEDIPOST_RECIPIENT=your-medipost-recipient CONNECTED_ONLINE_URL=your-connected-online-url +CONNECTED_ONLINE_CONFIRMED_URL=your-connected-confirmed-url EMAIL_SENDER= EMAIL_USER= # refer to your email provider's documentation diff --git a/app/home/(user)/(dashboard)/order/page.tsx b/app/home/(user)/(dashboard)/order/page.tsx index dfcde84..0dbd65b 100644 --- a/app/home/(user)/(dashboard)/order/page.tsx +++ b/app/home/(user)/(dashboard)/order/page.tsx @@ -66,14 +66,16 @@ async function OrdersPage() { ({ medusa_order_id }) => medusa_order_id === medusaOrder.id, ); - const ttoReservation = ttoOrders.find(({ id }) => { - const connectedOnlineReservationId = - medusaOrder?.items && - medusaOrder.items.find( - ({ metadata }) => !!metadata?.connectedOnlineReservationId, - )?.metadata?.connectedOnlineReservationId; - return id === connectedOnlineReservationId; - }); + const orderIds = new Set( + (medusaOrder?.items ?? []) + .map((i) => i?.metadata?.connectedOnlineReservationId) + .filter(Boolean) + .map(String), + ); + + const ttoReservation = ttoOrders.find((o) => + orderIds.has(String(o.id)), + ); const medusaOrderItems = medusaOrder.items || []; const medusaOrderItemsAnalysisPackages = medusaOrderItems.filter( @@ -105,7 +107,6 @@ async function OrdersPage() { medusaOrderId={medusaOrder.id} analysisOrder={analysisOrder} ttoReservation={ttoReservation} - medusaOrderStatus={medusaOrder.status} itemsAnalysisPackage={medusaOrderItemsAnalysisPackages} itemsTtoService={medusaOrderItemsTtoServices} itemsOther={medusaOrderItemsOther} diff --git a/app/home/(user)/_components/booking/location-selector.tsx b/app/home/(user)/_components/booking/location-selector.tsx index 4cb02aa..07a5247 100644 --- a/app/home/(user)/_components/booking/location-selector.tsx +++ b/app/home/(user)/_components/booking/location-selector.tsx @@ -1,5 +1,4 @@ import { Label } from '@medusajs/ui'; -import { useTranslation } from 'react-i18next'; import { RadioGroup, RadioGroupItem } from '@kit/ui/radio-group'; import { Card } from '@kit/ui/shadcn/card'; @@ -8,7 +7,6 @@ import { Trans } from '@kit/ui/trans'; import { useBooking } from './booking.provider'; const LocationSelector = () => { - const { t } = useTranslation(); const { selectedLocationId, setSelectedLocationId, locations } = useBooking(); const onLocationSelect = (locationId: number | string | null) => { @@ -16,6 +14,15 @@ const LocationSelector = () => { setSelectedLocationId(Number(locationId)); }; + const uniqueLocations = locations?.filter((item, index, self) => { + return ( + index === + self.findIndex( + (loc) => loc.sync_id === item.sync_id && loc.name === item.name, + ) + ); + }); + return (
@@ -26,20 +33,23 @@ const LocationSelector = () => { className="mb-2 flex flex-col" onValueChange={(val) => onLocationSelect(val)} > -
+ {/*
- -
- {locations?.map((location) => ( + +
*/} + {uniqueLocations?.map((location, index) => (