]> git.localhorst.tv Git - alttp.git/blobdiff - resources/js/components/App.js
add command to reload clients
[alttp.git] / resources / js / components / App.js
index 74cec3d7d9b7703f9a88e7663fe6564026710d71..f63298978de960aa1602ba08c99772e4989c9b0f 100644 (file)
@@ -1,9 +1,10 @@
 import axios from 'axios';
 import React, { useEffect, useState } from 'react';
-import { BrowserRouter, Route, Routes } from 'react-router-dom';
+import { BrowserRouter, Navigate, Route, Routes } from 'react-router-dom';
 
 import Header from './common/Header';
 import Front from './pages/Front';
+import Tournament from './pages/Tournament';
 import UserContext from '../helpers/UserContext';
 
 const App = () => {
@@ -36,12 +37,23 @@ const App = () => {
                };
        }, []);
 
+       useEffect(() => {
+               window.Echo.channel('App.Control')
+                       .listen('PleaseRefresh', () => {
+                               location.reload();
+                       });
+               return () => {
+                       window.Echo.leave('App.Control');
+               };
+       }, []);
+
        return <BrowserRouter>
                <UserContext.Provider value={user}>
                        <Header doLogout={doLogout} />
                        {user ?
                                <Routes>
-                                       <Route path="*" element={<Front />} />
+                                       <Route path="tournaments/:id" element={<Tournament />} />
+                                       <Route path="*" element={<Navigate to="/tournaments/1" />} />
                                </Routes>
                        : <Front />}
                </UserContext.Provider>