FOSUserBundle:管理员必须激活用户

时间:2015-03-15 17:41:15

标签: php symfony fosuserbundle

我想将FOSUserbundle代码更改为具有以下过程:

  1. 用户注册
  2. 用户通过电子邮件激活帐户(管理员收到电子邮件)
  3. 管理员激活用户
  4. 我做了什么?

    • 使用FOSUserBundle安装Symfony2
    • 已启用电子邮件确认

    我知道有可能通过“isEnabled()”或“isLocked()”更改实体以返回“false”。但我还需要正确的错误消息,所以如果用户被锁定 - 应该有“您的帐户被锁定请联系管理员!”如果帐户未被管理员激活,则应显示消息“您的帐户需要由管理员审核并激活”。

    在哪里“挂钩” - 让这个工作?

1 个答案:

答案 0 :(得分:0)

使用活动订阅者。在服务定义中定义它并实现EventSubscriberInterface。我知道文档很薄,但如果你搜索FosUser事件订阅者,你会发现很多帮助。

如果您只想更改消息,请检查此消息 Customize Authentication - Login Symfony2 Messages