99
1010use Magento \Framework \Validation \ValidationResult ;
1111use Magento \Framework \Validation \ValidationResultFactory ;
12- use Magento \ReCaptchaValidationApi \Api \ValidatorInterface ;
1312use Magento \ReCaptchaValidationApi \Api \Data \ValidationConfigInterface ;
14- use Magento \ReCaptchaValidationApi \Model \ErrorMessages ;
15- use ReCaptcha \ReCaptcha ;
13+ use Magento \ReCaptchaValidationApi \Api \ValidatorInterface ;
14+ use Magento \ReCaptchaValidationApi \Model \ErrorMessagesProvider ;
15+ use ReCaptcha \ReCaptchaFactory ;
1616
1717/**
1818 * @inheritdoc
@@ -25,20 +25,28 @@ class Validator implements ValidatorInterface
2525 private $ validationResultFactory ;
2626
2727 /**
28- * @var ErrorMessages
28+ * @var ErrorMessagesProvider
2929 */
30- private $ errorMessages ;
30+ private $ errorMessagesProvider ;
31+
32+ /**
33+ * @var ReCaptchaFactory
34+ */
35+ private $ reCaptchaFactory ;
3136
3237 /**
3338 * @param ValidationResultFactory $validationResultFactory
34- * @param ErrorMessages $errorMessages
39+ * @param ErrorMessagesProvider $errorMessagesProvider
40+ * @param ReCaptchaFactory $reCaptchaFactory
3541 */
3642 public function __construct (
3743 ValidationResultFactory $ validationResultFactory ,
38- ErrorMessages $ errorMessages
44+ ErrorMessagesProvider $ errorMessagesProvider ,
45+ ReCaptchaFactory $ reCaptchaFactory
3946 ) {
4047 $ this ->validationResultFactory = $ validationResultFactory ;
41- $ this ->errorMessages = $ errorMessages ;
48+ $ this ->errorMessagesProvider = $ errorMessagesProvider ;
49+ $ this ->reCaptchaFactory = $ reCaptchaFactory ;
4250 }
4351
4452 /**
@@ -49,11 +57,7 @@ public function isValid(
4957 ValidationConfigInterface $ validationConfig
5058 ): ValidationResult {
5159 $ secret = $ validationConfig ->getPrivateKey ();
52-
53- // @codingStandardsIgnoreStart
54- $ reCaptcha = new ReCaptcha ($ secret );
55- // @codingStandardsIgnoreEnd
56-
60+ $ reCaptcha = $ this ->reCaptchaFactory ->create (['secret ' => $ secret ]);
5761 $ extensionAttributes = $ validationConfig ->getExtensionAttributes ();
5862 if ($ extensionAttributes && (null !== $ extensionAttributes ->getScoreThreshold ())) {
5963 $ reCaptcha ->setScoreThreshold ($ extensionAttributes ->getScoreThreshold ());
@@ -63,7 +67,7 @@ public function isValid(
6367 $ validationErrors = [];
6468 if (!$ result ->isSuccess ()) {
6569 foreach ($ result ->getErrorCodes () as $ errorCode ) {
66- $ validationErrors [] = $ this ->errorMessages ->getErrorMessage ($ errorCode );
70+ $ validationErrors [] = $ this ->errorMessagesProvider ->getErrorMessage ($ errorCode );
6771 }
6872 }
6973
0 commit comments