From: soufiane Date: Tue, 12 Dec 2023 09:44:18 +0000 (+0100) Subject: wip #6482 @0:30 X-Git-Url: http://git.cubedesigners.com/?a=commitdiff_plain;h=b7dd59d831fe575cbcc8f36bcecb62909a226e20;p=fluidbook-toolbox.git wip #6482 @0:30 --- diff --git a/app/Http/Controllers/Admin/Operations/FluidbookPublication/LinksOperation.php b/app/Http/Controllers/Admin/Operations/FluidbookPublication/LinksOperation.php index 0c6dd1789..c181e0621 100644 --- a/app/Http/Controllers/Admin/Operations/FluidbookPublication/LinksOperation.php +++ b/app/Http/Controllers/Admin/Operations/FluidbookPublication/LinksOperation.php @@ -299,8 +299,11 @@ trait LinksOperation $token = $request->token; $userId = backpack_user()->id; + if($request->clear) { + cache()->forget('connexion'.$fluidbookId); + } + $connexionExist = cache()->get('connexion'.$fluidbookId); - //cache()->forget('connexion'); if($connexionExist && $fluidbookId === $connexionExist['f_id']) { if($userId != $connexionExist['id'] || $token !== $connexionExist['token']) { return "unavailable"; diff --git a/app/Http/Middleware/ClearRouteCache.php b/app/Http/Middleware/ClearRouteCache.php index a2cd7510e..602f755b9 100644 --- a/app/Http/Middleware/ClearRouteCache.php +++ b/app/Http/Middleware/ClearRouteCache.php @@ -19,7 +19,9 @@ class ClearRouteCache $response = $next($request); $fluidbookId = $request->route('id'); - cache()->forget('connexion'.$fluidbookId); + if(!cache()->get('connexion'.$fluidbookId)) { + cache()->forget('connexion' . $fluidbookId); + } return $response; } diff --git a/resources/linkeditor/js/linkeditor.js b/resources/linkeditor/js/linkeditor.js index 77bfe556d..c49bd9101 100644 --- a/resources/linkeditor/js/linkeditor.js +++ b/resources/linkeditor/js/linkeditor.js @@ -582,23 +582,41 @@ $(function () { }, 5000)*/ - setInterval(function() { + let interval = null; + function intervalConnection() { + interval = setInterval(function () { + $.ajax({ + method: "POST", + url: '/fluidbook-publication/' + FLUIDBOOK_DATA.id + '/edit/links', + data: {id: FLUIDBOOK_DATA.id, token: $("[data-token]").data("token")} + }).done(function (msg) { + if (msg === "unavailable") { + if ($("#popup-overlay").find('.popup').length === 0) { + $("#popup-overlay").addClass("show") + window.linkeditor.popup.open('unavailable'); + } + } else { + $("#popup-overlay").removeClass("show") + window.linkeditor.popup.close(); + } + }); + }, 2000) + } + intervalConnection() + + // + $("body").on("click", "#connectTo", function(e) { + e.preventDefault() + clearInterval(interval) $.ajax({ method: "POST", url: '/fluidbook-publication/' + FLUIDBOOK_DATA.id + '/edit/links', - data: {id: FLUIDBOOK_DATA.id, token: $("[data-token]").data("token") } + data: {id: FLUIDBOOK_DATA.id, token: $("[data-token]").data("token"), clear: true } }).done(function (msg) { - if(msg === "unavailable") { - if($("#popup-overlay").find('.popup').length === 0) { - $("#popup-overlay").addClass("show") - window.linkeditor.popup.open('unavailable'); - } - } else { - $("#popup-overlay").removeClass("show") - window.linkeditor.popup.close(); - } + intervalConnection(); }); - }, 5000) + + }) }); diff --git a/resources/views/fluidbook_publication/link_editor.blade.php b/resources/views/fluidbook_publication/link_editor.blade.php index 8f01a8eea..1fc2c39c2 100644 --- a/resources/views/fluidbook_publication/link_editor.blade.php +++ b/resources/views/fluidbook_publication/link_editor.blade.php @@ -165,9 +165,9 @@

{{__('Fluidbook en cours d\'utilisation')}}

{{__('Utilisateur : ')}} {{ $user->firstname }} {{ $user->lastname }}

Identifiant: {{ $user->id }}

- +

+ +