From a1d95b3685cffb6a9344d0d1e5505dd391193f16 Mon Sep 17 00:00:00 2001 From: Georgios Andreadis Date: Fri, 15 Sep 2017 12:53:26 +0200 Subject: Implement experiment list and add --- src/containers/experiments/ExperimentListContainer.js | 6 +----- .../experiments/NewExperimentButtonContainer.js | 16 ++++++++++++++++ .../simulations/NewSimulationButtonContainer.js | 16 ++++++++++++++++ src/containers/simulations/VisibleSimulationAuthList.js | 10 ++++++---- 4 files changed, 39 insertions(+), 9 deletions(-) create mode 100644 src/containers/experiments/NewExperimentButtonContainer.js create mode 100644 src/containers/simulations/NewSimulationButtonContainer.js (limited to 'src/containers') diff --git a/src/containers/experiments/ExperimentListContainer.js b/src/containers/experiments/ExperimentListContainer.js index 38e5a9f6..0c6818fa 100644 --- a/src/containers/experiments/ExperimentListContainer.js +++ b/src/containers/experiments/ExperimentListContainer.js @@ -2,7 +2,7 @@ import {connect} from "react-redux"; import ExperimentListComponent from "../../components/experiments/ExperimentListComponent"; const mapStateToProps = state => { - if (!state.currentSimulationId) { + if (state.currentSimulationId === -1 || !("experimentIds" in state.objects.simulation[state.currentSimulationId])) { return { experimentIds: [], }; @@ -14,10 +14,6 @@ const mapStateToProps = state => { experimentIds, }; } - - return { - experimentIds: [], - }; }; const ExperimentListContainer = connect( diff --git a/src/containers/experiments/NewExperimentButtonContainer.js b/src/containers/experiments/NewExperimentButtonContainer.js new file mode 100644 index 00000000..1abbb7b7 --- /dev/null +++ b/src/containers/experiments/NewExperimentButtonContainer.js @@ -0,0 +1,16 @@ +import {connect} from "react-redux"; +import {openNewExperimentModal} from "../../actions/modals/experiments"; +import NewExperimentButtonComponent from "../../components/experiments/NewExperimentButtonComponent"; + +const mapDispatchToProps = dispatch => { + return { + onClick: () => dispatch(openNewExperimentModal()) + }; +}; + +const NewExperimentButtonContainer = connect( + undefined, + mapDispatchToProps +)(NewExperimentButtonComponent); + +export default NewExperimentButtonContainer; diff --git a/src/containers/simulations/NewSimulationButtonContainer.js b/src/containers/simulations/NewSimulationButtonContainer.js new file mode 100644 index 00000000..722f8e44 --- /dev/null +++ b/src/containers/simulations/NewSimulationButtonContainer.js @@ -0,0 +1,16 @@ +import {connect} from "react-redux"; +import {openNewSimulationModal} from "../../actions/modals/simulations"; +import NewSimulationButtonComponent from "../../components/simulations/NewSimulationButtonComponent"; + +const mapDispatchToProps = dispatch => { + return { + onClick: () => dispatch(openNewSimulationModal()) + }; +}; + +const NewSimulationButtonContainer = connect( + undefined, + mapDispatchToProps +)(NewSimulationButtonComponent); + +export default NewSimulationButtonContainer; diff --git a/src/containers/simulations/VisibleSimulationAuthList.js b/src/containers/simulations/VisibleSimulationAuthList.js index 578ae303..324608c6 100644 --- a/src/containers/simulations/VisibleSimulationAuthList.js +++ b/src/containers/simulations/VisibleSimulationAuthList.js @@ -1,6 +1,5 @@ import {connect} from "react-redux"; import SimulationList from "../../components/simulations/SimulationAuthList"; -import {denormalize} from "../../store/denormalizer"; const getVisibleSimulationAuths = (simulationAuths, filter) => { switch (filter) { @@ -16,9 +15,12 @@ const getVisibleSimulationAuths = (simulationAuths, filter) => { }; const mapStateToProps = state => { - const denormalizedAuthorizations = state.simulationList.authorizationsOfCurrentUser.map(authorizationIds => - denormalize(state, "authorization", authorizationIds) - ); + const denormalizedAuthorizations = state.simulationList.authorizationsOfCurrentUser.map(authorizationIds => { + const authorization = state.objects.authorization[authorizationIds]; + authorization.user = state.objects.user[authorization.userId]; + authorization.simulation = state.objects.simulation[authorization.simulationId]; + return authorization; + }); return { authorizations: getVisibleSimulationAuths(denormalizedAuthorizations, state.simulationList.authVisibilityFilter) -- cgit v1.2.3