typo3 fe-manager как получить разные админские письма
У меня вопрос по поводу fe-менеджера. В этом расширении можно отправить подтверждение по электронной почте администратору. Но это всегда один и тот же адрес электронной почты. Мне нравится отправлять электронные письма различным администраторам. например: если новый пользователь из Германии, адрес получения должен быть some@thing.de. если новый пользователь из Швейцарии, адрес должен быть some@thing.ch. есть идеи как подойти?
любые намеки / решения приветствуются.
Текущее состояние:
расширение создано. я скопировал метод finalCreate из AbstractController в мой NewController. я изменил makeEmailArray() из:
Div::makeEmailArray(
$this->settings['new']['notifyAdmin'],
$this->settings['new']['email']['createAdminNotify']['receiver']['name']['value']
),
чтобы:
Div::makeEmailArray('xxx@xxx.ch',
$this->settings['new']['email']['createAdminNotify']['receiver']['name']['value']
),
файл ts setup.txt находится в файле femanager_extended/Configuration/TypoScript/setup.txt и содержит следующий код:
config.tx_extbase.objects {
In2\Femanager\Controller\NewController.className = Lbaumann\FemanagerExtended\Controller\NewController
}
это правильный подход?
1 ответ
Для этого поведения нет TypoScriptConfig, но вы можете легко переопределить метод ControllerMethod и расширить его в соответствии со своими потребностями.
Создайте свое собственное расширение, например Vender "Vendor" (название компании / клиента) и ключ "femanager_extended" с расширением_builder.
femanager_extended / Классы / Controller / NewController.php
<?php
namespace Vendor\FemanagerExtended\Controller;
class NewController extends \In2\Femanager\Controller\NewController
{
public function finalCreate($user, $action, $redirectByActionName, $login = true)
{
// own business logic
// replace the first Div::makeEmailArray...
// with your selected Admin-email-address
// see parent::finalCreate($user, $action, $redirectByActionName, $login);
}
}
femanager_extened / ext_typoscript_setup.txt
config.tx_extbase.objects {
In2\Femanager\Controller\NewController.className = Vendor\FemanagerExtended\Controller\NewController
}
Я надеюсь, что это поможет вам, и я не забыл никаких настроек.