Fixed login route and authentication guards.

This commit is contained in:
2022-04-07 13:36:49 -05:00
parent ef66904c60
commit fa8552d488
7 changed files with 33 additions and 53 deletions

View File

@@ -1,34 +1,25 @@
import React from "react";
import { Navigate } from "react-router-dom";
import context from "../globals";
import globals from "../globals";
import { apiClient } from "../utils/httpClients";
export default class AuthenticationGuard extends React.Component {
constructor(props) {
super(props);
}
static contextType = context;
static contextType = globals;
async componentDidMount() {
if (!this.context.user) {
let userDataResponse = await apiClient.get("/user/");
let userDataResponse = await apiClient.get("/user");
if (userDataResponse.status === 200) {
this.context.setUser(userDataResponse.data);
this.context.update({ user: userDataResponse.data });
} else if (userDataResponse.status == 401) {
this.context.navigate("/signup");
}
}
}
render() {
return (
<context.Consumer>
{val => {
if (!val.user) {
console.log(val);
return <Navigate to="/signup" replace="true" />;
}
}}
</context.Consumer>
);
return null;
}
}