From 32d1b1b0e6bc287bcc788527ef71a0811948b923 Mon Sep 17 00:00:00 2001 From: dm1sh Date: Thu, 14 Sep 2023 00:32:30 +0300 Subject: [PATCH] Added tipical student locations --- front/src/assets/dormitoryMarker.png | Bin 0 -> 17247 bytes front/src/assets/itmoMarker.png | Bin 0 -> 11554 bytes front/src/assets/letiMarker.png | Bin 0 -> 25384 bytes front/src/assets/studentLocations.ts | 73 +++++++++++++++++++ front/src/components/AnnouncementDetails.tsx | 3 + front/src/components/LocationMarker.tsx | 3 +- front/src/components/StudentLocations.tsx | 36 +++++++++ front/src/components/index.ts | 1 + front/src/pages/AddPage.tsx | 8 +- front/src/utils/markerIcons.ts | 27 ++++++- 10 files changed, 146 insertions(+), 5 deletions(-) create mode 100644 front/src/assets/dormitoryMarker.png create mode 100644 front/src/assets/itmoMarker.png create mode 100644 front/src/assets/letiMarker.png create mode 100644 front/src/assets/studentLocations.ts create mode 100644 front/src/components/StudentLocations.tsx diff --git a/front/src/assets/dormitoryMarker.png b/front/src/assets/dormitoryMarker.png new file mode 100644 index 0000000000000000000000000000000000000000..0987fa48bbe0e5b8a10de68c33abcdf6823ff62a GIT binary patch literal 17247 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%0AC)*9WIUMQcqGhpZCK7W_bfR1=+ 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 = { + dormitory: iconDormitory, + itmo: iconITMO, + leti: iconLETI, +} + +export { studentLocations, locationsIcons } diff --git a/front/src/components/AnnouncementDetails.tsx b/front/src/components/AnnouncementDetails.tsx index 6693693..46fd6f2 100644 --- a/front/src/components/AnnouncementDetails.tsx +++ b/front/src/components/AnnouncementDetails.tsx @@ -11,6 +11,7 @@ import { iconItem } from '../utils/markerIcons' import { useId } from '../hooks' import SelectDisposalTrashbox from './SelectDisposalTrashbox' import StarRating from './StarRating' +import StudentLocations from './StudentLocations' const styles = { container: { @@ -52,6 +53,8 @@ const View = ({ url='https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png' /> + + {address} diff --git a/front/src/components/LocationMarker.tsx b/front/src/components/LocationMarker.tsx index 5961db5..22b8155 100644 --- a/front/src/components/LocationMarker.tsx +++ b/front/src/components/LocationMarker.tsx @@ -24,9 +24,10 @@ function LocationMarker({ address, position, setPosition }: LocationMarkerProps) }) return ( - + {address} +
{position.lat.toFixed(4)}, {position.lng.toFixed(4)}
diff --git a/front/src/components/StudentLocations.tsx b/front/src/components/StudentLocations.tsx new file mode 100644 index 0000000..cb7dca2 --- /dev/null +++ b/front/src/components/StudentLocations.tsx @@ -0,0 +1,36 @@ +import { Marker, Tooltip, useMap } from 'react-leaflet' +import { LatLng } from 'leaflet' + +import { locationsIcons, studentLocations } from '../assets/studentLocations' + +type StudentLocationsProps = { + setPosition?: (pos: LatLng) => void +} + +function StudentLocations({ setPosition }: StudentLocationsProps) { + const map = useMap() + + return ( + <>{ + studentLocations.map((el) => + { + setPosition(new LatLng(...el.position)) + map.setView(el.position) + }), + }} + > + + {el.name} + + + ) + } + + ) +} + +export default StudentLocations diff --git a/front/src/components/index.ts b/front/src/components/index.ts index c6457f3..6ad0fde 100644 --- a/front/src/components/index.ts +++ b/front/src/components/index.ts @@ -17,3 +17,4 @@ export { default as SelectDisposalTrashbox } from './SelectDisposalTrashbox' export { default as StarRating } from './StarRating' export { default as CardLayout } from './CardLayout' export { default as LocateButton } from './LocateButton' +export { default as StudentLocations } from './StudentLocations' diff --git a/front/src/pages/AddPage.tsx b/front/src/pages/AddPage.tsx index ed095ce..27fbe32 100644 --- a/front/src/pages/AddPage.tsx +++ b/front/src/pages/AddPage.tsx @@ -1,10 +1,10 @@ -import { CSSProperties, FormEventHandler, useEffect, useState } from 'react' +import { CSSProperties, FormEventHandler, useEffect, useMemo, useState } from 'react' import { Form, Button } from 'react-bootstrap' import { MapContainer, TileLayer } from 'react-leaflet' import { latLng } from 'leaflet' import { useNavigate } from 'react-router-dom' -import { MapClickHandler, LocationMarker, CardLayout, LocateButton } from '../components' +import { MapClickHandler, LocationMarker, CardLayout, LocateButton, StudentLocations } from '../components' import { useAddAnnouncement } from '../hooks/api' import { categories, categoryNames } from '../assets/category' import { stations, lines, lineNames, DEFAULT_LINE } from '../assets/metro' @@ -38,7 +38,7 @@ function AddPage() { formData.append('address', address.data || '') // if address.error formData.set('bestBy', new Date((formData.get('bestBy') as number | null) || 0).getTime().toString()) - handleAdd(formData) + void handleAdd(formData) } useEffect(() => { @@ -86,6 +86,8 @@ function AddPage() { url='https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png' /> + {useMemo(() => , [])} +