{children}
diff --git a/client/coral-admin/src/components/ui/Logo.css b/client/coral-admin/src/components/ui/Logo.css
index e764af627..f89bf3d5d 100644
--- a/client/coral-admin/src/components/ui/Logo.css
+++ b/client/coral-admin/src/components/ui/Logo.css
@@ -1,7 +1,9 @@
.logo h1 {
color: #272727;
font-size: 20px;
- padding: 0 30px;
+ margin: 0;
+ line-height: 60px;
+ padding: 0 20px;
}
.logo span {
@@ -13,6 +15,7 @@
.logo {
background: #E5E5E5;
+ height: 100%;
}
diff --git a/client/coral-admin/src/containers/LayoutContainer.js b/client/coral-admin/src/containers/LayoutContainer.js
index 5f3cb0cff..f263c33f5 100644
--- a/client/coral-admin/src/containers/LayoutContainer.js
+++ b/client/coral-admin/src/containers/LayoutContainer.js
@@ -1,37 +1,31 @@
import React, {Component} from 'react';
import {connect} from 'react-redux';
import {Layout} from '../components/ui/Layout';
-import {checkLogin} from '../actions/auth';
-import {NotFound} from '../components/NotFound';
+import {checkLogin, logout} from '../actions/auth';
+import {FullLoading} from '../components/FullLoading';
import {PermissionRequired} from '../components/PermissionRequired';
class LayoutContainer extends Component {
componentWillMount () {
- this.props.checkLogin();
+ const {checkLogin} = this.props;
+ checkLogin();
}
render () {
- const {isAdmin, loggedIn} = this.props.auth;
-
- if (!loggedIn) {
- return
;
- }
-
- if (!isAdmin && loggedIn) {
- return
;
- }
-
- return
;
+ const {isAdmin, loggedIn, loadingUser} = this.props.auth;
+ if (loadingUser) { return
; }
+ if (!isAdmin) { return
; }
+ if (isAdmin && loggedIn) { return
; }
+ return
;
}
}
-LayoutContainer.propTypes = {};
-
const mapStateToProps = state => ({
auth: state.auth.toJS()
});
const mapDispatchToProps = dispatch => ({
checkLogin: () => dispatch(checkLogin()),
+ handleLogout: () => dispatch(logout())
});
export default connect(
diff --git a/client/coral-admin/src/reducers/auth.js b/client/coral-admin/src/reducers/auth.js
index 59dccac5e..f897c1bae 100644
--- a/client/coral-admin/src/reducers/auth.js
+++ b/client/coral-admin/src/reducers/auth.js
@@ -9,19 +9,25 @@ const initialState = Map({
export default function auth (state = initialState, action) {
switch (action.type) {
+ case actions.CHECK_LOGIN_REQUEST:
+ return state
+ .set('loadingUser', true);
case actions.CHECK_LOGIN_FAILURE:
return state
.set('loggedIn', false)
+ .set('loadingUser', false)
.set('user', null);
case actions.CHECK_LOGIN_SUCCESS:
return state
.set('loggedIn', true)
+ .set('loadingUser', false)
.set('isAdmin', action.isAdmin)
.set('user', action.user);
case actions.LOGOUT_SUCCESS:
return state
.set('loggedIn', false)
- .set('user', null);
+ .set('user', null)
+ .set('isAdmin', false);
default :
return state;
}