From 75d1d43c56d0d63872a5370d1ec91f87b4e35251 Mon Sep 17 00:00:00 2001 From: Georg Ringer Date: Wed, 13 Sep 2023 10:44:01 +0200 Subject: [PATCH] [TASK] Switch to brevo --- Classes/ApiWrapper.php | 8 ++-- Classes/Command/TestCommand.php | 8 ++-- Classes/Configuration.php | 6 +-- ...ndinblueFinisher.php => BrevoFinisher.php} | 20 ++++----- Classes/Report/IntegrationReport.php | 14 +++---- Configuration/Services.yaml | 6 +-- Configuration/Yaml/FormSetup.yaml | 42 +++++++++---------- Readme.md | 24 +++++------ ...mple.form.yaml => brevo-example.form.yaml} | 6 +-- Resources/Private/Language/Form.xlf | 16 +++---- Resources/Private/Language/de.Form.xlf | 18 ++++---- .../Private/Language/locallang_report.xlf | 4 +- Tests/Unit/ConfigurationTest.php | 8 ++-- ...FinisherTest.php => BrevoFinisherTest.php} | 16 +++---- composer.json | 17 ++++---- ext_emconf.php | 6 +-- ext_localconf.php | 16 +++---- ext_typoscript_setup.typoscript | 4 +- 18 files changed, 118 insertions(+), 121 deletions(-) rename Classes/Finishers/{SendinblueFinisher.php => BrevoFinisher.php} (89%) rename Resources/Private/Example/{sendinblue-example.form.yaml => brevo-example.form.yaml} (96%) rename Tests/Unit/Finishers/{SendinblueFinisherTest.php => BrevoFinisherTest.php} (73%) diff --git a/Classes/ApiWrapper.php b/Classes/ApiWrapper.php index 236c088..720c503 100644 --- a/Classes/ApiWrapper.php +++ b/Classes/ApiWrapper.php @@ -2,10 +2,10 @@ declare(strict_types=1); -namespace StudioMitte\Sendinblue; +namespace StudioMitte\Brevo; /* - * This file is part of TYPO3 CMS-based extension "sendinblue" by StudioMitte. + * This file is part of TYPO3 CMS-based extension "brevo" by StudioMitte. * * It is free software; you can redistribute it and/or modify it under * the terms of the GNU General Public License, either version 2 @@ -13,10 +13,10 @@ */ use Brevo\Client\Configuration; -use StudioMitte\Sendinblue\Configuration as ExtensionConfiguration; +use StudioMitte\Brevo\Configuration as ExtensionConfiguration; /** - * Wrapper for the sendinblue api giving back a pre-configured API + * Wrapper for the brevo api giving back a pre-configured API */ class ApiWrapper { diff --git a/Classes/Command/TestCommand.php b/Classes/Command/TestCommand.php index 7ea6c66..dc52a91 100644 --- a/Classes/Command/TestCommand.php +++ b/Classes/Command/TestCommand.php @@ -2,10 +2,10 @@ declare(strict_types=1); -namespace StudioMitte\Sendinblue\Command; +namespace StudioMitte\Brevo\Command; /* - * This file is part of TYPO3 CMS-based extension "sendinblue" by StudioMitte. + * This file is part of TYPO3 CMS-based extension "brevo" by StudioMitte. * * It is free software; you can redistribute it and/or modify it under * the terms of the GNU General Public License, either version 2 @@ -13,7 +13,7 @@ */ use Brevo\Client\Api\ContactsApi; -use StudioMitte\Sendinblue\ApiWrapper; +use StudioMitte\Brevo\ApiWrapper; use Symfony\Component\Console\Command\Command; use Symfony\Component\Console\Input\InputInterface; use Symfony\Component\Console\Output\OutputInterface; @@ -30,7 +30,7 @@ class TestCommand extends Command protected function configure() { $this - ->setDescription('Sendinblue demo'); + ->setDescription('Brevo demo'); } /** diff --git a/Classes/Configuration.php b/Classes/Configuration.php index 8d02f09..451b9ec 100644 --- a/Classes/Configuration.php +++ b/Classes/Configuration.php @@ -2,10 +2,10 @@ declare(strict_types=1); -namespace StudioMitte\Sendinblue; +namespace StudioMitte\Brevo; /* - * This file is part of TYPO3 CMS-based extension "sendinblue" by StudioMitte. + * This file is part of TYPO3 CMS-based extension "brevo" by StudioMitte. * * It is free software; you can redistribute it and/or modify it under * the terms of the GNU General Public License, either version 2 @@ -52,7 +52,7 @@ class Configuration public function __construct() { try { - $settings = GeneralUtility::makeInstance(ExtensionConfiguration::class)->get('sendinblue'); + $settings = GeneralUtility::makeInstance(ExtensionConfiguration::class)->get('brevo'); foreach (['apiKey', 'attributeFirstName', 'attributeLastName', 'attributeTracking'] as $stringField) { $this->$stringField = $settings[$stringField] ?? ''; diff --git a/Classes/Finishers/SendinblueFinisher.php b/Classes/Finishers/BrevoFinisher.php similarity index 89% rename from Classes/Finishers/SendinblueFinisher.php rename to Classes/Finishers/BrevoFinisher.php index 0a0c0cd..17f2805 100644 --- a/Classes/Finishers/SendinblueFinisher.php +++ b/Classes/Finishers/BrevoFinisher.php @@ -2,10 +2,10 @@ declare(strict_types=1); -namespace StudioMitte\Sendinblue\Finishers; +namespace StudioMitte\Brevo\Finishers; /* - * This file is part of TYPO3 CMS-based extension "sendinblue" by StudioMitte. + * This file is part of TYPO3 CMS-based extension "brevo" by StudioMitte. * * It is free software; you can redistribute it and/or modify it under * the terms of the GNU General Public License, either version 2 @@ -17,15 +17,15 @@ use Brevo\Client\Api\ContactsApi; use Brevo\Client\Model\CreateContact; use Brevo\Client\Model\CreateDoiContact; -use StudioMitte\Sendinblue\ApiWrapper; -use StudioMitte\Sendinblue\Configuration; +use StudioMitte\Brevo\ApiWrapper; +use StudioMitte\Brevo\Configuration; use TYPO3\CMS\Core\Utility\GeneralUtility; use TYPO3\CMS\Form\Domain\Finishers\AbstractFinisher; /** - * Finisher for EXT:form sending the data to sendinblue + * Finisher for EXT:form sending the data to brevo */ -class SendinblueFinisher extends AbstractFinisher implements LoggerAwareInterface +class BrevoFinisher extends AbstractFinisher implements LoggerAwareInterface { use LoggerAwareTrait; @@ -44,19 +44,19 @@ protected function executeInternal(): void return; } - $this->addEntryToSendInBlue() ? $this->setFinisherSubscribedVariable(1) : $this->setFinisherSubscribedVariable(0); + $this->addEntryToBrevo() ? $this->setFinisherSubscribedVariable(1) : $this->setFinisherSubscribedVariable(0); } protected function setFinisherSubscribedVariable(int $returnValue): void { $this->finisherContext->getFinisherVariableProvider()->add( - 'sendinblue', + 'brevo', 'data.subscribed', $returnValue ); } - protected function addEntryToSendInBlue(): bool + protected function addEntryToBrevo(): bool { try { $apiInstance = $this->getApi(); @@ -152,7 +152,7 @@ protected function getAttributes(): object } // additional attribute mappings - $additionalAttributes = $this->parseOption('additionalAttributes'); + $additionalAttributes = (array)($this->parseOption('additionalAttributes') ?? []); foreach ($additionalAttributes as $key => $value) { $attributes[$key] = $value; } diff --git a/Classes/Report/IntegrationReport.php b/Classes/Report/IntegrationReport.php index cb1bf9e..183dad2 100644 --- a/Classes/Report/IntegrationReport.php +++ b/Classes/Report/IntegrationReport.php @@ -2,10 +2,10 @@ declare(strict_types=1); -namespace StudioMitte\Sendinblue\Report; +namespace StudioMitte\Brevo\Report; /* - * This file is part of TYPO3 CMS-based extension "sendinblue" by StudioMitte. + * This file is part of TYPO3 CMS-based extension "brevo" by StudioMitte. * * It is free software; you can redistribute it and/or modify it under * the terms of the GNU General Public License, either version 2 @@ -17,7 +17,7 @@ use Brevo\Client\Api\TransactionalEmailsApi; use Brevo\Client\ApiException; use Brevo\Client\Model\GetAccount; -use StudioMitte\Sendinblue\ApiWrapper; +use StudioMitte\Brevo\ApiWrapper; use TYPO3\CMS\Core\Utility\GeneralUtility; use TYPO3\CMS\Extbase\Mvc\Exception\InvalidExtensionNameException; use TYPO3\CMS\Fluid\View\StandaloneView; @@ -41,14 +41,14 @@ public function getReport(): string // Rendering of the output via fluid $view = GeneralUtility::makeInstance(StandaloneView::class); $view->setTemplatePathAndFilename(GeneralUtility::getFileAbsFileName( - 'EXT:sendinblue/Resources/Private/Templates/IntegrationReport.html' + 'EXT:brevo/Resources/Private/Templates/IntegrationReport.html' )); $view->assignMultiple([ 'account' => $this->getAccountInformation(), 'contacts' => $this->getContactInformation(), 'emails' => $this->getTransactionalEmailInformation(), - 'lll' => 'LLL:EXT:sendinblue/Resources/Private/Language/locallang_report.xlf:' + 'lll' => 'LLL:EXT:brevo/Resources/Private/Language/locallang_report.xlf:' ]); return $view->render(); @@ -98,12 +98,12 @@ public function getIdentifier(): string public function getTitle(): string { - return 'LLL:EXT:sendinblue/Resources/Private/Language/locallang_report.xlf:report.title'; + return 'LLL:EXT:brevo/Resources/Private/Language/locallang_report.xlf:report.title'; } public function getDescription(): string { - return 'LLL:EXT:sendinblue/Resources/Private/Language/locallang_report.xlf:report.description'; + return 'LLL:EXT:brevo/Resources/Private/Language/locallang_report.xlf:report.description'; } public function getIconIdentifier(): string diff --git a/Configuration/Services.yaml b/Configuration/Services.yaml index baaeea8..384a9da 100644 --- a/Configuration/Services.yaml +++ b/Configuration/Services.yaml @@ -4,12 +4,12 @@ services: autoconfigure: true public: false - StudioMitte\Sendinblue\Command\TestCommand: + StudioMitte\Brevo\Command\TestCommand: tags: - name: 'console.command' - command: 'sendinblue:test' + command: 'brevo:test' schedulable: false - StudioMitte\Sendinblue\Report\IntegrationReport: + StudioMitte\Brevo\Report\IntegrationReport: tags: - name: reports.report diff --git a/Configuration/Yaml/FormSetup.yaml b/Configuration/Yaml/FormSetup.yaml index 363752b..900b375 100644 --- a/Configuration/Yaml/FormSetup.yaml +++ b/Configuration/Yaml/FormSetup.yaml @@ -5,7 +5,7 @@ TYPO3: standard: formEditor: translationFiles: - 1483353712: 'EXT:sendinblue/Resources/Private/Language/Form.xlf' + 1483353712: 'EXT:brevo/Resources/Private/Language/Form.xlf' formElementsDefinition: Form: formEditor: @@ -13,22 +13,22 @@ TYPO3: 900: selectOptions: 1483353712: - value: 'Sendinblue' - label: 'finisher.Sendinblue.label' + value: 'Brevo' + label: 'finisher.Brevo.label' propertyCollections: finishers: # add finisher fields 1483353712: - identifier: 'Sendinblue' + identifier: 'Brevo' editors: 100: identifier: header - label: 'finisher.Sendinblue.label' + label: 'finisher.Brevo.label' templateName: 'Inspector-CollectionElementHeaderEditor' 110: identifier: 'enabled' templateName: 'Inspector-TextEditor' - label: 'finisher.Sendinblue.field.enable' + label: 'finisher.Brevo.field.enable' propertyPath: 'options.enabled' enableFormelementSelectionButton: true propertyValidators: @@ -37,7 +37,7 @@ TYPO3: 120: identifier: 'email' templateName: 'Inspector-TextEditor' - label: 'finisher.Sendinblue.field.email' + label: 'finisher.Brevo.field.email' propertyPath: 'options.email' enableFormelementSelectionButton: true propertyValidators: @@ -46,7 +46,7 @@ TYPO3: 130: identifier: 'firstName' templateName: 'Inspector-TextEditor' - label: 'finisher.Sendinblue.field.firstName' + label: 'finisher.Brevo.field.firstName' propertyPath: 'options.firstName' enableFormelementSelectionButton: true propertyValidators: @@ -54,7 +54,7 @@ TYPO3: 131: identifier: 'lastName' templateName: 'Inspector-TextEditor' - label: 'finisher.Sendinblue.field.lastName' + label: 'finisher.Brevo.field.lastName' propertyPath: 'options.lastName' enableFormelementSelectionButton: true propertyValidators: @@ -62,7 +62,7 @@ TYPO3: 135: identifier: 'additionalListIds' templateName: 'Inspector-TextEditor' - label: 'finisher.Sendinblue.field.additionalListIds' + label: 'finisher.Brevo.field.additionalListIds' propertyPath: 'options.additionalListIds' enableFormelementSelectionButton: true propertyValidators: @@ -70,17 +70,17 @@ TYPO3: 150: identifier: 'tracking' templateName: 'Inspector-TextEditor' - label: 'finisher.Sendinblue.field.tracking' + label: 'finisher.Brevo.field.tracking' propertyPath: 'options.tracking' 9999: identifier: 'removeButton' templateName: 'Inspector-RemoveElementEditor' finishersDefinition: - Sendinblue: - implementationClassName: 'StudioMitte\Sendinblue\Finishers\SendinblueFinisher' + Brevo: + implementationClassName: 'StudioMitte\Brevo\Finishers\BrevoFinisher' formEditor: iconIdentifier: 'form-finisher' - label: 'finisher.Sendinblue.label' + label: 'finisher.Brevo.label' predefinedDefaults: options: enabled: '' @@ -91,29 +91,29 @@ TYPO3: tracking: 'trackingvalue' # displayed when overriding finisher settings FormEngine: - label: 'finisher.Sendinblue.label' + label: 'finisher.Brevo.label' elements: enabled: - label: 'finisher.Sendinblue.field.enable' + label: 'finisher.Brevo.field.enable' config: type: 'check' tracking: - label: 'finisher.Sendinblue.field.tracking' + label: 'finisher.Brevo.field.tracking' config: type: 'text' email: - label: 'finisher.Sendinblue.field.email' + label: 'finisher.Brevo.field.email' config: type: 'text' firstName: - label: 'finisher.Sendinblue.field.firstName' + label: 'finisher.Brevo.field.firstName' config: type: 'text' lastName: - label: 'finisher.Sendinblue.field.lastName' + label: 'finisher.Brevo.field.lastName' config: type: 'text' additionalListIds: - label: 'finisher.Sendinblue.field.additionalListIds' + label: 'finisher.Brevo.field.additionalListIds' config: type: 'text' diff --git a/Readme.md b/Readme.md index 53f86b1..b729546 100644 --- a/Readme.md +++ b/Readme.md @@ -1,24 +1,24 @@ -# TYPO3 Extension `sendinblue` +# TYPO3 Extension `brevo` (formally known as sendinblue) -This extension integrates the newsletter SaaS https://sendinblue.com/ into TYPO3. +This extension integrates the newsletter SaaS https://brevo.com/ into TYPO3. Currently this extension supports *only* the form framework of the core but it would be easy to add finishers to powermail. ## Installation & Configuration -Currently this extension requires a composer based installation. Use `composer req studiomitte/sendinblue` to install it. +Currently this extension requires a composer based installation. Use `composer req studiomitte/brevo` to install it. Head over to the extension configuration and provide all settings you need: ![Extension Configuration.png](Resources/Public/Screenshot/ExtensionConfiguration.png) - **Basic** - - *API-Key*: Add your API key which you can retrieve from https://account.sendinblue.com/advanced/api. + - *API-Key*: Add your API key which you can retrieve from https://account.brevo.com/advanced/api. - *Partner Key*: currently not in use - - Default Lists*: Add IDs of sendinblue contact lists which are added to every contact + - Default Lists*: Add IDs of brevo contact lists which are added to every contact - **DOI** - *Enable double optin*: Please always use double opt in! - *Page ID for redirect*: Page which a user is sent to after confirming double opt in - - *DOI Template*: Id of sendinblue template which is used for DOI mails. + - *DOI Template*: Id of brevo template which is used for DOI mails. - **Attributes** - *Attribute for first name*: Name of attribute used for the first name - *Attribute for last name*: Name of attribute used for the last name @@ -26,13 +26,13 @@ Head over to the extension configuration and provide all settings you need: ## Usage -A new finisher *Sendinblue Finisher* intercepts the data of the form and adds the contact. +A new finisher *Brevo Finisher* intercepts the data of the form and adds the contact. -> **Example configuration** can be found at `EXT:sendinblue/Resources/Private/Example/sendinblue-example.form.yaml`. +> **Example configuration** can be found at `EXT:brevo/Resources/Private/Example/brevo-example.form.yaml`. ![Finisher for EXT:form](Resources/Public/Screenshot/Finisher.png) -As the fields can be differ for any form, you need to provide the mapping information for all important fields: +As the fields can be different for any form, you need to provide the mapping information for all important fields: - *Checkbox to enable*: Newsletter subscription must be optional. Therefore provide the checkbox which asks the user if a newsletter should be sent. - *Field of email address*: Provide the field information which holds the email address @@ -44,7 +44,7 @@ As the fields can be differ for any form, you need to provide the mapping inform ### Getting started -It is a bit tricky to get everything started. For sending mails the account needs to be validated. This is documented at https://help.sendinblue.com/hc/en-us/articles/360016175440 +It is a bit tricky to get everything started. For sending mails the account needs to be validated. This is documented at https://help.brevo.com/hc/en-us/articles/360016175440 In short you need @@ -53,7 +53,7 @@ In short you need ### (DOI) Double Opt-In Mails -Getting started with that is also a bit tricky for the 1st time. This is documented at https://help.sendinblue.com/hc/en-us/articles/211244629 but still misses some important things: +Getting started with that is also a bit tricky for the 1st time. This is documented at https://help.brevo.com/hc/en-us/articles/211244629 but still misses some important things: 1. The DOI template needs to be tagged with `optin`. 2. The button in the DOI template for triggering the confirmation must have as link value `{{ doubleoptin }}`. @@ -67,7 +67,7 @@ The following configurations can be used to override the global settings options: doiTemplateId: '14' defaultListIds: '12,34' - identifier: Sendinblue + identifier: Brevo ``` ## Author diff --git a/Resources/Private/Example/sendinblue-example.form.yaml b/Resources/Private/Example/brevo-example.form.yaml similarity index 96% rename from Resources/Private/Example/sendinblue-example.form.yaml rename to Resources/Private/Example/brevo-example.form.yaml index 474afe7..7766f21 100644 --- a/Resources/Private/Example/sendinblue-example.form.yaml +++ b/Resources/Private/Example/brevo-example.form.yaml @@ -2,8 +2,8 @@ renderingOptions: submitButtonLabel: Submit type: Form -identifier: sendinblue -label: sendinblue +identifier: brevo +label: brevo prototypeName: standard finishers: - @@ -21,7 +21,7 @@ finishers: # override global settings # doiTemplateId: '14' # defaultListIds: '12,34' - identifier: Sendinblue + identifier: Brevo - options: message: 'Thanks for providing all your information' diff --git a/Resources/Private/Language/Form.xlf b/Resources/Private/Language/Form.xlf index db309ac..33a5226 100644 --- a/Resources/Private/Language/Form.xlf +++ b/Resources/Private/Language/Form.xlf @@ -2,25 +2,25 @@ - - Sendinblue Finisher + + Brevo Finisher - + Checkbox to enable - + Field of email address - + Field of First name - + Field of Last name - + Additional tracking information - + Additional list ids diff --git a/Resources/Private/Language/de.Form.xlf b/Resources/Private/Language/de.Form.xlf index a7d7a4b..945b21b 100644 --- a/Resources/Private/Language/de.Form.xlf +++ b/Resources/Private/Language/de.Form.xlf @@ -2,31 +2,31 @@ - - Sendinblue Finisher - Sendinblue Finisher + + Brevo Finisher + Brevo Finisher - + Checkbox to enable Checkbox der Aktivier-Checkbox - + Field of email address Feld der Emailadresse - + Field of First name Feld des Vornamens - + Field of Last name Feld des Nachnamens - + Additional tracking information Zusätzliche Trackinginformation - + Additional list ids Zusätzliche Listen-Ids diff --git a/Resources/Private/Language/locallang_report.xlf b/Resources/Private/Language/locallang_report.xlf index bd2b2dc..7778b88 100644 --- a/Resources/Private/Language/locallang_report.xlf +++ b/Resources/Private/Language/locallang_report.xlf @@ -3,10 +3,10 @@ - SendInBlue + Brevo - Information about the integration of SendInBlue + Information about the integration of Brevo Account diff --git a/Tests/Unit/ConfigurationTest.php b/Tests/Unit/ConfigurationTest.php index db022d0..0270583 100644 --- a/Tests/Unit/ConfigurationTest.php +++ b/Tests/Unit/ConfigurationTest.php @@ -1,8 +1,8 @@ 'some api keys', 'attributeFirstName' => 'VORNAME', 'attributeLastName' => 'NACHNAME', @@ -40,7 +40,7 @@ public function configurationIsProperlyReturned() */ public function missingApiKeyThrowsException() { - $GLOBALS['TYPO3_CONF_VARS']['EXTENSIONS']['sendinblue'] = [ + $GLOBALS['TYPO3_CONF_VARS']['EXTENSIONS']['brevo'] = [ 'some' => 'value', ]; $this->expectException(\RuntimeException::class); diff --git a/Tests/Unit/Finishers/SendinblueFinisherTest.php b/Tests/Unit/Finishers/BrevoFinisherTest.php similarity index 73% rename from Tests/Unit/Finishers/SendinblueFinisherTest.php rename to Tests/Unit/Finishers/BrevoFinisherTest.php index 3c2b03d..73eb557 100644 --- a/Tests/Unit/Finishers/SendinblueFinisherTest.php +++ b/Tests/Unit/Finishers/BrevoFinisherTest.php @@ -1,14 +1,14 @@ getAccessibleMock(SendinblueFinisher::class, ['parseOption'], [], '', false); + /** @var BrevoFinisher|MockObject|AccessibleObjectInterface $mockedFinisher */ + $mockedFinisher = $this->getAccessibleMock(BrevoFinisher::class, ['parseOption'], [], '', false); $mockedFinisher->expects(self::any())->method('parseOption')->willReturnArgument(0); - $GLOBALS['TYPO3_CONF_VARS']['EXTENSIONS']['sendinblue'] = [ + $GLOBALS['TYPO3_CONF_VARS']['EXTENSIONS']['brevo'] = [ 'apiKey' => 'some api keys', 'attributeFirstName' => 'FIRST', 'attributeLastName' => 'LAST', @@ -42,7 +42,7 @@ public function attributesAreGenerated() */ public function newsletterSubscriptionIsEnabledReturnsValue($given, bool $expected) { - $mockedFinisher = $this->getAccessibleMock(SendinblueFinisher::class, ['parseOption'], [], '', false); + $mockedFinisher = $this->getAccessibleMock(BrevoFinisher::class, ['parseOption'], [], '', false); $mockedFinisher->expects(self::any())->method('parseOption')->willReturn($given); self::assertEquals($expected, $mockedFinisher->_call('newsletterSubscriptionIsEnabled')); } diff --git a/composer.json b/composer.json index 30fc18a..f89cde4 100644 --- a/composer.json +++ b/composer.json @@ -1,7 +1,7 @@ { - "name": "studiomitte/sendinblue", + "name": "studiomitte/brevo", "type": "typo3-cms-extension", - "description": "Integration of newsletter SaaS solution sendinblue.com into TYPO3 CMS", + "description": "Integration of newsletter SaaS solution brevo.com (formally known as sendinblue) into TYPO3 CMS", "authors": [ { "name": "Georg Ringer", @@ -9,8 +9,8 @@ } ], "support": { - "issues": "https://github.com/studiomitte/sendinblue/issues", - "source": "https://github.com/studiomitte/sendinblue" + "issues": "https://github.com/studiomitte/brevo/issues", + "source": "https://github.com/studiomitte/brevo" }, "homepage": "https://studiomitte.com", "license": [ @@ -27,20 +27,17 @@ }, "autoload": { "psr-4": { - "StudioMitte\\Sendinblue\\": "Classes" + "StudioMitte\\Brevo\\": "Classes" } }, "autoload-dev": { "psr-4": { - "StudioMitte\\Sendinblue\\Tests\\": "Tests" + "StudioMitte\\Brevo\\Tests\\": "Tests" } - }, - "replace": { - "typo3-ter/sendinblue": "self.version" }, "extra": { "typo3/cms": { - "extension-key": "sendinblue" + "extension-key": "brevo" } } } diff --git a/ext_emconf.php b/ext_emconf.php index 3d7d4db..14e3112 100644 --- a/ext_emconf.php +++ b/ext_emconf.php @@ -1,15 +1,15 @@ 'Sendinblue', - 'description' => 'Integration of newsletter SaaS solution sendinblue.com into TYPO3 CMS', + 'title' => 'Brevo integration', + 'description' => 'Integration of newsletter SaaS solution sendinblue.com (formally known as sendinblue) into TYPO3 CMS', 'category' => 'plugin', 'author' => 'Georg Ringer', 'author_email' => 'gr@studiomitte.com', 'author_company' => 'StudioMitte', 'state' => 'stable', 'clearCacheOnLoad' => 0, - 'version' => '1.1.0', + 'version' => '2.0.0', 'constraints' => [ 'depends' => [ 'typo3' => '11.5.0-12.4.99', diff --git a/ext_localconf.php b/ext_localconf.php index 0270f17..a560b83 100644 --- a/ext_localconf.php +++ b/ext_localconf.php @@ -5,14 +5,14 @@ call_user_func( static function () { // @todo registration can be dropped, when dropping v11 support - $GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['reports']['sendinblue']['general'] = [ - 'title' => 'LLL:EXT:sendinblue/Resources/Private/Language/locallang_report.xlf:report.title', - 'description' => 'LLL:EXT:sendinblue/Resources/Private/Language/locallang_report.xlf:report.description', - 'icon' => 'EXT:sendinblue/Resources/Public/Icons/Extension.svg', - 'report' => \StudioMitte\Sendinblue\Report\IntegrationReport::class + $GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['reports']['brevo']['general'] = [ + 'title' => 'LLL:EXT:brevo/Resources/Private/Language/locallang_report.xlf:report.title', + 'description' => 'LLL:EXT:brevo/Resources/Private/Language/locallang_report.xlf:report.description', + 'icon' => 'EXT:brevo/Resources/Public/Icons/Extension.svg', + 'report' => \StudioMitte\Brevo\Report\IntegrationReport::class ]; - if (!isset($GLOBALS['TYPO3_CONF_VARS']['LOG']['StudioMitte']['Sendinblue']['writerConfiguration'])) { + if (!isset($GLOBALS['TYPO3_CONF_VARS']['LOG']['StudioMitte']['Brevo']['writerConfiguration'])) { $context = \TYPO3\CMS\Core\Core\Environment::getContext(); if ($context->isProduction()) { $logLevel = \TYPO3\CMS\Core\Log\LogLevel::ERROR; @@ -21,10 +21,10 @@ static function () { } else { $logLevel = \TYPO3\CMS\Core\Log\LogLevel::INFO; } - $GLOBALS['TYPO3_CONF_VARS']['LOG']['StudioMitte']['Sendinblue']['writerConfiguration'] = [ + $GLOBALS['TYPO3_CONF_VARS']['LOG']['StudioMitte']['Brevo']['writerConfiguration'] = [ $logLevel => [ 'TYPO3\\CMS\\Core\\Log\\Writer\\FileWriter' => [ - 'logFileInfix' => 'sendinblue' + 'logFileInfix' => 'brevo' ] ], ]; diff --git a/ext_typoscript_setup.typoscript b/ext_typoscript_setup.typoscript index 424c6f9..0efc4e4 100644 --- a/ext_typoscript_setup.typoscript +++ b/ext_typoscript_setup.typoscript @@ -1,7 +1,7 @@ module.tx_form { settings { yamlConfigurations { - 1483353712 = EXT:sendinblue/Configuration/Yaml/FormSetup.yaml + 1483353712 = EXT:brevo/Configuration/Yaml/FormSetup.yaml } } } @@ -9,7 +9,7 @@ module.tx_form { plugin.tx_form { settings { yamlConfigurations { - 1483353712 = EXT:sendinblue/Configuration/Yaml/FormSetup.yaml + 1483353712 = EXT:brevo/Configuration/Yaml/FormSetup.yaml } } }