From 780ac0f4f3b6af169c164ad6d5093cae4ed160be Mon Sep 17 00:00:00 2001
From: Anton <anton@hedvig.com>
Date: Sun, 30 Jan 2022 20:34:36 +0100
Subject: [PATCH] add logout if auth fails

---
 lab4/twidder/database.db      | Bin 28672 -> 28672 bytes
 lab4/twidder/server.py        |   6 +++---
 lab4/twidder/static/client.js |  13 +++++++------
 3 files changed, 10 insertions(+), 9 deletions(-)

diff --git a/lab4/twidder/database.db b/lab4/twidder/database.db
index 62e952b66560737a684cb293009fc3c04ec37119..76453fb58e6894269b3999495cdd05621d8db37f 100644
GIT binary patch
delta 66
zcmZp8z}WDBae_3X-9#B@M!Ss(rS{rx7P<vKS&m+nxdyJq?z&lKc_t-^VV)kzW<}m+
Vx<;;1VdWknjwKaF#>I;q3;^1O6><Oo

delta 66
zcmZp8z}WDBae_3X*+dy<Mzf6xrS{tCC5hRYZo!oSmc||iA;qR4Ia!9KKDjPtUXDp2
VKH>3R1{Nib{sk7EMcIoS3;^tb73u&0

diff --git a/lab4/twidder/server.py b/lab4/twidder/server.py
index 1734acd..f36e427 100644
--- a/lab4/twidder/server.py
+++ b/lab4/twidder/server.py
@@ -279,7 +279,7 @@ def get_user_messages_by_token():
             success=True, message="Messages retrieved", data=formatted_messages
         )
     else:
-        return create_response(success=False, message="You are not signed in")
+        return create_response(success=False, message="Authentication failed")
 
 
 @app.route("/get-user-messages-by-email", methods=["GET"])
@@ -303,7 +303,7 @@ def get_user_messages_by_email():
         else:
             return create_response(success=False, message="Recipient does no exist")
     else:
-        return create_response(success=False, message="You are not signed in")
+        return create_response(success=False, message="Authentication failed")
 
 
 @app.route("/post-message", methods=["POST"])
@@ -328,7 +328,7 @@ def post_message():
             )
         return create_response(success=True, message="Message sent")
     else:
-        return create_response(success=False, message="You are not signed in")
+        return create_response(success=False, message="Authentication failed")
 
 
 def ws_broadcast_nr_active_user_changed():
diff --git a/lab4/twidder/static/client.js b/lab4/twidder/static/client.js
index 300fda9..0315d7b 100644
--- a/lab4/twidder/static/client.js
+++ b/lab4/twidder/static/client.js
@@ -394,12 +394,7 @@ function signOut() {
         window.localStorage.removeItem("token");
         window.localStorage.removeItem("email");
         displayView();
-      } else {
-        window.localStorage.removeItem("token");
-        window.localStorage.removeItem("email");
-        showModal("Token not valid. You have been logged out");
-        displayView();
-      }
+      } 
     };
 
     user_identifier = localStorage.getItem("email");
@@ -451,6 +446,12 @@ function xmlRequest(url, callback, params, token = null, requestType) {
   xhttp.onreadystatechange = function () {
     if (this.readyState == 4 && this.status == 200) {
       callback(JSON.parse(xhttp.responseText));
+      if (JSON.parse(xhttp.responseText).message === "Authentication failed") {
+        window.localStorage.removeItem("token");
+        window.localStorage.removeItem("email");
+        displayView();
+        showModal("Authentication failed. You must sign in again")
+      }
     }
   };
 
-- 
GitLab