aboutsummaryrefslogtreecommitdiff
path: root/modern/src/EditPage.js
diff options
context:
space:
mode:
authorAnton Tananaev <anton.tananaev@gmail.com>2020-09-20 22:39:04 -0700
committerAnton Tananaev <anton.tananaev@gmail.com>2020-09-20 22:39:04 -0700
commit37dd8129f8e07d00eb93262210bf1ecd4ce95532 (patch)
tree80f115342fb4624675856a9164970b81f1f5b263 /modern/src/EditPage.js
parent787c9dc0ec684d3524ec060b6422ffbaea5012ac (diff)
downloadetbsa-traccar-web-37dd8129f8e07d00eb93262210bf1ecd4ce95532.tar.gz
etbsa-traccar-web-37dd8129f8e07d00eb93262210bf1ecd4ce95532.tar.bz2
etbsa-traccar-web-37dd8129f8e07d00eb93262210bf1ecd4ce95532.zip
Refactor collection editing
Diffstat (limited to 'modern/src/EditPage.js')
-rw-r--r--modern/src/EditPage.js80
1 files changed, 0 insertions, 80 deletions
diff --git a/modern/src/EditPage.js b/modern/src/EditPage.js
deleted file mode 100644
index 23e8c07..0000000
--- a/modern/src/EditPage.js
+++ /dev/null
@@ -1,80 +0,0 @@
-import React from 'react';
-import MainToobar from './MainToolbar';
-import { useHistory, useParams } from 'react-router-dom';
-import { makeStyles } from '@material-ui/core/styles';
-import Container from '@material-ui/core/Container';
-import Button from '@material-ui/core/Button';
-import FormControl from '@material-ui/core/FormControl';
-
-import t from './common/localization';
-import { useEffectAsync } from './reactHelper';
-
-const useStyles = makeStyles(theme => ({
- container: {
- marginTop: theme.spacing(2),
- },
- buttons: {
- display: 'flex',
- justifyContent: 'space-evenly',
- '& > *': {
- flexBasis: '33%',
- },
- },
-}));
-
-const EditPage = ({ children, endpoint, setItem, getItem }) => {
- const history = useHistory();
- const classes = useStyles();
- const { id } = useParams();
-
- useEffectAsync(async () => {
- if (id) {
- const response = await fetch(`/api/${endpoint}/${id}`);
- if (response.ok) {
- setItem(await response.json());
- }
- } else {
- setItem({});
- }
- }, [id]);
-
- const handleSave = async () => {
- let url = `/api/${endpoint}`;
- if (id) {
- url += `/${id}`;
- }
-
- const response = await fetch(url, {
- method: !id ? 'POST' : 'PUT',
- headers: { 'Content-Type': 'application/json' },
- body: JSON.stringify(getItem()),
- });
-
- if (response.ok) {
- history.goBack();
- }
- };
-
- return (
- <>
- <MainToobar history={history} />
- <Container maxWidth='xs' className={classes.container}>
- <form>
- {children}
- <FormControl fullWidth margin='normal'>
- <div className={classes.buttons}>
- <Button type='button' color='primary' variant='outlined' onClick={() => history.goBack()}>
- {t('sharedCancel')}
- </Button>
- <Button type='button' color='primary' variant='contained' onClick={handleSave}>
- {t('sharedSave')}
- </Button>
- </div>
- </FormControl>
- </form>
- </Container>
- </>
- );
-}
-
-export default EditPage;