use Cubist\Backpack\app\Magic\Requests\CubistMagicUpdateRequest;
use Gaspertrix\Backpack\DropzoneField\Traits\HandleAjaxMedia;
use Illuminate\Support\Arr;
+use Illuminate\Support\Facades\Cache;
use Illuminate\Support\Facades\Redirect;
class CubistMagicController extends CubistCrudController
$this->crud->allowAccess('revisions');
$this->crud->setEditView('cubist_back::edit');
- if($this->_nested){
+ if ($this->_nested) {
$this->crud->allowAccess('reorder');
$this->crud->enableReorder('name', 4);
}
*/
public function store(CubistMagicStoreRequest $request)
{
+ $this->_forgetCache();
+
$request = $this->_prepareCRUDData($request);
$this->getModelInstance()->onBeforeStore($this, $request);
*/
public function update(CubistMagicUpdateRequest $request)
{
+ $this->_forgetCache();
+
$request = $this->_prepareCRUDData($request);
$this->getModelInstance()->onBeforeUpdate($this, $request);
return $redirect_location;
}
+ protected function _forgetCache()
+ {
+ Cache::forget('navigation');
+ }
public function index()
{
namespace Cubist\Backpack\app\Magic\Menu;
use Lavary\Menu\Menu as BaseMenu;
+use Illuminate\Support\Facades\Cache;
class Menu extends BaseMenu
{
public static function getNavigation()
{
if (self::$_nav === null) {
- Debugbar::startMeasure('nav', 'Init Navigation object');
- self::$_nav = new Item();
- self::$_nav->initFromDatabase();
- Debugbar::stopMeasure('nav');
+ \Barryvdh\Debugbar\Facade::startMeasure('nav', 'Init Navigation object');
+ self::$_nav = Cache::remember('navigation', 43200, function () {
+ $nav = new Item();
+ $nav->initFromDatabase();
+ return $nav;
+ });
+ \Barryvdh\Debugbar\Facade::stopMeasure('nav');
}
return self::$_nav;
public function setChildrenFromTemplate()
{
- $this->getPage()->getUsedTemplate()->setMenuChildren($this);
+ $template=$this->getPage()->getUsedTemplate();
+ $template->setMenuChildren($this);
}
public function getHref()