feat(certs): Claim Certs
This commit is contained in:
@@ -174,6 +174,8 @@ export const reducer = handleActions(
|
||||
[settingsTypes.updateMyEmailComplete]: (state, { payload }) =>
|
||||
payload ? spreadThePayloadOnUser(state, payload) : state,
|
||||
[settingsTypes.updateUserFlagComplete]: (state, { payload }) =>
|
||||
payload ? spreadThePayloadOnUser(state, payload) : state,
|
||||
[settingsTypes.verifyCertComplete]: (state, { payload }) =>
|
||||
payload ? spreadThePayloadOnUser(state, payload) : state
|
||||
},
|
||||
initialState
|
||||
|
@@ -27,7 +27,8 @@ export const types = createTypes(
|
||||
...createAsyncTypes('submitNewUsername'),
|
||||
...createAsyncTypes('updateMyEmail'),
|
||||
...createAsyncTypes('updateUserFlag'),
|
||||
...createAsyncTypes('submitProfileUI')
|
||||
...createAsyncTypes('submitProfileUI'),
|
||||
...createAsyncTypes('verifyCert')
|
||||
],
|
||||
ns
|
||||
);
|
||||
@@ -80,6 +81,13 @@ export const validateUsernameComplete = createAction(
|
||||
);
|
||||
export const validateUsernameError = createAction(types.validateUsernameError);
|
||||
|
||||
export const verifyCert = createAction(types.verifyCert);
|
||||
export const verifyCertComplete = createAction(
|
||||
types.verifyCertComplete,
|
||||
checkForSuccessPayload
|
||||
);
|
||||
export const verifyCertError = createAction(types.verifyCertError);
|
||||
|
||||
export const usernameValidationSelector = state => state[ns].usernameValidation;
|
||||
|
||||
export const reducer = handleActions(
|
||||
|
@@ -11,14 +11,17 @@ import {
|
||||
submitNewUsernameComplete,
|
||||
submitNewUsernameError,
|
||||
submitProfileUIComplete,
|
||||
submitProfileUIError
|
||||
submitProfileUIError,
|
||||
verifyCertComplete,
|
||||
verifyCertError
|
||||
} from './';
|
||||
import {
|
||||
getUsernameExists,
|
||||
putUpdateMyAbout,
|
||||
putUpdateMyProfileUI,
|
||||
putUpdateMyUsername,
|
||||
putUpdateUserFlag
|
||||
putUpdateUserFlag,
|
||||
putVerifyCert
|
||||
} from '../../utils/ajax';
|
||||
import { createFlashMessage } from '../../components/Flash/redux';
|
||||
|
||||
@@ -74,12 +77,25 @@ function* validateUsernameSaga({ payload }) {
|
||||
}
|
||||
}
|
||||
|
||||
function* verifyCertificationSaga({ payload }) {
|
||||
try {
|
||||
const {
|
||||
data: { response, isCertMap }
|
||||
} = yield call(putVerifyCert, payload);
|
||||
yield put(verifyCertComplete({ ...response, payload: isCertMap }));
|
||||
yield put(createFlashMessage(response));
|
||||
} catch (e) {
|
||||
yield put(verifyCertError(e));
|
||||
}
|
||||
}
|
||||
|
||||
export function createSettingsSagas(types) {
|
||||
return [
|
||||
takeEvery(types.updateUserFlag, updateUserFlagSaga),
|
||||
takeLatest(types.submitNewAbout, submitNewAboutSaga),
|
||||
takeLatest(types.submitNewUsername, submitNewUsernameSaga),
|
||||
takeLatest(types.validateUsername, validateUsernameSaga),
|
||||
takeLatest(types.submitProfileUI, sumbitProfileUISaga)
|
||||
takeLatest(types.submitProfileUI, sumbitProfileUISaga),
|
||||
takeEvery(types.verifyCert, verifyCertificationSaga)
|
||||
];
|
||||
}
|
||||
|
Reference in New Issue
Block a user