diff --git a/src/components/Layout/Layout.js b/src/components/Layout/Layout.js index a5834cfca..4ee661f4e 100644 --- a/src/components/Layout/Layout.js +++ b/src/components/Layout/Layout.js @@ -18,10 +18,13 @@ class Layout extends Component { } } -const mapStateToProps = ({ loadUser }) => { +const mapStateToProps = ({ loadUser, projectState, projectSearch }) => { + const projectDetailApiCheck = !projectState.isLoading && !!projectState.error && projectState.error.code === 404 + const projectListingApiCheck = !projectSearch.isLoading && !!projectSearch.error return { user : loadUser.user, - isLoadingUser: loadUser.isLoading + isLoadingUser: loadUser.isLoading, + maintenanceMode: projectDetailApiCheck || projectListingApiCheck } } diff --git a/src/components/Layout/Layout.jsx b/src/components/Layout/Layout.jsx index 423ce6682..a4a7c92cd 100644 --- a/src/components/Layout/Layout.jsx +++ b/src/components/Layout/Layout.jsx @@ -1,6 +1,6 @@ import React from 'react' import Footer from '../Footer/Footer' -import { MAINTENANCE_MODE } from '../../config/constants' +// import { MAINTENANCE_MODE } from '../../config/constants' import Alert from 'react-s-alert' import cn from 'classnames' import Maintenance from '../Maintenance/Maintenance' @@ -12,11 +12,11 @@ import '../../styles/vendors/s-alert-default.css' import 'react-s-alert/dist/s-alert-css-effects/slide.css' const Layout = (props) => { - const { isLoadingUser } = props + const { isLoadingUser, maintenanceMode } = props if (isLoadingUser) { return (
) - } else if (MAINTENANCE_MODE) { + } else if (maintenanceMode) { return } else { return ( diff --git a/src/projects/reducers/project.js b/src/projects/reducers/project.js index 053418c23..81acbb307 100644 --- a/src/projects/reducers/project.js +++ b/src/projects/reducers/project.js @@ -29,9 +29,10 @@ const initialState = { const parseErrorObj = (action) => { const data = _.get(action.payload, 'response.data.result') + const httpStatus = _.get(action.payload, 'response.status') return { type: action.type, - code: _.get(data, 'status', 500), + code: _.get(data, 'status', httpStatus || 500), msg: _.get(data, 'content.message', ''), details: JSON.parse(_.get(data, 'details', null)) }