From 60075dabf28d9f7cbb36c7ae74b79b5fc33162f3 Mon Sep 17 00:00:00 2001 From: Luis Felipe Risch <lfr20@inf.ufpr.br> Date: Thu, 1 Apr 2021 11:46:06 -0300 Subject: [PATCH] Add a state to control error --- .../Components/Inputs/EditAchievement.js | 26 ++++++++++++++++--- 1 file changed, 23 insertions(+), 3 deletions(-) diff --git a/src/Admin/Components/Components/Inputs/EditAchievement.js b/src/Admin/Components/Components/Inputs/EditAchievement.js index c598c164..95116c9f 100644 --- a/src/Admin/Components/Components/Inputs/EditAchievement.js +++ b/src/Admin/Components/Components/Inputs/EditAchievement.js @@ -63,6 +63,10 @@ const EditAchievement = ({ match }) => { error: false, message: '', }) + const [errorInRewardPoints, setErrorInRewardPoints] = useState({ + error: false, + message: '', + }) const [snackInfo, setSnackInfo] = useState({ message: '', @@ -115,6 +119,11 @@ const EditAchievement = ({ match }) => { setRepeatable(e.target.value) } const rewardPTHandler = (e) => { + if (errorInRewardPoints.error) + setErrorInDescription({ + error: false, + message: '' + }) setRewardPT(e.target.value) } const itemStateHandler = (e) => { @@ -162,7 +171,7 @@ const EditAchievement = ({ match }) => { "achievement": { "name": name, "description": description, - "reward_experience ": parseInt(rewardXP), + "reward_experience": rewardXP ? parseInt(rewardXP) : 0, "reward_points": parseInt(rewardPT), "state": itemState, "repeatable": repeatable, @@ -170,7 +179,6 @@ const EditAchievement = ({ match }) => { "requirements": requirements } } - console.log(requirements) putRequest( api, body, @@ -201,6 +209,16 @@ const EditAchievement = ({ match }) => { message: descriptionError }) } + if (data.reward_points) { + let reward_pointsError = "" + data.reward_points.map((msg) => ( + reward_pointsError = reward_pointsError + msg + " e " + )) + setErrorInRewardPoints({ + error: true, + message: reward_pointsError + }) + } } setIsLoading(false) }, @@ -257,6 +275,8 @@ const EditAchievement = ({ match }) => { select: false, label: 'Points ganhos', value: rewardPT, + error: errorInRewardPoints.error, + errorMessage: errorInRewardPoints.message, required: false, onChange: (event) => rewardPTHandler(event) }, @@ -421,7 +441,7 @@ const EditAchievement = ({ match }) => { onKeyPress={(key) => OnKeyPressHandler(key.which)} onChange={stringReqHandler} // onBlur={ShowEmails} - placeholder="Digite um requisito por vez e pressione Enter" + helperText="Digite o ID do requisito, um por vez, e pressione Enter" style={{ marginBottom: "1em", width: '250px' }} /> </> -- GitLab