Added base url

This commit is contained in:
Henry Whitaker
2020-05-20 23:11:10 +01:00
parent ddcf656264
commit 76206de2c5
23 changed files with 141519 additions and 59 deletions

View File

@@ -6,7 +6,7 @@ import Axios from 'axios';
export default class Backup extends Component {
backup = () => {
var url = '/api/backup';
var url = 'api/backup';
toast.info('Your backup has started downloading...');

View File

@@ -20,7 +20,7 @@ export default class Changelog extends Component {
}
getChangelog = () => {
Axios.get('/api/update/changelog')
Axios.get('api/update/changelog')
.then((resp) => {
this.setState({
changelog: resp.data.data,

View File

@@ -53,7 +53,7 @@ export default class Restore extends Component {
uploadFile = () => {
var data = { data: this.state.data };
var url = '/api/restore';
var url = 'api/restore';
Axios.post(url, data)
.then((resp) => {

View File

@@ -30,7 +30,7 @@ export default class HistoryGraph extends Component {
}
getData = (days = this.state.days) => {
var url = '/api/speedtest/time/' + days;
var url = 'api/speedtest/time/' + days;
Axios.get(url)
.then((resp) => {

View File

@@ -27,7 +27,7 @@ export default class LatestResults extends Component {
}
getData = () => {
var url = '/api/speedtest/latest';
var url = 'api/speedtest/latest';
Axios.get(url)
.then((resp) => {
@@ -45,7 +45,7 @@ export default class LatestResults extends Component {
}
newScan = () => {
var url = '/api/speedtest/run';
var url = 'api/speedtest/run';
Axios.get(url)
.then((resp) => {

View File

@@ -20,7 +20,7 @@ export default class TestsTable extends Component {
}
getData = (page = this.state.page) => {
var url = '/api/speedtest/?page=' + page;
var url = 'api/speedtest/?page=' + page;
Axios.get(url)
.then((resp) => {

View File

@@ -20,7 +20,7 @@ export default class Setting extends Component {
}
update = () => {
var url = '/api/settings';
var url = 'api/settings';
var data = {
name: this.state.name,
value: this.state.value

View File

@@ -33,7 +33,7 @@ export default class Settings extends Component {
}
getData = () => {
var url = '/api/settings/';
var url = 'api/settings/';
Axios.get(url)
.then((resp) => {

View File

@@ -25,7 +25,7 @@ export default class Version extends Component {
}
checkForUpdates = () => {
var url = '/api/update/check';
var url = 'api/update/check';
Axios.get(url)
.then((resp) => {
@@ -61,19 +61,19 @@ export default class Version extends Component {
updateProgress: 0,
});
toast.info('Downloading update');
Axios.get('/api/update/download')
Axios.get('api/update/download')
.then((resp) => {
this.setState({
updateProgress: 50,
});
toast.info('Extracting update');
Axios.get('/api/speedtest/extract')
Axios.get('api/speedtest/extract')
.then((resp) => {
this.setState({
updateProgress: 75,
});
toast.info('Applying update');
Axios.get('/api/update/move')
Axios.get('api/update/move')
.then((resp) => {
this.setState({
updateProgress: 100,

View File

@@ -24,7 +24,7 @@ export default class Login extends Component {
email: this.state.loginEmailInput,
password: this.state.loginPasswordInput
};
var url = '/api/auth/login';
var url = 'api/auth/login';
Axios.post(url, data)
.then((resp) => {

71
resources/js/index.js vendored
View File

@@ -15,26 +15,69 @@ export default class Index extends Component {
this.state = {
loading: true,
redirect: false
}
}
componentDidMount = () => {
this.getConfig();
}
getConfig() {
var url = 'api/settings/config';
Axios.get(url)
.then((resp) => {
window.config = resp.data;
this.setState({
loading: false,
redirect: true,
});
if(window.location.pathname != window.config.base) {
window.location.href = window.config.base;
}
})
}
render() {
var loading = this.state.loading;
var redirect = this.state.redirect;
var baseSet = this.isset(window.config);
return (
<BrowserRouter>
<Route render={(props) => (<ToastContainer />)} />
<Switch>
<Route exact path="/" render={(props) => (
<div>
<HomePage />
</div>
)} />
<Route exact path="/error/:code" render={(props) => ( <ErrorPage code={props.match.params.code} /> )} />
<Route render={(props) => (<ErrorPage code="404" />)} />
</Switch>
</BrowserRouter>
);
if(loading) {
return (
<Loader />
);
} else {
if(baseSet) {
return (
<BrowserRouter>
<Route render={(props) => (<ToastContainer />)} />
<Switch>
<Route exact path={window.config.base} render={(props) => (
<div>
<HomePage />
</div>
)} />
<Route exact path={window.config.base + "error/:code"} render={(props) => ( <ErrorPage code={props.match.params.code} /> )} />
<Route render={(props) => (<ErrorPage code="404" />)} />
</Switch>
</BrowserRouter>
);
} else {
return (
<Loader />
);
}
}
}
isset(v) {
if(typeof v !== "undefined" || v !== null) {
return true;
} else {
return false;
}
}
}

View File

@@ -7,26 +7,26 @@
<meta name="author" content="Henry Whitaker">
<meta name="version" content="{{ config('speedtest.version', 'Unknown') }}">
<link href="/icons/themify/themify-icons.css" rel="stylesheet">
<link rel="stylesheet" href="/css/bootstrap.dark.min.css">
<link rel="stylesheet" href="/css/main.css?v={{ str_replace('.', '-', config('speedtest.version')) }}">
<link href="{{ App\Helpers\SettingsHelper::getBase() }}files/icons/themify/themify-icons.css" rel="stylesheet">
<link rel="stylesheet" href="{{ App\Helpers\SettingsHelper::getBase() }}files/css/bootstrap.dark.min.css">
<link rel="stylesheet" href="{{ App\Helpers\SettingsHelper::getBase() }}files/css/main.css?v={{ str_replace('.', '-', config('speedtest.version')) }}">
<link rel="apple-touch-icon" sizes="57x57" href="/icons/fav/apple-icon-57x57.png">
<link rel="apple-touch-icon" sizes="60x60" href="/icons/fav/apple-icon-60x60.png">
<link rel="apple-touch-icon" sizes="72x72" href="/icons/fav/apple-icon-72x72.png">
<link rel="apple-touch-icon" sizes="76x76" href="/icons/fav/apple-icon-76x76.png">
<link rel="apple-touch-icon" sizes="114x114" href="/icons/fav/apple-icon-114x114.png">
<link rel="apple-touch-icon" sizes="120x120" href="/icons/fav/apple-icon-120x120.png">
<link rel="apple-touch-icon" sizes="144x144" href="/icons/fav/apple-icon-144x144.png">
<link rel="apple-touch-icon" sizes="152x152" href="/icons/fav/apple-icon-152x152.png">
<link rel="apple-touch-icon" sizes="180x180" href="/icons/fav/apple-icon-180x180.png">
<link rel="icon" type="image/png" sizes="192x192" href="/icons/fav/android-icon-192x192.png">
<link rel="icon" type="image/png" sizes="32x32" href="/icons/fav/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="96x96" href="/icons/fav/favicon-96x96.png">
<link rel="icon" type="image/png" sizes="16x16" href="/icons/fav/favicon-16x16.png">
<link rel="manifest" href="/icons/fav/manifest.json">
<link rel="apple-touch-icon" sizes="57x57" href="{{ App\Helpers\SettingsHelper::getBase() }}files/icons/fav/apple-icon-57x57.png">
<link rel="apple-touch-icon" sizes="60x60" href="{{ App\Helpers\SettingsHelper::getBase() }}files/icons/fav/apple-icon-60x60.png">
<link rel="apple-touch-icon" sizes="72x72" href="{{ App\Helpers\SettingsHelper::getBase() }}files/icons/fav/apple-icon-72x72.png">
<link rel="apple-touch-icon" sizes="76x76" href="{{ App\Helpers\SettingsHelper::getBase() }}files/icons/fav/apple-icon-76x76.png">
<link rel="apple-touch-icon" sizes="114x114" href="{{ App\Helpers\SettingsHelper::getBase() }}files/icons/fav/apple-icon-114x114.png">
<link rel="apple-touch-icon" sizes="120x120" href="{{ App\Helpers\SettingsHelper::getBase() }}files/icons/fav/apple-icon-120x120.png">
<link rel="apple-touch-icon" sizes="144x144" href="{{ App\Helpers\SettingsHelper::getBase() }}files/icons/fav/apple-icon-144x144.png">
<link rel="apple-touch-icon" sizes="152x152" href="{{ App\Helpers\SettingsHelper::getBase() }}files/icons/fav/apple-icon-152x152.png">
<link rel="apple-touch-icon" sizes="180x180" href="{{ App\Helpers\SettingsHelper::getBase() }}files/icons/fav/apple-icon-180x180.png">
<link rel="icon" type="image/png" sizes="192x192" href="{{ App\Helpers\SettingsHelper::getBase() }}files/icons/fav/android-icon-192x192.png">
<link rel="icon" type="image/png" sizes="32x32" href="{{ App\Helpers\SettingsHelper::getBase() }}files/icons/fav/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="96x96" href="{{ App\Helpers\SettingsHelper::getBase() }}files/icons/fav/favicon-96x96.png">
<link rel="icon" type="image/png" sizes="16x16" href="{{ App\Helpers\SettingsHelper::getBase() }}files/icons/fav/favicon-16x16.png">
<link rel="manifest" href="{{ App\Helpers\SettingsHelper::getBase() }}files/icons/fav/manifest.json">
<meta name="msapplication-TileColor" content="#303030">
<meta name="msapplication-TileImage" content="/icons/fav/ms-icon-144x144.png">
<meta name="msapplication-TileImage" content="{{ App\Helpers\SettingsHelper::getBase() }}files/icons/fav/ms-icon-144x144.png">
<meta name="theme-color" content="#303030">
<title>{{ $title }}</title>
@@ -34,8 +34,8 @@
<body>
<div id="main"></div>
<script src="/js/jquery.min.js"></script>
<script src="/js/popper.min.js"></script>
<script src="/js/app.js?v={{ str_replace('.', '-', config('speedtest.version')) }}"></script>
<script src="{{ App\Helpers\SettingsHelper::getBase() }}files/js/jquery.min.js"></script>
<script src="{{ App\Helpers\SettingsHelper::getBase() }}files/js/popper.min.js"></script>
<script src="{{ App\Helpers\SettingsHelper::getBase() }}files/js/app.js?v={{ str_replace('.', '-', config('speedtest.version')) }}"></script>
</body>
</html>