Skip to content

Commit 2013b31

Browse files
author
Robb Satterwhite
committed
Return specific Django registration error msg when available.
1 parent cac8ce6 commit 2013b31

File tree

3 files changed

+16
-4
lines changed

3 files changed

+16
-4
lines changed

src/components/Registration.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ const Registration = () => {
4242
} else {
4343
setUNameMsg(api.MSG_USER_AVAILABLE);
4444
setUNameValid(true);
45+
setRegMsg(''); // erase error message if it exists
4546
}
4647
} else {
4748
setUNameMsg(' ');
@@ -79,7 +80,7 @@ const Registration = () => {
7980
console.log(regResult);
8081
if (regResult===api.OK) { history.push('/'); }
8182
else {
82-
setRegMsg(regResult); // try to find Django error message
83+
setRegMsg('Error: ' + regResult);
8384
setIsReg(false);
8485
}
8586
}

src/store/apiCalls.js

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -213,8 +213,19 @@ const makeNewUserAPI = async (newUserRec) => {
213213
console.log(response);
214214
return api.OK;
215215
} catch (error) {
216-
console.log(error);
217-
return api.FAILED;
216+
// console.log(error.toString());
217+
// console.log('error 1');
218+
if (error.response.data.username && error.response.data.username[0]) {
219+
return error.response.data.username[0];
220+
}
221+
if (error.response.data.email && error.response.data.email[0]) {
222+
return error.response.data.email[0];
223+
}
224+
// following is not tested
225+
// if (error.response.data.password && error.response.data.password[0]) {
226+
// return error.response.data.password[0];
227+
// }
228+
return error.toString();
218229
}
219230
};
220231

src/store/handlersUser.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -203,7 +203,7 @@ const handleReg = async (newUserInfo, dispatch) => {
203203
const userInfo = { userName: username, userPwd: password }; // to get initial token
204204
if (password!==password2) return 'Password 1 and password 2 must match.';
205205
let status = await makeNewUserAPI(userObj);
206-
console.log('make new user: ' + status);
206+
// console.log('make new user: ' + status);
207207
if (status!==api.OK) { return status; }
208208
status = await getTokenFromAPI(userInfo);
209209
if (status!==api.OK) { return status; }

0 commit comments

Comments
 (0)