imports: - { resource: services_rabbit.yml } - { resource: services_redis.yml } - { resource: parameters_addons.yml } parameters: spiriit_form_filter.get_filter.doctrine_orm.class: Wallabag\Event\Subscriber\CustomDoctrineORMSubscriber services: _defaults: autowire: true autoconfigure: true public: true bind: $projectDir: '%kernel.project_dir%' $debug: '%kernel.debug%' $defaultLocale: '%kernel.default_locale%' $wallabagUrl: '%domain_name%' $tablePrefix: "%database_table_prefix%" $encryptionKeyPath: "%wallabag.site_credentials.encryption_key_path%" $fetchingErrorMessageTitle: "%wallabag.fetching_error_message_title%" $fetchingErrorMessage: '%wallabag.fetching_error_message%' $languages: '%wallabag.languages%' $lifeTime: '%wallabag.cache_lifetime%' $cookieFile: "%kernel.cache_dir%/cookiejar.json" $logoPath: 'web/img/appicon/apple-touch-icon-152.png' $registrationEnabled: '%fosuser_registration%' $restrictedAccess: '@=service(''craue_config'').get(''restricted_access'')' $senderEmail: "%scheb_two_factor.email.sender_email%" $senderName: "%scheb_two_factor.email.sender_name%" $storeArticleHeaders: '@=service(''craue_config'').get(''store_article_headers'')' $supportUrl: '@=service(''craue_config'').get(''wallabag_support_url'')' $fonts: '%wallabag.fonts%' Wallabag\: resource: '../../src/*' exclude: ['../../src/{Consumer,Controller,Entity,ExpressionLanguage,DataFixtures,Redis}', '../../src/Event/*Event.php'] # controllers are imported separately to make sure services can be injected # as action arguments even if you don't extend any base controller class Wallabag\Controller\: resource: '../../src/Controller/' tags: ['controller.service_arguments'] # inject alias service into controllers Wallabag\Controller\Import\ChromeController: arguments: $rabbitMqProducer: '@old_sound_rabbit_mq.import_chrome_producer' $redisProducer: '@wallabag.producer.redis.chrome' Wallabag\Controller\Import\DeliciousController: arguments: $rabbitMqProducer: '@old_sound_rabbit_mq.import_delicious_producer' $redisProducer: '@wallabag.producer.redis.delicious' Wallabag\Controller\Import\ElcuratorController: arguments: $rabbitMqProducer: '@old_sound_rabbit_mq.import_elcurator_producer' $redisProducer: '@wallabag.producer.redis.elcurator' Wallabag\Controller\Import\OmnivoreController: arguments: $rabbitMqProducer: '@old_sound_rabbit_mq.import_omnivore_producer' $redisProducer: '@wallabag.producer.redis.omnivore' Wallabag\Controller\Import\FirefoxController: arguments: $rabbitMqProducer: '@old_sound_rabbit_mq.import_firefox_producer' $redisProducer: '@wallabag.producer.redis.firefox' Wallabag\Controller\Import\InstapaperController: arguments: $rabbitMqProducer: '@old_sound_rabbit_mq.import_instapaper_producer' $redisProducer: '@wallabag.producer.redis.instapaper' Wallabag\Controller\Import\PinboardController: arguments: $rabbitMqProducer: '@old_sound_rabbit_mq.import_pinboard_producer' $redisProducer: '@wallabag.producer.redis.pinboard' Wallabag\Controller\Import\PocketController: arguments: $rabbitMqProducer: '@old_sound_rabbit_mq.import_pocket_producer' $redisProducer: '@wallabag.producer.redis.pocket' Wallabag\Controller\Import\ReadabilityController: arguments: $rabbitMqProducer: '@old_sound_rabbit_mq.import_readability_producer' $redisProducer: '@wallabag.producer.redis.readability' Wallabag\Controller\Import\WallabagV1Controller: arguments: $rabbitMqProducer: '@old_sound_rabbit_mq.import_wallabag_v1_producer' $redisProducer: '@wallabag.producer.redis.wallabag_v1' Wallabag\Controller\Import\WallabagV2Controller: arguments: $rabbitMqProducer: '@old_sound_rabbit_mq.import_wallabag_v2_producer' $redisProducer: '@wallabag.producer.redis.wallabag_v2' Wallabag\Controller\Import\ShaarliController: arguments: $rabbitMqProducer: '@old_sound_rabbit_mq.import_shaarli_producer' $redisProducer: '@wallabag.producer.redis.shaarli' Wallabag\Controller\Import\PocketHtmlController: arguments: $rabbitMqProducer: '@old_sound_rabbit_mq.import_pocket_html_producer' $redisProducer: '@wallabag.producer.redis.pocket_html' Doctrine\DBAL\Connection: alias: doctrine.dbal.default_connection Doctrine\ORM\EntityManagerInterface: alias: doctrine.orm.entity_manager Doctrine\Migrations\Metadata\Storage\TableMetadataStorageConfiguration: alias: doctrine.migrations.storage.table_storage Doctrine\Persistence\ManagerRegistry: alias: doctrine Craue\ConfigBundle\Util\Config: alias: craue_config JMS\Serializer\SerializerInterface: alias: jms_serializer Spiriit\Bundle\FormFilterBundle\Filter\FilterBuilderUpdaterInterface: alias: spiriit_form_filter.query_builder_updater Scheb\TwoFactorBundle\Security\TwoFactor\Provider\Google\GoogleAuthenticatorInterface: alias: scheb_two_factor.security.google_authenticator Symfony\Component\HttpFoundation\Session\SessionInterface: alias: session Symfony\Component\EventDispatcher\EventDispatcherInterface: alias: event_dispatcher Symfony\Component\Form\FormFactoryInterface: alias: form.factory Symfony\Component\Security\Core\Authentication\Token\Storage\TokenStorageInterface: alias: security.token_storage Symfony\Component\Security\Core\Authorization\AuthorizationCheckerInterface: alias: security.authorization_checker Symfony\Component\Translation\TranslatorInterface: alias: translator Symfony\Component\Validator\Validator\ValidatorInterface: alias: validator FOS\UserBundle\Model\UserManagerInterface: alias: fos_user.user_manager MatomoTwigExtension\MatomoTwigExtension: public: false ScssPhp\ScssPhp\Compiler: public: false Wallabag\Event\Listener\UserLocaleListener: tags: - { name: kernel.event_listener, event: security.interactive_login, method: onInteractiveLogin } craue_config_cache_provider: class: Symfony\Component\Cache\Adapter\FilesystemAdapter public: false arguments: $namespace: 'craue_config' $defaultLifetime: 0 $directory: '%kernel.cache_dir%' Wallabag\ParamConverter\UsernameFeedTokenConverter: tags: - { name: request.param_converter, converter: username_feed_token_converter } Wallabag\Event\Subscriber\TablePrefixSubscriber: tags: - { name: doctrine.event_subscriber } Wallabag\Event\Subscriber\SchemaAdapterSubscriber: arguments: $databaseTablePrefix: "%database_table_prefix%" tags: - { name: doctrine.event_subscriber } Graby\Graby: arguments: $config: error_message: '%wallabag.fetching_error_message%' error_message_title: '%wallabag.fetching_error_message_title%' calls: - [ setLogger, [ "@logger" ] ] tags: - { name: monolog.logger, channel: graby } Graby\SiteConfig\ConfigBuilder: arguments: $config: {} wallabag.http_client: alias: 'httplug.client.wallabag' Wallabag\SiteConfig\GrabySiteConfigBuilder: tags: - { name: monolog.logger, channel: graby } # service alias override Wallabag\SiteConfig\SiteConfigBuilder: alias: Wallabag\SiteConfig\GrabySiteConfigBuilder GuzzleHttp\Cookie\CookieJar: alias: 'Wallabag\Helper\FileCookieJar' Wallabag\Helper\HttpClientFactory: calls: - ['addSubscriber', ['@Wallabag\Guzzle\AuthenticatorSubscriber']] - ['addSubscriber', ['@Wallabag\Guzzle\FixupMondeDiplomatiqueUriSubscriber']] RulerZ\RulerZ: alias: rulerz Wallabag\Operator\PHP\Matches: tags: - { name: rulerz.operator, target: native, operator: matches } Wallabag\Operator\Doctrine\Matches: tags: - { name: rulerz.operator, target: doctrine, operator: matches, inline: true } Wallabag\Operator\PHP\NotMatches: tags: - { name: rulerz.operator, target: native, operator: notmatches } Wallabag\Operator\Doctrine\NotMatches: tags: - { name: rulerz.operator, target: doctrine, operator: notmatches, inline: true } Wallabag\Operator\PHP\PatternMatches: tags: - { name: rulerz.operator, target: native, operator: "~" } Predis\Client: arguments: $parameters: scheme: '%redis_scheme%' host: '%redis_host%' port: '%redis_port%' path: '%redis_path%' password: '%redis_password%' Wallabag\Event\Subscriber\SQLiteCascadeDeleteSubscriber: tags: - { name: doctrine.event_subscriber } Wallabag\Event\Subscriber\DownloadImagesSubscriber: arguments: $enabled: '@=service(''craue_config'').get(''download_images_enabled'')' Wallabag\Helper\DownloadImages: arguments: $baseFolder: "%kernel.project_dir%/web/assets/images" Wallabag\Command\InstallCommand: arguments: $databaseDriver: '%database_driver%' $defaultSettings: '%wallabag.default_internal_settings%' $defaultIgnoreOriginInstanceRules: '%wallabag.default_ignore_origin_instance_rules%' Wallabag\Mailer\UserMailer: arguments: $parameters: template: confirmation: '%fos_user.registration.confirmation.template%' resetting: '%fos_user.resetting.email.template%' from_email: confirmation: '%fos_user.registration.confirmation.from_email%' resetting: '%fos_user.resetting.email.from_email%' Wallabag\Event\Listener\CreateConfigListener: arguments: $itemsOnPage: "%wallabag.items_on_page%" $feedLimit: "%wallabag.feed_limit%" $language: "%wallabag.language%" $readingSpeed: "%wallabag.reading_speed%" $actionMarkAsRead: "%wallabag.action_mark_as_read%" $listMode: "%wallabag.list_mode%" $displayThumbnails: "%wallabag.display_thumbnails%" Wallabag\Event\Listener\AuthenticationFailureListener: tags: - { name: kernel.event_listener, event: security.authentication.failure, method: onAuthenticationFailure } Wallabag\Import\PocketImport: calls: - [ setClient, [ '@Symfony\Contracts\HttpClient\HttpClientInterface $pocketClient' ] ] tags: - { name: wallabag.import, alias: pocket } Wallabag\Import\WallabagV1Import: tags: - { name: wallabag.import, alias: wallabag_v1 } Wallabag\Import\WallabagV2Import: tags: - { name: wallabag.import, alias: wallabag_v2 } Wallabag\Import\ElcuratorImport: tags: - { name: wallabag.import, alias: elcurator } Wallabag\Import\ReadabilityImport: tags: - { name: wallabag.import, alias: readability } Wallabag\Import\InstapaperImport: tags: - { name: wallabag.import, alias: instapaper } Wallabag\Import\PinboardImport: tags: - { name: wallabag.import, alias: pinboard } Wallabag\Import\DeliciousImport: tags: - { name: wallabag.import, alias: delicious } Wallabag\Import\OmnivoreImport: tags: - { name: wallabag.import, alias: omnivore } Wallabag\Import\FirefoxImport: tags: - { name: wallabag.import, alias: firefox } Wallabag\Import\ChromeImport: tags: - { name: wallabag.import, alias: chrome } Wallabag\Import\ShaarliImport: tags: - { name: wallabag.import, alias: shaarli } Wallabag\Import\PocketHtmlImport: tags: - { name: wallabag.import, alias: pocket_html } # to factorize the proximity and bypass translation for prev & next pagerfanta.view.default_wallabag: class: Pagerfanta\View\OptionableView arguments: - '@pagerfanta.view.twitter_bootstrap' - { proximity: 1, prev_message: "<", next_message: ">" } public: false tags: - { name: pagerfanta.view, alias: default_wallabag }