/** * Gets the main menu * * @return array */ public static function getMainMenu() { /* @var $folders Collection */ $folders = Folder::with('modules')->orderBy('lft')->get()->filter(function ($e) { return !$e->modules->isEmpty(); }); /* @var $freeModules Collection */ $freeModules = Module::whereNull('folder_id')->orderBy('lft')->get(); return $folders->merge($freeModules); }
/** * Init function * * @param int $id */ public function init($id = null) { $this->data['moduleId'] = \Input::get('module_id') ?: $id; $this->data['nextAutoIncrement'] = AdminController::getNextAutoIncrement('fields'); $this->data['folders'] = Folder::get(); if (is_numeric($this->data['moduleId'])) { $this->data['module'] = Module::find($id); $this->data['fields'] = $this->data['module']->fields; $this->data['fieldsJson'] = $this->data['fields']->toJson(); $this->data['isFolder'] = isset($this->data['module']->is_folder) && $this->data['module']->is_folder == 1; } }