@@ -35,6 +35,7 @@ class EiCaptcha extends Module
3535
3636 /** @var array */
3737 protected $ themes = [];
38+
3839 /**
3940 * @var Debugger
4041 */
@@ -45,6 +46,11 @@ class EiCaptcha extends Module
4546 */
4647 protected $ installer ;
4748
49+ /**
50+ * @var string (2 or 3 digits Language ISO code) Captcha language (default: en)
51+ */
52+ protected $ captchaLang = 'en ' ;
53+
4854 public function __construct ()
4955 {
5056 $ this ->author = 'hhennes ' ;
@@ -70,6 +76,12 @@ public function __construct()
7076 $ this ->ps_versions_compliancy = ['min ' => '1.7.0.0 ' , 'max ' => _PS_VERSION_ ];
7177
7278 $ this ->debugger = new Debugger ($ this );
79+
80+ $ this ->captchaLang = $ this ->context ->language ->iso_code ;
81+ $ forceLang = Configuration::get ('CAPTCHA_FORCE_LANG ' );
82+ if (!empty ($ forceLang ) && Validate::isLanguageIsoCode ($ forceLang )) {
83+ $ this ->captchaLang = $ forceLang ;
84+ }
7385 }
7486
7587 /**
@@ -213,7 +225,7 @@ protected function renderHeaderV2()
213225 </script> ' ;
214226
215227 if (($ this ->context ->controller instanceof ContactController && Configuration::get ('CAPTCHA_ENABLE_CONTACT ' ) == 1 )) {
216- $ js .= '<script src="https://www.google.com/recaptcha/api.js?onload=onloadCallback&render=explicit&hl= ' . Configuration:: get ( ' CAPTCHA_FORCE_LANG ' ) . '" async defer></script> ' ;
228+ $ js .= '<script src="https://www.google.com/recaptcha/api.js?onload=onloadCallback&render=explicit&hl= ' . $ this -> captchaLang . '" async defer></script> ' ;
217229 }
218230
219231 return $ js ;
@@ -260,7 +272,7 @@ public function hookDisplayCustomerAccountForm($params)
260272 $ this ->context ->smarty ->assign ([
261273 'captchaVersion ' => Configuration::get ('CAPTCHA_VERSION ' ),
262274 'publicKey ' => Configuration::get ('CAPTCHA_PUBLIC_KEY ' ),
263- 'captchaforcelang ' => Configuration:: get ( ' CAPTCHA_FORCE_LANG ' ) ,
275+ 'captchalang ' => $ this -> captchaLang ,
264276 'captchatheme ' => $ this ->themes [Configuration::get ('CAPTCHA_THEME ' )],
265277 ]);
266278
@@ -357,7 +369,7 @@ public function hookDisplayNewsletterRegistration($params)
357369 $ this ->context ->smarty ->assign ([
358370 'captchaVersion ' => Configuration::get ('CAPTCHA_VERSION ' ),
359371 'publicKey ' => Configuration::get ('CAPTCHA_PUBLIC_KEY ' ),
360- 'captchaforcelang ' => Configuration:: get ( ' CAPTCHA_FORCE_LANG ' ) ,
372+ 'captchalang ' => $ this -> captchaLang ,
361373 'captchatheme ' => $ this ->themes [Configuration::get ('CAPTCHA_THEME ' )],
362374 ]);
363375
@@ -457,7 +469,7 @@ public function hookDisplayEicaptchaVerification($params)
457469 'displayCaptcha ' => $ this ->shouldDisplayToCustomer (),
458470 'captchaVersion ' => Configuration::get ('CAPTCHA_VERSION ' ),
459471 'publicKey ' => Configuration::get ('CAPTCHA_PUBLIC_KEY ' ),
460- 'captchaforcelang ' => Configuration:: get ( ' CAPTCHA_FORCE_LANG ' ) ,
472+ 'captchalang ' => $ this -> captchaLang ,
461473 'captchatheme ' => $ this ->themes [Configuration::get ('CAPTCHA_THEME ' )],
462474 ]);
463475
0 commit comments