diff --git a/browser/main/Components/HomeNavigator.jsx b/browser/main/Components/HomeNavigator.jsx index f312c380..462853ed 100644 --- a/browser/main/Components/HomeNavigator.jsx +++ b/browser/main/Components/HomeNavigator.jsx @@ -14,6 +14,7 @@ var UserStore = require('../Stores/UserStore') var AboutModal = require('./AboutModal') var PlanetCreateModal = require('./PlanetCreateModal') var TeamCreateModal = require('./TeamCreateModal') +var LogoutModal = require('./LogoutModal') var ProfileImage = require('./ProfileImage') module.exports = React.createClass({ @@ -93,9 +94,7 @@ module.exports = React.createClass({ this.setState({isProfilePopupOpen: false}) }, handleLogoutClick: function () { - localStorage.removeItem('currentUser') - localStorage.removeItem('token') - this.transitionTo('login') + this.openModal(LogoutModal, {transitionTo: this.transitionTo}) }, render: function () { var params = this.getParams() @@ -180,7 +179,7 @@ module.exports = React.createClass({
  • - +
  • diff --git a/browser/main/Components/LogoutModal.jsx b/browser/main/Components/LogoutModal.jsx new file mode 100644 index 00000000..9a6e542d --- /dev/null +++ b/browser/main/Components/LogoutModal.jsx @@ -0,0 +1,27 @@ +/* global localStorage */ + +var React = require('react') + +module.exports = React.createClass({ + propTypes: { + transitionTo: React.PropTypes.func, + close: React.PropTypes.func + }, + logout: function () { + localStorage.removeItem('currentUser') + localStorage.removeItem('token') + this.props.transitionTo('login') + this.props.close() + }, + render: function () { + return ( +
    +
    Are you sure to log out?
    +
    + + +
    +
    + ) + } +}) diff --git a/browser/main/Components/PlanetNavigator.jsx b/browser/main/Components/PlanetNavigator.jsx index 54a72e57..0df7b4f6 100644 --- a/browser/main/Components/PlanetNavigator.jsx +++ b/browser/main/Components/PlanetNavigator.jsx @@ -42,7 +42,7 @@ var PlanetNavigator = React.createClass({ -