routes.js 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. import React from "react";
  2. import createHistory from "history/createBrowserHistory";
  3. import {connect} from "react-redux";
  4. import RegForm from "../pages/reg";
  5. import {LogForm} from "../pages/login";
  6. import Home from "../pages/homePage";
  7. import ConnectCabinet from "../pages/cabinet";
  8. import Search from "../pages/search";
  9. import ConnectedPrivateRoute from "./privateRoute";
  10. import {Redirect} from "react-router";
  11. import {useEffect, useState, useRef} from "react";
  12. import {BrowserRouter as Router, Switch, Route} from "react-router-dom";
  13. import ChangePass from "../pages/changePass";
  14. import Project from "../pages/project";
  15. import CProjects from "../pages/projects";
  16. const LoginForm = ({onLogin}) =>{
  17. const [login, setLogin] = useState(''); //braunvlad4
  18. const [pass, setPass] = useState(''); //123
  19. return(
  20. <div className='LoginForm'>
  21. <input value={login} style={{backgroundColor: login.length>0 ? 'green' : 'red'}}
  22. placeholder='your login' onChange={e=>setLogin(e.target.value)} />
  23. <input value={pass} style={{backgroundColor: pass.length>0 ? 'green' : 'red'}}
  24. placeholder='your pass' onChange={e=>setPass(e.target.value)} />
  25. <button onClick={()=>onLogin(login,pass)} disabled={(login.length!==0 && pass.length!==0)?false:true }>Send</button>
  26. </div>
  27. )
  28. }
  29. const Routes = ({ isAuth }) => {
  30. return (
  31. <div className="App">
  32. <div className="contentDiv">
  33. <Switch>
  34. <ConnectedPrivateRoute exact path="/" roles = {['user']} component={Home} />
  35. <ConnectedPrivateRoute path="/cabinet" roles = {['user']} component={ConnectCabinet} />
  36. <ConnectedPrivateRoute path="/search" roles = {['user']} component={Search} />
  37. <ConnectedPrivateRoute path="/changePass" roles={['user']} component={ChangePass} />
  38. <ConnectedPrivateRoute path="/projects" roles = {['user']} component={CProjects} />
  39. <ConnectedPrivateRoute path="/login" roles = {['unknown']} component={LogForm} />
  40. <ConnectedPrivateRoute path="/registration" roles = {['unknown']} component={RegForm} />
  41. <ConnectedPrivateRoute path="/project" roles = {['user']} component={Project} />
  42. </Switch>
  43. </div>
  44. </div>
  45. );
  46. };
  47. export default Routes