// © XlXi 2021 // Graphictoria 5 import React, {useState} from 'react'; import { Link, useHistory } from 'react-router-dom'; import ReCAPTCHA from 'react-google-recaptcha'; import { CreateAccount, LoginToAccount } from '../../Helpers/Auth'; import Loader from '../../Components/Loader'; const LoginForm = (props) => { const [waitingForSubmission, setWaitingForSubmission] = useState(false); const [validity, setValidity] = useState({error: false, message: ``, inputs: []}); const history = useHistory(); async function SubmitLogin(form) { setWaitingForSubmission(true); await LoginToAccount(form).then(res=>{ if (res != `good`) { setValidity({error: true, message:res.message, inputs: res.inputs}); setTimeout(()=>{setValidity({...validity, error: false, inputs: res.inputs});}, 4000); return; }else{ window.location.replace(`/home`); } }).catch(error=>console.log(error)); setWaitingForSubmission(false); } return ( waitingForSubmission ? : <>
{validity.error?

{validity.message}

: null}
{ e.preventDefault(); SubmitLogin(new FormData(e.target)); }} className="fs"> input == `username`)? `is-invalid` : ``)}`} placeholder="Username" name="username"/> input == `password`)? `is-invalid` : ``)}`} placeholder="Password" name="password"/>

Forgot your password?
New to Graphictoria?

Creating an account takes less than a minute, and you can join a community of 7k+ users for completely free.
Sign Up

); }; export default LoginForm;