From 32fc4c811e934ed0d8f40bfa917e6fd135216f5f Mon Sep 17 00:00:00 2001 From: GabrielTrettel Date: Thu, 11 Nov 2021 18:10:45 -0300 Subject: [PATCH] Adding more descriptive error messages in register screen --- src/app/screens/RegisterScreen.js | 27 ++++++++++++++++----------- 1 file changed, 16 insertions(+), 11 deletions(-) diff --git a/src/app/screens/RegisterScreen.js b/src/app/screens/RegisterScreen.js index a749809..a5d0a0d 100644 --- a/src/app/screens/RegisterScreen.js +++ b/src/app/screens/RegisterScreen.js @@ -265,7 +265,7 @@ export default function RegisterScreen(props) { const [date, setDate] = useState(_moment); const [singUpFailed, setSingUpFailed] = useState(false); const [scroll, setScroll] = useState(); - const [showLog, setShowLog] = useState(false); + const [showLog, setShowLog] = useState({show: false, message: ""}); const comparePassword = (password, confirmPassword) => { if (password !== confirmPassword) { @@ -286,25 +286,25 @@ export default function RegisterScreen(props) { }; const handleSubmit = async (form) => { - console.log("apaaaaaaa"); const formDate = date.format("DD/MM/yyyy") === moment().format("DD/MM/yyyy") ? "" : date; const result = await signup({ ...form, dateofborn: formDate }); - // console.log(result) switch (result.status) { case 200: automaticLogin(form); break; - case 422: - // setError() + default: + setShowLog({show: true, message: "Um erro inesperado ocorreu. Tente novamente mais tarde"}) + } }; const fieldsAreNotInUse = async (form, actions) => { - var inUse = true; + var inUse = false; const ru = await existUsername(form.number); + if (ru.data) { actions.setFieldError("number", "Este número de telefone já está em uso"); inUse = false; @@ -315,17 +315,22 @@ export default function RegisterScreen(props) { actions.setFieldError("name", "Este apelido de usuário já está em uso"); inUse = false; } + + if (!ru.ok || !rn.ok) + setShowLog({show: true, message: "Um erro inesperado ocorreu. Tente novamente mais tarde"}) + + inUse && setShowLog({show: true, message: "Apelido de usuário ou telefone em uso"}) - return inUse; + return !inUse; }; return ( setShowLog(false)} + onConfirm={() => setShowLog({...showLog, show:false})} />
{ - isNotUsed ? handleSubmit(form) : setShowLog(true); + isNotUsed && handleSubmit(form); // NOTE: this woud be nice, but does not work... // : scroll.scrollTo({ // x: 0,