Finished functionally complete email confirmation workflow

This commit is contained in:
Alexander Wong
2017-08-29 21:12:34 -06:00
parent 415aea74a3
commit 83ddd34c7c
11 changed files with 274 additions and 37 deletions

View File

@@ -4,10 +4,15 @@ import {
CLEAR_AUTH_REQUEST_ERROR,
SET_AUTH_REQUEST_SUCCESS,
CLEAR_AUTH_REQUEST_SUCCESS,
SET_EMAIL_VERIFICATION_SUCCESS,
CLEAR_EMAIL_VERIFICATION_SUCCESS,
SET_EMAIL_VERIFICATION_ERROR,
CLEAR_EMAIL_VERIFICATION_ERROR,
SET_SELF_USER,
SET_FORM_EMAIL,
SET_FORM_PASSWORD,
SET_FORM_PASSWORD_CONFIRMATION
SET_FORM_PASSWORD_CONFIRMATION,
SET_FORM_EMAIL_VERIFICATION
} from "../../constants/auth.constants";
import { parseError } from "../common.actions";
@@ -19,27 +24,27 @@ export function isSendingAuthRequest(sendingRequest) {
}
export function setAuthRequestError(exception) {
let rawError = parseError(exception);
if (rawError.email) {
rawError["Email"] = rawError.email;
delete rawError["email"];
let error = parseError(exception);
if (error.email) {
error["Email"] = error.email;
delete error["email"];
}
if (rawError.password1) {
rawError["Password"] = rawError.password1;
delete rawError["password1"];
if (error.password1) {
error["Password"] = error.password1;
delete error["password1"];
}
if (rawError.password2) {
rawError["Password Confirmation"] = rawError.password2;
delete rawError["password2"];
if (error.password2) {
error["Password Confirmation"] = error.password2;
delete error["password2"];
}
if (rawError.non_field_errors) {
rawError["Non Field Errors"] = rawError.non_field_errors;
delete rawError["non_field_errors"];
if (error.non_field_errors) {
error["Non Field Errors"] = error.non_field_errors;
delete error["non_field_errors"];
}
return {
type: SET_AUTH_REQUEST_ERROR,
data: parseError(exception)
data: error
};
}
@@ -53,13 +58,49 @@ export function setAuthRequestSuccess(response) {
return {
type: SET_AUTH_REQUEST_SUCCESS,
data: response.detail || response
}
};
}
export function clearAuthRequestSuccess() {
return {
type: CLEAR_AUTH_REQUEST_SUCCESS
};
}
export function setEmailVerificationError(exception) {
let error = parseError(exception);
if (error.detail) {
error["Email"] = error.detail;
delete error["detail"];
}
if (error.key) {
error["Verification Key"] = error.key;
delete error["key"];
}
return {
type: SET_EMAIL_VERIFICATION_ERROR,
data: error
};
}
export function clearEmailVerificationError() {
return {
type: CLEAR_EMAIL_VERIFICATION_ERROR
};
}
export function setEmailVerificationSuccess(response) {
return {
type: SET_EMAIL_VERIFICATION_SUCCESS,
data: response.detail || response
};
}
export function clearEmailVerificationSuccess() {
return {
type: CLEAR_EMAIL_VERIFICATION_SUCCESS
};
}
export function setSelfUser(selfUser) {
@@ -89,3 +130,10 @@ export function setFormPasswordConfirmation(passwordConfirmation) {
data: passwordConfirmation
};
}
export function setFormEmailVerification(emailKey) {
return {
type: SET_FORM_EMAIL_VERIFICATION,
data: emailKey
};
}

View File

@@ -1,10 +1,18 @@
import {
SEND_REGISTER_REQUEST
SEND_REGISTER_REQUEST,
SEND_EMAIL_VERIFICATION_REQUEST
} from "../../constants/auth.constants";
export function sendRegisterRequest(postbody) {
return {
type: SEND_REGISTER_REQUEST,
data: postbody
}
};
}
export function sendEmailVerificationRequest(postbody) {
return {
type: SEND_EMAIL_VERIFICATION_REQUEST,
data: postbody
};
}