123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990 |
- import React, { Component } from "react";
- import { connect } from 'react-redux';
- import { Redirect } from 'react-router-dom';
- import { auth, register } from '../actions/auth';
- import {SignUpForm} from '../components/signUp';
- import {SignInForm} from '../components/signIn';
- import Loader from '../components/loader';
- class Auth extends Component {
- state = { auth: true };
- toggleAuth = () => this.setState(prevState => ({ auth: !prevState.auth}));
- render() {
- const { auth } = this.state;
- const { user } = this.props
- console.log('userProps',this.props.user)
-
- if(Object.keys(user).length !== 0 && user.role === "User") {
- return <Redirect to="/user" />
- }
- if(Object.keys(user).length !== 0 && user.role === "Doctor") {
- return <Redirect to="/admin" />
- }
-
- if(Object.keys(user).length !== 0 && user.role === "Admin") {
- return <Redirect to="/admin" />
- }
- return (
- <div className="main">
- <div className="auth-wrapper">
- <Loader flag={this.props.isFetching}>
- <div className="auth">
- <div className="auth__content">
- { auth ? (
- // <Loader flag={this.props.isFetching}>
- <SignInForm error={this.props.errorFromAuth} submitHandler={this.props.auth} />
- // {/* </Loader> */}
- ) : (
- // <Loader flag={this.props.isFetching}>
- <SignUpForm
- error={this.props.errorFromAuth}
- submitHandler={this.props.register}
- successRegister={this.props.successRegister}
- />
- // {/* </Loader> */}
- )}
- <div className="auth__additional-content">
- {auth ? (
- <p className="auth__text">
- Do you have account ? {" "}
- <span className="auth__toggle-span" onClick={this.toggleAuth}>
- Sing Up
- </span>
- </p>
- ) : (
- <p className="auth__text">
- I have account{" "}
- <span className="auth__toggle-span" onClick={this.toggleAuth}>
- Sign In
- </span>
- </p>
- )}
- </div>
- </div>
- </div>
- </Loader>
- </div>
- </div>
- );
- }
- }
- const mapStateToProps = state => ({
- user: state.auth.user,
- isFetching: state.auth.isFetching,
- errorFromAuth: state.auth.error,
- successRegister: state.auth.successRegister
- })
- export default connect(
- mapStateToProps,
- { auth,register }
- )(Auth);
|