summaryrefslogtreecommitdiff
path: root/src/components/app/sidebars/topology/room
diff options
context:
space:
mode:
authorGeorgios Andreadis <G.Andreadis@student.tudelft.nl>2017-11-08 10:47:37 +0100
committerGitHub <noreply@github.com>2017-11-08 10:47:37 +0100
commitaef3e697f02806a47dec3843a071f8b5cd9980bc (patch)
tree114400610f6d9708f774ac8af8954588bbf50fb3 /src/components/app/sidebars/topology/room
parent2f71cb1c9fd3e649a1f0e6f713922a73372f064e (diff)
parent1f4616cbf9c82e4976d1f4b4c018d5e9ff83ad10 (diff)
Merge pull request #55 from atlarge-research/feature/24/room-edit
Implement room editing
Diffstat (limited to 'src/components/app/sidebars/topology/room')
-rw-r--r--src/components/app/sidebars/topology/room/DeleteRoomComponent.js2
-rw-r--r--src/components/app/sidebars/topology/room/EditRoomComponent.js27
-rw-r--r--src/components/app/sidebars/topology/room/RackConstructionComponent.js13
-rw-r--r--src/components/app/sidebars/topology/room/RoomSidebarComponent.js2
4 files changed, 40 insertions, 4 deletions
diff --git a/src/components/app/sidebars/topology/room/DeleteRoomComponent.js b/src/components/app/sidebars/topology/room/DeleteRoomComponent.js
index 5df484b5..3e3b3b36 100644
--- a/src/components/app/sidebars/topology/room/DeleteRoomComponent.js
+++ b/src/components/app/sidebars/topology/room/DeleteRoomComponent.js
@@ -1,7 +1,7 @@
import React from "react";
const DeleteRoomComponent = ({ onClick }) => (
- <div className="btn btn-danger btn-block" onClick={onClick}>
+ <div className="btn btn-outline-danger btn-block" onClick={onClick}>
<span className="fa fa-trash mr-2" />
Delete this room
</div>
diff --git a/src/components/app/sidebars/topology/room/EditRoomComponent.js b/src/components/app/sidebars/topology/room/EditRoomComponent.js
new file mode 100644
index 00000000..c3b9f0ad
--- /dev/null
+++ b/src/components/app/sidebars/topology/room/EditRoomComponent.js
@@ -0,0 +1,27 @@
+import classNames from "classnames";
+import React from "react";
+
+const EditRoomComponent = ({
+ onEdit,
+ onFinish,
+ isEditing,
+ isInRackConstructionMode
+}) =>
+ isEditing ? (
+ <div className="btn btn-info btn-block" onClick={onFinish}>
+ <span className="fa fa-check mr-2" />
+ Finish editing room
+ </div>
+ ) : (
+ <div
+ className={classNames("btn btn-outline-info btn-block", {
+ disabled: isInRackConstructionMode
+ })}
+ onClick={() => (isInRackConstructionMode ? undefined : onEdit())}
+ >
+ <span className="fa fa-pencil mr-2" />
+ Edit the tiles of this room
+ </div>
+ );
+
+export default EditRoomComponent;
diff --git a/src/components/app/sidebars/topology/room/RackConstructionComponent.js b/src/components/app/sidebars/topology/room/RackConstructionComponent.js
index 0982e403..06b8a2aa 100644
--- a/src/components/app/sidebars/topology/room/RackConstructionComponent.js
+++ b/src/components/app/sidebars/topology/room/RackConstructionComponent.js
@@ -1,9 +1,11 @@
+import classNames from "classnames";
import React from "react";
const RackConstructionComponent = ({
- inRackConstructionMode,
onStart,
- onStop
+ onStop,
+ inRackConstructionMode,
+ isEditingRoom
}) => {
if (inRackConstructionMode) {
return (
@@ -15,7 +17,12 @@ const RackConstructionComponent = ({
}
return (
- <div className="btn btn-primary btn-block" onClick={onStart}>
+ <div
+ className={classNames("btn btn-outline-primary btn-block", {
+ disabled: isEditingRoom
+ })}
+ onClick={() => (isEditingRoom ? undefined : onStart())}
+ >
<span className="fa fa-plus mr-2" />
Start rack construction
</div>
diff --git a/src/components/app/sidebars/topology/room/RoomSidebarComponent.js b/src/components/app/sidebars/topology/room/RoomSidebarComponent.js
index 727c3f43..275f9624 100644
--- a/src/components/app/sidebars/topology/room/RoomSidebarComponent.js
+++ b/src/components/app/sidebars/topology/room/RoomSidebarComponent.js
@@ -3,6 +3,7 @@ import LoadBarContainer from "../../../../../containers/app/sidebars/elements/Lo
import LoadChartContainer from "../../../../../containers/app/sidebars/elements/LoadChartContainer";
import BackToBuildingContainer from "../../../../../containers/app/sidebars/topology/room/BackToBuildingContainer";
import DeleteRoomContainer from "../../../../../containers/app/sidebars/topology/room/DeleteRoomContainer";
+import EditRoomContainer from "../../../../../containers/app/sidebars/topology/room/EditRoomContainer";
import RackConstructionContainer from "../../../../../containers/app/sidebars/topology/room/RackConstructionContainer";
import RoomNameContainer from "../../../../../containers/app/sidebars/topology/room/RoomNameContainer";
import RoomTypeContainer from "../../../../../containers/app/sidebars/topology/room/RoomTypeContainer";
@@ -26,6 +27,7 @@ const RoomSidebarComponent = ({ roomId, roomType, inSimulation }) => {
) : (
<div>
{allowedObjects}
+ <EditRoomContainer />
<DeleteRoomContainer />
</div>
)}