import React, {Component} from 'react'; import {BrowserRouter as Router, Route, Redirect} from 'react-router-dom'; import Login from '../login/login'; import Profile from "../profiles/profile"; import 'semantic-ui-css/semantic.min.css'; import HeaderComp from '../template/header'; import './App.css'; import UserLogin from "../../repository/login_repo"; import UserJobs from "../work/user_jobs"; import UserInternships from "../work/user_internships"; import UserProjects from "../work/user_projects"; import CompanyJobs from "../work/company_jobs"; import TeamProjects from "../work/team_projects"; import TeamJobs from "../work/team_jobs"; import CompanyInternships from "../work/company_internships"; import RegisterUser from "../register/register_user_form"; import RegisterCompany from "../register/register_company_form"; import RegisterTeam from "../register/register_team_form"; import Search from "../filter/search"; import EditUser from "../account_edit/user_edit"; import EditCompany from "../account_edit/company_edit"; import EditTeam from "../account_edit/team_edit"; import JobRegister from "../work_register/job_register"; import InternshipRegister from "../work_register/internship_register"; import ProjectRegister from "../work_register/project_register"; class App extends Component{ constructor(props) { super(props); this.state = { logged: false, error: null, success: null, currentUser: { } } } render(){ return(
}/> }/> }/> }/> }/> }/> }/> }/> }/> }/> }/> }/> }/> }/> }/> }/> }/> }/> }/> }/> }/>
); } removeState = () => { this.setState({ logged: false, error: null, currentUser: {} }) } updateUser = (user) =>{ this.setState({ currentUser: user }) } setSuccess = (message) => { this.setState({ success: message, error: null }) } updateJobs = (job) => { this.setState(prevState => ({ currentUser:{ ...prevState.currentUser, jobs: [...prevState.currentUser.jobs, job] } })) } updateInternships = (internship) => { this.setState(prevState => ({ currentUser:{ ...prevState.currentUser, internships: [...prevState.currentUser.internships, internship] } })) } updateProjects = (project) => { this.setState(prevState => ({ currentUser:{ ...prevState.currentUser, projects: [...prevState.currentUser.projects, project] } })) } attemptLogin = (email, password, type) => { UserLogin.login(email, password, type).then((res) =>{ if(res.data.email==null){ this.setState({ logged: false, error: res.data.error, }); }else{ this.setState({ logged: true, currentUser: res.data, error: null, }); } }); if(this.state.currentUser.email!=null){ return ; } } } export default App;