/** * Update module information * * @param array $arrayModule * @param $moduleLocale * @return array */ protected function updateModuleInfo($arrayModule = [], $moduleLocale) { if (count($arrayModule) == 0 || $moduleLocale == '' || $moduleLocale != 'backend' && $moduleLocale != 'frontend') { return false; } else { $arrayModuleReturn = []; foreach ($arrayModule as $module) { $filePath = APP_DIR . '/' . $moduleLocale . '/' . $module . '/Resource.php'; //Get new Module name $resource = check_resource($filePath, $module, $moduleLocale); if (file_exists($filePath) && $resource) { /** * CoreModule $coreModule */ $coreModule = CoreModules::findFirst(['conditions' => 'base_name = ?1', 'bind' => ['1' => $module]]); if (!$coreModule) { $coreModule = new CoreModules(); $coreModule->base_name = $module; $coreModule->name = $module; $coreModule->is_core = 0; $coreModule->published = 0; $coreModule->location = $moduleLocale; $coreModule->ordering = (int) CoreModules::maximum(['column' => 'ordering']) + 1; } $coreModule->name = $resource['name']; $coreModule->class_name = $resource['class_name']; $coreModule->path = $resource['path']; $coreModule->menu = ''; $coreModule->description = $resource['description']; $coreModule->author = $resource['author']; $coreModule->authorUri = $resource['authorUri']; $coreModule->version = $resource['version']; $coreModule->uri = $resource['uri']; if ($moduleLocale == 'backend') { $coreModule->menu = $this->getModuleMenu($module); } if ($moduleLocale == 'frontend') { $coreModule->router = null; //$this->getModuleRouter($module); } if (!$coreModule->save()) { //Do some thing } else { $arrayModuleReturn['success'][] = [$coreModule->name, $moduleLocale]; } } else { $arrayModuleReturn['error'][] = [$module, $moduleLocale]; } } return $arrayModuleReturn; } }