+
+
-
-
+
+
-
-
Log in
+
-
+ {/*
+
+
+
+
*/}
+ {/*
+
+
+
+
+
+ */}
+
+
);
}
}
diff --git a/frontend/src/pages/Register/index.js b/frontend/src/pages/Register/index.js
index 3528e92..8d14e55 100644
--- a/frontend/src/pages/Register/index.js
+++ b/frontend/src/pages/Register/index.js
@@ -14,11 +14,11 @@ class RegisterForm extends React.Component {
username:"",
email: "",
password: "",
- otp : "",
+ otp :""
},
isVerify : false,
errors: {},
- passwordError: "",
+ authError: "",
};
validateProperty = (input) => {
@@ -54,23 +54,19 @@ class RegisterForm extends React.Component {
};
handleSubmit = (e) => {
e.preventDefault();
- if((this.state.data.username !== "") &&
- (this.state.data.email !== "") &&
- (this.state.data.username !== "")){
- this.setState({isVerify : true});
- }
+ // console.log(this.props.status);
this.props.getOTP(this.state.data.email);
};
handleVerify = (e) =>{
e.preventDefault();
- // console.log(this.state.data,"verfiy");
if((this.state.data.username !== "") &&
(this.state.data.email !== "") &&
(this.state.data.username !== "") &&
(this.state.data.otp !== "")){
- const {username, password, email ,otp} = this.state.data;
+ const {username, password, email} = this.state.data;
+ const {otp} = this.state.data;
this.props.signUpandVerify({username, email, password ,otp});
}
}
@@ -84,19 +80,22 @@ class RegisterForm extends React.Component {
schema = {
username: Joi.string().alphanum().min(3).max(30),
email: Joi.string().email().required().label("Email"),
- password: Joi.string().min(8).required().label("Password"),
- otp: Joi.string().min(6).max(6),
+ password: Joi.string().min(5).required().label("Password"),
+ otp: (this.state.isVerify === false) ? "" : Joi.string().min(6).max(6),
};
- saveUserDetais(user,loggedIn){
- // console.log(user);
+ saveUserDetais(user,loggedIn,authMessage){
+ console.log("hi",authMessage,user);
+ console.log("hi",loggedIn);
+ if(authMessage !== '' && authMessage !== undefined){return;}
+ console.log("hiiii",user.userData);
if(user.userData === undefined){return;}
-
+
+
if(loggedIn){
localStorage.setItem('loggedIn', true);
- console.log(user);
if(localStorage.getItem('loggedIn') === 'true'){
localStorage.setItem('name',user.userData._id);
}
@@ -104,10 +103,13 @@ class RegisterForm extends React.Component {
}
render() {
+
+ if(this.props.status === true && this.state.isVerify === false){
+ this.setState({isVerify : true});
+ }
const { authMessage,userData ,loggedIn } = this.props;
- // console.log(loggedIn);
- const { errors, passwordError } = this.state;
- const { username, email, password, otp} = this.state.data;
+ const { errors, authError } = this.state;
+ const { username, email, password,otp} = this.state.data;
if (loggedIn) this.props.history.push("/dashboard");
return (
@@ -191,7 +193,7 @@ class RegisterForm extends React.Component {
-
- {/*
-
-
-
-
-
- */}
-
);
@@ -335,6 +329,7 @@ const mapStateToProps = (state) => {
userData: state.auth.userData,
loggedIn: state.auth.loggedIn,
authMessage: state.auth.authMessage,
+ status: state.auth.status
};
};
const mapDispatchToProps = (dispatch) => {
diff --git a/frontend/src/reducers/authReducer.js b/frontend/src/reducers/authReducer.js
index bd0c114..97a1e4d 100644
--- a/frontend/src/reducers/authReducer.js
+++ b/frontend/src/reducers/authReducer.js
@@ -1,110 +1,109 @@
import {
- LOGIN_SUCCESS,
- LOGIN_ERROR,
- SIGNOUT,
- SIGNUP_ERROR,
- SIGNUP_SUCCESS,
- GET_OTP_SUCCESS,
- GET_OTP_ERROR,
- GET_USER_DETAIL_SUCCESS,
- GET_USER_DETAIL_ERROR,
- PROFILE_UPDATE_SUCCESS,
- PROFILE_UPDATE_ERROR,
- UPLOAD_USER_IMAGE_SUCCESS,
- UPLOAD_USER_IMAGE_ERROR
- } from "../actions/actionTypes";
-
- const initState = {
- loggedIn: (localStorage.getItem('loggedIn')==='true') || false,
- userData: {},
- authMessage: null,
- // signin_status : false,
- // login_status : false
- };
-
- export default function (state = initState, action) {
- switch (action.type) {
- case LOGIN_SUCCESS:
- return {
- ...state,
- loggedIn: action.payload.status,
- userData: action.payload.userData,
- authMessage: action.payload.msg,
- };
- case LOGIN_ERROR:
- return {
- ...state,
- authMessage: action.error,
- };
- case SIGNUP_SUCCESS:
- return {
- ...state,
- loggedIn: action.payload.verified,
- userData: action.payload,
- authMessage: action.payload.msg,
- };
-
- case SIGNUP_ERROR:
- return {
- ...state,
- authMessage: action.error.response.data.error,
- };
-
- case SIGNOUT:
- return {
- ...state,
- userData: {},
- loggedIn: false,
- authMessage: null,
- };
+ LOGIN_SUCCESS,
+ LOGIN_ERROR,
+ SIGNOUT,
+ SIGNUP_ERROR,
+ SIGNUP_SUCCESS,
+ GET_OTP_SUCCESS,
+ GET_OTP_ERROR,
+ GET_USER_DETAIL_SUCCESS,
+ GET_USER_DETAIL_ERROR,
+ PROFILE_UPDATE_SUCCESS,
+ PROFILE_UPDATE_ERROR,
+ UPLOAD_USER_IMAGE_SUCCESS,
+ UPLOAD_USER_IMAGE_ERROR
+} from "../actions/actionTypes";
- case GET_OTP_SUCCESS:
- return {
- authMessage: action.payload.msg,
- };
+const initState = {
+ loggedIn: (localStorage.getItem('loggedIn')==='true') || false,
+ userData: {},
+ authMessage: null,
+ status : false
+};
- case GET_OTP_ERROR:
- return {
- authMessage: action.error,
- };
+export default function (state = initState, action) {
+ switch (action.type) {
+ case LOGIN_SUCCESS:
+ return {
+ ...state,
+ loggedIn: action.payload.status,
+ userData: action.payload.userData,
+ authMessage: action.payload.msg,
+ };
+ case LOGIN_ERROR:
+ return {
+ ...state,
+ authMessage: action.error,
+ };
+ case SIGNUP_SUCCESS:
+ return {
+ ...state,
+ loggedIn: action.payload.verified,
+ userData: action.payload,
+ authMessage: action.payload.msg,
+ };
- case GET_USER_DETAIL_SUCCESS:
- return {
- ...state,
- userData: action.payload,
- };
- case GET_USER_DETAIL_ERROR:
- return {
- ...state,
- authMessage: action.error,
- };
+ case SIGNUP_ERROR:
+ return {
+ ...state,
+ authMessage: action.error.response.data.error,
+ };
- case PROFILE_UPDATE_SUCCESS:
- return {
- ...state,
- authMessage: action.payload.msg,
- };
-
- case PROFILE_UPDATE_ERROR:
- return {
- ...state,
- authMessage: action.error.response.data.error,
- };
+ case SIGNOUT:
+ return {
+ ...state,
+ userData: {},
+ loggedIn: false,
+ authMessage: null,
+ };
- case UPLOAD_USER_IMAGE_SUCCESS:
- return {
- ...state,
- userData: action.payload,
- authMessage: action.payload.msg,
- };
- case UPLOAD_USER_IMAGE_ERROR:
- return {
- ...state,
- authMessage: action.error,
- };
+ case GET_OTP_SUCCESS:
+ return {
+ authMessage: action.payload.msg,
+ status : action.payload.status
+ };
- default:
- return state;
- }
+ case GET_OTP_ERROR:
+ return {
+ authMessage: action.error,
+ };
+
+ case GET_USER_DETAIL_SUCCESS:
+ return {
+ ...state,
+ userData: action.payload,
+ };
+ case GET_USER_DETAIL_ERROR:
+ return {
+ ...state,
+ authMessage: action.error,
+ };
+
+ case PROFILE_UPDATE_SUCCESS:
+ return {
+ ...state,
+ authMessage: action.payload.msg,
+ };
+
+ case PROFILE_UPDATE_ERROR:
+ return {
+ ...state,
+ authMessage: action.error.response.data.error,
+ };
+
+ case UPLOAD_USER_IMAGE_SUCCESS:
+ return {
+ ...state,
+ userData: action.payload,
+ authMessage: action.payload.msg,
+ };
+ case UPLOAD_USER_IMAGE_ERROR:
+ return {
+ ...state,
+ authMessage: action.error,
+ };
+
+ default:
+ return state;
}
-
\ No newline at end of file
+}