Форма запроса восстановления пароля теперь требует разгадки капчи

This commit is contained in:
ErickSkrauch 2017-04-18 19:08:11 +03:00
parent 0e2aff91d0
commit 00dd8e14b2
2 changed files with 16 additions and 0 deletions

View File

@ -1,6 +1,7 @@
<?php
namespace api\models\authentication;
use api\components\ReCaptcha\Validator as ReCaptchaValidator;
use api\models\base\ApiForm;
use api\validators\TotpValidator;
use common\helpers\Error as E;
@ -16,11 +17,15 @@ use yii\base\InvalidConfigException;
class ForgotPasswordForm extends ApiForm {
use AccountFinder;
public $captcha;
public $login;
public $token;
public function rules() {
return [
['captcha', ReCaptchaValidator::class],
['login', 'required', 'message' => E::LOGIN_REQUIRED],
['login', 'validateLogin'],
['token', 'required', 'when' => function(self $model) {

View File

@ -1,6 +1,7 @@
<?php
namespace codeception\api\unit\models\authentication;
use api\components\ReCaptcha\Validator as ReCaptchaValidator;
use api\models\authentication\ForgotPasswordForm;
use Codeception\Specify;
use common\models\EmailActivation;
@ -8,10 +9,20 @@ use OTPHP\TOTP;
use tests\codeception\api\unit\TestCase;
use tests\codeception\common\fixtures\AccountFixture;
use tests\codeception\common\fixtures\EmailActivationFixture;
use Yii;
class ForgotPasswordFormTest extends TestCase {
use Specify;
public function setUp() {
parent::setUp();
Yii::$container->set(ReCaptchaValidator::class, new class extends ReCaptchaValidator {
public function validateValue($value) {
return null;
}
});
}
public function _fixtures() {
return [
'accounts' => AccountFixture::class,