diff --git a/frontend/src/js/page/wb-app.js b/frontend/src/js/page/wb-app.js index a24eb7f..91e5c5c 100644 --- a/frontend/src/js/page/wb-app.js +++ b/frontend/src/js/page/wb-app.js @@ -2,6 +2,7 @@ import { h, Component } from 'preact'; import { Router, route } from 'preact-router'; import WBBrowse from 'wb-browse'; import WBSignIn from 'wb-sign-in'; +import WBSignOut from 'wb-sign-out'; import WBLandingPage from 'wb-landing-page'; import WBProcessView from 'wb-process-view'; import WBCollectionView from 'wb-collection-view'; @@ -16,24 +17,13 @@ class WBApp extends Component { this.state.arvToken = window.localStorage['arvToken']; if ('currentUser' in window.localStorage) this.state.currentUser = JSON.parse(window.localStorage['currentUser']); - this.appCallbacks = { - 'navbarItemClicked': item => this.navbarItemClicked(item) - }; - this.appState = { - 'arvHost': this.state.arvHost, - 'arvToken': this.state.arvToken, - 'currentUser': this.state.currentUser - }; } navbarItemUrl(item) { if (item['id'] === 'sign-out') { - delete window.localStorage['arvHost']; - delete window.localStorage['arvToken']; - delete window.localStorage['currentUser']; - return ('/sign-in'); + return ('/sign-out'); } else if (item['id'] === 'home') { - return ('/browse/' + this.appState.currentUser.uuid); + return ('/browse/' + this.state.currentUser.uuid); } else if (item['id'] === 'all-projects') { return ('/browse'); } else if (item['id'] === 'all-users') { @@ -56,11 +46,12 @@ class WBApp extends Component { - + + + diff --git a/frontend/src/js/page/wb-browse.js b/frontend/src/js/page/wb-browse.js index 9efb555..c67af04 100644 --- a/frontend/src/js/page/wb-browse.js +++ b/frontend/src/js/page/wb-browse.js @@ -1,6 +1,6 @@ import { h, Component } from 'preact'; import { route } from 'preact-router'; -import WBNavbar from 'wb-navbar'; +import WBNavbarCommon from 'wb-navbar-common'; import WBProjectListing from 'wb-project-listing'; import WBInlineSearch from 'wb-inline-search'; import WBProjectCrumbs from 'wb-project-crumbs'; @@ -25,18 +25,13 @@ class WBBrowse extends Component { route(this.getUrl(params)); } - render({ ownerUuid, activePage, appCallbacks, appState, app, + render({ ownerUuid, activePage, appState, app, objTypeTab, collectionPage, processPage, workflowPage }) { return (
- - ) } onItemClicked={ appCallbacks.navbarItemClicked } /> + route('/browse/' + item['uuid']) } /> diff --git a/frontend/src/js/page/wb-sign-out.js b/frontend/src/js/page/wb-sign-out.js new file mode 100644 index 0000000..04e98c8 --- /dev/null +++ b/frontend/src/js/page/wb-sign-out.js @@ -0,0 +1,19 @@ +import { h, Component } from 'preact'; +import { route } from 'preact-router'; + +class WBSignOut extends Component { + componentDidMount() { + delete window.localStorage['arvHost']; + delete window.localStorage['arvToken']; + delete window.localStorage['currentUser']; + route('/sign-in'); + } + + render() { + return ( +
Signing out...
+ ); + } +} + +export default WBSignOut; diff --git a/frontend/src/js/page/wb-users-page.js b/frontend/src/js/page/wb-users-page.js index 5e79335..5388a0f 100644 --- a/frontend/src/js/page/wb-users-page.js +++ b/frontend/src/js/page/wb-users-page.js @@ -10,7 +10,7 @@ class WBUsersPage extends Component { render({ app, page }) { return (
- + this.getUrl(page) } />