summaryrefslogtreecommitdiff
path: root/src/containers
diff options
context:
space:
mode:
authorGeorgios Andreadis <g.andreadis@student.tudelft.nl>2017-09-06 22:07:16 +0200
committerGeorgios Andreadis <g.andreadis@student.tudelft.nl>2017-09-23 10:05:57 +0200
commitd5a92d3006561fd631279b68b23a1f8075b28bb8 (patch)
tree39797ed1e314e5e3cd8521239141af1334f18ec5 /src/containers
parent02eafd26b8841ed5896ab83672aba13d569ea63d (diff)
Add a button to delete the currently viewed room
Diffstat (limited to 'src/containers')
-rw-r--r--src/containers/modals/DeleteProfileModal.js10
-rw-r--r--src/containers/modals/DeleteRoomModal.js36
-rw-r--r--src/containers/sidebars/topology/room/DeleteRoomContainer.js16
3 files changed, 57 insertions, 5 deletions
diff --git a/src/containers/modals/DeleteProfileModal.js b/src/containers/modals/DeleteProfileModal.js
index 0108a1eb..709b4a92 100644
--- a/src/containers/modals/DeleteProfileModal.js
+++ b/src/containers/modals/DeleteProfileModal.js
@@ -4,9 +4,9 @@ import {closeDeleteProfileModal} from "../../actions/modals/profile";
import {deleteCurrentUser} from "../../actions/users";
import ConfirmationModal from "../../components/modals/ConfirmationModal";
-const NewSimulationModalComponent = ({visible, callback}) => (
+const DeleteProfileModalComponent = ({visible, callback}) => (
<ConfirmationModal title="Delete my account"
- message="Are you sure you want do delete your OpenDC account?"
+ message="Are you sure you want to delete your OpenDC account?"
show={visible}
callback={callback}/>
);
@@ -28,9 +28,9 @@ const mapDispatchToProps = dispatch => {
};
};
-const NewSimulationModal = connect(
+const DeleteProfileModal = connect(
mapStateToProps,
mapDispatchToProps
-)(NewSimulationModalComponent);
+)(DeleteProfileModalComponent);
-export default NewSimulationModal;
+export default DeleteProfileModal;
diff --git a/src/containers/modals/DeleteRoomModal.js b/src/containers/modals/DeleteRoomModal.js
new file mode 100644
index 00000000..92684385
--- /dev/null
+++ b/src/containers/modals/DeleteRoomModal.js
@@ -0,0 +1,36 @@
+import React from "react";
+import {connect} from "react-redux";
+import {closeDeleteRoomModal} from "../../actions/modals/topology";
+import {deleteRoom} from "../../actions/topology";
+import ConfirmationModal from "../../components/modals/ConfirmationModal";
+
+const DeleteRoomModalComponent = ({visible, callback}) => (
+ <ConfirmationModal title="Delete this room"
+ message="Are you sure you want to delete this room?"
+ show={visible}
+ callback={callback}/>
+);
+
+const mapStateToProps = state => {
+ return {
+ visible: state.modals.deleteRoomModalVisible
+ };
+};
+
+const mapDispatchToProps = dispatch => {
+ return {
+ callback: (isConfirmed) => {
+ if (isConfirmed) {
+ dispatch(deleteRoom());
+ }
+ dispatch(closeDeleteRoomModal());
+ }
+ };
+};
+
+const DeleteRoomModal = connect(
+ mapStateToProps,
+ mapDispatchToProps
+)(DeleteRoomModalComponent);
+
+export default DeleteRoomModal;
diff --git a/src/containers/sidebars/topology/room/DeleteRoomContainer.js b/src/containers/sidebars/topology/room/DeleteRoomContainer.js
new file mode 100644
index 00000000..23a8fa0a
--- /dev/null
+++ b/src/containers/sidebars/topology/room/DeleteRoomContainer.js
@@ -0,0 +1,16 @@
+import {connect} from "react-redux";
+import {openDeleteRoomModal} from "../../../../actions/modals/topology";
+import DeleteRoomComponent from "../../../../components/sidebars/topology/room/DeleteRoomComponent";
+
+const mapDispatchToProps = dispatch => {
+ return {
+ onClick: () => dispatch(openDeleteRoomModal()),
+ };
+};
+
+const DeleteRoomContainer = connect(
+ undefined,
+ mapDispatchToProps
+)(DeleteRoomComponent);
+
+export default DeleteRoomContainer;