<?php

namespace mobile\modules\live\controllers;


use common\api\EnrollServer;
use common\models\china\Enroll;
use mobile\base\Help;
use Yii;
use mobile\modules\live\base\BaseController;
use common\enums\EmailEnum;


class EnrollController extends BaseController
{
    public $enableCsrfValidation = false;

    /*
     * name             姓名
     * source_model     来源模块
     * mobile           手机号
     * intention_house  意向楼盘
     * hid              楼盘ID 不存在:0
     * equipment        设备 2=>pc   1=>移动
     * city             区域
     *
     * */
    public function actionSignup()
    {
        header("Access-Control-Allow-Origin:*");
        $en = new EnrollServer();

        $testNumber = \common\models\TestNumber::find()->andWhere(['number' => Yii::$app->request->post('mobile'), 'is_show' => 1])->asArray()->one();
        if (empty($testNumber)) {
            //如果不为测试号码,则需要限制报名次数
            $cacheResult = $en->Restrict();
            if ($cacheResult === false) return Help::JsonCode(Help::ERROR, '您今天的报名次数已超过限制');
        }

        $form = new \common\forms\VisitorRegistrationFormcn();
        $form->load(['type' => 'cn'], '');
        $form->load(Yii::$app->request->post(), '');
        if (!$form->validate()) return Help::JsonCode(Help::ERROR, '提交失败', $form->errors);

        $model = new Enroll();
        $model->scenario = 'madd';
        $model->load(array_merge($form->attributes, Yii::$app->request->post()), '');

        if ($model->save()) {

            if (!empty($testNumber)) {
                //如果是测试号码,则不走以下发送邮箱的步骤
                return Help::JsonCode(Help::SUCCESS, '测试号码提交成功');
            }

            $Email = $form->attributes;
            $Email['id'] = $model->attributes['id'];
            (new \common\service\common\MailerService())->send($form->send_email, $Email, EmailEnum::SITEFORM);
            return \frontend\base\Help::JsonCode(Help::SUCCESS, '提交成功');
        }

        return Help::JsonCode(Help::ERROR, '提交失败');

    }


}