mirror of
https://github.com/elyby/accounts.git
synced 2024-11-27 01:02:06 +05:30
Форма запроса восстановления пароля теперь требует разгадки капчи
This commit is contained in:
parent
0e2aff91d0
commit
00dd8e14b2
@ -1,6 +1,7 @@
|
|||||||
<?php
|
<?php
|
||||||
namespace api\models\authentication;
|
namespace api\models\authentication;
|
||||||
|
|
||||||
|
use api\components\ReCaptcha\Validator as ReCaptchaValidator;
|
||||||
use api\models\base\ApiForm;
|
use api\models\base\ApiForm;
|
||||||
use api\validators\TotpValidator;
|
use api\validators\TotpValidator;
|
||||||
use common\helpers\Error as E;
|
use common\helpers\Error as E;
|
||||||
@ -16,11 +17,15 @@ use yii\base\InvalidConfigException;
|
|||||||
class ForgotPasswordForm extends ApiForm {
|
class ForgotPasswordForm extends ApiForm {
|
||||||
use AccountFinder;
|
use AccountFinder;
|
||||||
|
|
||||||
|
public $captcha;
|
||||||
|
|
||||||
public $login;
|
public $login;
|
||||||
|
|
||||||
public $token;
|
public $token;
|
||||||
|
|
||||||
public function rules() {
|
public function rules() {
|
||||||
return [
|
return [
|
||||||
|
['captcha', ReCaptchaValidator::class],
|
||||||
['login', 'required', 'message' => E::LOGIN_REQUIRED],
|
['login', 'required', 'message' => E::LOGIN_REQUIRED],
|
||||||
['login', 'validateLogin'],
|
['login', 'validateLogin'],
|
||||||
['token', 'required', 'when' => function(self $model) {
|
['token', 'required', 'when' => function(self $model) {
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
<?php
|
<?php
|
||||||
namespace codeception\api\unit\models\authentication;
|
namespace codeception\api\unit\models\authentication;
|
||||||
|
|
||||||
|
use api\components\ReCaptcha\Validator as ReCaptchaValidator;
|
||||||
use api\models\authentication\ForgotPasswordForm;
|
use api\models\authentication\ForgotPasswordForm;
|
||||||
use Codeception\Specify;
|
use Codeception\Specify;
|
||||||
use common\models\EmailActivation;
|
use common\models\EmailActivation;
|
||||||
@ -8,10 +9,20 @@ use OTPHP\TOTP;
|
|||||||
use tests\codeception\api\unit\TestCase;
|
use tests\codeception\api\unit\TestCase;
|
||||||
use tests\codeception\common\fixtures\AccountFixture;
|
use tests\codeception\common\fixtures\AccountFixture;
|
||||||
use tests\codeception\common\fixtures\EmailActivationFixture;
|
use tests\codeception\common\fixtures\EmailActivationFixture;
|
||||||
|
use Yii;
|
||||||
|
|
||||||
class ForgotPasswordFormTest extends TestCase {
|
class ForgotPasswordFormTest extends TestCase {
|
||||||
use Specify;
|
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() {
|
public function _fixtures() {
|
||||||
return [
|
return [
|
||||||
'accounts' => AccountFixture::class,
|
'accounts' => AccountFixture::class,
|
||||||
|
Loading…
Reference in New Issue
Block a user