imports: - { resource: ../common.yml } services: _defaults: public: true # Controller Oksydan\IsImageslider\Controller\IsImagesliderController: public: true class: Oksydan\IsImageslider\Controller\IsImagesliderController arguments: - "@oksydan.is_imageslider.handler.file_eraser" - "@=service('prestashop.adapter.legacy.context').getLanguages(false)" - "@oksydan.is_imageslider.cache.template_cache" # installer oksydan.is_imageslider.image_slider_installer: class: 'Oksydan\IsImageslider\Installer\ImageSliderInstaller' arguments: - "@doctrine.dbal.default_connection" - "@oksydan.is_imageslider.installer.database_yml_parser" - "@=service('prestashop.adapter.legacy.context').getContext()" oksydan.is_imageslider.installer.database_yml_parser: class: 'Oksydan\IsImageslider\Installer\DatabaseYamlParser' arguments: - "@oksydan.is_imageslider.installer.database_yml_parser_provider" oksydan.is_imageslider.installer.database_yml_parser_provider: class: 'Oksydan\IsImageslider\Installer\Provider\DatabaseYamlProvider' arguments: - "@oksydan.is_imageslider.module" oksydan.is_imageslider.installer.action_databse_create_table: class: 'Oksydan\IsImageslider\Installer\ActionDatabaseCrateTable' parent: "oksydan.is_imageslider.installer.abstract_action_databse" public: true oksydan.is_imageslider.installer.action_databse_drop_table: class: 'Oksydan\IsImageslider\Installer\ActionDatabaseDropTable' parent: "oksydan.is_imageslider.installer.abstract_action_databse" public: true oksydan.is_imageslider.installer.abstract_action_databse: class: 'Oksydan\IsImageslider\Installer\ActionDatabaseAbstract' abstract: true arguments: - "@doctrine.dbal.default_connection" - "%database_prefix%" oksydan.is_imageslider.handler.file_uploader: class: 'Oksydan\IsImageslider\Handler\FileUploader' arguments: $targetDirectory: "%is_imageslider_images_directory%" oksydan.is_imageslider.handler.file_eraser: class: 'Oksydan\IsImageslider\Handler\FileEraser' arguments: $targetDirectory: "%is_imageslider_images_directory%" #creation/edition form oksydan.is_imageslider.form.identifiable_object.data_provider.image_slider_form_data_provider: class: 'Oksydan\IsImageslider\Form\Provider\ImageSliderFormDataProvider' arguments: - "@oksydan.is_imageslider.repository.image_slider" - "@oksydan.is_imageslider.provider.image_provider" - "@prestashop.core.admin.lang.repository" - "%is_imageslider_placeholder_img%" - "@prestashop.adapter.shop.context" oksydan.is_imageslider.form.identifiable_object.builder.image_slider_form_builder: class: 'PrestaShop\PrestaShop\Core\Form\IdentifiableObject\Builder\FormBuilder' factory: ["@prestashop.core.form.builder.form_builder_factory", "create"] arguments: - 'Oksydan\IsImageslider\Form\ImageSliderType' - "@oksydan.is_imageslider.form.identifiable_object.data_provider.image_slider_form_data_provider" oksydan.is_imageslider.form.identifiable_object.data_handler.image_slider_form_data_handler: class: 'Oksydan\IsImageslider\Form\DataHandler\ImageSliderFormDataHandler' arguments: - "@oksydan.is_imageslider.repository.image_slider" - "@prestashop.core.admin.lang.repository" - "@doctrine.orm.default_entity_manager" - "@oksydan.is_imageslider.handler.file_uploader" - "@oksydan.is_imageslider.handler.file_eraser" - "@=service('prestashop.adapter.legacy.context').getLanguages()" oksydan.is_imageslider.form.identifiable_object.handler.image_slider_form_handler: class: 'PrestaShop\PrestaShop\Core\Form\IdentifiableObject\Handler\FormHandler' factory: [ "@prestashop.core.form.identifiable_object.handler.form_handler_factory", "create", ] arguments: - "@oksydan.is_imageslider.form.identifiable_object.data_handler.image_slider_form_data_handler" #grid services oksydan.is_imageslider.grid.definition.factory.image_sliders: class: 'Oksydan\IsImageslider\Grid\Definition\Factory\ImageSliderGridDefinitionFactory' parent: "prestashop.core.grid.definition.factory.abstract_grid_definition" public: true oksydan.is_imageslider.grid.query.image_slider_query_builder: class: 'Oksydan\IsImageslider\Grid\Query\ImageSliderQueryBuilder' parent: "prestashop.core.grid.abstract_query_builder" public: true arguments: - "@prestashop.adapter.shop.context" - "@=service('prestashop.adapter.legacy.context').getContext().language.id" oksydan.is_imageslider.grid.image_slider_grid_factory: class: 'PrestaShop\PrestaShop\Core\Grid\GridFactory' arguments: - "@oksydan.is_imageslider.grid.definition.factory.image_sliders" - "@oksydan.is_imageslider.grid.data.factory.image_slider_decorator" - "@prestashop.core.grid.filter.form_factory" - "@prestashop.core.hook.dispatcher" oksydan.is_imageslider.grid.data.factory.image_slider_data_factory: class: "%prestashop.core.grid.data.factory.doctrine_grid_data_factory%" arguments: - "@oksydan.is_imageslider.grid.query.image_slider_query_builder" - "@prestashop.core.hook.dispatcher" - "@prestashop.core.grid.query.doctrine_query_parser" - "is_imageslider" oksydan.is_imageslider.grid.data.factory.image_slider_decorator: class: 'Oksydan\IsImageslider\Grid\Data\Factory\ImageSliderGridDataFactory' arguments: - "@oksydan.is_imageslider.grid.data.factory.image_slider_data_factory" - "@oksydan.is_imageslider.provider.image_provider" # config form oksydan.is_imageslider.image_slider.configuration: class: 'Oksydan\IsImageslider\Form\DataConfiguration\ImageSliderDataConfiguration' arguments: - "@prestashop.adapter.legacy.configuration" - "@prestashop.adapter.shop.context" - "@prestashop.adapter.multistore_feature" oksydan.is_imageslider.image_slider_configuration.form_provider: class: 'Oksydan\IsImageslider\Form\Provider\ImageSliderConfigurationFormDataProvider' arguments: - "@oksydan.is_imageslider.image_slider.configuration" oksydan.is_imageslider.image_slider_configuration.form_handler: class: 'PrestaShop\PrestaShop\Core\Form\Handler' arguments: - "@form.factory" - "@prestashop.core.hook.dispatcher" - "@oksydan.is_imageslider.image_slider_configuration.form_provider" - 'Oksydan\IsImageslider\Form\ImageSliderConfigurationType' - "ConfigurationForm" oksydan.is_imageslider.form.image_slider_type: class: 'Oksydan\IsImageslider\Form\ImageSliderType' parent: "form.type.translatable.aware" arguments: - '@=service("prestashop.adapter.multistore_feature").isUsed()' public: true tags: - { name: form.type } oksydan.is_imageslider.form.image_slider_configuration_type: class: 'Oksydan\IsImageslider\Form\ImageSliderConfigurationType' parent: "form.type.translatable.aware" public: true tags: - { name: form.type } Oksydan\IsImageslider\Type\TranslatableFile: class: 'Oksydan\IsImageslider\Type\TranslatableFile' parent: "form.type.translatable.aware" public: true tags: - { name: form.type } arguments: $availableLocales: "@=service('prestashop.adapter.legacy.context').getLanguages()" $saveFormLocaleChoice: false $defaultFormLanguageId: "@=service('prestashop.adapter.legacy.context').getLanguage().id" $defaultShopLanguageId: "@=service('prestashop.adapter.legacy.context').getLanguage().id" oksydan.is_imageslider.grid.position_definition: class: PrestaShop\PrestaShop\Core\Grid\Position\PositionDefinition arguments: - "image_slider" - "id_slide" - "position" oksydan.is_imageslider.provider.image_provider: class: 'Oksydan\IsImageslider\Provider\ImageProvider' public: true arguments: - "%is_imageslider_images_uri%"