X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=src%2FWallabag%2FCoreBundle%2FResources%2Fconfig%2Fservices.yml;h=80f737f8aa3eb32bdaf9758a233dcf6ac99e33e9;hb=6bb0866cf513bf939eb2e3290d1852c55e51ec0d;hp=cea6c0df1098681478686cf8a883e21e799dc79e;hpb=d6fa2f70ac3c798b28ce33c6c143f45c09c74062;p=github%2Fwallabag%2Fwallabag.git diff --git a/src/Wallabag/CoreBundle/Resources/config/services.yml b/src/Wallabag/CoreBundle/Resources/config/services.yml index cea6c0df..bcf0c9ca 100644 --- a/src/Wallabag/CoreBundle/Resources/config/services.yml +++ b/src/Wallabag/CoreBundle/Resources/config/services.yml @@ -1,49 +1,180 @@ services: - wallabag_core.twig.extension: - class: Wallabag\CoreBundle\Twig\Extension\WallabagExtension - tags: - - { name: twig.extension } - - wsse.security.authentication.provider: - class: Wallabag\CoreBundle\Security\Authentication\Provider\WsseProvider - public: false - arguments: ['', '%kernel.cache_dir%/security/nonces'] - - wsse.security.authentication.listener: - class: Wallabag\CoreBundle\Security\Firewall\WsseListener - public: false - tags: - - { name: monolog.logger, channel: wsse } - arguments: ['@security.context', '@security.authentication.manager', '@logger'] - wallabag_core.helper.detect_active_theme: class: Wallabag\CoreBundle\Helper\DetectActiveTheme arguments: - - @security.context - - %theme% # default theme from parameters.yml + - "@security.token_storage" + - "%wallabag_core.theme%" # custom form type wallabag_core.form.type.config: class: Wallabag\CoreBundle\Form\Type\ConfigType arguments: - - %liip_theme.themes% + - "%liip_theme.themes%" + - "%wallabag_core.languages%" tags: - - { name: form.type, alias: config } + - { name: form.type } - wallabag_core.form.type.forgot_password: - class: Wallabag\CoreBundle\Form\Type\ForgotPasswordType + wallabag_core.filter.type.entry: + class: Wallabag\CoreBundle\Form\Type\EntryFilterType arguments: - - @doctrine + - "@wallabag_core.entry_repository" + - "@security.token_storage" tags: - - { name: form.type, alias: forgot_password } + - { name: form.type } wallabag_core.param_converter.username_rsstoken_converter: class: Wallabag\CoreBundle\ParamConverter\UsernameRssTokenConverter tags: - { name: request.param_converter, converter: username_rsstoken_converter } arguments: - - @doctrine + - "@doctrine" + + wallabag_core.subscriber.table_prefix: + class: Wallabag\CoreBundle\Event\Subscriber\TablePrefixSubscriber + arguments: + - "%database_table_prefix%" + tags: + - { name: doctrine.event_subscriber } + + wallabag_core.graby: + class: Graby\Graby + arguments: + - + error_message: '%wallabag_core.fetching_error_message%' + - "@wallabag_core.guzzle.http_client" + - "@wallabag_core.graby.config_builder" + calls: + - [ setLogger, [ "@logger" ] ] + tags: + - { name: monolog.logger, channel: graby } + + wallabag_core.graby.config_builder: + class: Graby\SiteConfig\ConfigBuilder + arguments: + - {} + - "@logger" + + wallabag_core.guzzle.http_client: + class: GuzzleHttp\ClientInterface + factory: ["@wallabag_core.guzzle.http_client_factory", buildHttpClient] + + wallabag_core.guzzle_authenticator.config_builder: + class: Wallabag\CoreBundle\GuzzleSiteAuthenticator\GrabySiteConfigBuilder + arguments: + - "@wallabag_core.graby.config_builder" + - "%sites_credentials%" + + # service alias override + bd_guzzle_site_authenticator.site_config_builder: + alias: wallabag_core.guzzle_authenticator.config_builder + + wallabag_core.guzzle.http_client_factory: + class: Wallabag\CoreBundle\Helper\HttpClientFactory + arguments: + - "@bd_guzzle_site_authenticator.authenticator_subscriber" + - "@wallabag_core.guzzle.cookie_jar" + - '@=service(''craue_config'').get(''restricted_access'')' + + wallabag_core.guzzle.cookie_jar: + class: GuzzleHttp\Cookie\FileCookieJar + arguments: ["%kernel.cache_dir%/cookiejar.json"] + + wallabag_core.content_proxy: + class: Wallabag\CoreBundle\Helper\ContentProxy + arguments: + - "@wallabag_core.graby" + - "@wallabag_core.rule_based_tagger" + - "@wallabag_core.tag_repository" + - "@logger" + + wallabag_core.rule_based_tagger: + class: Wallabag\CoreBundle\Helper\RuleBasedTagger + arguments: + - "@rulerz" + - "@wallabag_core.tag_repository" + - "@wallabag_core.entry_repository" + + # repository as a service + wallabag_core.entry_repository: + class: Wallabag\CoreBundle\Repository\EntryRepository + factory: [ "@doctrine.orm.default_entity_manager", getRepository ] + arguments: + - WallabagCoreBundle:Entry + + wallabag_core.tag_repository: + class: Wallabag\CoreBundle\Repository\TagRepository + factory: [ "@doctrine.orm.default_entity_manager", getRepository ] + arguments: + - WallabagCoreBundle:Tag + + wallabag_core.helper.entries_export: + class: Wallabag\CoreBundle\Helper\EntriesExport + arguments: + - '@=service(''craue_config'').get(''wallabag_url'')' + - src/Wallabag/CoreBundle/Resources/public/themes/_global/img/appicon/apple-touch-icon-152.png + + wallabag.operator.array.matches: + class: Wallabag\CoreBundle\Operator\PHP\Matches + tags: + - { name: rulerz.operator, executor: rulerz.executor.array, operator: matches } + + wallabag.operator.doctrine.matches: + class: Wallabag\CoreBundle\Operator\Doctrine\Matches + tags: + - { name: rulerz.operator, executor: rulerz.executor.doctrine, operator: matches, inline: true } + + wallabag_core.helper.redirect: + class: Wallabag\CoreBundle\Helper\Redirect + arguments: + - "@router" + - "@security.token_storage" + + wallabag_core.helper.prepare_pager_for_entries: + class: Wallabag\CoreBundle\Helper\PreparePagerForEntries + arguments: + - "@security.token_storage" + - "@router" + + wallabag_core.redis.client: + class: Predis\Client + arguments: + - + scheme: '%redis_scheme%' + host: '%redis_host%' + port: '%redis_port%' + path: '%redis_path%' + password: '%redis_password%' + + wallabag_core.exception_controller: + class: Wallabag\CoreBundle\Controller\ExceptionController + arguments: + - '@twig' + - '%kernel.debug%' + + wallabag_core.subscriber.sqlite_cascade_delete: + class: Wallabag\CoreBundle\Event\Subscriber\SQLiteCascadeDeleteSubscriber + arguments: + - "@doctrine" + tags: + - { name: doctrine.event_subscriber } + + wallabag_core.subscriber.download_images: + class: Wallabag\CoreBundle\Event\Subscriber\DownloadImagesSubscriber + arguments: + - "@doctrine.orm.default_entity_manager" + - "@wallabag_core.entry.download_images" + - '@=service(''craue_config'').get(''download_images_enabled'')' + - "@logger" + tags: + - { name: kernel.event_subscriber } + + wallabag_core.entry.download_images: + class: Wallabag\CoreBundle\Helper\DownloadImages + arguments: + - "@wallabag_core.entry.download_images.client" + - "%kernel.root_dir%/../web/assets/images" + - '@=service(''craue_config'').get(''wallabag_url'')' + - "@logger" - wallabag_core.doctrine.prefixed_naming_strategy: - class: Wallabag\CoreBundle\Doctrine\Mapping\PrefixedNamingStrategy - arguments: [%database_table_prefix%] + wallabag_core.entry.download_images.client: + class: GuzzleHttp\Client