Merge branch 'dev' of github.com:LucasVbr/projet-web4 into dev

This commit is contained in:
Laurian-Dufrechou
2023-05-18 17:08:39 +02:00
4 changed files with 31 additions and 24 deletions
+1 -1
View File
@@ -2,7 +2,7 @@ import { MdError } from "react-icons/md";
import { Button, Text, VStack } from "@chakra-ui/react";
import { useRouter } from "next/router";
export default function LoadingPage() {
export default function ErrorPage() {
const router = useRouter();
return (
+1 -4
View File
@@ -29,10 +29,7 @@ export default function Navbar({variant = 'fixed'}: Props) {
return (
<Flex gap={5} justify={'center'} flexBasis={'100%'}>
{status === 'authenticated'
? authenticatedLinks
: <></>
}
{status === 'authenticated' && authenticatedLinks}
</Flex>
);
};
+1 -3
View File
@@ -55,7 +55,5 @@ export default async function auth(req: NextApiRequest, res: NextApiResponse) {
}
async function getUserByEmail(email: string): Promise<null | User> {
return prismaClient.user.findUnique({
where: {email},
});
return prismaClient.user.findUnique({where: {email}});
}
+28 -16
View File
@@ -17,11 +17,7 @@ const MapWithNoSSR = dynamic(
);
export default function Map() {
const [location, setLocation] = useState([
null as unknown as number,
null as unknown as number,
]);
const [location, setLocation] = useState<number[]>([]);
const [geolocationError, setGeolocationError] = useState(false);
const { data: session, status } = useSession();
const [listBars, setListBars] = useState({} as unknown as any);
@@ -116,10 +112,19 @@ export default function Map() {
};
useEffect(() => {
if (!session?.user) return;
navigator.geolocation.getCurrentPosition(
successPosition,
errorPosition,
geolocationOptions
(position: GeolocationPosition) => {
setLocation([position.coords.latitude, position.coords.longitude]);
setGeolocationError(false);
},
() => setGeolocationError(true),
{
enableHighAccuracy: true,
timeout: 5000,
maximumAge: 0,
},
);
}, [loggedUser]);
@@ -134,15 +139,22 @@ export default function Map() {
setLocation([position.coords.latitude, position.coords.longitude]);
setGeolocationError(false);
if (!loggedUser) return;
userSetLocation.mutate(
`${position.coords.latitude},${position.coords.longitude}`
);
}
for (const [key, val] of Object.entries(params)) {
urlBars.searchParams.append(key, val);
}
function errorPosition(error: GeolocationPositionError) {
setGeolocationError(true);
}
fetch(urlBars)
.then(res => res.json())
.then(data => {
const filteredBars = data.filter((bar: any) => bar.name !== null);
setListBars(filteredBars);
})
.catch(err => console.error(err));
}
}, [session?.user]);
if (status === 'loading') return <LoadingPage/>;
const {user} = session as unknown as Session;
return (
<>