From 81b46581ab79f8f5e9e132e00e5d1b8e9182dd46 Mon Sep 17 00:00:00 2001
From: eug-vs <eug-vs@keemail.me>
Date: Sun, 15 Nov 2020 04:07:33 +0300
Subject: feat: implement authentication

---
 src/containers/LoginSection/LoginSection.tsx | 22 ++++++++++++++++++++--
 1 file changed, 20 insertions(+), 2 deletions(-)

(limited to 'src/containers/LoginSection/LoginSection.tsx')

diff --git a/src/containers/LoginSection/LoginSection.tsx b/src/containers/LoginSection/LoginSection.tsx
index b870c7d..812afd8 100644
--- a/src/containers/LoginSection/LoginSection.tsx
+++ b/src/containers/LoginSection/LoginSection.tsx
@@ -1,7 +1,9 @@
-import React from 'react';
+import React, { useState } from 'react';
 import { ContentSection } from 'react-benzin';
 import { Link, TextField, Button } from '@material-ui/core';
 import { makeStyles } from '@material-ui/core/styles';
+import { useAuth } from '../../hooks/useAuth';
+
 
 const useStyles = makeStyles(theme => ({
   form: {
@@ -17,21 +19,37 @@ const useStyles = makeStyles(theme => ({
 
 const LoginSection: React.FC = () => {
   const classes = useStyles();
+  const { login, isAuthenticated } = useAuth();
+  const [username, setUsername] = useState<string>('');
+  const [password, setPassword] = useState<string>('');
+
+  const handleChangeUsername = (event: React.ChangeEvent<HTMLInputElement>) => {
+    setUsername(event.target.value);
+  };
+
+  const handleChangePassword = (event: React.ChangeEvent<HTMLInputElement>) => {
+    setPassword(event.target.value);
+  };
+
+  const handleSubmit = () => login(username, password);
 
-  return (
+  return isAuthenticated ? null : (
     <ContentSection sectionName="Login" level={1}>
       Log in using your <Link href="https://edufpmi.bsu.by">EDUFPMI</Link> credentials
       <p className={classes.form}>
         <TextField
+          onChange={handleChangeUsername}
           variant="outlined"
           label="Username"
         />
         <TextField
+          onChange={handleChangePassword}
           variant="outlined"
           label="Password"
           type="password"
         />
         <Button
+          onClick={handleSubmit}
           variant="contained"
           size="large"
           color="primary"
-- 
cgit v1.2.3

