From 4ae4e874689a71e33cdd7a5799fc0c85c4861367 Mon Sep 17 00:00:00 2001 From: Joseph Ditton Date: Mon, 22 Nov 2021 14:21:53 -0700 Subject: adds start for console --- client/components/sign_in/_sign_in.jsx | 28 ++++++++++++++++++++++++++-- 1 file changed, 26 insertions(+), 2 deletions(-) (limited to 'client/components/sign_in') diff --git a/client/components/sign_in/_sign_in.jsx b/client/components/sign_in/_sign_in.jsx index 753b2b5..a6e802c 100644 --- a/client/components/sign_in/_sign_in.jsx +++ b/client/components/sign_in/_sign_in.jsx @@ -1,7 +1,9 @@ -import { useState } from 'react'; +import { useContext, useState } from 'react'; import { useNavigate } from 'react-router'; +import { SettingsContext } from '../../utils/settings_context'; export const SignIn = () => { + const [, dispatch] = useContext(SettingsContext); const [email, setEmail] = useState(''); const [password, setPassword] = useState(''); const navigate = useNavigate(); @@ -10,6 +12,26 @@ export const SignIn = () => { navigate('/signup'); }; + const signIn = async () => { + const res = await fetch('/sessions', { + method: 'POST', + headers: { + 'Content-Type': 'application/json', + }, + body: JSON.stringify({ + email, + password, + }), + }); + if (res.status === 201) { + const result = await res.json(); + dispatch({ type: 'update', payload: { jwt: result.token } }); + navigate('/'); + } else { + console.error('An issue occurred when logging in.'); + } + }; + return (
Email
@@ -25,7 +47,9 @@ export const SignIn = () => { onChange={(e) => setPassword(e.target.value)} />
- +