public function onInstallApp() { // update param $this->manipulator->set('anime_db.catalog.installed', true); $this->cache_clearer->clear(); // prepare labels foreach ($this->labels as $key => $label) { $this->labels[$key] = $this->translator->trans($label); } // remove exists labels /* @var $labels Label[] */ $labels = $this->em->getRepository('AnimeDbCatalogBundle:Label')->findBy(['name' => $this->labels]); foreach ($labels as $label) { $i = array_search($label->getName(), $this->labels); if ($i !== false) { unset($this->labels[$i]); } } unset($labels); // install new labels foreach ($this->labels as $label) { $this->em->persist((new Label())->setName($label)); } $this->em->flush(); }
/** * @dataProvider getDataForSet * * @param string $key * @param string $value * @param array $before * @param array $after */ public function testSet($key, $value, array $before, array $after) { file_put_contents($this->filename, Yaml::dump($before)); $this->manipulator->set($key, $value); $this->assertEquals(Yaml::dump($after), file_get_contents($this->filename)); }
/** * Restore config on removed shmop. * * @param RemovedEvent $event */ public function onRemovedShmop(RemovedEvent $event) { if ($event->getPackage()->getName() == self::PACKAGE_SHMOP) { $this->parameters->set('cache_time_keeper.driver', 'cache_time_keeper.driver.file'); } }