diff options
Diffstat (limited to 'frontend/src/pages/App.js')
| -rw-r--r-- | frontend/src/pages/App.js | 66 |
1 files changed, 29 insertions, 37 deletions
diff --git a/frontend/src/pages/App.js b/frontend/src/pages/App.js index c2b9bd51..3034f7ff 100644 --- a/frontend/src/pages/App.js +++ b/frontend/src/pages/App.js @@ -5,7 +5,7 @@ import { connect } from 'react-redux' import { ShortcutManager } from 'react-shortcuts' import { openExperimentSucceeded } from '../actions/experiments' import { openSimulationSucceeded } from '../actions/simulations' -import { resetCurrentDatacenter } from '../actions/topology/building' +import { resetCurrentTopology } from '../actions/topology/building' import ToolPanelComponent from '../components/app/map/controls/ToolPanelComponent' import LoadingScreen from '../components/app/map/LoadingScreen' import SimulationSidebarComponent from '../components/app/sidebars/simulation/SimulationSidebarComponent' @@ -20,6 +20,8 @@ import DeleteRoomModal from '../containers/modals/DeleteRoomModal' import EditRackNameModal from '../containers/modals/EditRackNameModal' import EditRoomNameModal from '../containers/modals/EditRoomNameModal' import KeymapConfiguration from '../shortcuts/keymap' +import ChangeTopologyModal from '../containers/modals/ChangeTopologyModal' +import { openChangeTopologyModal } from '../actions/modals/topology' const shortcutManager = new ShortcutManager(KeymapConfiguration) @@ -29,18 +31,16 @@ class AppComponent extends React.Component { inSimulation: PropTypes.bool, experimentId: PropTypes.number, simulationName: PropTypes.string, + onViewTopologies: PropTypes.func, } static childContextTypes = { shortcuts: PropTypes.object.isRequired, } componentDidMount() { - this.props.resetCurrentDatacenter() + // TODO this.props.resetCurrentTopology() if (this.props.inSimulation) { - this.props.openExperimentSucceeded( - this.props.simulationId, - this.props.experimentId, - ) + this.props.openExperimentSucceeded(this.props.simulationId, this.props.experimentId) return } this.props.openSimulationSucceeded(this.props.simulationId) @@ -55,66 +55,58 @@ class AppComponent extends React.Component { render() { return ( <DocumentTitle - title={ - this.props.simulationName - ? this.props.simulationName + ' - OpenDC' - : 'Simulation - OpenDC' - } + title={this.props.simulationName ? this.props.simulationName + ' - OpenDC' : 'Simulation - OpenDC'} > <div className="page-container full-height"> <AppNavbar simulationId={this.props.simulationId} inSimulation={true} fullWidth={true} + onViewTopologies={this.props.onViewTopologies} /> - {this.props.datacenterIsLoading ? ( + {this.props.topologyIsLoading ? ( <div className="full-height d-flex align-items-center justify-content-center"> - <LoadingScreen/> + <LoadingScreen /> </div> ) : ( <div className="full-height"> - <MapStage/> - <ScaleIndicatorContainer/> - <ToolPanelComponent/> - <TopologySidebar/> - {this.props.inSimulation ? <TimelineContainer/> : undefined} - {this.props.inSimulation ? ( - <SimulationSidebarComponent/> - ) : ( - undefined - )} + <MapStage /> + <ScaleIndicatorContainer /> + <ToolPanelComponent /> + <TopologySidebar /> + {this.props.inSimulation ? <TimelineContainer /> : undefined} + {this.props.inSimulation ? <SimulationSidebarComponent /> : undefined} </div> )} - <EditRoomNameModal/> - <DeleteRoomModal/> - <EditRackNameModal/> - <DeleteRackModal/> - <DeleteMachineModal/> + <ChangeTopologyModal /> + <EditRoomNameModal /> + <DeleteRoomModal /> + <EditRackNameModal /> + <DeleteRackModal /> + <DeleteMachineModal /> </div> </DocumentTitle> ) } } -const mapStateToProps = state => { +const mapStateToProps = (state) => { let simulationName = undefined - if ( - state.currentSimulationId !== -1 && - state.objects.simulation[state.currentSimulationId] - ) { + if (state.currentSimulationId !== -1 && state.objects.simulation[state.currentSimulationId]) { simulationName = state.objects.simulation[state.currentSimulationId].name } return { - datacenterIsLoading: state.currentDatacenterId === -1, + topologyIsLoading: state.currentTopologyId === -1, simulationName, } } -const mapDispatchToProps = dispatch => { +const mapDispatchToProps = (dispatch) => { return { - resetCurrentDatacenter: () => dispatch(resetCurrentDatacenter()), - openSimulationSucceeded: id => dispatch(openSimulationSucceeded(id)), + resetCurrentTopology: () => dispatch(resetCurrentTopology()), + openSimulationSucceeded: (id) => dispatch(openSimulationSucceeded(id)), + onViewTopologies: () => dispatch(openChangeTopologyModal()), openExperimentSucceeded: (simulationId, experimentId) => dispatch(openExperimentSucceeded(simulationId, experimentId)), } |
