findOne(); } catch (\Exception $e) { $database = new Database($con); $database->insertSql(null, [__DIR__ . '/Config/thelia.sql']); } $this->addRessource(self::RESOURCES_SELECTION); //Initialize the module_config self::setConfigValue(self::CONFIG_ALLOW_PROFILE_ID, ''); } /** * @param ConnectionInterface|null $con * @param false $deleteModuleData */ public function destroy(ConnectionInterface $con = null, $deleteModuleData = false) { $database = new Database($con); $database->insertSql(null, [__DIR__ . '/Config/destroy.sql']); } public function update($currentVersion, $newVersion, ConnectionInterface $con = null) { $finder = Finder::create() ->name('*.sql') ->depth(0) ->sortByName() ->in(__DIR__ . DS . 'Config' . DS . 'update'); $database = new Database($con); /** @var \SplFileInfo $file */ foreach ($finder as $file) { if (version_compare($currentVersion, $file->getBasename('.sql'), '<')) { $database->insertSql(null, [$file->getPathname()]); } } } /** * @param $code * @throws \Propel\Runtime\Exception\PropelException */ protected function addRessource($code) { if (null === ResourceQuery::create()->findOneByCode($code)) { $resource = new Resource(); $resource->setCode($code); $resource->setTitle($code); $resource->save(); } } }