]> _ Git - fluidbook-toolbox.git/commitdiff
wait #6482 correctif connexion multiple @5:00
authorsoufiane <soufiane@cubedesigners.com>
Wed, 20 Dec 2023 15:34:44 +0000 (16:34 +0100)
committersoufiane <soufiane@cubedesigners.com>
Wed, 20 Dec 2023 15:34:44 +0000 (16:34 +0100)
app/Http/Controllers/Admin/Operations/FluidbookPublication/LinksOperation.php
resources/linkeditor/js/linkeditor.js

index 657526a1df42453dcb2a6c615ed6b851ffc810a6..4437e84f4147d1350c8eece0801cc7aa924e147b 100644 (file)
@@ -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)
     {
index e6e9161caeed3876dcfcc39efc0924711fcd1a9c..62038a8c41ed507c64106fa1eb89348e0087df8e 100644 (file)
@@ -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());
     })
 });