Current File : //var/www/prestashop/src/PrestaShopBundle/Resources/config/services/bundle/event_listener.yml
services:
  _defaults:
    public: true

  prestashop.user_locale.listener:
    class: PrestaShopBundle\EventListener\UserLocaleListener
    arguments:
      - "@prestashop.adapter.legacy.context"
      - "@prestashop.adapter.legacy.configuration"
      - "@prestashop.core.admin.lang.repository"
    tags:
      - { name: kernel.event_listener, event: kernel.request, method: onKernelRequest, priority: 15 }

  prestashop.dispatcher.legacy_hooks.subscriber:
    class: 'PrestaShopBundle\EventListener\ActionDispatcherLegacyHooksSubscriber'
    arguments: [ '@prestashop.core.hook.dispatcher' ]
    tags:
      - { name: kernel.event_subscriber }

  prestashop.tokenized_url_listener:
    class: PrestaShopBundle\EventListener\TokenizedUrlsListener
    arguments:
      - "@security.csrf.token_manager"
      - "@router"
      - "@=service('prestashop.user_provider').getUsername()"
      - "@prestashop.adapter.legacy.context"
    tags:
      - { name: kernel.event_listener, event: kernel.request, method: onKernelRequest }

  # Priority 40 to be called before the RouterListener
  prestashop.legacy_url_listener:
    class: PrestaShopBundle\EventListener\LegacyUrlListener
    arguments:
      - "@prestashop.bundle.routing.converter.legacy_url_converter"
    tags:
      - { name: kernel.event_listener, event: kernel.request, method: onKernelRequest, priority: 40 }

  # Priority 30 to be called after the RouterListener
  prestashop.legacy_parameters_listener:
    class: PrestaShopBundle\EventListener\LegacyParametersListener
    arguments:
      - "@prestashop.bundle.routing.converter.legacy_parameters_converter"
    tags:
      - { name: kernel.event_listener, event: kernel.request, method: onKernelRequest, priority: 30 }

  prestashop.multishop_command_listener:
    class: PrestaShopBundle\EventListener\MultishopCommandListener
    arguments:
      - "@prestashop.adapter.shop.context"
      - "@=service('kernel').getRootDir()"
    tags:
      - { name: kernel.event_listener, event: console.command, method: onConsoleCommand }

  prestashop.access_denied.listener:
    class: PrestaShopBundle\EventListener\AccessDeniedListener
    arguments:
      - "@router"
      - "@translator"
      - "@session"
    tags:
      - { name: kernel.event_listener, event: kernel.exception, method: onKernelException }

  prestashop.demo_mode_enabled.listener:
    class: PrestaShopBundle\EventListener\DemoModeEnabledListener
    arguments:
      - "@router"
      - "@translator"
      - "@session"
      - "@annotation_reader"
      - "@=service('prestashop.adapter.legacy.configuration').getBoolean('_PS_MODE_DEMO_')"
    tags:
      - { name: kernel.event_listener, event: kernel.controller, method: onKernelController }

  prestashop.module_activated.listener:
    class: PrestaShopBundle\EventListener\ModuleActivatedListener
    arguments:
      - "@router"
      - "@translator"
      - "@session"
      - "@annotation_reader"
      - "@prestashop.core.admin.module.repository"
    tags:
      - { name: kernel.event_listener, event: kernel.controller, method: onKernelController }

  prestashop.bundle.event_listener.filter_category_search_criteria:
    class: PrestaShopBundle\EventListener\FilterCategorySearchCriteriaListener
    arguments:
      - '@prestashop.adapter.grid.search.factory.search_criteria_with_category_parent_id'
    tags:
      - { name: kernel.event_listener, event: prestashop.search_criteria.filter, method: onFilterSearchCriteria }

  prestashop.bundle.event_listener.filter_cms_page_category_search_criteria:
    class: PrestaShopBundle\EventListener\FilterCmsPageCategorySearchCriteriaListener
    arguments:
      - '@request_stack'
    tags:
      - { name: kernel.event_listener, event: prestashop.search_criteria.filter, method: onFilterSearchCriteria }

  prestashop.bundle.event_listener.back_url_redirect_response_listener:
    class: PrestaShopBundle\EventListener\BackUrlRedirectResponseListener
    arguments:
      - '@prestashop.core.uti.back_url_provider'
      - "@prestashop.adapter.legacy.context"
    tags:
      - { name: kernel.event_listener, event: kernel.response, method: onKernelResponse }

  prestashop.bundle.event_listener.module_guard_listener:
    class: PrestaShopBundle\EventListener\ModuleGuardListener
    arguments:
      - '@prestashop.core.security.folder_guard.vendor'
      - '%modules_dir%'
      - '@logger'
    tags:
      - { name: kernel.event_subscriber }