From 17ae0a3fafd806a5a533bf1d51a3ac708a8cf978 Mon Sep 17 00:00:00 2001 From: Georgios Andreadis Date: Fri, 1 Sep 2017 16:42:13 +0200 Subject: Implement room name edit --- src/containers/modals/DeleteProfileModal.js | 36 ++++++++++++++++++++ src/containers/modals/EditRoomNameModal.js | 38 ++++++++++++++++++++++ src/containers/modals/NewSimulationModal.js | 35 ++++++++++++++++++++ src/containers/profile/DeleteProfileModal.js | 36 -------------------- .../sidebars/topology/room/RoomNameContainer.js | 3 +- src/containers/simulations/NewSimulationModal.js | 34 ------------------- 6 files changed, 111 insertions(+), 71 deletions(-) create mode 100644 src/containers/modals/DeleteProfileModal.js create mode 100644 src/containers/modals/EditRoomNameModal.js create mode 100644 src/containers/modals/NewSimulationModal.js delete mode 100644 src/containers/profile/DeleteProfileModal.js delete mode 100644 src/containers/simulations/NewSimulationModal.js (limited to 'src/containers') diff --git a/src/containers/modals/DeleteProfileModal.js b/src/containers/modals/DeleteProfileModal.js new file mode 100644 index 00000000..0108a1eb --- /dev/null +++ b/src/containers/modals/DeleteProfileModal.js @@ -0,0 +1,36 @@ +import React from "react"; +import {connect} from "react-redux"; +import {closeDeleteProfileModal} from "../../actions/modals/profile"; +import {deleteCurrentUser} from "../../actions/users"; +import ConfirmationModal from "../../components/modals/ConfirmationModal"; + +const NewSimulationModalComponent = ({visible, callback}) => ( + +); + +const mapStateToProps = state => { + return { + visible: state.modals.deleteProfileModalVisible + }; +}; + +const mapDispatchToProps = dispatch => { + return { + callback: (isConfirmed) => { + if (isConfirmed) { + dispatch(deleteCurrentUser()); + } + dispatch(closeDeleteProfileModal()); + } + }; +}; + +const NewSimulationModal = connect( + mapStateToProps, + mapDispatchToProps +)(NewSimulationModalComponent); + +export default NewSimulationModal; diff --git a/src/containers/modals/EditRoomNameModal.js b/src/containers/modals/EditRoomNameModal.js new file mode 100644 index 00000000..649ffeda --- /dev/null +++ b/src/containers/modals/EditRoomNameModal.js @@ -0,0 +1,38 @@ +import React from "react"; +import {connect} from "react-redux"; +import {closeEditRoomNameModal} from "../../actions/modals/topology"; +import {editRoomName} from "../../actions/topology"; +import TextInputModal from "../../components/modals/TextInputModal"; + +const EditRoomNameModalComponent = ({visible, previousName, callback}) => ( + +); + +const mapStateToProps = state => { + return { + visible: state.modals.editRoomNameModalVisible, + previousName: state.interactionLevel.mode === "ROOM" ? state.objects.room[state.interactionLevel.roomId].name : "", + }; +}; + +const mapDispatchToProps = dispatch => { + return { + callback: (name) => { + if (name) { + dispatch(editRoomName(name)); + } + dispatch(closeEditRoomNameModal()); + } + }; +}; + +const EditRoomNameModal = connect( + mapStateToProps, + mapDispatchToProps +)(EditRoomNameModalComponent); + +export default EditRoomNameModal; diff --git a/src/containers/modals/NewSimulationModal.js b/src/containers/modals/NewSimulationModal.js new file mode 100644 index 00000000..d85b59ef --- /dev/null +++ b/src/containers/modals/NewSimulationModal.js @@ -0,0 +1,35 @@ +import React from "react"; +import {connect} from "react-redux"; +import {closeNewSimulationModal} from "../../actions/modals/simulations"; +import {addSimulation} from "../../actions/simulations"; +import TextInputModal from "../../components/modals/TextInputModal"; + +const NewSimulationModalComponent = ({visible, callback}) => ( + +); + +const mapStateToProps = state => { + return { + visible: state.modals.newSimulationModalVisible + }; +}; + +const mapDispatchToProps = dispatch => { + return { + callback: (text) => { + if (text) { + dispatch(addSimulation(text)); + } + dispatch(closeNewSimulationModal()); + } + }; +}; + +const NewSimulationModal = connect( + mapStateToProps, + mapDispatchToProps +)(NewSimulationModalComponent); + +export default NewSimulationModal; diff --git a/src/containers/profile/DeleteProfileModal.js b/src/containers/profile/DeleteProfileModal.js deleted file mode 100644 index b59db055..00000000 --- a/src/containers/profile/DeleteProfileModal.js +++ /dev/null @@ -1,36 +0,0 @@ -import React from "react"; -import {connect} from "react-redux"; -import {closeDeleteProfileModal} from "../../actions/profile"; -import {deleteCurrentUser} from "../../actions/users"; -import ConfirmationModal from "../../components/modals/ConfirmationModal"; - -const NewSimulationModalComponent = ({visible, callback}) => ( - -); - -const mapStateToProps = state => { - return { - visible: state.modals.deleteProfileModalVisible - }; -}; - -const mapDispatchToProps = dispatch => { - return { - callback: (isConfirmed) => { - if (isConfirmed) { - dispatch(deleteCurrentUser()); - } - dispatch(closeDeleteProfileModal()); - } - }; -}; - -const NewSimulationModal = connect( - mapStateToProps, - mapDispatchToProps -)(NewSimulationModalComponent); - -export default NewSimulationModal; diff --git a/src/containers/sidebars/topology/room/RoomNameContainer.js b/src/containers/sidebars/topology/room/RoomNameContainer.js index 5408cb6c..7b9dc249 100644 --- a/src/containers/sidebars/topology/room/RoomNameContainer.js +++ b/src/containers/sidebars/topology/room/RoomNameContainer.js @@ -1,4 +1,5 @@ import {connect} from "react-redux"; +import {openEditRoomNameModal} from "../../../../actions/modals/topology"; import RoomNameComponent from "../../../../components/sidebars/topology/room/RoomNameComponent"; const mapStateToProps = state => { @@ -9,7 +10,7 @@ const mapStateToProps = state => { const mapDispatchToProps = dispatch => { return { - onEdit: () => dispatch(null), // FIXME + onEdit: () => dispatch(openEditRoomNameModal()), }; }; diff --git a/src/containers/simulations/NewSimulationModal.js b/src/containers/simulations/NewSimulationModal.js deleted file mode 100644 index cb858fed..00000000 --- a/src/containers/simulations/NewSimulationModal.js +++ /dev/null @@ -1,34 +0,0 @@ -import React from "react"; -import {connect} from "react-redux"; -import {addSimulation, closeNewSimulationModal} from "../../actions/simulations"; -import TextInputModal from "../../components/modals/TextInputModal"; - -const NewSimulationModalComponent = ({visible, callback}) => ( - -); - -const mapStateToProps = state => { - return { - visible: state.modals.newSimulationModalVisible - }; -}; - -const mapDispatchToProps = dispatch => { - return { - callback: (text) => { - if (text) { - dispatch(addSimulation(text)); - } - dispatch(closeNewSimulationModal()); - } - }; -}; - -const NewSimulationModal = connect( - mapStateToProps, - mapDispatchToProps -)(NewSimulationModalComponent); - -export default NewSimulationModal; -- cgit v1.2.3