typo3 fe-manager如何获取不同的管理员电子邮件

时间:2014-08-21 13:17:27

标签: typo3 user-registration

我对fe-manager有疑问。在此扩展程序中,可以向管理员发送确认电子邮件。但它始终是相同的电子邮件。我想向各种管理员发送电子邮件。例如:如果新用户来自德国,则接收地址应为some@thing.de。如果新用户来自瑞士,则地址应为some@thing.ch。 任何想法如何处理这个?

任何提示/解决方案都非常受欢迎。

当前状态:

扩展已创建。我将finalConreate-Method从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 个答案:

答案 0 :(得分:0)

此行为没有TypoScriptConfig,但您可以轻松覆盖ControllerMethod并根据您的需要进行扩展。

使用extension_builder创建自己的扩展,例如Vender“Vendor”(公司/客户名)和密钥“femanager_extended”。

femanager_extended /类别/控制器/ 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
}

我希望这会对你有帮助,我也不会忘记任何设置。