src/Biz/Mail/MailServiceProvider.php

(开头部分) 1KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

<?php

namespace Biz\Mail;

use AppBundle\Extension\Extension;
use Biz\Mail\Template\EffectEmailResetPasswordTemplate;
use Biz\Mail\Template\EmailRegistrationTemplate;
use Biz\Mail\Template\EmailResetEmailTemplate;
use Biz\Mail\Template\EmailResetPasswordTemplate;
use Biz\Mail\Template\EmailSystemSelfTestTemplate;
use Biz\Mail\Template\EmailVerifyEmailTemplate;
use Biz\Mail\Template\EmptyTemplate;
use Pimple\Container;
use Pimple\ServiceProviderInterface;

class MailServiceProvider extends Extension implements ServiceProviderInterface
{
    /**
     * {@inheritdoc}
     */
    public function register(Container $biz)
    {
        $this->registerEmailTemplate($biz);

        $biz['normal_mail'] = function ($biz) {
            return function ($mailOptions) {
                return new NormalMail($mailOptions);
            };
        };

        $biz['cloud_mail'] = function () {
            return function ($mailOptions) {
                return new CloudMail($mailOptions);
            };
        };

        $biz['mail_factory'] = $biz->factory(function ($biz) {
            $cloudConfig = $biz->service('System:SettingService')->get('cloud_email_crm', array());

            return function ($mailOptions) use ($cloudConfig, $biz) {
                /*
                 * @var Mail $mail
                 */
                if (isset($cloudConfig['status']) && $cloudConfig['status'] == 'enable') {
                    $mail = $biz['cloud_mail']($mailOptions);
                } else {
                    $mail = $biz['normal_mail']($mailOptions);
                }
                $mail->setBiz($biz);

                return $mail;
            };
        });
    }

    private function registerEmailTemplate(Container $biz)
    {
        $biz['email_template_paths'] = $biz->factory(function () {
            return array();
        });

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。