import { GetRoomEngine, GetSessionDataManager } from '@nitrots/nitro-renderer'; import { FC } from 'react'; import { CalendarItemState, GetConfigurationValue, ICalendarItem } from '../../api'; import { Column, Flex, LayoutImage } from '../../common'; interface CalendarItemViewProps { itemId: number; state: number; active?: boolean; product?: ICalendarItem; onClick: (itemId: number) => void; } export const CalendarItemView: FC = props => { const { itemId = -1, state = null, product = null, active = false, onClick = null } = props; const getFurnitureIcon = (name: string) => { let furniData = GetSessionDataManager().getFloorItemDataByName(name); let url = null; if(furniData) url = GetRoomEngine().getFurnitureFloorIconUrl(furniData.id); else { furniData = GetSessionDataManager().getWallItemDataByName(name); if(furniData) url = GetRoomEngine().getFurnitureWallIconUrl(furniData.id); } return url; }; return ( onClick(itemId) }> { (state === CalendarItemState.STATE_UNLOCKED) && { product && ('image.library.url') + product.customImage : getFurnitureIcon(product.productName) } /> } } { (state !== CalendarItemState.STATE_UNLOCKED) && { (state === CalendarItemState.STATE_LOCKED_AVAILABLE) &&
} { ((state === CalendarItemState.STATE_LOCKED_EXPIRED) || (state === CalendarItemState.STATE_LOCKED_FUTURE)) &&
} } ); };