]> _ Git - cubist_cms-back.git/commitdiff
wip #7861 @1
authorVincent Vanwaelscappel <vincent@cubedesigners.com>
Tue, 2 Dec 2025 10:59:02 +0000 (11:59 +0100)
committerVincent Vanwaelscappel <vincent@cubedesigners.com>
Tue, 2 Dec 2025 10:59:02 +0000 (11:59 +0100)
src/app/Magic/Menu/Menu.php

index 580cef6beaa77bd63ad951cdab8575f580d2180f..0141f5e1dd6d3f3b2e6c054328dc2c137ac5ccea 100644 (file)
@@ -67,13 +67,18 @@ class Menu extends BaseMenu
         if (!isset(self::$_nav[$variant][$locale])) {
             \Barryvdh\Debugbar\Facade::startMeasure('nav', 'Init Navigation object ' . $variant . ', ' . $locale);
             self::$_nav[$variant][$locale] = Cache::tags(self::CACHE_TAG)->remember('navigation_' . $variant . '_' . $locale . '_' . $viewOffline, 43200, function () use ($locale, $variant, $viewOffline) {
-                \Barryvdh\Debugbar\Facade::startMeasure('donav', 'Do Navigation object ' . $variant . ', ' . $locale);
-                $nav = new Item();
-                $nav->setLocale($locale);
-                $nav->setVariant($variant);
-                $nav->initFromDatabase('#root', $viewOffline);
-                \Barryvdh\Debugbar\Facade::stopMeasure('donav');
-                return $nav;
+
+                return Cache::lock('navigation_' . $variant . '_' . $locale . '_' . $viewOffline, 60)->get(function () use ($locale, $variant, $viewOffline) {
+                    \Barryvdh\Debugbar\Facade::startMeasure('donav', 'Do Navigation object ' . $variant . ', ' . $locale);
+                    $nav = new Item();
+                    $nav->setLocale($locale);
+                    $nav->setVariant($variant);
+                    $nav->initFromDatabase('#root', $viewOffline);
+
+                    \Barryvdh\Debugbar\Facade::stopMeasure('donav');
+                    return $nav;
+                });
+
             });
             \Barryvdh\Debugbar\Facade::stopMeasure('nav');
         }