[RESULT] improve error messages

pull/37/head
Pierre-Louis Guhur 4 years ago
parent 20945b26b9
commit b0e878ae6c

@ -1,4 +1,9 @@
import React from 'react';
import {
Container,
Row,
Col,
} from "reactstrap";
export const UNKNOWN_ELECTION_ERROR = 'E1';
export const ONGOING_ELECTION_ERROR = 'E2';
@ -33,3 +38,13 @@ export const errorMessage = (error, t) => {
return t('The parameters of the election are incorrect.');
}
};
export const Error = (props) => (
<Container>
<Row>
<Col xs="12">
<h1>{props.value}</h1>
</Col>
</Row>
</Container>
);

@ -14,6 +14,7 @@ import {
} from "reactstrap";
import { i18nGrades } from "../../Util";
import { AppContext } from "../../AppContext";
import { errorMessage, Error } from "../../Errors";
class Result extends Component {
static contextType = AppContext;
@ -32,8 +33,8 @@ class Result extends Component {
colSizeGradeXs: 1,
collapseGraphics: false,
collapseProfiles: false,
redirectLost: false,
electionGrades: i18nGrades()
electionGrades: i18nGrades(),
errorMessage: "",
};
}
@ -41,7 +42,7 @@ class Result extends Component {
if (!response.ok) {
response.json().then(response => {
this.setState(state => ({
redirectLost: "/unknown-election/" + encodeURIComponent(response)
errorMessage: errorMessage(response, this.props.t)
}));
});
throw Error(response);
@ -165,12 +166,12 @@ class Result extends Component {
};
render() {
const { redirectLost, candidates, electionGrades } = this.state;
const { errorMessage, candidates, electionGrades } = this.state;
const { t } = this.props;
const grades = i18nGrades();
if (redirectLost) {
return <Redirect to={redirectLost} />;
if (errorMessage && errorMessage !== "") {
return <Error value={errorMessage} />;
}
let totalOfVote = 0;

Loading…
Cancel
Save