blob: 00251f968a20231b19be6a49e1141202e6005b37 [file] [log] [blame]
Adrien Béraudab519ff2022-05-03 15:34:48 -04001import React from 'react'
Adrien Béraud4e287b92021-04-24 16:15:56 -04002import Header from '../components/Header'
3import AccountPreferences from '../components/AccountPreferences'
Adrien Béraudab519ff2022-05-03 15:34:48 -04004import Container from '@mui/material/Container'
5import CircularProgress from '@mui/material/CircularProgress'
Adrien Béraud4e287b92021-04-24 16:15:56 -04006import authManager from '../AuthManager'
7import Account from '../../../model/Account'
8
9const ServerOverview = (props) => {
10
Adrien Béraudab519ff2022-05-03 15:34:48 -040011 this.accountId = props.accountId || props.match.params.accountId
Adrien Béraud4e287b92021-04-24 16:15:56 -040012
Adrien Béraudab519ff2022-05-03 15:34:48 -040013 useEffect(() => {
14 const controller = new AbortController()
15 authManager.fetch(`/api/serverConfig`, {signal: controller.signal})
16 .then(res => res.json())
17 .then(result => {
18 console.log(result)
19 setState({loaded: true, account: Account.from(result)})
20 }).catch(e => console.log(e))
21 return () => controller.abort()
22 }, [accountId])
23
Adrien Béraud4e287b92021-04-24 16:15:56 -040024 return (
25 <Container maxWidth="sm" className="app" >
26 <Header />
27 {this.state.loaded ? <AccountPreferences account={this.state.account} /> : <CircularProgress />}
28 </Container>
29 )
30}
31
Adrien Béraudab519ff2022-05-03 15:34:48 -040032export default ServerOverview