// © XlXi 2021 // Graphictoria 5 import React, {useState} from 'react'; import { Link } from 'react-router-dom'; import ReCAPTCHA from 'react-google-recaptcha'; import { CreateAccount, LoginToAccount, CreateForum } from '../Helpers/Auth'; import Loader from '../Components/Loader'; import { getCookie } from '../helpers/utils'; import axios from "axios"; import Config from '../config.js'; axios.defaults.withCredentials = true var url = Config.BaseUrl.replace('http://', ''); var protocol = Config.Protocol; const CreatePost = (props) => { const [waitingForSubmission, setWaitingForSubmission] = useState(false); const [validity, setValidity] = useState({error: false, message: ``, inputs: []}); const user = props.user; async function SubmitForm(form) { form.append('creator_id', user.id); setWaitingForSubmission(true); await axios.post(`${protocol}apis.${url}/api/create/forum`, form, {headers: {'X-CSRF-TOKEN': document.querySelector(`meta[name="csrf-token"]`).content, "X-Requested-With":"XMLHttpRequest"}}).then(data=>{ const res = data.data; console.log(res); if (res.badInputs.length >= 1) { setValidity({error: true, message:res.message, inputs: res.badInputs}); setTimeout(()=>{setValidity({...validity, error: false, inputs: res.badInputs});}, 4000); return; } window.location.replace(`/forum`); }).catch(error=>{console.log(error);}); setWaitingForSubmission(false); } return ( waitingForSubmission ? :
{validity.error?

{validity.message}

: null}
{e.preventDefault();SubmitForm(new FormData(e.target));}} class="fs"> input == `title`)? `is-invalid` : ``)}`} placeholder="Title" name="title"/>

Read the rules before posting!

Before you make a post, be sure to read the rules.

); }; export default CreatePost;