├── view └── adminhtml │ ├── web │ ├── css │ │ └── deepl-translate.less │ └── images │ │ ├── deepl_banner.jpg │ │ └── deepl_banner_api.jpg │ ├── layout │ ├── default.xml │ ├── cms_block_edit.xml │ ├── cms_page_edit.xml │ ├── review_product_edit.xml │ └── catalog_product_attribute_edit.xml │ └── ui_component │ ├── product_form.xml │ └── category_form.xml ├── registration.php ├── Api └── TranslatorInterface.php ├── composer.json ├── etc ├── module.xml ├── adminhtml │ ├── routes.xml │ └── system.xml ├── di.xml ├── config.xml └── acl.xml ├── Model ├── System │ └── Config │ │ ├── TagHandling.php │ │ ├── Formality.php │ │ ├── SplitSentence.php │ │ ├── Version.php │ │ ├── BlockFields.php │ │ ├── PageFields.php │ │ ├── ProductFields.php │ │ └── CategoryFields.php ├── Translator │ ├── Catalog │ │ ├── Category.php │ │ ├── Product.php │ │ └── Attribute.php │ ├── Cms │ │ ├── Block.php │ │ └── Page.php │ └── Review.php └── Client │ └── Deepl.php ├── Controller └── Adminhtml │ ├── Cms.php │ ├── Catalog.php │ ├── Review.php │ ├── Catalog │ ├── Category │ │ └── Translate.php │ ├── Product │ │ └── Translate.php │ └── Attribute │ │ └── Translate.php │ ├── Review │ └── Translate.php │ └── Cms │ ├── Block │ └── Translate.php │ └── Page │ └── Translate.php ├── Block └── Adminhtml │ ├── Catalog │ ├── Product │ │ └── Edit │ │ │ └── Button │ │ │ └── Translate.php │ ├── Category │ │ └── Edit │ │ │ └── Button │ │ │ └── Translate.php │ └── Attribute │ │ └── Edit │ │ └── TranslateButton.php │ ├── System │ └── Config │ │ └── Fieldset │ │ └── Info.php │ ├── Review │ └── Edit │ │ └── TranslateButton.php │ └── Cms │ ├── Page │ └── Edit │ │ └── TranslateButton.php │ └── Block │ └── Edit │ └── TranslateButton.php ├── README.MD └── Helper └── Config.php /view/adminhtml/web/css/deepl-translate.less: -------------------------------------------------------------------------------- 1 | .options-scrollable .dropdown-menu { 2 | max-height: 20vw; 3 | overflow-y: auto; 4 | } -------------------------------------------------------------------------------- /view/adminhtml/web/images/deepl_banner.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aromicon/magento2-deepl/HEAD/view/adminhtml/web/images/deepl_banner.jpg -------------------------------------------------------------------------------- /view/adminhtml/web/images/deepl_banner_api.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aromicon/magento2-deepl/HEAD/view/adminhtml/web/images/deepl_banner_api.jpg -------------------------------------------------------------------------------- /registration.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Api/TranslatorInterface.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright 2018 aromicon GmbH (http://www.aromicon.de) 7 | * @license Commercial https://www.aromicon.de/magento-download-extensions-modules/de/license 8 | */ 9 | 10 | namespace Aromicon\Deepl\Api; 11 | 12 | interface TranslatorInterface 13 | { 14 | public function translate($string, $sourceLanguage, $targetLanguage); 15 | } -------------------------------------------------------------------------------- /composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "aromicon/module-deepl", 3 | "description": "Magento 2 Extension for Translation via Deepl API", 4 | "require": { 5 | "php": "~8.1.0|~8.2.0|~8.3.0", 6 | "magento/module-catalog": "*", 7 | "magento/magento-composer-installer": "*" 8 | }, 9 | "suggest": { 10 | 11 | }, 12 | "type": "magento2-module", 13 | "version": "2.0.0.24", 14 | "license": [ 15 | 16 | ], 17 | "autoload": { 18 | "files": [ 19 | "registration.php" 20 | ], 21 | "psr-4": { 22 | "Aromicon\\Deepl\\": "" 23 | } 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /etc/module.xml: -------------------------------------------------------------------------------- 1 | 2 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /etc/adminhtml/routes.xml: -------------------------------------------------------------------------------- 1 | 2 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /Model/System/Config/TagHandling.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright 2018 aromicon GmbH (http://www.aromicon.de) 7 | * @license Commercial https://www.aromicon.de/magento-download-extensions-modules/de/license 8 | */ 9 | namespace Aromicon\Deepl\Model\System\Config; 10 | 11 | class TagHandling implements \Magento\Framework\Option\ArrayInterface 12 | { 13 | /** 14 | * {@inheritdoc} 15 | */ 16 | public function toOptionArray() 17 | { 18 | return [ 19 | ['value' => 'xml', 'label' => __('XML')], 20 | ['value' => 'html', 'label' => __('HTML')] 21 | ]; 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /view/adminhtml/ui_component/product_form.xml: -------------------------------------------------------------------------------- 1 | 2 | 11 |
12 | 13 | 14 |