From 2088aec60626c28cda1a03f0ad7ac9cc61a902bf Mon Sep 17 00:00:00 2001 From: soufiane Date: Wed, 20 Dec 2023 16:34:44 +0100 Subject: [PATCH] wait #6482 correctif connexion multiple @5:00 --- .../FluidbookPublication/LinksOperation.php | 10 ++--- resources/linkeditor/js/linkeditor.js | 42 ++++++------------- 2 files changed, 17 insertions(+), 35 deletions(-) diff --git a/app/Http/Controllers/Admin/Operations/FluidbookPublication/LinksOperation.php b/app/Http/Controllers/Admin/Operations/FluidbookPublication/LinksOperation.php index 657526a1d..4437e84f4 100644 --- a/app/Http/Controllers/Admin/Operations/FluidbookPublication/LinksOperation.php +++ b/app/Http/Controllers/Admin/Operations/FluidbookPublication/LinksOperation.php @@ -301,9 +301,9 @@ trait LinksOperation $fluidbookId = $request->id; $token = $request->token; $userId = backpack_user()->id; - $compteur = $request->compteur; + $counter = $request->counter; - cache(['connexion_multiple'.$fluidbookId => intval($compteur)]); + cache(['connexion_multiple'.$fluidbookId => intval($counter)]); $connexionExist = cache()->get('connexion'.$fluidbookId); $connexionMultipleExist = cache()->get('connexion_multiple'.$fluidbookId); @@ -317,7 +317,7 @@ trait LinksOperation $user = User::withoutGlobalScopes()->find($connexionExist['id']); $user = $user->firstname.' '.$user->lastname; - if($userId != $connexionExist['id'] || ($token !== $connexionExist['token'] && intval($connexionMultipleExist) > 1) ) { + if(intval($connexionMultipleExist) > 1 && $token !== $connexionExist['token']) { return json_encode(["compteur"=>$connexionMultipleExist,"status"=>"unavailable","infos_connection"=>array_merge(["user" => $user],$connexionExist)]); } else { return json_encode(["compteur"=>$connexionMultipleExist,"status"=>"available",$connexionExist]); @@ -328,7 +328,7 @@ trait LinksOperation } } - public function f_($a) { + /*public function f_($a) { $data = cache()->get('c_') ?? []; $f_id = $a['f_id']; $user_id = $a['id']; @@ -347,7 +347,7 @@ trait LinksOperation public function get_f($f_id) { return cache()->get('c_')[$f_id]; - } + }*/ protected function fixDriftedLinks($fluidbook_id) { diff --git a/resources/linkeditor/js/linkeditor.js b/resources/linkeditor/js/linkeditor.js index e6e9161ca..62038a8c4 100644 --- a/resources/linkeditor/js/linkeditor.js +++ b/resources/linkeditor/js/linkeditor.js @@ -576,41 +576,27 @@ $(function () { window.linkeditor = new LinkEditor(); let userID = $("#userID").data('id') - let tabClosed = 0 - let tabOpen = 1 let interval = null let token = $("[data-token]").data("token") - // Vérifie si la variable "compteur" existe dans localStorage - let compteur = localStorage.getItem('compteur'); + let counter = parseInt(localStorage.getItem('compteur')) ?? 1; + let pageIsLoaded = sessionStorage.getItem('page_loaded'); - - // Vérifie si la page a déjà été chargée dans cet onglet - let pageDejaChargee = sessionStorage.getItem('page_chargee'); - - // Si la page n'a pas encore été chargée, ou si "compteur" n'existe pas, initialise le compteur à 0 - if (!pageDejaChargee || !compteur) { - compteur = 0; - - // Indique que la page a été chargée dans cet onglet - sessionStorage.setItem('page_chargee', true); + if (!pageIsLoaded) { + counter = 0; + sessionStorage.setItem('page_loaded', true); } - // Incrémente le compteur à chaque ouverture d'un nouvel onglet - compteur++; - - // Stocke la nouvelle valeur du compteur dans localStorage - localStorage.setItem('compteur', compteur.toString()); + counter++ + localStorage.setItem('compteur', counter.toString()); function intervalConnection(data = {}) { - let compteur = localStorage.getItem('compteur'); - if (!sessionStorage.getItem('token')) { - sessionStorage.setItem('token', token); - } + let counter = localStorage.getItem('compteur'); + console.log(counter) $.ajax({ method: "POST", url: '/fluidbook-publication/' + FLUIDBOOK_DATA.id + '/edit/links', - data: Object.keys(data).length > 0 ? data : {id: FLUIDBOOK_DATA.id, token: token, compteur: compteur} + data: Object.keys(data).length > 0 ? data : {id: FLUIDBOOK_DATA.id, token: token, counter: counter} }).done(function (msg) { let response = JSON.parse(msg) @@ -641,10 +627,6 @@ $(function () { return true; }; } - - /*tabClosed = 0 - tabOpen = 0 - localStorage.setItem("tabClosed","0")*/ setTimeout(function () { intervalConnection(); }, 1000) }); } @@ -659,8 +641,8 @@ $(function () { // $(window).on("unload",function(){ clearTimeout(interval) - compteur-- - localStorage.setItem('compteur', compteur.toString()); + counter-- + localStorage.setItem('compteur', counter.toString()); }) }); -- 2.39.5