diff --git a/src/components/GameStateButtons.js b/src/components/GameStateButtons.js
index 08340e50b723ff5e7315d1fed349a7da2ad6c79c..c770ed7896facdddaf56adecde4c689d10dbeb3f 100644
--- a/src/components/GameStateButtons.js
+++ b/src/components/GameStateButtons.js
@@ -2,11 +2,13 @@ import React, { Fragment } from "react";
 
 export default class GameStateButtons extends React.Component {
   state = {
-    gameState: this.props.gameState // CREATED,STARTED,PAUSED,ENDED,ONGOING
+    gameState: this.props.gameState // valid values: CREATED,STARTED,PAUSED,ENDED
   };
 
-  handleStart = e => {
+  setGameState(state) {
+    console.log(state);
     let token = sessionStorage.getItem("token");
+    let error = false;
     fetch(
       `${process.env.REACT_APP_API_URL}/game/edit-state/${this.props.gameId}`,
       {
@@ -18,42 +20,39 @@ export default class GameStateButtons extends React.Component {
         },
         body: JSON.stringify({
           id: this.props.gameId,
-          state: "STARTED"
+          state: state
         })
       }
     )
       .then(res => {
-        if (res.ok) {
-          return res.json();
-        } else {
-          throw Error(res.statusText);
+        if (!res.ok) {
+          error = true;
         }
+        return res.json();
       })
       .then(res => {
-        alert(`Game state changed to "STARTED"`);
-        this.setState({ gameState: "STARTED" });
+        if (error) {
+          console.log(res);
+        } else {
+          alert(`Game state changed to ${state}`);
+          this.setState({ gameState: state });
+        }
       })
       .catch(error => console.log(error));
-  };
-
-  handlePause = e => {
-    this.setState({ gameState: "PAUSED" });
-  };
-
-  handleStop = e => {
-    this.setState({ gameState: "STOPPED" });
-  };
+  }
 
   render() {
     if (this.state.gameState === "CREATED") {
-      return <button onClick={this.handleStart}>Start</button>;
+      return (
+        <button onClick={() => this.setGameState("STARTED")}>Start</button>
+      );
     }
 
     if (this.state.gameState === "STARTED") {
       return (
         <Fragment>
-          <button onClick={this.handlePause}>Pause</button>
-          <button onClick={this.handleStop}>Stop</button>
+          <button onClick={() => this.setGameState("PAUSED")}>Pause</button>
+          <button onClick={() => this.setGameState("ENDED")}>Stop</button>
         </Fragment>
       );
     }
@@ -61,13 +60,13 @@ export default class GameStateButtons extends React.Component {
     if (this.state.gameState === "PAUSED") {
       return (
         <Fragment>
-          <button onClick={this.handleStart}>Continue</button>
-          <button onClick={this.handleStop}>Stop</button>
+          <button onClick={() => this.setGameState("STARTED")}>Continue</button>
+          <button onClick={() => this.setGameState("ENDED")}>Stop</button>
         </Fragment>
       );
     }
 
-    if (this.state.gameState === "STOPPED") {
+    if (this.state.gameState === "ENDED") {
       return "The game has ended";
     }
 
diff --git a/src/components/GameView.js b/src/components/GameView.js
index d5e0ea01b9da83a13d1f9d57d63dfcbbdce7309a..c33c9ce6e92465209833cb7f1a2205af7d475856 100644
--- a/src/components/GameView.js
+++ b/src/components/GameView.js
@@ -143,7 +143,10 @@ export default class GameView extends React.Component {
               </button>
             )}
             {this.state.role === "admin" && (
-              <GameStateButtons gameState={this.state.gameInfo.state} />
+              <GameStateButtons
+                gameState={this.state.gameInfo.state}
+                gameId={this.state.gameInfo.id}
+              />
             )}
             <UserMap
               position={initialPosition}