share(function (PhraseaApplication $app) { return (new EditController($app)) ->setDataboxLoggerLocator($app['phraseanet.logger']) ->setDispatcher($app['dispatcher']) ->setSubDefinitionSubstituerLocator(new LazyLocator($app, 'subdef.substituer')) ; }); } public function boot(Application $app) { // no-op } public function connect(Application $app) { $controllers = $this->createAuthenticatedCollection($app); $firewall = $this->getFirewall($app); $controllers->before(function () use ($firewall) { $firewall ->requireNotGuest() ->requireRight('modifyrecord'); }); $controllers->post('/', 'controller.prod.edit:submitAction'); $controllers->get('/vocabulary/{vocabulary}/', 'controller.prod.edit:searchVocabularyAction'); $controllers->post('/apply/', 'controller.prod.edit:applyAction'); $controllers->get('/presets/{preset_id}', 'controller.prod.edit:presetsLoadAction'); $controllers->get('/presets', 'controller.prod.edit:presetsListAction'); $controllers->delete('/presets/{preset_id}', 'controller.prod.edit:presetsDeleteAction'); $controllers->post('/presets', 'controller.prod.edit:presetsSaveAction'); return $controllers; } }