add account selection, settings, login modal
Change-Id: Ica6d38270c783de070bf1d5bb30603173dbeb0df
diff --git a/jaas-client/src/App.js b/jaas-client/src/App.js
index d1c880b..c943b71 100644
--- a/jaas-client/src/App.js
+++ b/jaas-client/src/App.js
@@ -1,35 +1,47 @@
/*
Company: Savoir-faire Linux
Author: Larbi Gharib <larbi.gharib@savoirfairelinux.com>
- UI Project inspired from https://scrimba.com/p/pbNpTv/cbZBmfV
License: AGPL-3
*/
import React from 'react';
+import CssBaseline from '@material-ui/core/CssBaseline';
+import authManager from './AuthManager'
//import logo from './logo.svg';
import './App.css';
-
import { BrowserRouter as Router, Route, Switch, Link, Redirect } from 'react-router-dom';
-import SignInPage from "./pages/index.jsx";
-import Jaas from "./pages/jaas.jsx"
+import SignInPage from "./pages/loginDialog.jsx";
+import JamiMessenger from "./pages/messenger.jsx"
+import AccountSettings from "./pages/accountSettings.jsx"
+import AccountSelection from "./pages/accountSelection.jsx"
import NotFoundPage from "./pages/404.jsx"
-
class App extends React.Component {
+ constructor(props) {
+ super(props);
+ this.state = {
+ authenticated: authManager.isAuthenticated(),
+ };
+ authManager.setOnAuthChanged(authenticated => this.setState({authenticated}))
+ }
render() {
- return <Router>
- <Switch>
- <Route exact path="/" component={SignInPage} />
- <Route to="/Jaas" component={Jaas} />
- <Route exact path="/404" component={NotFoundPage} />
- <Redirect to="/404" />
- </Switch>
-
- </Router>
+ return <React.Fragment>
+ <CssBaseline />
+ <Router>
+ <Switch>
+ <Route exact path="/"><Redirect to="/account" /></Route>
+ <Route path="/account/:accountId" component={AccountSettings} />
+ <Route path="/account" component={AccountSelection} />
+ <Route path="/messaging" component={JamiMessenger} />
+ <Route component={NotFoundPage} />
+ </Switch>
+ </Router>
+ {!this.state.authenticated && <SignInPage open={!this.state.authenticated}/>}
+ </React.Fragment>
}
}
-export default App;
\ No newline at end of file
+export default App
\ No newline at end of file