PR #458 - fix and improvement required by @mp1509

This commit is contained in:
Antonio Cordeddu
2022-08-09 12:21:34 +02:00
parent 1ea46e9952
commit 97a2de2f48
35 changed files with 287 additions and 62 deletions

View File

@ -80,6 +80,9 @@
}, },
"fxp-asset": { "fxp-asset": {
"enabled": false "enabled": false
},
"allow-plugins": {
"yiisoft/yii2-composer": true
} }
}, },
"conflict": { "conflict": {

View File

@ -15,31 +15,35 @@ a bigger period so to avoid out of sync issues.
#### twoFactorAuthenticationValidators (type: `array`) #### twoFactorAuthenticationValidators (type: `array`)
An array of arrays of channels availables for two factor authentication. The keys in the arrays have the following meaning: An array of arrays of channels availables for two factor authentication. The keys in the arrays have the following meaning:
class: it will be the validator class with namespace class: it will be the validator class with namespace;
name: the name that will be displayed in the section to the user name: the name that will be displayed in the section to the user;
configurationUrl: the url to the action that will dispaly the configuration form for the validator configurationUrl: the url to the action that will dispaly the configuration form for the validator;
codeDurationTime: time duration of the code in session in seconds (not applicable for Google authenticator) codeDurationTime: time duration of the code in session in seconds (not applicable for Google authenticator);
smsSender: the reference to SmsSenderInterface for managing SMS send. smsSender: the reference to SmsSenderInterface for managing SMS send;
enabled: true if you want to enable the channel, false otherwise.
The following is the deafult configuration: The following is the default configuration:
'google-authenticator'=>[ 'google-authenticator'=>[
'class'=>\Da\User\Validator\TwoFactorCodeValidator::class, 'class'=>\Da\User\Validator\TwoFactorCodeValidator::class,
'description'=>Yii::t('usuario', 'Google Authenticator'), 'description'=>Yii::t('usuario', 'Google Authenticator'),
'configurationUrl'=>'user/settings/two-factor' 'configurationUrl'=>'user/settings/two-factor',
'enabled'=>true
], ],
'email'=>[ 'email'=>[
'class'=>\Da\User\Validator\TwoFactorEmailValidator::class, 'class'=>\Da\User\Validator\TwoFactorEmailValidator::class,
'description'=>Yii::t('usuario', 'Email'), 'description'=>Yii::t('usuario', 'Email'),
'configurationUrl'=>'user/settings/two-factor-email', 'configurationUrl'=>'user/settings/two-factor-email',
'codeDurationTime'=>300 'codeDurationTime'=>300,
'enabled'=>true
], ],
'sms'=>[ 'sms'=>[
'class'=>\Da\User\Validator\TwoFactorTextMessageValidator::class, 'class'=>\Da\User\Validator\TwoFactorTextMessageValidator::class,
'description'=>Yii::t('usuario', 'Text message'), 'description'=>Yii::t('usuario', 'Text message'),
'configurationUrl'=>'user/settings/two-factor-sms', 'configurationUrl'=>'user/settings/two-factor-sms',
'codeDurationTime'=>300, 'codeDurationTime'=>300,
'smsSender'=>'smsSender' 'smsSender'=>'smsSender',
'enabled'=>true
] ]
For instructions about implementation of SMS sending see at the following link: https://www.yiiframework.com/extension/yetopen/yii2-sms-aruba For instructions about implementation of SMS sending see at the following link: https://www.yiiframework.com/extension/yetopen/yii2-sms-aruba

View File

@ -27,6 +27,7 @@ use yii\base\InvalidConfigException;
use yii\console\Application as ConsoleApplication; use yii\console\Application as ConsoleApplication;
use yii\i18n\PhpMessageSource; use yii\i18n\PhpMessageSource;
use yii\web\Application as WebApplication; use yii\web\Application as WebApplication;
use yii\helpers\ArrayHelper;
/** /**
* Bootstrap class of the yii2-usuario extension. Configures container services, initializes translations, * Bootstrap class of the yii2-usuario extension. Configures container services, initializes translations,
@ -163,19 +164,21 @@ class Bootstrap implements BootstrapInterface
} }
// Initialize array of two factor authentication validators available // Initialize array of two factor authentication validators available
if(is_null(Yii::$app->getModule('user')->twoFactorAuthenticationValidators)){ $defaultTwoFactorAuthenticationValidators =
Yii::$app->getModule('user')->twoFactorAuthenticationValidators=[ [
'google-authenticator'=>[ 'google-authenticator'=>[
'class'=>\Da\User\Validator\TwoFactorCodeValidator::class, 'class'=>\Da\User\Validator\TwoFactorCodeValidator::class,
'description'=>Yii::t('usuario', 'Google Authenticator'), 'description'=>Yii::t('usuario', 'Google Authenticator'),
'configurationUrl'=>'user/settings/two-factor' 'configurationUrl'=>'user/settings/two-factor',
'enabled'=>true
], ],
'email'=>[ 'email'=>[
'class'=>\Da\User\Validator\TwoFactorEmailValidator::class, 'class'=>\Da\User\Validator\TwoFactorEmailValidator::class,
'description'=>Yii::t('usuario', 'Email'), 'description'=>Yii::t('usuario', 'Email'),
'configurationUrl'=>'user/settings/two-factor-email', 'configurationUrl'=>'user/settings/two-factor-email',
// Time duration of the code in seconds // Time duration of the code in seconds
'codeDurationTime'=>300 'codeDurationTime'=>300,
'enabled'=>true
], ],
'sms'=>[ 'sms'=>[
'class'=>\Da\User\Validator\TwoFactorTextMessageValidator::class, 'class'=>\Da\User\Validator\TwoFactorTextMessageValidator::class,
@ -184,12 +187,13 @@ class Bootstrap implements BootstrapInterface
// component for sending sms // component for sending sms
'smsSender'=>'smsSender', 'smsSender'=>'smsSender',
// Time duration of the code in seconds // Time duration of the code in seconds
'codeDurationTime'=>300 'codeDurationTime'=>300,
'enabled'=>true
] ]
]; ];
} $app->getModule('user')->twoFactorAuthenticationValidators =
ArrayHelper::merge($app->getModule('user')->twoFactorAuthenticationValidators, $defaultTwoFactorAuthenticationValidators);

View File

@ -449,7 +449,7 @@ class SettingsController extends Controller
$module = Yii::$app->getModule('user'); $module = Yii::$app->getModule('user');
$validators = $module->twoFactorAuthenticationValidators; $validators = $module->twoFactorAuthenticationValidators;
$choice = Yii::$app->request->get('choice'); $choice = Yii::$app->request->get('choice');
$codeDurationTime = ArrayHelper::getValue($validators,$choice.'.codeDurationTime', 0); $codeDurationTime = ArrayHelper::getValue($validators,$choice.'.codeDurationTime', 300);
$class = ArrayHelper::getValue($validators,$choice.'.class'); $class = ArrayHelper::getValue($validators,$choice.'.class');
$object = $this $object = $this

View File

@ -120,7 +120,7 @@ class LoginForm extends Model
$validators = $module->twoFactorAuthenticationValidators; $validators = $module->twoFactorAuthenticationValidators;
$type = $this->user->auth_tf_type; $type = $this->user->auth_tf_type;
$class = ArrayHelper::getValue($validators,$type.'.class'); $class = ArrayHelper::getValue($validators,$type.'.class');
$codeDurationTime = ArrayHelper::getValue($validators,$type.'.codeDurationTime', 0); $codeDurationTime = ArrayHelper::getValue($validators,$type.'.codeDurationTime', 300);
$validator = $this $validator = $this
->make($class, [$this->user, $this->twoFactorAuthenticationCode, $this->module->twoFactorAuthenticationCycles]); ->make($class, [$this->user, $this->twoFactorAuthenticationCode, $this->module->twoFactorAuthenticationCycles]);
$success = $validator->validate(); $success = $validator->validate();

View File

@ -50,12 +50,14 @@ class TwoFactorEmailCodeGeneratorService implements ServiceInterface
$code = str_pad($code, 6, 0, STR_PAD_LEFT); $code = str_pad($code, 6, 0, STR_PAD_LEFT);
// send email // send email
$mailService = MailFactory::makeTwoFactorCodeMailerService($user, $code); $mailService = MailFactory::makeTwoFactorCodeMailerService($user, $code);
$mailService->run(); // check the sending emailYii::t(
if(!$mailService->run()){
// put key in session Yii::$app->session->addFlash('error', Yii::t('usuario','The email sending failed, please check your configuration.'));
Yii::$app->session->set("email_code_time", date('Y-m-d H:i:s')); }else{
Yii::$app->session->set("email_code", $code); // put key in session
Yii::$app->session->set("email_code_time", date('Y-m-d H:i:s'));
Yii::$app->session->set("email_code", $code);
}
return $code; return $code;
} }
} }

View File

@ -67,13 +67,19 @@ class TwoFactorSmsCodeGeneratorService implements ServiceInterface
if( !(null===$mobilePhone) && $mobilePhone!='' ){ if( !(null===$mobilePhone) && $mobilePhone!='' ){
// send sms // send sms
$this->smsSender->send($mobilePhone, $code); $success = $this->smsSender->send($mobilePhone, $code);
// put key in session if($success){
Yii::$app->session->set("sms_code_time", date('Y-m-d H:i:s')); // put key in session
Yii::$app->session->set("sms_code", $code); Yii::$app->session->set("sms_code_time", date('Y-m-d H:i:s'));
Yii::$app->session->set("sms_code", $code);
}else{
Yii::$app->session->addFlash('error', Yii::t('usuario','The sms sending failed, please check your configuration.'));
return false;
}
} else{
Yii::$app->session->addFlash('error', Yii::t('usuario','Mobile phone not found, please check your profile'));
return false;
} }
return true;
return $code;
} }
} }

View File

@ -50,13 +50,15 @@ class TwoFactorEmailValidator extends TwoFactorCodeValidator
*/ */
public function validate() public function validate()
{ {
if(is_null($this->code) || $this->code == '' )
return false;
$emailCodeTime = new \DateTime(Yii::$app->session->get("email_code_time")); $emailCodeTime = new \DateTime(Yii::$app->session->get("email_code_time"));
$currentTime = new \DateTime('now'); $currentTime = new \DateTime('now');
$interval = $currentTime->getTimestamp()-$emailCodeTime->getTimestamp(); $interval = $currentTime->getTimestamp()-$emailCodeTime->getTimestamp();
$module = Yii::$app->getModule('user'); $module = Yii::$app->getModule('user');
$validators = $module->twoFactorAuthenticationValidators; $validators = $module->twoFactorAuthenticationValidators;
$codeDurationTime = ArrayHelper::getValue($validators,$this->type.'.codeDurationTime', 0); $codeDurationTime = ArrayHelper::getValue($validators,$this->type.'.codeDurationTime', 300);
if($interval > $codeDurationTime ) if($interval > $codeDurationTime )
return false; return false;

View File

@ -50,12 +50,14 @@ class TwoFactorTextMessageValidator extends TwoFactorCodeValidator
*/ */
public function validate() public function validate()
{ {
if(is_null($this->code) || $this->code == '' )
return false;
$smsCodeTime = new \DateTime(Yii::$app->session->get("sms_code_time")); $smsCodeTime = new \DateTime(Yii::$app->session->get("sms_code_time"));
$currentTime = new \DateTime('now'); $currentTime = new \DateTime('now');
$interval = $currentTime->getTimestamp()-$smsCodeTime->getTimestamp(); $interval = $currentTime->getTimestamp()-$smsCodeTime->getTimestamp();
$module = Yii::$app->getModule('user'); $module = Yii::$app->getModule('user');
$validators = $module->twoFactorAuthenticationValidators; $validators = $module->twoFactorAuthenticationValidators;
$codeDurationTime = ArrayHelper::getValue($validators,$this->type.'.codeDurationTime', 0); $codeDurationTime = ArrayHelper::getValue($validators,$this->type.'.codeDurationTime', 300);
if($interval > $codeDurationTime ) if($interval > $codeDurationTime )
return false; return false;

View File

@ -142,6 +142,7 @@ return [
'Login' => '', 'Login' => '',
'Logout' => '', 'Logout' => '',
'Manage users' => '', 'Manage users' => '',
'Mobile phone not found, please check your profile' => '',
'Mobile phone number' => '', 'Mobile phone number' => '',
'Mobile phone number successfully enabled.' => '', 'Mobile phone number successfully enabled.' => '',
'Name' => '', 'Name' => '',
@ -207,6 +208,10 @@ return [
'Thank you, registration is now complete.' => '', 'Thank you, registration is now complete.' => '',
'The "recaptcha" component must be configured.' => '', 'The "recaptcha" component must be configured.' => '',
'The confirmation link is invalid or expired. Please try requesting a new one.' => '', 'The confirmation link is invalid or expired. Please try requesting a new one.' => '',
'The email address set is: "{0}".' => '',
'The email sending failed, please check your configuration.' => '',
'The phone number set is: "{0}".' => '',
'The sms sending failed, please check your configuration.' => '',
'The verification code is incorrect.' => '', 'The verification code is incorrect.' => '',
'There is neither role nor permission with name "{0}"' => '', 'There is neither role nor permission with name "{0}"' => '',
'There was an error in saving user' => '', 'There was an error in saving user' => '',
@ -288,11 +293,13 @@ return [
'Your password has expired, you must change it now' => '', 'Your password has expired, you must change it now' => '',
'Your personal information has been removed' => '', 'Your personal information has been removed' => '',
'Your profile has been updated' => '', 'Your profile has been updated' => '',
'Your two factor authentication method is based on "{0}".' => '',
'privacy policy' => '', 'privacy policy' => '',
'{0, date, MMM dd, YYYY HH:mm}' => '', '{0, date, MMM dd, YYYY HH:mm}' => '',
'{0, date, MMMM dd, YYYY HH:mm}' => '', '{0, date, MMMM dd, YYYY HH:mm}' => '',
'{0} cannot be blank.' => '', '{0} cannot be blank.' => '',
'Insert the mobile phone number on which to receive text message.' => '@@@@', 'Insert the mobile phone number on which to receive text message.' => '@@@@',
'Insert the mobile phone number where you want to receive text message in international format.' => '@@@@',
'Insert the mobile phone number where you want to receive text message.' => '@@@@', 'Insert the mobile phone number where you want to receive text message.' => '@@@@',
'Mobile phone number not registered.' => '@@@@', 'Mobile phone number not registered.' => '@@@@',
]; ];

View File

@ -142,6 +142,7 @@ return [
'Login' => '', 'Login' => '',
'Logout' => '', 'Logout' => '',
'Manage users' => '', 'Manage users' => '',
'Mobile phone not found, please check your profile' => '',
'Mobile phone number' => '', 'Mobile phone number' => '',
'Mobile phone number successfully enabled.' => '', 'Mobile phone number successfully enabled.' => '',
'Name' => '', 'Name' => '',
@ -207,6 +208,10 @@ return [
'Thank you, registration is now complete.' => '', 'Thank you, registration is now complete.' => '',
'The "recaptcha" component must be configured.' => '', 'The "recaptcha" component must be configured.' => '',
'The confirmation link is invalid or expired. Please try requesting a new one.' => '', 'The confirmation link is invalid or expired. Please try requesting a new one.' => '',
'The email address set is: "{0}".' => '',
'The email sending failed, please check your configuration.' => '',
'The phone number set is: "{0}".' => '',
'The sms sending failed, please check your configuration.' => '',
'The verification code is incorrect.' => '', 'The verification code is incorrect.' => '',
'There is neither role nor permission with name "{0}"' => '', 'There is neither role nor permission with name "{0}"' => '',
'There was an error in saving user' => '', 'There was an error in saving user' => '',
@ -288,11 +293,13 @@ return [
'Your password has expired, you must change it now' => '', 'Your password has expired, you must change it now' => '',
'Your personal information has been removed' => '', 'Your personal information has been removed' => '',
'Your profile has been updated' => '', 'Your profile has been updated' => '',
'Your two factor authentication method is based on "{0}".' => '',
'privacy policy' => '', 'privacy policy' => '',
'{0, date, MMM dd, YYYY HH:mm}' => '', '{0, date, MMM dd, YYYY HH:mm}' => '',
'{0, date, MMMM dd, YYYY HH:mm}' => '', '{0, date, MMMM dd, YYYY HH:mm}' => '',
'{0} cannot be blank.' => '', '{0} cannot be blank.' => '',
'Insert the mobile phone number on which to receive text message.' => '@@@@', 'Insert the mobile phone number on which to receive text message.' => '@@@@',
'Insert the mobile phone number where you want to receive text message in international format.' => '@@@@',
'Insert the mobile phone number where you want to receive text message.' => '@@@@', 'Insert the mobile phone number where you want to receive text message.' => '@@@@',
'Mobile phone number not registered.' => '@@@@', 'Mobile phone number not registered.' => '@@@@',
]; ];

View File

@ -281,20 +281,27 @@ return [
'Insert the code you received by SMS.' => '', 'Insert the code you received by SMS.' => '',
'Insert the code you received by email.' => '', 'Insert the code you received by email.' => '',
'Insert the mobile phone number where you want to receive text message in international format' => '', 'Insert the mobile phone number where you want to receive text message in international format' => '',
'Mobile phone not found, please check your profile' => '',
'Mobile phone number' => '', 'Mobile phone number' => '',
'Mobile phone number successfully enabled.' => '', 'Mobile phone number successfully enabled.' => '',
'Please, enter the right code. The code is valid for {0} seconds. If you want to get a new code, please click on \'Cancel\' and repeat the login request.' => '', 'Please, enter the right code. The code is valid for {0} seconds. If you want to get a new code, please click on \'Cancel\' and repeat the login request.' => '',
'Please, enter the right code. The code is valid for {0} seconds. If you want to get a new code, please close this window and repeat the enabling request.' => '', 'Please, enter the right code. The code is valid for {0} seconds. If you want to get a new code, please close this window and repeat the enabling request.' => '',
'Submit' => '', 'Submit' => '',
'Text message' => '', 'Text message' => '',
'The email address set is: "{0}".' => '',
'The email sending failed, please check your configuration.' => '',
'The phone number set is: "{0}".' => '',
'The sms sending failed, please check your configuration.' => '',
'This is the code to insert to enable two factor authentication' => '', 'This is the code to insert to enable two factor authentication' => '',
'Two factor authentication code by SMS' => '', 'Two factor authentication code by SMS' => '',
'Two factor authentication code by email' => '', 'Two factor authentication code by email' => '',
'Unfortunately, you can not work with this site without giving us consent to process your data.' => '', 'Unfortunately, you can not work with this site without giving us consent to process your data.' => '',
'Your consent is required to work with this site' => '', 'Your consent is required to work with this site' => '',
'Your two factor authentication method is based on "{0}".' => '',
'A message has been sent to your email address. ' => '@@Eine Nachricht wurde an Deine E-Mail Adresse gesendet@@', 'A message has been sent to your email address. ' => '@@Eine Nachricht wurde an Deine E-Mail Adresse gesendet@@',
'Every user having your role has two factor authentication mandatory, you must enable it' => '@@@@', 'Every user having your role has two factor authentication mandatory, you must enable it' => '@@@@',
'Insert the mobile phone number on which to receive text message.' => '@@@@', 'Insert the mobile phone number on which to receive text message.' => '@@@@',
'Insert the mobile phone number where you want to receive text message in international format.' => '@@@@',
'Insert the mobile phone number where you want to receive text message.' => '@@@@', 'Insert the mobile phone number where you want to receive text message.' => '@@@@',
'Mobile phone number not registered.' => '@@@@', 'Mobile phone number not registered.' => '@@@@',
]; ];

View File

@ -284,16 +284,23 @@ return [
'Insert the code you received by SMS.' => '', 'Insert the code you received by SMS.' => '',
'Insert the code you received by email.' => '', 'Insert the code you received by email.' => '',
'Insert the mobile phone number where you want to receive text message in international format' => '', 'Insert the mobile phone number where you want to receive text message in international format' => '',
'Mobile phone not found, please check your profile' => '',
'Mobile phone number' => '', 'Mobile phone number' => '',
'Mobile phone number successfully enabled.' => '', 'Mobile phone number successfully enabled.' => '',
'Please, enter the right code. The code is valid for {0} seconds. If you want to get a new code, please click on \'Cancel\' and repeat the login request.' => '', 'Please, enter the right code. The code is valid for {0} seconds. If you want to get a new code, please click on \'Cancel\' and repeat the login request.' => '',
'Please, enter the right code. The code is valid for {0} seconds. If you want to get a new code, please close this window and repeat the enabling request.' => '', 'Please, enter the right code. The code is valid for {0} seconds. If you want to get a new code, please close this window and repeat the enabling request.' => '',
'Text message' => '', 'Text message' => '',
'The email address set is: "{0}".' => '',
'The email sending failed, please check your configuration.' => '',
'The phone number set is: "{0}".' => '',
'The sms sending failed, please check your configuration.' => '',
'This is the code to insert to enable two factor authentication' => '', 'This is the code to insert to enable two factor authentication' => '',
'Two factor authentication code by SMS' => '', 'Two factor authentication code by SMS' => '',
'Two factor authentication code by email' => '', 'Two factor authentication code by email' => '',
'Your two factor authentication method is based on "{0}".' => '',
'Every user having your role has two factor authentication mandatory, you must enable it' => '@@@@', 'Every user having your role has two factor authentication mandatory, you must enable it' => '@@@@',
'Insert the mobile phone number on which to receive text message.' => '@@@@', 'Insert the mobile phone number on which to receive text message.' => '@@@@',
'Insert the mobile phone number where you want to receive text message in international format.' => '@@@@',
'Insert the mobile phone number where you want to receive text message.' => '@@@@', 'Insert the mobile phone number where you want to receive text message.' => '@@@@',
'Mobile phone number not registered.' => '@@@@', 'Mobile phone number not registered.' => '@@@@',
'Now you can resume the login process' => '@@@@', 'Now you can resume the login process' => '@@@@',

View File

@ -282,19 +282,26 @@ return [
'Insert the code you received by SMS.' => '', 'Insert the code you received by SMS.' => '',
'Insert the code you received by email.' => '', 'Insert the code you received by email.' => '',
'Insert the mobile phone number where you want to receive text message in international format' => '', 'Insert the mobile phone number where you want to receive text message in international format' => '',
'Mobile phone not found, please check your profile' => '',
'Mobile phone number' => '', 'Mobile phone number' => '',
'Mobile phone number successfully enabled.' => '', 'Mobile phone number successfully enabled.' => '',
'Please, enter the right code. The code is valid for {0} seconds. If you want to get a new code, please click on \'Cancel\' and repeat the login request.' => '', 'Please, enter the right code. The code is valid for {0} seconds. If you want to get a new code, please click on \'Cancel\' and repeat the login request.' => '',
'Please, enter the right code. The code is valid for {0} seconds. If you want to get a new code, please close this window and repeat the enabling request.' => '', 'Please, enter the right code. The code is valid for {0} seconds. If you want to get a new code, please close this window and repeat the enabling request.' => '',
'Text message' => '', 'Text message' => '',
'The email address set is: "{0}".' => '',
'The email sending failed, please check your configuration.' => '',
'The phone number set is: "{0}".' => '',
'The sms sending failed, please check your configuration.' => '',
'This is the code to insert to enable two factor authentication' => '', 'This is the code to insert to enable two factor authentication' => '',
'Two factor authentication code by SMS' => '', 'Two factor authentication code by SMS' => '',
'Two factor authentication code by email' => '', 'Two factor authentication code by email' => '',
'Your consent is required to work with this site' => '', 'Your consent is required to work with this site' => '',
'Your two factor authentication method is based on "{0}".' => '',
'{0, date, MMM dd, YYYY HH:mm}' => '', '{0, date, MMM dd, YYYY HH:mm}' => '',
'An email has been sent with instructions for resetting your password' => '@@Se ha enviado un correo electrónico con instrucciones para restablecer su contraseña@@', 'An email has been sent with instructions for resetting your password' => '@@Se ha enviado un correo electrónico con instrucciones para restablecer su contraseña@@',
'Every user having your role has two factor authentication mandatory, you must enable it' => '@@@@', 'Every user having your role has two factor authentication mandatory, you must enable it' => '@@@@',
'Insert the mobile phone number on which to receive text message.' => '@@@@', 'Insert the mobile phone number on which to receive text message.' => '@@@@',
'Insert the mobile phone number where you want to receive text message in international format.' => '@@@@',
'Insert the mobile phone number where you want to receive text message.' => '@@@@', 'Insert the mobile phone number where you want to receive text message.' => '@@@@',
'Mobile phone number not registered.' => '@@@@', 'Mobile phone number not registered.' => '@@@@',
'Two factor authentication protects you against stolen credentials' => '@@La autenticación de dos factores le protege del robo de credenciales@@', 'Two factor authentication protects you against stolen credentials' => '@@La autenticación de dos factores le protege del robo de credenciales@@',

View File

@ -276,6 +276,7 @@ return [
'Insert the code you received by SMS.' => '', 'Insert the code you received by SMS.' => '',
'Insert the code you received by email.' => '', 'Insert the code you received by email.' => '',
'Insert the mobile phone number where you want to receive text message in international format' => '', 'Insert the mobile phone number where you want to receive text message in international format' => '',
'Mobile phone not found, please check your profile' => '',
'Mobile phone number' => '', 'Mobile phone number' => '',
'Mobile phone number successfully enabled.' => '', 'Mobile phone number successfully enabled.' => '',
'Please, enter the right code. The code is valid for {0} seconds. If you want to get a new code, please click on \'Cancel\' and repeat the login request.' => '', 'Please, enter the right code. The code is valid for {0} seconds. If you want to get a new code, please click on \'Cancel\' and repeat the login request.' => '',
@ -283,6 +284,10 @@ return [
'Rule class must extend "yii\\rbac\\Rule".' => '', 'Rule class must extend "yii\\rbac\\Rule".' => '',
'Submit' => '', 'Submit' => '',
'Text message' => '', 'Text message' => '',
'The email address set is: "{0}".' => '',
'The email sending failed, please check your configuration.' => '',
'The phone number set is: "{0}".' => '',
'The sms sending failed, please check your configuration.' => '',
'This is the code to insert to enable two factor authentication' => '', 'This is the code to insert to enable two factor authentication' => '',
'Two factor authentication code by SMS' => '', 'Two factor authentication code by SMS' => '',
'Two factor authentication code by email' => '', 'Two factor authentication code by email' => '',
@ -290,10 +295,12 @@ return [
'VKontakte' => '', 'VKontakte' => '',
'Yandex' => '', 'Yandex' => '',
'Your consent is required to work with this site' => '', 'Your consent is required to work with this site' => '',
'Your two factor authentication method is based on "{0}".' => '',
'{0, date, MMM dd, YYYY HH:mm}' => '', '{0, date, MMM dd, YYYY HH:mm}' => '',
'{0, date, MMMM dd, YYYY HH:mm}' => '', '{0, date, MMMM dd, YYYY HH:mm}' => '',
'Every user having your role has two factor authentication mandatory, you must enable it' => '@@@@', 'Every user having your role has two factor authentication mandatory, you must enable it' => '@@@@',
'Insert the mobile phone number on which to receive text message.' => '@@@@', 'Insert the mobile phone number on which to receive text message.' => '@@@@',
'Insert the mobile phone number where you want to receive text message in international format.' => '@@@@',
'Insert the mobile phone number where you want to receive text message.' => '@@@@', 'Insert the mobile phone number where you want to receive text message.' => '@@@@',
'Mobile phone number not registered.' => '@@@@', 'Mobile phone number not registered.' => '@@@@',
]; ];

View File

@ -210,6 +210,7 @@ return [
'Last login IP' => '', 'Last login IP' => '',
'Last login time' => '', 'Last login time' => '',
'Last password change' => '', 'Last password change' => '',
'Mobile phone not found, please check your profile' => '',
'Mobile phone number' => '', 'Mobile phone number' => '',
'Mobile phone number successfully enabled.' => '', 'Mobile phone number successfully enabled.' => '',
'Never' => '', 'Never' => '',
@ -242,6 +243,10 @@ return [
'Switch identities is disabled.' => '', 'Switch identities is disabled.' => '',
'Text message' => '', 'Text message' => '',
'The "recaptcha" component must be configured.' => '', 'The "recaptcha" component must be configured.' => '',
'The email address set is: "{0}".' => '',
'The email sending failed, please check your configuration.' => '',
'The phone number set is: "{0}".' => '',
'The sms sending failed, please check your configuration.' => '',
'The verification code is incorrect.' => '', 'The verification code is incorrect.' => '',
'There is neither role nor permission with name "{0}"' => '', 'There is neither role nor permission with name "{0}"' => '',
'There was an error in saving user' => '', 'There was an error in saving user' => '',
@ -289,11 +294,13 @@ return [
'Your consent is required to work with this site' => '', 'Your consent is required to work with this site' => '',
'Your password has expired, you must change it now' => '', 'Your password has expired, you must change it now' => '',
'Your personal information has been removed' => '', 'Your personal information has been removed' => '',
'Your two factor authentication method is based on "{0}".' => '',
'privacy policy' => '', 'privacy policy' => '',
'{0, date, MMM dd, YYYY HH:mm}' => '', '{0, date, MMM dd, YYYY HH:mm}' => '',
'{0} cannot be blank.' => '', '{0} cannot be blank.' => '',
'An email has been sent with instructions for resetting your password' => '@@ایمیلی حاوی راهنمایی برای تنظیم مجدد رمز عبور به شما ارسال شد@@', 'An email has been sent with instructions for resetting your password' => '@@ایمیلی حاوی راهنمایی برای تنظیم مجدد رمز عبور به شما ارسال شد@@',
'Insert the mobile phone number on which to receive text message.' => '@@@@', 'Insert the mobile phone number on which to receive text message.' => '@@@@',
'Insert the mobile phone number where you want to receive text message in international format.' => '@@@@',
'Insert the mobile phone number where you want to receive text message.' => '@@@@', 'Insert the mobile phone number where you want to receive text message.' => '@@@@',
'Mobile phone number not registered.' => '@@@@', 'Mobile phone number not registered.' => '@@@@',
'Registration ip' => '@@ای پی ثبت نام@@', 'Registration ip' => '@@ای پی ثبت نام@@',

View File

@ -142,6 +142,7 @@ return [
'Login' => '', 'Login' => '',
'Logout' => '', 'Logout' => '',
'Manage users' => '', 'Manage users' => '',
'Mobile phone not found, please check your profile' => '',
'Mobile phone number' => '', 'Mobile phone number' => '',
'Mobile phone number successfully enabled.' => '', 'Mobile phone number successfully enabled.' => '',
'Name' => '', 'Name' => '',
@ -207,6 +208,10 @@ return [
'Thank you, registration is now complete.' => '', 'Thank you, registration is now complete.' => '',
'The "recaptcha" component must be configured.' => '', 'The "recaptcha" component must be configured.' => '',
'The confirmation link is invalid or expired. Please try requesting a new one.' => '', 'The confirmation link is invalid or expired. Please try requesting a new one.' => '',
'The email address set is: "{0}".' => '',
'The email sending failed, please check your configuration.' => '',
'The phone number set is: "{0}".' => '',
'The sms sending failed, please check your configuration.' => '',
'The verification code is incorrect.' => '', 'The verification code is incorrect.' => '',
'There is neither role nor permission with name "{0}"' => '', 'There is neither role nor permission with name "{0}"' => '',
'There was an error in saving user' => '', 'There was an error in saving user' => '',
@ -288,11 +293,13 @@ return [
'Your password has expired, you must change it now' => '', 'Your password has expired, you must change it now' => '',
'Your personal information has been removed' => '', 'Your personal information has been removed' => '',
'Your profile has been updated' => '', 'Your profile has been updated' => '',
'Your two factor authentication method is based on "{0}".' => '',
'privacy policy' => '', 'privacy policy' => '',
'{0, date, MMM dd, YYYY HH:mm}' => '', '{0, date, MMM dd, YYYY HH:mm}' => '',
'{0, date, MMMM dd, YYYY HH:mm}' => '', '{0, date, MMMM dd, YYYY HH:mm}' => '',
'{0} cannot be blank.' => '', '{0} cannot be blank.' => '',
'Insert the mobile phone number on which to receive text message.' => '@@@@', 'Insert the mobile phone number on which to receive text message.' => '@@@@',
'Insert the mobile phone number where you want to receive text message in international format.' => '@@@@',
'Insert the mobile phone number where you want to receive text message.' => '@@@@', 'Insert the mobile phone number where you want to receive text message.' => '@@@@',
'Mobile phone number not registered.' => '@@@@', 'Mobile phone number not registered.' => '@@@@',
]; ];

View File

@ -280,20 +280,27 @@ return [
'Insert the code you received by SMS.' => '', 'Insert the code you received by SMS.' => '',
'Insert the code you received by email.' => '', 'Insert the code you received by email.' => '',
'Insert the mobile phone number where you want to receive text message in international format' => '', 'Insert the mobile phone number where you want to receive text message in international format' => '',
'Mobile phone not found, please check your profile' => '',
'Mobile phone number' => '', 'Mobile phone number' => '',
'Mobile phone number successfully enabled.' => '', 'Mobile phone number successfully enabled.' => '',
'Please, enter the right code. The code is valid for {0} seconds. If you want to get a new code, please click on \'Cancel\' and repeat the login request.' => '', 'Please, enter the right code. The code is valid for {0} seconds. If you want to get a new code, please click on \'Cancel\' and repeat the login request.' => '',
'Please, enter the right code. The code is valid for {0} seconds. If you want to get a new code, please close this window and repeat the enabling request.' => '', 'Please, enter the right code. The code is valid for {0} seconds. If you want to get a new code, please close this window and repeat the enabling request.' => '',
'Submit' => '', 'Submit' => '',
'Text message' => '', 'Text message' => '',
'The email address set is: "{0}".' => '',
'The email sending failed, please check your configuration.' => '',
'The phone number set is: "{0}".' => '',
'The sms sending failed, please check your configuration.' => '',
'This is the code to insert to enable two factor authentication' => '', 'This is the code to insert to enable two factor authentication' => '',
'Two factor authentication code by SMS' => '', 'Two factor authentication code by SMS' => '',
'Two factor authentication code by email' => '', 'Two factor authentication code by email' => '',
'Unfortunately, you can not work with this site without giving us consent to process your data.' => '', 'Unfortunately, you can not work with this site without giving us consent to process your data.' => '',
'Your consent is required to work with this site' => '', 'Your consent is required to work with this site' => '',
'Your two factor authentication method is based on "{0}".' => '',
'{0, date, MMM dd, YYYY HH:mm}' => '', '{0, date, MMM dd, YYYY HH:mm}' => '',
'Every user having your role has two factor authentication mandatory, you must enable it' => '@@@@', 'Every user having your role has two factor authentication mandatory, you must enable it' => '@@@@',
'Insert the mobile phone number on which to receive text message.' => '@@@@', 'Insert the mobile phone number on which to receive text message.' => '@@@@',
'Insert the mobile phone number where you want to receive text message in international format.' => '@@@@',
'Insert the mobile phone number where you want to receive text message.' => '@@@@', 'Insert the mobile phone number where you want to receive text message.' => '@@@@',
'Mobile phone number not registered.' => '@@@@', 'Mobile phone number not registered.' => '@@@@',
]; ];

View File

@ -142,6 +142,7 @@ return [
'Login' => '', 'Login' => '',
'Logout' => '', 'Logout' => '',
'Manage users' => '', 'Manage users' => '',
'Mobile phone not found, please check your profile' => '',
'Mobile phone number' => '', 'Mobile phone number' => '',
'Mobile phone number successfully enabled.' => '', 'Mobile phone number successfully enabled.' => '',
'Name' => '', 'Name' => '',
@ -207,6 +208,10 @@ return [
'Thank you, registration is now complete.' => '', 'Thank you, registration is now complete.' => '',
'The "recaptcha" component must be configured.' => '', 'The "recaptcha" component must be configured.' => '',
'The confirmation link is invalid or expired. Please try requesting a new one.' => '', 'The confirmation link is invalid or expired. Please try requesting a new one.' => '',
'The email address set is: "{0}".' => '',
'The email sending failed, please check your configuration.' => '',
'The phone number set is: "{0}".' => '',
'The sms sending failed, please check your configuration.' => '',
'The verification code is incorrect.' => '', 'The verification code is incorrect.' => '',
'There is neither role nor permission with name "{0}"' => '', 'There is neither role nor permission with name "{0}"' => '',
'There was an error in saving user' => '', 'There was an error in saving user' => '',
@ -288,11 +293,13 @@ return [
'Your password has expired, you must change it now' => '', 'Your password has expired, you must change it now' => '',
'Your personal information has been removed' => '', 'Your personal information has been removed' => '',
'Your profile has been updated' => '', 'Your profile has been updated' => '',
'Your two factor authentication method is based on "{0}".' => '',
'privacy policy' => '', 'privacy policy' => '',
'{0, date, MMM dd, YYYY HH:mm}' => '', '{0, date, MMM dd, YYYY HH:mm}' => '',
'{0, date, MMMM dd, YYYY HH:mm}' => '', '{0, date, MMMM dd, YYYY HH:mm}' => '',
'{0} cannot be blank.' => '', '{0} cannot be blank.' => '',
'Insert the mobile phone number on which to receive text message.' => '@@@@', 'Insert the mobile phone number on which to receive text message.' => '@@@@',
'Insert the mobile phone number where you want to receive text message in international format.' => '@@@@',
'Insert the mobile phone number where you want to receive text message.' => '@@@@', 'Insert the mobile phone number where you want to receive text message.' => '@@@@',
'Mobile phone number not registered.' => '@@@@', 'Mobile phone number not registered.' => '@@@@',
]; ];

View File

@ -278,6 +278,7 @@ return [
'Insert the code you received by SMS.' => '', 'Insert the code you received by SMS.' => '',
'Insert the code you received by email.' => '', 'Insert the code you received by email.' => '',
'Insert the mobile phone number where you want to receive text message in international format' => '', 'Insert the mobile phone number where you want to receive text message in international format' => '',
'Mobile phone not found, please check your profile' => '',
'Mobile phone number' => '', 'Mobile phone number' => '',
'Mobile phone number successfully enabled.' => '', 'Mobile phone number successfully enabled.' => '',
'Please, enter the right code. The code is valid for {0} seconds. If you want to get a new code, please click on \'Cancel\' and repeat the login request.' => '', 'Please, enter the right code. The code is valid for {0} seconds. If you want to get a new code, please click on \'Cancel\' and repeat the login request.' => '',
@ -286,12 +287,17 @@ return [
'Select rule...' => '', 'Select rule...' => '',
'Submit' => '', 'Submit' => '',
'Text message' => '', 'Text message' => '',
'The email address set is: "{0}".' => '',
'The email sending failed, please check your configuration.' => '',
'The phone number set is: "{0}".' => '',
'The sms sending failed, please check your configuration.' => '',
'This is the code to insert to enable two factor authentication' => '', 'This is the code to insert to enable two factor authentication' => '',
'Two factor authentication code by SMS' => '', 'Two factor authentication code by SMS' => '',
'Two factor authentication code by email' => '', 'Two factor authentication code by email' => '',
'Two factor authentication protects you in case of stolen credentials' => '', 'Two factor authentication protects you in case of stolen credentials' => '',
'Unfortunately, you can not work with this site without giving us consent to process your data.' => '', 'Unfortunately, you can not work with this site without giving us consent to process your data.' => '',
'Your consent is required to work with this site' => '', 'Your consent is required to work with this site' => '',
'Your two factor authentication method is based on "{0}".' => '',
'A message has been sent to your email address. ' => '@@Üzenet érkezett az e-mail címedre.@@', 'A message has been sent to your email address. ' => '@@Üzenet érkezett az e-mail címedre.@@',
'An email has been sent with instructions for resetting your password' => '@@E-mailt küldtek a jelszó visszaállításával kapcsolatos utasításokkal@@', 'An email has been sent with instructions for resetting your password' => '@@E-mailt küldtek a jelszó visszaállításával kapcsolatos utasításokkal@@',
'Awesome, almost there. ' => '@@Hurrá, majdnem kész.@@', 'Awesome, almost there. ' => '@@Hurrá, majdnem kész.@@',
@ -300,6 +306,7 @@ return [
'Every user having your role has two factor authentication mandatory, you must enable it' => '@@@@', 'Every user having your role has two factor authentication mandatory, you must enable it' => '@@@@',
'I aggree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => '@@Aggregálom a személyes adataim feldolgozását és a cookie-k használatát a webhely működésének megkönnyítése érdekében. További információért olvassa el a {privacyPolicy}@@', 'I aggree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => '@@Aggregálom a személyes adataim feldolgozását és a cookie-k használatát a webhely működésének megkönnyítése érdekében. További információért olvassa el a {privacyPolicy}@@',
'Insert the mobile phone number on which to receive text message.' => '@@@@', 'Insert the mobile phone number on which to receive text message.' => '@@@@',
'Insert the mobile phone number where you want to receive text message in international format.' => '@@@@',
'Insert the mobile phone number where you want to receive text message.' => '@@@@', 'Insert the mobile phone number where you want to receive text message.' => '@@@@',
'Invalid two-factor code' => '@@Érvénytelen kétütemű kód@@', 'Invalid two-factor code' => '@@Érvénytelen kétütemű kód@@',
'Last login' => '@@Utolsó bejelentkezés@@', 'Last login' => '@@Utolsó bejelentkezés@@',

View File

@ -206,6 +206,10 @@ return [
'Thank you, registration is now complete.' => 'Grazie, la tua registrazione è completa.', 'Thank you, registration is now complete.' => 'Grazie, la tua registrazione è completa.',
'The "recaptcha" component must be configured.' => 'Occorre configurare il componente "recaptcha".', 'The "recaptcha" component must be configured.' => 'Occorre configurare il componente "recaptcha".',
'The confirmation link is invalid or expired. Please try requesting a new one.' => 'Il link di conferma non è valido o scaduto. Per favore prova a richiederne uno nuovo', 'The confirmation link is invalid or expired. Please try requesting a new one.' => 'Il link di conferma non è valido o scaduto. Per favore prova a richiederne uno nuovo',
'The email address set is: "{0}".' => 'L\'indirizzo email impostato è: "{0}".',
'The email sending failed, please check your configuration.' => 'L\'invio della email non è riuscito, verifica la configurazione',
'The phone number set is: "{0}".' => 'Il numero di telefono impostato è: "{0}".',
'The sms sending failed, please check your configuration.' => 'L\'invio del messaggio di testo non è riuscito, verifica la configurazione',
'The verification code is incorrect.' => 'Il codice di verifica non è corretto.', 'The verification code is incorrect.' => 'Il codice di verifica non è corretto.',
'There is neither role nor permission with name "{0}"' => 'Non esiste un ruolo o permesso di nome "{0}', 'There is neither role nor permission with name "{0}"' => 'Non esiste un ruolo o permesso di nome "{0}',
'There was an error in saving user' => 'Errore in salvataggio utente', 'There was an error in saving user' => 'Errore in salvataggio utente',
@ -286,14 +290,16 @@ return [
'Your password has expired, you must change it now' => 'La tua password è scaduta, devi cambiarla', 'Your password has expired, you must change it now' => 'La tua password è scaduta, devi cambiarla',
'Your personal information has been removed' => 'I tuoi dati personali sono stati rimossi', 'Your personal information has been removed' => 'I tuoi dati personali sono stati rimossi',
'Your profile has been updated' => 'Il tuo profilo è stato aggiornato', 'Your profile has been updated' => 'Il tuo profilo è stato aggiornato',
'Your two factor authentication method is based on "{0}".' => 'La tua autenticazione a due fattori è basata su "{0}".',
'privacy policy' => 'politica della privacy', 'privacy policy' => 'politica della privacy',
'{0, date, MMM dd, YYYY HH:mm}' => '{0, date, MMM dd, YYYY HH:mm}', '{0, date, MMM dd, YYYY HH:mm}' => '{0, date, MMM dd, YYYY HH:mm}',
'{0, date, MMMM dd, YYYY HH:mm}' => '{0, date, dd MMMM YYYY HH:mm}', '{0, date, MMMM dd, YYYY HH:mm}' => '{0, date, dd MMMM YYYY HH:mm}',
'{0} cannot be blank.' => '{0} non può essere vuoto.', '{0} cannot be blank.' => '{0} non può essere vuoto.',
'Insert the mobile phone number where you want to receive text message in international format' => '', 'Insert the mobile phone number where you want to receive text message in international format' => '',
'Mobile phone not found, please check your profile' => '',
'This is the code to insert to enable two factor authentication' => '', 'This is the code to insert to enable two factor authentication' => '',
'An email has been sent with instructions for resetting your password' => '@@È stata inviata un\'email con le istruzioni per azzerare la tua password@@', 'An email has been sent with instructions for resetting your password' => '@@È stata inviata un\'email con le istruzioni per azzerare la tua password@@',
'Insert the mobile phone number where you want to receive text message in international format.' => '@@@@', 'Insert the mobile phone number where you want to receive text message in international format.' => '@@Inserisci il numero di telefono sul quale ricevere il messaggio di testo nel formato internazionale@@',
'Insert the mobile phone number where you want to receive the SMS.' => '@@Inserisci il numero del cellulare sul quale ricevere l\'SMS.@@', 'Insert the mobile phone number where you want to receive the SMS.' => '@@Inserisci il numero del cellulare sul quale ricevere l\'SMS.@@',
'Mobile phone number not registered.' => '@@L\'attivazione del numero di cellulare non è riuscita@@', 'Mobile phone number not registered.' => '@@L\'attivazione del numero di cellulare non è riuscita@@',
'Now you can resume the login process' => '@@Ora puoi riprendere il processo di autenticazione@@', 'Now you can resume the login process' => '@@Ora puoi riprendere il processo di autenticazione@@',

View File

@ -142,6 +142,7 @@ return [
'Login' => '', 'Login' => '',
'Logout' => '', 'Logout' => '',
'Manage users' => '', 'Manage users' => '',
'Mobile phone not found, please check your profile' => '',
'Mobile phone number' => '', 'Mobile phone number' => '',
'Mobile phone number successfully enabled.' => '', 'Mobile phone number successfully enabled.' => '',
'Name' => '', 'Name' => '',
@ -207,6 +208,10 @@ return [
'Thank you, registration is now complete.' => '', 'Thank you, registration is now complete.' => '',
'The "recaptcha" component must be configured.' => '', 'The "recaptcha" component must be configured.' => '',
'The confirmation link is invalid or expired. Please try requesting a new one.' => '', 'The confirmation link is invalid or expired. Please try requesting a new one.' => '',
'The email address set is: "{0}".' => '',
'The email sending failed, please check your configuration.' => '',
'The phone number set is: "{0}".' => '',
'The sms sending failed, please check your configuration.' => '',
'The verification code is incorrect.' => '', 'The verification code is incorrect.' => '',
'There is neither role nor permission with name "{0}"' => '', 'There is neither role nor permission with name "{0}"' => '',
'There was an error in saving user' => '', 'There was an error in saving user' => '',
@ -288,11 +293,13 @@ return [
'Your password has expired, you must change it now' => '', 'Your password has expired, you must change it now' => '',
'Your personal information has been removed' => '', 'Your personal information has been removed' => '',
'Your profile has been updated' => '', 'Your profile has been updated' => '',
'Your two factor authentication method is based on "{0}".' => '',
'privacy policy' => '', 'privacy policy' => '',
'{0, date, MMM dd, YYYY HH:mm}' => '', '{0, date, MMM dd, YYYY HH:mm}' => '',
'{0, date, MMMM dd, YYYY HH:mm}' => '', '{0, date, MMMM dd, YYYY HH:mm}' => '',
'{0} cannot be blank.' => '', '{0} cannot be blank.' => '',
'Insert the mobile phone number on which to receive text message.' => '@@@@', 'Insert the mobile phone number on which to receive text message.' => '@@@@',
'Insert the mobile phone number where you want to receive text message in international format.' => '@@@@',
'Insert the mobile phone number where you want to receive text message.' => '@@@@', 'Insert the mobile phone number where you want to receive text message.' => '@@@@',
'Mobile phone number not registered.' => '@@@@', 'Mobile phone number not registered.' => '@@@@',
]; ];

View File

@ -142,6 +142,7 @@ return [
'Login' => '', 'Login' => '',
'Logout' => '', 'Logout' => '',
'Manage users' => '', 'Manage users' => '',
'Mobile phone not found, please check your profile' => '',
'Mobile phone number' => '', 'Mobile phone number' => '',
'Mobile phone number successfully enabled.' => '', 'Mobile phone number successfully enabled.' => '',
'Name' => '', 'Name' => '',
@ -207,6 +208,10 @@ return [
'Thank you, registration is now complete.' => '', 'Thank you, registration is now complete.' => '',
'The "recaptcha" component must be configured.' => '', 'The "recaptcha" component must be configured.' => '',
'The confirmation link is invalid or expired. Please try requesting a new one.' => '', 'The confirmation link is invalid or expired. Please try requesting a new one.' => '',
'The email address set is: "{0}".' => '',
'The email sending failed, please check your configuration.' => '',
'The phone number set is: "{0}".' => '',
'The sms sending failed, please check your configuration.' => '',
'The verification code is incorrect.' => '', 'The verification code is incorrect.' => '',
'There is neither role nor permission with name "{0}"' => '', 'There is neither role nor permission with name "{0}"' => '',
'There was an error in saving user' => '', 'There was an error in saving user' => '',
@ -288,11 +293,13 @@ return [
'Your password has expired, you must change it now' => '', 'Your password has expired, you must change it now' => '',
'Your personal information has been removed' => '', 'Your personal information has been removed' => '',
'Your profile has been updated' => '', 'Your profile has been updated' => '',
'Your two factor authentication method is based on "{0}".' => '',
'privacy policy' => '', 'privacy policy' => '',
'{0, date, MMM dd, YYYY HH:mm}' => '', '{0, date, MMM dd, YYYY HH:mm}' => '',
'{0, date, MMMM dd, YYYY HH:mm}' => '', '{0, date, MMMM dd, YYYY HH:mm}' => '',
'{0} cannot be blank.' => '', '{0} cannot be blank.' => '',
'Insert the mobile phone number on which to receive text message.' => '@@@@', 'Insert the mobile phone number on which to receive text message.' => '@@@@',
'Insert the mobile phone number where you want to receive text message in international format.' => '@@@@',
'Insert the mobile phone number where you want to receive text message.' => '@@@@', 'Insert the mobile phone number where you want to receive text message.' => '@@@@',
'Mobile phone number not registered.' => '@@@@', 'Mobile phone number not registered.' => '@@@@',
]; ];

View File

@ -278,6 +278,7 @@ return [
'Insert the code you received by SMS.' => '', 'Insert the code you received by SMS.' => '',
'Insert the code you received by email.' => '', 'Insert the code you received by email.' => '',
'Insert the mobile phone number where you want to receive text message in international format' => '', 'Insert the mobile phone number where you want to receive text message in international format' => '',
'Mobile phone not found, please check your profile' => '',
'Mobile phone number' => '', 'Mobile phone number' => '',
'Mobile phone number successfully enabled.' => '', 'Mobile phone number successfully enabled.' => '',
'Please, enter the right code. The code is valid for {0} seconds. If you want to get a new code, please click on \'Cancel\' and repeat the login request.' => '', 'Please, enter the right code. The code is valid for {0} seconds. If you want to get a new code, please click on \'Cancel\' and repeat the login request.' => '',
@ -286,12 +287,17 @@ return [
'Select rule...' => '', 'Select rule...' => '',
'Submit' => '', 'Submit' => '',
'Text message' => '', 'Text message' => '',
'The email address set is: "{0}".' => '',
'The email sending failed, please check your configuration.' => '',
'The phone number set is: "{0}".' => '',
'The sms sending failed, please check your configuration.' => '',
'This is the code to insert to enable two factor authentication' => '', 'This is the code to insert to enable two factor authentication' => '',
'Two factor authentication code by SMS' => '', 'Two factor authentication code by SMS' => '',
'Two factor authentication code by email' => '', 'Two factor authentication code by email' => '',
'Two factor authentication protects you in case of stolen credentials' => '', 'Two factor authentication protects you in case of stolen credentials' => '',
'Unfortunately, you can not work with this site without giving us consent to process your data.' => '', 'Unfortunately, you can not work with this site without giving us consent to process your data.' => '',
'Your consent is required to work with this site' => '', 'Your consent is required to work with this site' => '',
'Your two factor authentication method is based on "{0}".' => '',
'A message has been sent to your email address. ' => '@@Een bericht werd naar jouw emailadres verzonden@@', 'A message has been sent to your email address. ' => '@@Een bericht werd naar jouw emailadres verzonden@@',
'An email has been sent with instructions for resetting your password' => '@@Er werd een email verstuurd met instructies om jouw wachtwoord te resetten@@', 'An email has been sent with instructions for resetting your password' => '@@Er werd een email verstuurd met instructies om jouw wachtwoord te resetten@@',
'Awesome, almost there. ' => '@@Super, bijna klaar.@@', 'Awesome, almost there. ' => '@@Super, bijna klaar.@@',
@ -303,6 +309,7 @@ return [
to facilitate the operation of this site. For more information read our {privacyPolicy}' => '@@Ik ga akkoord dat mijn persoonlijke data en cookies worden verwerkt voor het gebruik van deze website. Voor meer informatie lees onze {privacyPolicy}@@', to facilitate the operation of this site. For more information read our {privacyPolicy}' => '@@Ik ga akkoord dat mijn persoonlijke data en cookies worden verwerkt voor het gebruik van deze website. Voor meer informatie lees onze {privacyPolicy}@@',
'I aggree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => '@@Ik ga akkoord dat mijn persoonlijke data en cookies worden verwerkt voor het gebruik van deze website. Voor meer informatie lees onze {privacyPolicy}@@', 'I aggree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => '@@Ik ga akkoord dat mijn persoonlijke data en cookies worden verwerkt voor het gebruik van deze website. Voor meer informatie lees onze {privacyPolicy}@@',
'Insert the mobile phone number on which to receive text message.' => '@@@@', 'Insert the mobile phone number on which to receive text message.' => '@@@@',
'Insert the mobile phone number where you want to receive text message in international format.' => '@@@@',
'Insert the mobile phone number where you want to receive text message.' => '@@@@', 'Insert the mobile phone number where you want to receive text message.' => '@@@@',
'Invalid two-factor code' => '@@Ongeldige tweetraps authenticatie code@@', 'Invalid two-factor code' => '@@Ongeldige tweetraps authenticatie code@@',
'Last login' => '@@Laatste login@@', 'Last login' => '@@Laatste login@@',

View File

@ -278,6 +278,7 @@ return [
'Insert the code you received by SMS.' => '', 'Insert the code you received by SMS.' => '',
'Insert the code you received by email.' => '', 'Insert the code you received by email.' => '',
'Insert the mobile phone number where you want to receive text message in international format' => '', 'Insert the mobile phone number where you want to receive text message in international format' => '',
'Mobile phone not found, please check your profile' => '',
'Mobile phone number' => '', 'Mobile phone number' => '',
'Mobile phone number successfully enabled.' => '', 'Mobile phone number successfully enabled.' => '',
'Please, enter the right code. The code is valid for {0} seconds. If you want to get a new code, please click on \'Cancel\' and repeat the login request.' => '', 'Please, enter the right code. The code is valid for {0} seconds. If you want to get a new code, please click on \'Cancel\' and repeat the login request.' => '',
@ -286,17 +287,23 @@ return [
'Select rule...' => '', 'Select rule...' => '',
'Submit' => '', 'Submit' => '',
'Text message' => '', 'Text message' => '',
'The email address set is: "{0}".' => '',
'The email sending failed, please check your configuration.' => '',
'The phone number set is: "{0}".' => '',
'The sms sending failed, please check your configuration.' => '',
'This is the code to insert to enable two factor authentication' => '', 'This is the code to insert to enable two factor authentication' => '',
'Two factor authentication code by SMS' => '', 'Two factor authentication code by SMS' => '',
'Two factor authentication code by email' => '', 'Two factor authentication code by email' => '',
'Two factor authentication protects you in case of stolen credentials' => '', 'Two factor authentication protects you in case of stolen credentials' => '',
'Unfortunately, you can not work with this site without giving us consent to process your data.' => '', 'Unfortunately, you can not work with this site without giving us consent to process your data.' => '',
'Your consent is required to work with this site' => '', 'Your consent is required to work with this site' => '',
'Your two factor authentication method is based on "{0}".' => '',
'An email has been sent with instructions for resetting your password' => '@@Email z instrukcją resetowania hasła został wysłany@@', 'An email has been sent with instructions for resetting your password' => '@@Email z instrukcją resetowania hasła został wysłany@@',
'Disable Two-Factor Auth' => '@@Wyłącz uwierzytelnianie dwuetapowe@@', 'Disable Two-Factor Auth' => '@@Wyłącz uwierzytelnianie dwuetapowe@@',
'Enable Two-factor auth' => '@@Włącz uwierzytelnianie dwuetapowe@@', 'Enable Two-factor auth' => '@@Włącz uwierzytelnianie dwuetapowe@@',
'Every user having your role has two factor authentication mandatory, you must enable it' => '@@@@', 'Every user having your role has two factor authentication mandatory, you must enable it' => '@@@@',
'Insert the mobile phone number on which to receive text message.' => '@@@@', 'Insert the mobile phone number on which to receive text message.' => '@@@@',
'Insert the mobile phone number where you want to receive text message in international format.' => '@@@@',
'Insert the mobile phone number where you want to receive text message.' => '@@@@', 'Insert the mobile phone number where you want to receive text message.' => '@@@@',
'Invalid two-factor code' => '@@Nieprawidłowy kod uwierzytelniania dwuetapowego@@', 'Invalid two-factor code' => '@@Nieprawidłowy kod uwierzytelniania dwuetapowego@@',
'Last login' => '@@Data ostatniego logowania@@', 'Last login' => '@@Data ostatniego logowania@@',

View File

@ -278,6 +278,7 @@ return [
'Insert the code you received by SMS.' => '', 'Insert the code you received by SMS.' => '',
'Insert the code you received by email.' => '', 'Insert the code you received by email.' => '',
'Insert the mobile phone number where you want to receive text message in international format' => '', 'Insert the mobile phone number where you want to receive text message in international format' => '',
'Mobile phone not found, please check your profile' => '',
'Mobile phone number' => '', 'Mobile phone number' => '',
'Mobile phone number successfully enabled.' => '', 'Mobile phone number successfully enabled.' => '',
'Please, enter the right code. The code is valid for {0} seconds. If you want to get a new code, please click on \'Cancel\' and repeat the login request.' => '', 'Please, enter the right code. The code is valid for {0} seconds. If you want to get a new code, please click on \'Cancel\' and repeat the login request.' => '',
@ -286,12 +287,17 @@ return [
'Select rule...' => '', 'Select rule...' => '',
'Submit' => '', 'Submit' => '',
'Text message' => '', 'Text message' => '',
'The email address set is: "{0}".' => '',
'The email sending failed, please check your configuration.' => '',
'The phone number set is: "{0}".' => '',
'The sms sending failed, please check your configuration.' => '',
'This is the code to insert to enable two factor authentication' => '', 'This is the code to insert to enable two factor authentication' => '',
'Two factor authentication code by SMS' => '', 'Two factor authentication code by SMS' => '',
'Two factor authentication code by email' => '', 'Two factor authentication code by email' => '',
'Two factor authentication protects you in case of stolen credentials' => '', 'Two factor authentication protects you in case of stolen credentials' => '',
'Unfortunately, you can not work with this site without giving us consent to process your data.' => '', 'Unfortunately, you can not work with this site without giving us consent to process your data.' => '',
'Your consent is required to work with this site' => '', 'Your consent is required to work with this site' => '',
'Your two factor authentication method is based on "{0}".' => '',
'A message has been sent to your email address. ' => '@@Uma mensagem foi enviada para o seu endereço de e-mail.@@', 'A message has been sent to your email address. ' => '@@Uma mensagem foi enviada para o seu endereço de e-mail.@@',
'An email has been sent with instructions for resetting your password' => '@@Um e-mail foi enviado com instruções para redefinir sua senha@@', 'An email has been sent with instructions for resetting your password' => '@@Um e-mail foi enviado com instruções para redefinir sua senha@@',
'Awesome, almost there. ' => '@@Incrível, quase lá.@@', 'Awesome, almost there. ' => '@@Incrível, quase lá.@@',
@ -303,6 +309,7 @@ return [
to facilitate the operation of this site. For more information read our {privacyPolicy}' => '@@Concordo com o processamento de meus dados pessoais e o uso de cookies para facilitar a operação deste site. Para mais informações, leia nosso {privacyPolicy}@@', to facilitate the operation of this site. For more information read our {privacyPolicy}' => '@@Concordo com o processamento de meus dados pessoais e o uso de cookies para facilitar a operação deste site. Para mais informações, leia nosso {privacyPolicy}@@',
'I aggree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => '@@Concordo com o processamento de meus dados pessoais e o uso de cookies para facilitar a operação deste site. Para mais informações, leia nosso {privacyPolicy}@@', 'I aggree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => '@@Concordo com o processamento de meus dados pessoais e o uso de cookies para facilitar a operação deste site. Para mais informações, leia nosso {privacyPolicy}@@',
'Insert the mobile phone number on which to receive text message.' => '@@@@', 'Insert the mobile phone number on which to receive text message.' => '@@@@',
'Insert the mobile phone number where you want to receive text message in international format.' => '@@@@',
'Insert the mobile phone number where you want to receive text message.' => '@@@@', 'Insert the mobile phone number where you want to receive text message.' => '@@@@',
'Invalid two-factor code' => '@@Código de dois fatores inválido@@', 'Invalid two-factor code' => '@@Código de dois fatores inválido@@',
'Last login' => '@@Último login@@', 'Last login' => '@@Último login@@',

View File

@ -272,6 +272,7 @@ return [
'Insert the code you received by email.' => '', 'Insert the code you received by email.' => '',
'Insert the mobile phone number where you want to receive text message in international format' => '', 'Insert the mobile phone number where you want to receive text message in international format' => '',
'Items' => '', 'Items' => '',
'Mobile phone not found, please check your profile' => '',
'Mobile phone number' => '', 'Mobile phone number' => '',
'Mobile phone number successfully enabled.' => '', 'Mobile phone number successfully enabled.' => '',
'Password' => '', 'Password' => '',
@ -281,6 +282,10 @@ return [
'Select rule...' => '', 'Select rule...' => '',
'Submit' => '', 'Submit' => '',
'Text message' => '', 'Text message' => '',
'The email address set is: "{0}".' => '',
'The email sending failed, please check your configuration.' => '',
'The phone number set is: "{0}".' => '',
'The sms sending failed, please check your configuration.' => '',
'This is the code to insert to enable two factor authentication' => '', 'This is the code to insert to enable two factor authentication' => '',
'Two factor authentication code by SMS' => '', 'Two factor authentication code by SMS' => '',
'Two factor authentication code by email' => '', 'Two factor authentication code by email' => '',
@ -290,10 +295,12 @@ return [
'Website' => '', 'Website' => '',
'Yandex' => '', 'Yandex' => '',
'Your consent is required to work with this site' => '', 'Your consent is required to work with this site' => '',
'Your two factor authentication method is based on "{0}".' => '',
'{0, date, MMM dd, YYYY HH:mm}' => '', '{0, date, MMM dd, YYYY HH:mm}' => '',
'{0, date, MMMM dd, YYYY HH:mm}' => '', '{0, date, MMMM dd, YYYY HH:mm}' => '',
'Every user having your role has two factor authentication mandatory, you must enable it' => '@@@@', 'Every user having your role has two factor authentication mandatory, you must enable it' => '@@@@',
'Insert the mobile phone number on which to receive text message.' => '@@@@', 'Insert the mobile phone number on which to receive text message.' => '@@@@',
'Insert the mobile phone number where you want to receive text message in international format.' => '@@@@',
'Insert the mobile phone number where you want to receive text message.' => '@@@@', 'Insert the mobile phone number where you want to receive text message.' => '@@@@',
'Mobile phone number not registered.' => '@@@@', 'Mobile phone number not registered.' => '@@@@',
]; ];

View File

@ -278,6 +278,7 @@ return [
'Insert the code you received by SMS.' => '', 'Insert the code you received by SMS.' => '',
'Insert the code you received by email.' => '', 'Insert the code you received by email.' => '',
'Insert the mobile phone number where you want to receive text message in international format' => '', 'Insert the mobile phone number where you want to receive text message in international format' => '',
'Mobile phone not found, please check your profile' => '',
'Mobile phone number' => '', 'Mobile phone number' => '',
'Mobile phone number successfully enabled.' => '', 'Mobile phone number successfully enabled.' => '',
'Please, enter the right code. The code is valid for {0} seconds. If you want to get a new code, please click on \'Cancel\' and repeat the login request.' => '', 'Please, enter the right code. The code is valid for {0} seconds. If you want to get a new code, please click on \'Cancel\' and repeat the login request.' => '',
@ -286,12 +287,17 @@ return [
'Select rule...' => '', 'Select rule...' => '',
'Submit' => '', 'Submit' => '',
'Text message' => '', 'Text message' => '',
'The email address set is: "{0}".' => '',
'The email sending failed, please check your configuration.' => '',
'The phone number set is: "{0}".' => '',
'The sms sending failed, please check your configuration.' => '',
'This is the code to insert to enable two factor authentication' => '', 'This is the code to insert to enable two factor authentication' => '',
'Two factor authentication code by SMS' => '', 'Two factor authentication code by SMS' => '',
'Two factor authentication code by email' => '', 'Two factor authentication code by email' => '',
'Two factor authentication protects you in case of stolen credentials' => '', 'Two factor authentication protects you in case of stolen credentials' => '',
'Unfortunately, you can not work with this site without giving us consent to process your data.' => '', 'Unfortunately, you can not work with this site without giving us consent to process your data.' => '',
'Your consent is required to work with this site' => '', 'Your consent is required to work with this site' => '',
'Your two factor authentication method is based on "{0}".' => '',
'A message has been sent to your email address. ' => '@@A fost trimis un mesaj la adresa dvs. de e-mail.@@', 'A message has been sent to your email address. ' => '@@A fost trimis un mesaj la adresa dvs. de e-mail.@@',
'An email has been sent with instructions for resetting your password' => '@@A fost trimis un e-mail cu instrucțiuni pentru resetarea parolei@@', 'An email has been sent with instructions for resetting your password' => '@@A fost trimis un e-mail cu instrucțiuni pentru resetarea parolei@@',
'Awesome, almost there. ' => '@@Minunat, aproape gata.@@', 'Awesome, almost there. ' => '@@Minunat, aproape gata.@@',
@ -302,6 +308,7 @@ return [
to facilitate the operation of this site. For more information read our {privacyPolicy}' => '@@Am agregat prelucrarea datelor mele personale și utilizarea cookie-urilor pentru a facilita funcționarea acestui site. Pentru mai multe informații, citiți {privacyPolicy}@@', to facilitate the operation of this site. For more information read our {privacyPolicy}' => '@@Am agregat prelucrarea datelor mele personale și utilizarea cookie-urilor pentru a facilita funcționarea acestui site. Pentru mai multe informații, citiți {privacyPolicy}@@',
'I aggree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => '@@Am agregat prelucrarea datelor mele personale și utilizarea cookie-urilor pentru a facilita funcționarea acestui site. Pentru mai multe informații, citiți {privacyPolicy}@@', 'I aggree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => '@@Am agregat prelucrarea datelor mele personale și utilizarea cookie-urilor pentru a facilita funcționarea acestui site. Pentru mai multe informații, citiți {privacyPolicy}@@',
'Insert the mobile phone number on which to receive text message.' => '@@@@', 'Insert the mobile phone number on which to receive text message.' => '@@@@',
'Insert the mobile phone number where you want to receive text message in international format.' => '@@@@',
'Insert the mobile phone number where you want to receive text message.' => '@@@@', 'Insert the mobile phone number where you want to receive text message.' => '@@@@',
'Invalid two-factor code' => '@@Cod de două factori nevalid@@', 'Invalid two-factor code' => '@@Cod de două factori nevalid@@',
'Last login' => '@@Ultima logare@@', 'Last login' => '@@Ultima logare@@',

View File

@ -281,17 +281,23 @@ return [
'Insert the code you received by SMS.' => '', 'Insert the code you received by SMS.' => '',
'Insert the code you received by email.' => '', 'Insert the code you received by email.' => '',
'Insert the mobile phone number where you want to receive text message in international format' => '', 'Insert the mobile phone number where you want to receive text message in international format' => '',
'Mobile phone not found, please check your profile' => '',
'Mobile phone number' => '', 'Mobile phone number' => '',
'Mobile phone number successfully enabled.' => '', 'Mobile phone number successfully enabled.' => '',
'Please, enter the right code. The code is valid for {0} seconds. If you want to get a new code, please click on \'Cancel\' and repeat the login request.' => '', 'Please, enter the right code. The code is valid for {0} seconds. If you want to get a new code, please click on \'Cancel\' and repeat the login request.' => '',
'Please, enter the right code. The code is valid for {0} seconds. If you want to get a new code, please close this window and repeat the enabling request.' => '', 'Please, enter the right code. The code is valid for {0} seconds. If you want to get a new code, please close this window and repeat the enabling request.' => '',
'Submit' => '', 'Submit' => '',
'Text message' => '', 'Text message' => '',
'The email address set is: "{0}".' => '',
'The email sending failed, please check your configuration.' => '',
'The phone number set is: "{0}".' => '',
'The sms sending failed, please check your configuration.' => '',
'This is the code to insert to enable two factor authentication' => '', 'This is the code to insert to enable two factor authentication' => '',
'Two factor authentication code by SMS' => '', 'Two factor authentication code by SMS' => '',
'Two factor authentication code by email' => '', 'Two factor authentication code by email' => '',
'Unfortunately, you can not work with this site without giving us consent to process your data.' => '', 'Unfortunately, you can not work with this site without giving us consent to process your data.' => '',
'Your consent is required to work with this site' => '', 'Your consent is required to work with this site' => '',
'Your two factor authentication method is based on "{0}".' => '',
'A message has been sent to your email address. ' => '@@Сообщение было отправлено на вашу электронную почту@@', 'A message has been sent to your email address. ' => '@@Сообщение было отправлено на вашу электронную почту@@',
'An email has been sent with instructions for resetting your password' => '@@Вам отправлено письмо с инструкциями по смене пароля@@', 'An email has been sent with instructions for resetting your password' => '@@Вам отправлено письмо с инструкциями по смене пароля@@',
'Awesome, almost there. ' => '@@Замечательно, почти готово!@@', 'Awesome, almost there. ' => '@@Замечательно, почти готово!@@',
@ -300,6 +306,7 @@ return [
'Enable Two-factor auth' => '@@Включить двухфакторную авторизацию@@', 'Enable Two-factor auth' => '@@Включить двухфакторную авторизацию@@',
'Every user having your role has two factor authentication mandatory, you must enable it' => '@@@@', 'Every user having your role has two factor authentication mandatory, you must enable it' => '@@@@',
'Insert the mobile phone number on which to receive text message.' => '@@@@', 'Insert the mobile phone number on which to receive text message.' => '@@@@',
'Insert the mobile phone number where you want to receive text message in international format.' => '@@@@',
'Insert the mobile phone number where you want to receive text message.' => '@@@@', 'Insert the mobile phone number where you want to receive text message.' => '@@@@',
'Invalid two-factor code' => '@@Неверный код двухфакторной авторизации@@', 'Invalid two-factor code' => '@@Неверный код двухфакторной авторизации@@',
'Last login' => '@@Последний вход@@', 'Last login' => '@@Последний вход@@',

View File

@ -142,6 +142,7 @@ return [
'Login' => '', 'Login' => '',
'Logout' => '', 'Logout' => '',
'Manage users' => '', 'Manage users' => '',
'Mobile phone not found, please check your profile' => '',
'Mobile phone number' => '', 'Mobile phone number' => '',
'Mobile phone number successfully enabled.' => '', 'Mobile phone number successfully enabled.' => '',
'Name' => '', 'Name' => '',
@ -207,6 +208,10 @@ return [
'Thank you, registration is now complete.' => '', 'Thank you, registration is now complete.' => '',
'The "recaptcha" component must be configured.' => '', 'The "recaptcha" component must be configured.' => '',
'The confirmation link is invalid or expired. Please try requesting a new one.' => '', 'The confirmation link is invalid or expired. Please try requesting a new one.' => '',
'The email address set is: "{0}".' => '',
'The email sending failed, please check your configuration.' => '',
'The phone number set is: "{0}".' => '',
'The sms sending failed, please check your configuration.' => '',
'The verification code is incorrect.' => '', 'The verification code is incorrect.' => '',
'There is neither role nor permission with name "{0}"' => '', 'There is neither role nor permission with name "{0}"' => '',
'There was an error in saving user' => '', 'There was an error in saving user' => '',
@ -288,11 +293,13 @@ return [
'Your password has expired, you must change it now' => '', 'Your password has expired, you must change it now' => '',
'Your personal information has been removed' => '', 'Your personal information has been removed' => '',
'Your profile has been updated' => '', 'Your profile has been updated' => '',
'Your two factor authentication method is based on "{0}".' => '',
'privacy policy' => '', 'privacy policy' => '',
'{0, date, MMM dd, YYYY HH:mm}' => '', '{0, date, MMM dd, YYYY HH:mm}' => '',
'{0, date, MMMM dd, YYYY HH:mm}' => '', '{0, date, MMMM dd, YYYY HH:mm}' => '',
'{0} cannot be blank.' => '', '{0} cannot be blank.' => '',
'Insert the mobile phone number on which to receive text message.' => '@@@@', 'Insert the mobile phone number on which to receive text message.' => '@@@@',
'Insert the mobile phone number where you want to receive text message in international format.' => '@@@@',
'Insert the mobile phone number where you want to receive text message.' => '@@@@', 'Insert the mobile phone number where you want to receive text message.' => '@@@@',
'Mobile phone number not registered.' => '@@@@', 'Mobile phone number not registered.' => '@@@@',
]; ];

View File

@ -142,6 +142,7 @@ return [
'Login' => '', 'Login' => '',
'Logout' => '', 'Logout' => '',
'Manage users' => '', 'Manage users' => '',
'Mobile phone not found, please check your profile' => '',
'Mobile phone number' => '', 'Mobile phone number' => '',
'Mobile phone number successfully enabled.' => '', 'Mobile phone number successfully enabled.' => '',
'Name' => '', 'Name' => '',
@ -207,6 +208,10 @@ return [
'Thank you, registration is now complete.' => '', 'Thank you, registration is now complete.' => '',
'The "recaptcha" component must be configured.' => '', 'The "recaptcha" component must be configured.' => '',
'The confirmation link is invalid or expired. Please try requesting a new one.' => '', 'The confirmation link is invalid or expired. Please try requesting a new one.' => '',
'The email address set is: "{0}".' => '',
'The email sending failed, please check your configuration.' => '',
'The phone number set is: "{0}".' => '',
'The sms sending failed, please check your configuration.' => '',
'The verification code is incorrect.' => '', 'The verification code is incorrect.' => '',
'There is neither role nor permission with name "{0}"' => '', 'There is neither role nor permission with name "{0}"' => '',
'There was an error in saving user' => '', 'There was an error in saving user' => '',
@ -288,11 +293,13 @@ return [
'Your password has expired, you must change it now' => '', 'Your password has expired, you must change it now' => '',
'Your personal information has been removed' => '', 'Your personal information has been removed' => '',
'Your profile has been updated' => '', 'Your profile has been updated' => '',
'Your two factor authentication method is based on "{0}".' => '',
'privacy policy' => '', 'privacy policy' => '',
'{0, date, MMM dd, YYYY HH:mm}' => '', '{0, date, MMM dd, YYYY HH:mm}' => '',
'{0, date, MMMM dd, YYYY HH:mm}' => '', '{0, date, MMMM dd, YYYY HH:mm}' => '',
'{0} cannot be blank.' => '', '{0} cannot be blank.' => '',
'Insert the mobile phone number on which to receive text message.' => '@@@@', 'Insert the mobile phone number on which to receive text message.' => '@@@@',
'Insert the mobile phone number where you want to receive text message in international format.' => '@@@@',
'Insert the mobile phone number where you want to receive text message.' => '@@@@', 'Insert the mobile phone number where you want to receive text message.' => '@@@@',
'Mobile phone number not registered.' => '@@@@', 'Mobile phone number not registered.' => '@@@@',
]; ];

View File

@ -280,6 +280,7 @@ return [
'Insert the code you received by SMS.' => '', 'Insert the code you received by SMS.' => '',
'Insert the code you received by email.' => '', 'Insert the code you received by email.' => '',
'Insert the mobile phone number where you want to receive text message in international format' => '', 'Insert the mobile phone number where you want to receive text message in international format' => '',
'Mobile phone not found, please check your profile' => '',
'Mobile phone number' => '', 'Mobile phone number' => '',
'Mobile phone number successfully enabled.' => '', 'Mobile phone number successfully enabled.' => '',
'Please, enter the right code. The code is valid for {0} seconds. If you want to get a new code, please click on \'Cancel\' and repeat the login request.' => '', 'Please, enter the right code. The code is valid for {0} seconds. If you want to get a new code, please click on \'Cancel\' and repeat the login request.' => '',
@ -287,11 +288,16 @@ return [
'Recovery message sent' => '', 'Recovery message sent' => '',
'Submit' => '', 'Submit' => '',
'Text message' => '', 'Text message' => '',
'The email address set is: "{0}".' => '',
'The email sending failed, please check your configuration.' => '',
'The phone number set is: "{0}".' => '',
'The sms sending failed, please check your configuration.' => '',
'This is the code to insert to enable two factor authentication' => '', 'This is the code to insert to enable two factor authentication' => '',
'Two factor authentication code by SMS' => '', 'Two factor authentication code by SMS' => '',
'Two factor authentication code by email' => '', 'Two factor authentication code by email' => '',
'Unfortunately, you can not work with this site without giving us consent to process your data.' => '', 'Unfortunately, you can not work with this site without giving us consent to process your data.' => '',
'Your consent is required to work with this site' => '', 'Your consent is required to work with this site' => '',
'Your two factor authentication method is based on "{0}".' => '',
'A message has been sent to your email address. ' => '@@На вашу електронну адресу надіслано повідомлення@@', 'A message has been sent to your email address. ' => '@@На вашу електронну адресу надіслано повідомлення@@',
'An email has been sent with instructions for resetting your password' => '@@Лист з інструкціями по зміні пароля надіслано на електронну адресу@@', 'An email has been sent with instructions for resetting your password' => '@@Лист з інструкціями по зміні пароля надіслано на електронну адресу@@',
'Awesome, almost there. ' => '@@Чудово, майже все.@@', 'Awesome, almost there. ' => '@@Чудово, майже все.@@',
@ -301,6 +307,7 @@ return [
'Every user having your role has two factor authentication mandatory, you must enable it' => '@@@@', 'Every user having your role has two factor authentication mandatory, you must enable it' => '@@@@',
'I aggree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => '@@Я даю згоду на обробку моїх персональних даних та на використання cookie даним сайтом. Для більш детальної інформації ознайомтесь з {privacyPolicy}@@', 'I aggree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => '@@Я даю згоду на обробку моїх персональних даних та на використання cookie даним сайтом. Для більш детальної інформації ознайомтесь з {privacyPolicy}@@',
'Insert the mobile phone number on which to receive text message.' => '@@@@', 'Insert the mobile phone number on which to receive text message.' => '@@@@',
'Insert the mobile phone number where you want to receive text message in international format.' => '@@@@',
'Insert the mobile phone number where you want to receive text message.' => '@@@@', 'Insert the mobile phone number where you want to receive text message.' => '@@@@',
'Invalid two-factor code' => '@@Невірний код двофакторної авторизації@@', 'Invalid two-factor code' => '@@Невірний код двофакторної авторизації@@',
'Last login' => '@@Останній вхід@@', 'Last login' => '@@Останній вхід@@',

View File

@ -142,6 +142,7 @@ return [
'Login' => '', 'Login' => '',
'Logout' => '', 'Logout' => '',
'Manage users' => '', 'Manage users' => '',
'Mobile phone not found, please check your profile' => '',
'Mobile phone number' => '', 'Mobile phone number' => '',
'Mobile phone number successfully enabled.' => '', 'Mobile phone number successfully enabled.' => '',
'Name' => '', 'Name' => '',
@ -207,6 +208,10 @@ return [
'Thank you, registration is now complete.' => '', 'Thank you, registration is now complete.' => '',
'The "recaptcha" component must be configured.' => '', 'The "recaptcha" component must be configured.' => '',
'The confirmation link is invalid or expired. Please try requesting a new one.' => '', 'The confirmation link is invalid or expired. Please try requesting a new one.' => '',
'The email address set is: "{0}".' => '',
'The email sending failed, please check your configuration.' => '',
'The phone number set is: "{0}".' => '',
'The sms sending failed, please check your configuration.' => '',
'The verification code is incorrect.' => '', 'The verification code is incorrect.' => '',
'There is neither role nor permission with name "{0}"' => '', 'There is neither role nor permission with name "{0}"' => '',
'There was an error in saving user' => '', 'There was an error in saving user' => '',
@ -288,11 +293,13 @@ return [
'Your password has expired, you must change it now' => '', 'Your password has expired, you must change it now' => '',
'Your personal information has been removed' => '', 'Your personal information has been removed' => '',
'Your profile has been updated' => '', 'Your profile has been updated' => '',
'Your two factor authentication method is based on "{0}".' => '',
'privacy policy' => '', 'privacy policy' => '',
'{0, date, MMM dd, YYYY HH:mm}' => '', '{0, date, MMM dd, YYYY HH:mm}' => '',
'{0, date, MMMM dd, YYYY HH:mm}' => '', '{0, date, MMMM dd, YYYY HH:mm}' => '',
'{0} cannot be blank.' => '', '{0} cannot be blank.' => '',
'Insert the mobile phone number on which to receive text message.' => '@@@@', 'Insert the mobile phone number on which to receive text message.' => '@@@@',
'Insert the mobile phone number where you want to receive text message in international format.' => '@@@@',
'Insert the mobile phone number where you want to receive text message.' => '@@@@', 'Insert the mobile phone number where you want to receive text message.' => '@@@@',
'Mobile phone number not registered.' => '@@@@', 'Mobile phone number not registered.' => '@@@@',
]; ];

View File

@ -142,6 +142,7 @@ return [
'Login' => '', 'Login' => '',
'Logout' => '', 'Logout' => '',
'Manage users' => '', 'Manage users' => '',
'Mobile phone not found, please check your profile' => '',
'Mobile phone number' => '', 'Mobile phone number' => '',
'Mobile phone number successfully enabled.' => '', 'Mobile phone number successfully enabled.' => '',
'Name' => '', 'Name' => '',
@ -207,6 +208,10 @@ return [
'Thank you, registration is now complete.' => '', 'Thank you, registration is now complete.' => '',
'The "recaptcha" component must be configured.' => '', 'The "recaptcha" component must be configured.' => '',
'The confirmation link is invalid or expired. Please try requesting a new one.' => '', 'The confirmation link is invalid or expired. Please try requesting a new one.' => '',
'The email address set is: "{0}".' => '',
'The email sending failed, please check your configuration.' => '',
'The phone number set is: "{0}".' => '',
'The sms sending failed, please check your configuration.' => '',
'The verification code is incorrect.' => '', 'The verification code is incorrect.' => '',
'There is neither role nor permission with name "{0}"' => '', 'There is neither role nor permission with name "{0}"' => '',
'There was an error in saving user' => '', 'There was an error in saving user' => '',
@ -288,11 +293,13 @@ return [
'Your password has expired, you must change it now' => '', 'Your password has expired, you must change it now' => '',
'Your personal information has been removed' => '', 'Your personal information has been removed' => '',
'Your profile has been updated' => '', 'Your profile has been updated' => '',
'Your two factor authentication method is based on "{0}".' => '',
'privacy policy' => '', 'privacy policy' => '',
'{0, date, MMM dd, YYYY HH:mm}' => '', '{0, date, MMM dd, YYYY HH:mm}' => '',
'{0, date, MMMM dd, YYYY HH:mm}' => '', '{0, date, MMMM dd, YYYY HH:mm}' => '',
'{0} cannot be blank.' => '', '{0} cannot be blank.' => '',
'Insert the mobile phone number on which to receive text message.' => '@@@@', 'Insert the mobile phone number on which to receive text message.' => '@@@@',
'Insert the mobile phone number where you want to receive text message in international format.' => '@@@@',
'Insert the mobile phone number where you want to receive text message.' => '@@@@', 'Insert the mobile phone number where you want to receive text message.' => '@@@@',
'Mobile phone number not registered.' => '@@@@', 'Mobile phone number not registered.' => '@@@@',
]; ];

View File

@ -12,6 +12,7 @@
use yii\helpers\Html; use yii\helpers\Html;
use yii\helpers\Url; use yii\helpers\Url;
use yii\widgets\ActiveForm; use yii\widgets\ActiveForm;
use dmstr\widgets\Alert;
/** /**
* @var yii\web\View $this * @var yii\web\View $this
@ -102,43 +103,70 @@ $module = Yii::$app->getModule('user');
<p> <p>
<?= Yii::t('usuario', 'Two factor authentication protects you in case of stolen credentials') ?>. <?= Yii::t('usuario', 'Two factor authentication protects you in case of stolen credentials') ?>.
</p> </p>
<?php if ($module->enableTwoFactorAuthentication && !$model->getUser()->auth_tf_enabled): <?php if (!$model->getUser()->auth_tf_enabled):
$validators = $module->twoFactorAuthenticationValidators; $validators = $module->twoFactorAuthenticationValidators;
$theFirstFound = false;
foreach( $validators as $name => $validator ) { foreach( $validators as $name => $validator ) {
$description = $validator[ "description" ]; if($validator[ "enabled" ]){
$checked = $name=='google-authenticator'?'checked':''; // I want to check in the radio field the first validator I get
?> if(!$theFirstFound){
<div class="form-check"> $checked = 'checked';
<input class="form-check-input" type="radio" name="2famethod" id="<?= $name?>" value="<?= $name?>" <?= $checked?>> $theFirstFound = true;
<label class="form-check-label" for="<?= $name?>"> }
<?= $description?> $description = $validator[ "description" ];
</label> ?>
</div> <div class="form-check">
<?php <input class="form-check-input" type="radio" name="2famethod" id="<?= $name?>" value="<?= $name?>" <?= $checked?>>
<label class="form-check-label" for="<?= $name?>">
<?= $description?>
</label>
</div>
<?php
$checked = '';
}
} ; } ;
endif; ?> ?>
<div class="text-right">
<?= Html::a(
Yii::t('usuario', 'Disable two factor authentication'),
['two-factor-disable', 'id' => $model->getUser()->id],
[
'id' => 'disable_tf_btn',
'class' => 'btn btn-warning ' . ($model->getUser()->auth_tf_enabled ? '' : 'hide'),
'data-method' => 'post',
'data-confirm' => Yii::t('usuario', 'This will disable two factor authentication. Are you sure?'),
]
) ?>
<?= Html::a( <?= Html::a(
Yii::t('usuario', 'Enable two factor authentication'), Yii::t('usuario', 'Enable two factor authentication'),
'#tfmodal', '#tfmodal',
[ [
'id' => 'enable_tf_btn', 'id' => 'enable_tf_btn',
'class' => 'btn btn-info ' . ($model->getUser()->auth_tf_enabled ? 'hide' : ''), 'class' => 'btn btn-info',
'data-toggle' => 'modal', 'data-toggle' => 'modal',
'data-target' => '#tfmodal' 'data-target' => '#tfmodal'
] ]
) ?> ) ?>
</div> <?php else:
?>
<p>
<?php
$method = $model->getUser()->auth_tf_type;
$message = '';
switch ($method) {
case 'email':
$message = Yii::t('usuario', 'The email address set is: "{0}".', [ $model->getUser()->email] );
break;
case 'sms':
$message = Yii::t('usuario', 'The phone number set is: "{0}".', [ $model->getUser()->auth_tf_mobile_phone]);
break;
}
?>
<?= Yii::t('usuario', 'Your two factor authentication method is based on "{0}".', [$method] ) .' ' . $message ?>
</p>
<div class="text-right">
<?= Html::a(
Yii::t('usuario', 'Disable two factor authentication'),
['two-factor-disable', 'id' => $model->getUser()->id],
[
'id' => 'disable_tf_btn',
'class' => 'btn btn-warning ',
'data-method' => 'post',
'data-confirm' => Yii::t('usuario', 'This will disable two factor authentication. Are you sure?'),
]
) ?>
</div>
<?php
endif; ?>
</div> </div>
</div> </div>
<?php endif; ?> <?php endif; ?>