routes.js 3.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  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 CProject from "../pages/project";
  15. import CProjects from "../pages/projects";
  16. import CUpload from "../pages/upload";
  17. const LoginForm = ({onLogin}) =>{
  18. const [login, setLogin] = useState(''); //braunvlad4
  19. const [pass, setPass] = useState(''); //123
  20. return(
  21. <div className='LoginForm'>
  22. <input value={login}
  23. style={{backgroundColor: login.length>0 ? 'green' : 'red'}}
  24. placeholder='your login'
  25. onChange={e=>setLogin(e.target.value)} />
  26. <input value={pass}
  27. style={{backgroundColor: pass.length>0 ? 'green' : 'red'}}
  28. placeholder='your pass'
  29. onChange={e=>setPass(e.target.value)} />
  30. <button onClick={()=>onLogin(login,pass)}
  31. disabled={(login.length!==0 && pass.length!==0)?false:true }>
  32. Send
  33. </button>
  34. </div>
  35. )
  36. }
  37. const Routes = ({isAuth}) => {
  38. return (
  39. <div className="App">
  40. <div className="contentDiv">
  41. <Switch>
  42. <ConnectedPrivateRoute exact path = "/" roles = {['user']} component = {Home} />
  43. <ConnectedPrivateRoute path = "/cabinet" roles = {['user']} component = {ConnectCabinet} />
  44. <ConnectedPrivateRoute path = "/search" roles = {['user']} component = {Search} />
  45. <ConnectedPrivateRoute path = "/project/:id" roles = {['user']} component = {CProject} />
  46. <ConnectedPrivateRoute path = "/changePass" roles = {['user']} component = {ChangePass} />
  47. <ConnectedPrivateRoute path = "/upload" roles = {['user']} component = {CUpload} />
  48. <ConnectedPrivateRoute path = "/projects" roles = {['user']} component = {CProjects} />
  49. <ConnectedPrivateRoute path = "/login" roles = {['unknown']} component = {LogForm} />
  50. <ConnectedPrivateRoute path = "/registration" roles = {['unknown']} component = {RegForm} />
  51. </Switch>
  52. </div>
  53. </div>
  54. );
  55. };
  56. export default Routes