diff --git a/Lab1/client.js b/Lab1/client.js index c0bdf3f83df751574bcb7423bc5e577cdc1c0740..d90e6e145b76c11bf7ef319976bfe2b1f76342ee 100644 --- a/Lab1/client.js +++ b/Lab1/client.js @@ -224,7 +224,7 @@ function openTab(tabName) { function display_wall_info(email, tab) { //check if we already have the data stored of if we have to call the server let data_user = get_user_info(email, tab); - + console.log("data_user = ", data_user); if(data_user.success) { if(tab == "BP") { browsecontent = document.getElementsByClassName("browsecontent"); diff --git a/Twidder (Lab3)/__pycache__/database_helper.cpython-311.pyc b/Twidder (Lab3)/__pycache__/database_helper.cpython-311.pyc index dddbe5f4afb60b0186d46c43b292a748fa0d453d..505d350e4fed320622fb4efa09443d05c0f7c036 100644 Binary files a/Twidder (Lab3)/__pycache__/database_helper.cpython-311.pyc and b/Twidder (Lab3)/__pycache__/database_helper.cpython-311.pyc differ diff --git a/Twidder (Lab3)/database.db b/Twidder (Lab3)/database.db index 40ffc3132bd58bd4a9d4dc18e33c68c34ecfab1d..66d51ef5753cec13b9a522b7313c94d5590ea80e 100644 Binary files a/Twidder (Lab3)/database.db and b/Twidder (Lab3)/database.db differ diff --git a/Twidder (Lab3)/static/client.js b/Twidder (Lab3)/static/client.js index 8bb4071faff5377383bdabbfa73baa442d64a685..ca131a4fb1219095a3e2b1bd303302b6be9aad1d 100644 --- a/Twidder (Lab3)/static/client.js +++ b/Twidder (Lab3)/static/client.js @@ -215,6 +215,7 @@ function message_management(tab){ let token = localStorage.getItem("token"); let req = new XMLHttpRequest(); + console.log("Message posté ?"); req.open("POST", "/account/post_message", true); req.setRequestHeader("Content-type", "application/json;charset=UTF-8"); req.setRequestHeader("token", token); @@ -277,7 +278,7 @@ function openTab(tabName) { function display_wall_info(email, tab) { //check if we already have the data stored of if we have to call the server let data_user = get_user_info(email, tab); - + console.log("data_user of display_wall_info = ", data_user); if(data_user.success) { if(tab == "BP") { browsecontent = document.getElementsByClassName("browsecontent"); @@ -298,24 +299,80 @@ function display_wall_info(email, tab) { } } + function get_user_info(email, tab) { //call the server if data aren't already stored + console.log("================================================="); + console.log("browsed_email = ", localStorage.getItem("browsed_email")); if((tab == "BP") && (localStorage.getItem("browsed_email") != email || data_user_browse == null)) { - data_user_browse = serverstub.getUserDataByEmail(localStorage.getItem("token"), email); + console.log("Je rentre dans la boucle"); + //data_user_browse = serverstub.getUserDataByEmail(localStorage.getItem("token"), email); + let req = new XMLHttpRequest(); + console.log(1); + req.open("GET", "/account/get/data/" + email, true); + console.log(2); + req.setRequestHeader("token", localStorage.getItem("token")); + console.log(3); + console.log(4); + req.onreadystatechange = function(){ + console.log(5); + if(req.readyState == 4){ + console.log(6); + if(req.status == 200){ + data_user_browse = { + data : JSON.parse(req.responseText), + success : true + }; + + }else if(req.status == 404){ + console.log("Le req status est de 404"); + data_user_browse = { + message : "This user doesn't exist", + success : false + }; + } + else if(req.status == 401){ + data_user_browse = { + message : "Problem with the server", + success : false + }; + } + console.log("first data_user_browse = ", data_user_browse); + } + }; + req.send(); } else if ((tab == "HP") && (data_user_home == null)) { - data_user_home = serverstub.getUserDataByEmail(localStorage.getItem("token"), email); + let req = new XMLHttpRequest(); + req.open("GET", "/account/get/data/" + email, true); + req.setRequestHeader("token", localStorage.getItem("token")); + req.send(); + req.onreadystatechange = function(){ + if(req.readyState == 4){ + if(req.status == 200){ + data_user_home = { + data : JSON.parse(req.responseText), + success : true + }; + }else if(req.status == 404 || req.status == 401){ + data_user_home = { + success : false + }; + } + } + } } let data_user; switch(tab) { case "HP" : data_user = data_user_home; + console.log("data_user_home = ", data_user_home); break; default : data_user = data_user_browse; + console.log("data_user_browse lolololol = ", data_user_browse); break; } - return data_user; } @@ -323,35 +380,35 @@ function display_wall(email, tab) { let messages = []; var xhttp = new XMLHttpRequest(); + console.log("Je suis dans display_wall"); + xhttp.open("GET", "/account/get/message/" + email, true); + xhttp.setRequestHeader("token", localStorage.getItem("token")); xhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { let resp = JSON.parse(xhttp.responseText); for(c in resp) { - messages.push(resp[c].writer); + messages.unshift(resp[c]); } + for(let i = 0; i < messages.length; i++) { + if(i==0) { + document.getElementById(tab + "_wall").innerHTML = ""; + document.getElementById(tab + "_wall").style = ""; + } + document.getElementById(tab + "_wall").innerHTML += "<div id=" + tab + i + ">"; + document.getElementById(tab + i).innerHTML += "<div id='writer" + tab + i + "'>" + messages[i].writer + "</div>"; + document.getElementById(tab + i).innerHTML += messages[i].message; + document.getElementById(tab + "_wall").innerHTML += "</div>"; + document.getElementById(tab + i).style.backgroundColor = "white"; + document.getElementById(tab + i).style.width = "460px"; + document.getElementById(tab + i).style.border = "solid black 1px"; + document.getElementById(tab + i).style.marginBottom = "2px"; + document.getElementById("writer" + tab + i).style.color = "grey"; + } } - }; - xhttp.open("GET", "/account/get/message/" + email, true); - xhttp.setRequestHeader("token", localStorage.getItem("token")); + } xhttp.send(); - console.log(messages); - for(let i = 0; i < messages.length; i++) { - if(i==0) { - document.getElementById(tab + "_wall").innerHTML = ""; - document.getElementById(tab + "_wall").style = ""; - } - document.getElementById(tab + "_wall").innerHTML += "<div id=" + tab + i + ">"; - document.getElementById(tab + i).innerHTML += "<div id='writer" + tab + i + "'>" + messages[i][1] + "</div>"; - document.getElementById(tab + i).innerHTML += messages[i][0]; - document.getElementById(tab + "_wall").innerHTML += "</div>"; - document.getElementById(tab + i).style.backgroundColor = "white"; - document.getElementById(tab + i).style.width = "460px"; - document.getElementById(tab + i).style.border = "solid black 1px"; - document.getElementById(tab + i).style.marginBottom = "2px"; - document.getElementById("writer" + tab + i).style.color = "grey"; - } }