From 15a72336f2f38d6175e90d01973515b5573f3ed8 Mon Sep 17 00:00:00 2001 From: Anton Tananaev Date: Sun, 19 Jun 2022 07:21:51 -0700 Subject: Implement change server --- modern/src/other/ChangeServerPage.js | 66 ++++++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100644 modern/src/other/ChangeServerPage.js (limited to 'modern/src/other/ChangeServerPage.js') diff --git a/modern/src/other/ChangeServerPage.js b/modern/src/other/ChangeServerPage.js new file mode 100644 index 00000000..1862ecbd --- /dev/null +++ b/modern/src/other/ChangeServerPage.js @@ -0,0 +1,66 @@ +import React, { useState } from 'react'; +import ElectricalServicesIcon from '@mui/icons-material/ElectricalServices'; +import { makeStyles } from '@mui/styles'; +import { Autocomplete, Button, Container, TextField } from '@mui/material'; +import { useTranslation } from '../common/components/LocalizationProvider'; + +const currentServer = `${window.location.protocol}//${window.location.host}`; + +const officialServers = [ + currentServer, + 'https://demo.traccar.org', + 'https://demo2.traccar.org', + 'https://demo3.traccar.org', + 'https://demo4.traccar.org', + 'https://server.traccar.org', + 'http://localhost:8082', +]; + +const useStyles = makeStyles((theme) => ({ + icon: { + textAlign: 'center', + fontSize: '128px', + color: theme.palette.colors.neutral, + }, + container: { + textAlign: 'center', + padding: theme.spacing(5, 3), + }, + field: { + margin: theme.spacing(3, 0), + }, +})); + +const ChangeServerPage = () => { + const classes = useStyles(); + const t = useTranslation(); + + const [url, setUrl] = useState(currentServer); + + const handleSubmit = () => { + if (window.webkit && window.webkit.messageHandlers.appInterface) { + window.webkit.messageHandlers.appInterface.postMessage(`server|${url}`); + } else if (window.appInterface) { + window.appInterface.postMessage(`server|${url}`); + } else { + window.location.replace(url); + } + }; + + return ( + + + } + value={url} + onChange={(_, value) => setUrl(value)} + /> + + + ); +}; + +export default ChangeServerPage; -- cgit v1.2.3