aboutsummaryrefslogtreecommitdiff
path: root/modern/src/login/ResetPasswordPage.js
diff options
context:
space:
mode:
authorAnton Tananaev <anton@traccar.org>2022-05-21 09:49:26 -0700
committerAnton Tananaev <anton@traccar.org>2022-05-21 09:49:26 -0700
commit7e96816f94314dcdf071eeee6e74a95bcace329f (patch)
tree21938fcdbe6e8b7a651308555af77c49dc59e1c2 /modern/src/login/ResetPasswordPage.js
parent79dd42f0bdeef6d9f6331c0ec8301b2631a9cb90 (diff)
downloadtrackermap-web-7e96816f94314dcdf071eeee6e74a95bcace329f.tar.gz
trackermap-web-7e96816f94314dcdf071eeee6e74a95bcace329f.tar.bz2
trackermap-web-7e96816f94314dcdf071eeee6e74a95bcace329f.zip
Implement API error handling
Diffstat (limited to 'modern/src/login/ResetPasswordPage.js')
-rw-r--r--modern/src/login/ResetPasswordPage.js8
1 files changed, 5 insertions, 3 deletions
diff --git a/modern/src/login/ResetPasswordPage.js b/modern/src/login/ResetPasswordPage.js
index 6f7e784f..93e154e3 100644
--- a/modern/src/login/ResetPasswordPage.js
+++ b/modern/src/login/ResetPasswordPage.js
@@ -8,6 +8,7 @@ import LoginLayout from './LoginLayout';
import { useTranslation } from '../common/components/LocalizationProvider';
import useQuery from '../common/util/useQuery';
import { snackBarDurationShortMs } from '../common/util/duration';
+import { useCatch } from '../reactHelper';
const useStyles = makeStyles((theme) => ({
title: {
@@ -36,7 +37,7 @@ const ResetPasswordPage = () => {
const [password, setPassword] = useState('');
const [snackbarOpen, setSnackbarOpen] = useState(false);
- const handleSubmit = async (event) => {
+ const handleSubmit = useCatch(async (event) => {
event.preventDefault();
let response;
if (!token) {
@@ -52,13 +53,14 @@ const ResetPasswordPage = () => {
}
if (response.ok) {
setSnackbarOpen(true);
+ } else {
+ throw Error(await response.text());
}
- };
+ });
return (
<LoginLayout>
<Snackbar
- anchorOrigin={{ vertical: 'top', horizontal: 'center' }}
open={snackbarOpen}
onClose={() => history.push('/login')}
autoHideDuration={snackBarDurationShortMs}