reg.js 3.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. import { connect } from "react-redux";
  2. import { useState} from "react";
  3. import { actionFullRegister } from "../actions";
  4. import { Redirect } from "react-router-dom";
  5. const Reg = ({ onReg,LogedIn }) => {
  6. const [login, setLogin] = useState("");
  7. const [password, setPassword] = useState("");
  8. //надо тип инпуту
  9. //надо проверку на пустоту инпутов и запрет кнопки (disabled)
  10. //надо при кнопке отправить в onLogin login и пароль. onLogin - это функция-колбэк
  11. return LogedIn? <Redirect to = "/"/> :
  12. (
  13. <>
  14. <div className="container">
  15. <div id="loginbox" style={{"margin-top":"50px"}} className="mainbox col-md-6 col-md-offset-3 col-sm-8 col-sm-offset-2">
  16. <div className="panel panel-info" >
  17. <div className="panel-heading">
  18. <div className="panel-title">Registration</div>
  19. </div>
  20. <div style={{"padding-top":"30px"}} className="panel-body" >
  21. <div style={{"display":"none"}} id="login-alert" className="alert alert-danger col-sm-12"></div>
  22. <form id="loginform" className="form-horizontal" role="form">
  23. <div style={{"margin-bottom": "25px"}} className="input-group">
  24. <span className="input-group-addon"><i className="glyphicon glyphicon-user"></i></span>
  25. <input id="login-username" type="text" className="form-control" name="username" value={login} onChange={(e) => setLogin(e.target.value)} placeholder="Login"/>
  26. </div>
  27. <div style={{"margin-bottom": "25px"}} className="input-group">
  28. <span className="input-group-addon"><i className="glyphicon glyphicon-lock"></i></span>
  29. <input id="login-password" type="password" className="form-control" name="password" placeholder="Password" value = {password} onChange={(e) => setPassword(e.target.value)}/>
  30. </div>
  31. <div style={{'margin-top':"10px"}} className="form-group">
  32. <div className="col-sm-12 controls">
  33. <a id="btn-login" href="#" className="btn btn-success" onClick={() => (onReg(login, password))}>Sign up </a>
  34. </div>
  35. </div>
  36. <div className="form-group">
  37. <div className="col-md-12 control">
  38. <div style={{"border-top": "1px solid#888", "padding-top":"15px", "font-size":"85%"}}>
  39. <a href="/login">
  40. Login Here
  41. </a>
  42. </div>
  43. </div>
  44. </div>
  45. </form>
  46. </div>
  47. </div>
  48. </div>
  49. </div>
  50. </>
  51. );
  52. };
  53. const RegForm = connect(state => ({LogedIn:state?.auth?.token}), {onReg: actionFullRegister})(Reg)
  54. export default RegForm