Merge remote-tracking branch 'upstream/master'

This commit is contained in:
Alec Pritchard
2022-03-09 10:40:56 +00:00
parent c1517f69d5
commit ec61f5c9ed
43 changed files with 571 additions and 715 deletions

79
.github/workflows/php.yml vendored Normal file
View File

@ -0,0 +1,79 @@
name: Build
on: [push, pull_request]
jobs:
build:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
operating-system: ['ubuntu-latest']
php-versions: ['8.1', '8.0','7.4','7.3', '7.2','7.1','7.0', '5.6']
services:
mariadb:
image: mariadb:latest
ports:
- 3306:3306
env:
MYSQL_USER: user
MYSQL_PASSWORD: password
MYSQL_DATABASE: yii2-usuario-test
MYSQL_ROOT_PASSWORD: password
options: --health-cmd="mysqladmin ping" --health-interval=5s --health-timeout=2s --health-retries=3
steps:
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-versions }}
extensions: mbstring, intl, gd
ini-values: post_max_size=256M, max_execution_time=180
coverage: xdebug
- uses: actions/checkout@v2
- name: Verify MariaDB connection
run: |
while ! mysqladmin ping -h"127.0.0.1" --silent; do
sleep 1
done
- name: Validate PHP version
run: php -v
- name: Cache Composer packages
id: composer-cache
uses: actions/cache@v2
with:
path: vendor
key: ${{ runner.os }}-php-${{ hashFiles('**/composer.lock') }}
restore-keys: |
${{ runner.os }}-php-
- name: Verify db connection & databases
run: mysql -e "SHOW DATABASES;" -h127.0.0.1 -uroot -ppassword
- name: Install
run: composer install --prefer-dist --no-interaction
- name: Run migrations
run: php tests/_app/yii.php migrate/up --interactive=0 --migrationPath=@yii/rbac/migrations
- name: Run tests
run: XDEBUG_MODE=coverage php vendor/bin/codecept run --coverage --coverage-xml
- name: Archive failed tests artifacts - test output & log
uses: actions/upload-artifact@v2
if: failure()
with:
name: test-outputs-php-${{ matrix.php-versions }}
path: tests/_output

View File

@ -1,65 +0,0 @@
# faster builds on new travis setup not using sudo
sudo: false
language: php
php:
- 5.6
- 7.1
- 7.2
- 7.3
- 7.4
- nightly
services:
- mysql
matrix:
fast_finish: true
allow_failures:
- php: nightly
# cache vendor dirs
# cache:
# directories:
# - vendor
# - $HOME/.composer/cache
install:
- |
if [[ $TRAVIS_PHP_VERSION != '7.1' && $TRAVIS_PHP_VERSION != '7.2' && $TRAVIS_PHP_VERSION != hhv* ]]; then
# disable xdebug for performance reasons when code coverage is not needed
# note: xdebug on hhvm is disabled by default
phpenv config-rm xdebug.ini || echo "xdebug is not installed"
fi
- travis_retry composer self-update && composer --version
- export PATH="$HOME/.composer/vendor/bin:$PATH"
- COMPOSER_MEMORY_LIMIT=-1 travis_retry composer install --prefer-dist --no-interaction
before_script:
- php -r "echo INTL_ICU_VERSION . \"\n\";"
- php -r "echo INTL_ICU_DATA_VERSION . \"\n\";"
- mysql --version
# initialize database
- mysql -e 'CREATE DATABASE `yii2-usuario-test`;';
- php tests/_app/yii.php migrate/up --interactive=0
- php tests/_app/yii.php migrate/up --interactive=0 --migrationPath=@yii/rbac/migrations
# enable code coverage on PHP 7.2, only one PHP version needs to generate coverage data
- |
if [ $TRAVIS_PHP_VERSION = '7.2' ]; then
CODECEPTION_FLAGS="--coverage-xml"
fi
script:
- composer validate --no-check-lock
- vendor/bin/codecept run $CODECEPTION_FLAGS
after_script:
- |
if [ $TRAVIS_PHP_VERSION = '7.2' ]; then
travis_retry wget https://scrutinizer-ci.com/ocular.phar
php ocular.phar code-coverage:upload --format=php-clover tests/_output/coverage.xml
fi

View File

@ -1,12 +1,19 @@
# CHANGELOG
## work in progress
- Fix replace non-working travis build with working github actions build (TonisOrmisson)
- Fix user login events not triggered on ajax requests (TonisOrmisson)
- Enh: Added minimum requirements when a new password is automatically generated (MatteoF96)
- Fix #380: Avoid rewriting AccessRule::matchRole (maxxer)
- Fix #378: Add module attribute 'disableIpLogging' (jkmssoft)
- Enh #387: Added Persian translation (hadi-aj)
- Fix #384: Delete flash messages after consuming (cgsmith)
- Enh: Added SK translations (snickom)
- Fix #391: Always create flash messages, allow `enableFlashMessages` only to dictate display (ajmedway)
<<<<<<< Updated upstream
- Fix: allow password_changed_at to be saved when reseting password (p4blojf)
- Fix #430: Moved EVENT_BEFORE_PROFILE_UPDATE to correct place (eluhr)
=======
>>>>>>> Stashed changes
## 1.5.1 April 5, 2020
- Fix #370: Extending view fix (effsoft)

View File

@ -6,7 +6,8 @@ Yii 2 Usuario Extension
[![Packagist Version](https://img.shields.io/packagist/v/2amigos/yii2-usuario.svg?style=flat-square)](https://packagist.org/packages/2amigos/yii2-usuario)
[![Latest Stable Version](https://poser.pugx.org/2amigos/yii2-usuario/version)](https://packagist.org/packages/2amigos/yii2-usuario)
[![Total Downloads](https://poser.pugx.org/2amigos/yii2-usuario/downloads)](https://packagist.org/packages/2amigos/yii2-usuario)
[![Build Status](https://travis-ci.org/2amigos/yii2-usuario.svg?branch=master)](https://travis-ci.org/2amigos/yii2-usuario)
[![Build Status](https://github.com/2amigos/yii2-usuario/actions/workflows/php.yml/badge.svg)](https://github.com/2amigos/yii2-usuario/actions/)
[![Latest Unstable Version](https://poser.pugx.org/2amigos/yii2-usuario/v/unstable)](//packagist.org/packages/2amigos/yii2-usuario)
[![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/2amigos/yii2-usuario/badges/quality-score.png?b=master)](https://scrutinizer-ci.com/g/2amigos/yii2-usuario/?branch=master)

View File

@ -4,8 +4,8 @@ paths:
log: tests/_output
data: tests/_data
helpers: tests/_support
bootstrap: _bootstrap.php
settings:
bootstrap: _bootstrap.php
colors: true
memory_limit: 1024M
modules:
@ -13,11 +13,12 @@ modules:
Db:
dsn: 'mysql:host=127.0.0.1;dbname=yii2-usuario-test'
user: 'root'
password: ''
password: 'password'
dump: tests/_data/schema.sql
Yii2:
configFile: 'tests/_app/config/test.php'
cleanup: false
transaction: false
coverage:
enabled: true
whitelist:

View File

@ -30,7 +30,7 @@ Put this in your migration:
$auth = Yii::$app->authManager;
// create a role named "administrator"
$administratorRole = $auth->createRole('administrator');
$administratorRole = $auth->createRole('admin');
$administratorRole->description = 'Administrator';
$auth->add($administratorRole);
@ -65,7 +65,7 @@ Put this in your migration:
// delete admin-user and administrator role
$administratorRole = $auth->getRole("administrator");
$user = \Da\User\Model\User::findOne(['name'=>"admin"]);
$user = \Da\User\Model\User::findOne(['username'=>"admin"]);
$auth->revoke($administratorRole, $user->id);
$user->delete();
$auth->remove($administratorRole);

View File

@ -220,5 +220,17 @@ Set to `true` to restrict user assignments to roles only.
If `true` registration and last login IPs are not logged into users table, instead a dummy 127.0.0.1 is used
#### minPasswordRequirements (type: `array`, default: `['lower' => 1, 'digit' => 1, 'upper' => 1]`)
Minimum requirements when a new password is automatically generated.
Array structure: `"requirement" => minimum_number_characters`.
Possible array keys:
- lower: minimum number of lowercase characters;
- upper: minimum number of uppercase characters;
- digit: minimum number of digits;
- special: minimum number of special characters;
- min: minimum number of characters (= minimum length).
© [2amigos](http://www.2amigos.us/) 2013-2019

View File

@ -189,8 +189,8 @@ class AdminController extends Controller
$this->make(AjaxRequestModelValidator::class, [$profile])->validate();
if ($profile->load(Yii::$app->request->post())) {
if ($profile->save()) {
$this->trigger(UserEvent::EVENT_BEFORE_PROFILE_UPDATE, $event);
if ($profile->save()) {
Yii::$app->getSession()->setFlash('success', Yii::t('usuario', 'Profile details have been updated'));
$this->trigger(UserEvent::EVENT_AFTER_PROFILE_UPDATE, $event);

View File

@ -125,7 +125,14 @@ class SecurityController extends Controller
if (Yii::$app->request->isAjax && $form->load(Yii::$app->request->post())) {
Yii::$app->response->format = Response::FORMAT_JSON;
return ActiveForm::validate($form);
$this->trigger(FormEvent::EVENT_BEFORE_LOGIN, $event);
$errors = ActiveForm::validate($form);
if(empty($errors)) {
$this->trigger(FormEvent::EVENT_AFTER_LOGIN, $event);
return $errors;
}
$this->trigger(FormEvent::EVENT_FAILED_LOGIN, $event);
return $errors;
}
if ($form->load(Yii::$app->request->post())) {

View File

@ -11,8 +11,10 @@
namespace Da\User\Helper;
use Yii;
use yii\base\Exception;
use yii\base\Security;
use yii\base\InvalidConfigException;
class SecurityHelper
{
@ -60,25 +62,48 @@ class SecurityHelper
return $this->security->validatePassword($password, $hash);
}
public function generatePassword($length)
public function generatePassword($length, $minPasswordRequirements = null)
{
$sets = [
'abcdefghjkmnpqrstuvwxyz',
'ABCDEFGHJKMNPQRSTUVWXYZ',
'23456789',
'lower' => 'abcdefghjkmnpqrstuvwxyz',
'upper' => 'ABCDEFGHJKMNPQRSTUVWXYZ',
'digit' => '123456789',
'special' => '!#$%&*+,-.:;<=>?@_~'
];
$all = '';
$password = '';
foreach ($sets as $set) {
if (!isset($minPasswordRequirements)) {
if (isset(Yii::$app->getModule('user')->minPasswordRequirements)) {
$minPasswordRequirements = Yii::$app->getModule('user')->minPasswordRequirements;
}
else {
$minPasswordRequirements = [
'lower' => 1,
'digit' => 1,
'upper' => 1,
];
}
}
if (isset($minPasswordRequirements['min']) && $length < $minPasswordRequirements['min']) {
$length = $minPasswordRequirements['min'];
}
foreach ($sets as $setKey => $set) {
if (isset($minPasswordRequirements[$setKey])) {
for ($i = 0; $i < $minPasswordRequirements[$setKey]; $i++) {
$password .= $set[array_rand(str_split($set))];
}
}
$all .= $set;
}
$passwordLength = strlen($password);
if ($passwordLength > $length) {
throw new InvalidConfigException('The minimum length is incompatible with other minimum requirements.');
}
$all = str_split($all);
for ($i = 0; $i < $length - count($sets); ++$i) {
for ($i = 0; $i < $length - $passwordLength; ++$i) {
$password .= $all[array_rand($all)];
}
$password = str_shuffle($password);
return $password;

View File

@ -211,6 +211,23 @@ class Module extends BaseModule
*/
public $disableIpLogging = false;
/**
* @var array Minimum requirements when a new password is automatically generated.
* Array structure: `requirement => minimum number characters`.
*
* Possible array keys:
* - lower: minimum number of lowercase characters;
* - upper: minimum number of uppercase characters;
* - digit: minimum number of digits;
* - special: minimum number of special characters;
* - min: minimum number of characters (= minimum length).
*/
public $minPasswordRequirements = [
'lower' => 1,
'digit' => 1,
'upper' => 1,
];
/**
* @return string with the hit to be used with the give consent checkbox
*/

View File

@ -31,6 +31,6 @@ class ResetPasswordService implements ServiceInterface
public function run()
{
$this->model->password = $this->password;
return (bool)$this->model->save(false, ['password_hash']);
return (bool)$this->model->save(false, ['password_hash','password_changed_at']);
}
}

View File

@ -57,7 +57,7 @@ class UserCreateService implements ServiceInterface
$model->confirmed_at = time();
$model->password = !empty($model->password)
? $model->password
: $this->securityHelper->generatePassword(8);
: $this->securityHelper->generatePassword(8, $this->getModule('user')->minPasswordRequirements);
/** @var UserEvent $event */
$event = $this->make(UserEvent::class, [$model]);
@ -87,6 +87,7 @@ class UserCreateService implements ServiceInterface
$model->addError('username', $error_msg);
}
$transaction->rollBack();
Yii::error($error_msg, 'usuario');
return false;
}
$transaction->commit();

View File

@ -51,7 +51,7 @@ class UserRegisterService implements ServiceInterface
try {
$model->confirmed_at = $this->getModule()->enableEmailConfirmation ? null : time();
$model->password = $this->getModule()->generatePasswords
? $this->securityHelper->generatePassword(8)
? $this->securityHelper->generatePassword(8, $this->getModule('user')->minPasswordRequirements)
: $model->password;
$event = $this->make(UserEvent::class, [$model]);

View File

@ -17,9 +17,6 @@
* NOTE: this file must be saved in UTF-8 encoding.
*/
return [
'I agree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => '@@@@',
'privacy policy' => '@@@@',
'{0, date, MMM dd, YYYY HH:mm}' => '@@@@',
'(not set)' => '',
'A confirmation message has been sent to your new email address' => '',
'A message has been sent to your email address. It contains a confirmation link that you must click to complete registration.' => '',
@ -278,30 +275,4 @@ return [
'Your profile has been updated' => '',
'{0, date, MMMM dd, YYYY HH:mm}' => '',
'{0} cannot be blank.' => '',
'A message has been sent to your email address. ' => '@@@@',
'An email has been sent with instructions for resetting your password' => '@@@@',
'Awesome, almost there. ' => '@@@@',
'Class "{0}" does not exist' => '@@@@',
'Disable Two-Factor Auth' => '@@@@',
'Enable Two-factor auth' => '@@@@',
'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}' => '@@@@',
'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}' => '@@@@',
'Invalid two-factor code' => '@@@@',
'Last login' => '@@@@',
'Registration ip' => '@@@@',
'Rule class can not be instantiated' => '@@@@',
'Rule class must extend "yii\\rbac\\Rule"' => '@@@@',
'This will disable two-factor auth. Are you sure?' => '@@@@',
'Two Factor Authentication' => '@@@@',
'Two factor authentication protects you against stolen credentials' => '@@@@',
'Two factor successfully enabled.' => '@@@@',
'Two-Factor Authentication' => '@@@@',
'Two-factor auth protects you against stolen credentials' => '@@@@',
'Two-factor authentication code' => '@@@@',
'Two-factor authorization has been disabled.' => '@@@@',
'Two-factor code' => '@@@@',
'Unable to disable two-factor authorization.' => '@@@@',
'We couldn\'t re-send the mail to confirm your address. ' => '@@@@',
'We have sent confirmation links to both old and new email addresses. ' => '@@@@',
];

View File

@ -17,9 +17,6 @@
* NOTE: this file must be saved in UTF-8 encoding.
*/
return [
'I agree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => '@@@@',
'privacy policy' => '@@@@',
'{0, date, MMM dd, YYYY HH:mm}' => '@@@@',
'(not set)' => '',
'A confirmation message has been sent to your new email address' => '',
'A message has been sent to your email address. It contains a confirmation link that you must click to complete registration.' => '',
@ -278,30 +275,4 @@ return [
'Your profile has been updated' => '',
'{0, date, MMMM dd, YYYY HH:mm}' => '',
'{0} cannot be blank.' => '',
'A message has been sent to your email address. ' => '@@@@',
'An email has been sent with instructions for resetting your password' => '@@@@',
'Awesome, almost there. ' => '@@@@',
'Class "{0}" does not exist' => '@@@@',
'Disable Two-Factor Auth' => '@@@@',
'Enable Two-factor auth' => '@@@@',
'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}' => '@@@@',
'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}' => '@@@@',
'Invalid two-factor code' => '@@@@',
'Last login' => '@@@@',
'Registration ip' => '@@@@',
'Rule class can not be instantiated' => '@@@@',
'Rule class must extend "yii\\rbac\\Rule"' => '@@@@',
'This will disable two-factor auth. Are you sure?' => '@@@@',
'Two Factor Authentication' => '@@@@',
'Two factor authentication protects you against stolen credentials' => '@@@@',
'Two factor successfully enabled.' => '@@@@',
'Two-Factor Authentication' => '@@@@',
'Two-factor auth protects you against stolen credentials' => '@@@@',
'Two-factor authentication code' => '@@@@',
'Two-factor authorization has been disabled.' => '@@@@',
'Two-factor code' => '@@@@',
'Unable to disable two-factor authorization.' => '@@@@',
'We couldn\'t re-send the mail to confirm your address. ' => '@@@@',
'We have sent confirmation links to both old and new email addresses. ' => '@@@@',
];

View File

@ -17,70 +17,9 @@
* NOTE: this file must be saved in UTF-8 encoding.
*/
return [
'An email with instructions to create a new password has been sent to {email} if '.
'it is associated with an {appName} account. Your existing password has not been changed.'
=> 'Eine Email mit Hinweisen, wie ein Kennwort erstellt wurde an {email} gesendet, '.
'sofern es mit dem Konto {appName} verbunden ist. Das aktuelle Kennwort wurde nicht geändert.',
'Are you sure you wish the user to change their password at next login?'
=> 'Bist Du sicher, dass der Benutzer sein Kennwort beim nächsten Anmelden ändern soll?',
'Back to privacy settings' => 'Zurück zu Privatsphäre-Einstellungen',
'Data processing consent' => 'Zustimmung zur Datenverarbeitung',
'Delete my account' => 'Mein Benutzerkonto löschen',
'Delete personal data' => 'Persönliche Daten löschen',
'Deleted by GDPR request' => 'Gelöscht gemäß DSGVO-Anforderung',
'Disable two factor authentication' => 'Zwei-Faktor-Authentifizierung deaktivieren',
'Download my data' => 'Eigene Daten herunterladen',
'Enable two factor authentication' => 'Zwei-Faktor-Authentifizierung aktivieren',
'Export my data' => 'Eigene Daten exportieren',
'Force password change at next login' => 'Kennwort-Änderung beim nächsten Anmelden erzwingen',
'Here you can download your personal data in a comma separated values format.'
=> 'Hier kannst Du eigene persönliche Daten in Komma-separiertem Format herunterladen',
'I agree processing of my personal data and the use of cookies to facilitate the operation of this site. '.
'For more information read our {privacyPolicy}'
=> 'Ich stimme der Verarbeitung meiner persönlichen Daten und der Benutzung von Cookies zur '.
'Vereinfachung der Benutzer dieses Services zu. Weitere Informationen stehen in unserer {privacyPolicy}',
'Invalid password' => 'Ungültiges Kennwort',
'Invalid two factor authentication code' => 'Ungültiger Zwei-Faktor-Authentifizierungs-Code',
'Last login IP' => 'Letzte Anmeldung von IP',
'Last login time' => 'Letzte Anmeldung',
'Last password change' => 'Letzte Kennwort-Änderung',
'Once you have deleted your data, you will not longer be able to sign in with this account.'
=> 'Wenn Du die eigenen Daten gelöscht hast, kannst Du Dich mit diesem Benutzernamen nicht mehr anmelden.',
'Password age' => 'Kennwort-Alter',
'Privacy' => 'Privatsphäre',
'Privacy settings' => 'Privatsphäre-Einstellungen',
'Rule class name' => 'Regel-Klassen-Name',
'Select rule...' => 'Regel auswählen...',
'There was an error in saving user' => 'Fehler beim Speichern des Benutzers',
'This will disable two factor authentication. Are you sure?'
=> 'Hiermit deaktivierst Du die Zwei-Faktor-Authentifizierung. Bist Du sicher?',
'This will remove your personal data from this site. You will no longer be able to sign in.'
=> 'Hiermit löschst Du Deine persönlichen Daten von diesem Service. '.
'Du wirst Dich dann nicht mehr anmelden können.',
'Two Factor Authentication (2FA)' => 'Zwei-Faktor-Authentifizierung (2FA)',
'Two factor authentication code' => 'Zwei-Faktor-Authentifizierungs-Code',
'Two factor authentication has been disabled.' => 'Zwei-Faktor-Authentifizierung wurde deaktiviert',
'Two factor authentication protects you in case of stolen credentials'
=> 'Zwei-Faktor-Authentifizierung schützt Dich bei gestohlenen Zugangsdaten',
'Two factor authentication successfully enabled.' => 'Zwei-Faktor-Authentifizierung wurde erfolgreich aktiviert',
'Unable to disable Two factor authentication.'
=> 'Fehler beim Deaktivieren der Zwei-Faktor-Authentifizierung',
'User will be required to change password at next login'
=> 'Der Benutzer muss bei der nächsten Aneldung sein kennwort ändern',
'You are about to delete all your personal data from this site.'
=> 'Du löschst damit alle persönlichen Daten von diesem Service',
'Your consent is required to register' => 'Du musst Deine Zustimmung registrieren',
'Your password has expired, you must change it now' => 'Dein Kennwort ist abgelaufen. Du musst es nun ändern',
'Your personal information has been removed' => 'Deine persönlichen Daten wurden gelöscht',
'privacy policy' => 'Datenschutzrichtlinie',
'A message has been sent to your email address. ' => 'Eine Nachricht wurde an Deine E-Mail Adresse gesendet',
'(not set)' => '(nicht gesetzt)',
'A confirmation message has been sent to your new email address'
=> 'Eine Bestätigungsnachricht wurde an Deine neue E-Mail Adresse gesendet',
'A message has been sent to your email address. It contains a confirmation link that you must '.
'click to complete registration.'
=> 'Eine Nachricht wurde an Deine E-Mail-Adresse gesendet. '.
'Sie enthält einen Bestätigungslink den Du anklicken musst, um die Registrierung abzuschließen.',
'A confirmation message has been sent to your new email address' => 'Eine Bestätigungsnachricht wurde an Deine neue E-Mail Adresse gesendet',
'A message has been sent to your email address. It contains a confirmation link that you must click to complete registration.' => 'Eine Nachricht wurde an Deine E-Mail-Adresse gesendet. Sie enthält einen Bestätigungslink den Du anklicken musst, um die Registrierung abzuschließen.',
'A new confirmation link has been sent' => 'Ein neuer Bestätigungs-Link wurde versendet',
'A password will be generated automatically if not provided' => 'Leer lassen, um automatisch ein Passwort zu generieren',
'Account' => 'Konto',
@ -89,12 +28,14 @@ return [
'Account details have been updated' => 'Kontodetails gespeichert',
'Account settings' => 'Kontoeinstellungen',
'Already registered? Sign in!' => 'Bereits registriert? Zur Anmeldung!',
'An email with instructions to create a new password has been sent to {email} if it is associated with an {appName} account. Your existing password has not been changed.' => 'Eine Email mit Hinweisen, wie ein Kennwort erstellt wurde an {email} gesendet, sofern es mit dem Konto {appName} verbunden ist. Das aktuelle Kennwort wurde nicht geändert.',
'An error occurred processing your request' => 'Es ist ein Fehler aufgetreten',
'Are you sure you want to block this user?' => 'Bist Du sicher, dass Du diesen Benutzer blockieren willst?',
'Are you sure you want to confirm this user?' => 'Bist Du sicher, dass Du diesen Benutzer bestätigen willst?',
'Are you sure you want to delete this user?' => 'Bist Du sicher, dass Du diesen Benutzer löschen willst?',
'Are you sure you want to switch to this user for the rest of this Session?' => 'Bist Du sicher, dass Du zu diesem Benutzer zu wechseln willst für den Rest dieser Session?',
'Are you sure you want to unblock this user?' => 'Bist Du sicher, dass Du diesen Benutzer wieder freischalten willst?',
'Are you sure you wish the user to change their password at next login?' => 'Bist Du sicher, dass der Benutzer sein Kennwort beim nächsten Anmelden ändern soll?',
'Are you sure you wish to send a password recovery email to this user?' => 'Bist Du sicher, dass Du eine Passwortwiederherstellungs-Mail an diesen Benutzer senden möchtest?',
'Are you sure? Deleted user can not be restored' => 'Bist Du sicher? Gelöschte Benutzer können nicht wiederhergestellt werden',
'Are you sure? There is no going back' => 'Bist Du sicher? Es gibt kein Zurück',
@ -110,6 +51,7 @@ return [
'Authorization rule has been updated.' => 'Berechtigungsregel wurde gespeichert.',
'Awesome, almost there. Now you need to click the confirmation link sent to your new email address.' => 'Fast geschafft. Nun musst Du nur noch den Aktivierungslink anklicken, der an Deine neue E-Mail Adresse gesendet wurde.',
'Awesome, almost there. Now you need to click the confirmation link sent to your old email address.' => 'Fast geschafft. Nun musst Du nur noch den Aktivierungslink anklicken, der an Deine alte E-Mail Adresse gesendet wurde.',
'Back to privacy settings' => 'Zurück zu Privatsphäre-Einstellungen',
'Bio' => 'Bio',
'Block' => 'Blockieren',
'Block status' => 'Blockadestatus',
@ -140,24 +82,35 @@ return [
'Credentials will be sent to the user by email' => 'Die Zugangsdaten werden dem Nutzer per E-Mail gesendet',
'Current password' => 'Aktuelles Passwort',
'Current password is not valid' => 'Das aktuelle Passwort ist nicht korrekt',
'Data processing consent' => 'Zustimmung zur Datenverarbeitung',
'Delete' => 'Löschen',
'Delete account' => 'Konto Löschen',
'Delete my account' => 'Mein Benutzerkonto löschen',
'Delete personal data' => 'Persönliche Daten löschen',
'Deleted by GDPR request' => 'Gelöscht gemäß DSGVO-Anforderung',
'Description' => 'Beschreibung',
'Didn\'t receive confirmation message?' => 'Bestätigungs-Mail nicht empfangen?',
'Disable two factor authentication' => 'Zwei-Faktor-Authentifizierung deaktivieren',
'Disconnect' => 'Trennen',
'Don\'t have an account? Sign up!' => 'Du hast noch kein Konto? Registrieren!',
'Download my data' => 'Eigene Daten herunterladen',
'Email' => 'E-Mail',
'Email (public)' => 'E-Mail (öffentlich)',
'Enable' => 'aktivieren',
'Enable two factor authentication' => 'Zwei-Faktor-Authentifizierung aktivieren',
'Error occurred while changing password' => 'Fehler beim Ändern des Passworts',
'Error occurred while confirming user' => 'Fehler beim Bestätigen des Benutzers',
'Error occurred while deleting user' => 'Fehler beim Löschen des Benutzers',
'Error sending registration message to "{email}". Please try again later.' => 'Fehler beim Senden der Registrierungsnachricht an "{email}". Bitte später noch einmal probieren.',
'Error sending welcome message to "{email}". Please try again later.' => 'Fehler beim Senden der Willkommensnachricht an "{email}". Bitte später noch einmal probieren.',
'Export my data' => 'Eigene Daten exportieren',
'Finish' => 'Fertig',
'Force password change at next login' => 'Kennwort-Änderung beim nächsten Anmelden erzwingen',
'Forgot password?' => 'Passwort vergessen?',
'Gravatar email' => 'Gravatar E-Mail',
'Hello' => 'Hallo',
'Here you can download your personal data in a comma separated values format.' => 'Hier kannst Du eigene persönliche Daten in Komma-separiertem Format herunterladen',
'I agree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => 'Ich stimme der Verarbeitung meiner persönlichen Daten und der Benutzung von Cookies zur Vereinfachung der Benutzer dieses Services zu. Weitere Informationen stehen in unserer {privacyPolicy}',
'If you already registered, sign in and connect this account on settings page' => 'Wenn Du Dich bereits registriert hast, melde Dich an und verbinde dieses Konto auf der Einstellungs-Seite',
'If you cannot click the link, please try pasting the text into your browser' => 'Wenn Du den Link nicht anklicken kannst, versuche, diesen in Deine Browser-Leiste einzufügen',
'If you did not make this request you can ignore this email' => 'Wenn Sie diese Anfrage nicht gemacht haben, können Sie diese E-Mail ignorieren',
@ -168,10 +121,15 @@ return [
'Information' => 'Information',
'Invalid login or password' => 'Falscher Login oder falsches Passwort',
'Invalid or expired link' => 'Falscher oder abgelaufener Link',
'Invalid password' => 'Ungültiges Kennwort',
'Invalid two factor authentication code' => 'Ungültiger Zwei-Faktor-Authentifizierungs-Code',
'Invalid value' => 'Falscher Wert',
'It will be deleted forever' => 'Es wird dauerhaft gelöscht',
'Items' => 'Elemente',
'Joined on {0, date}' => 'Mitglies seit {0, date}',
'Last login IP' => 'Letzte Anmeldung von IP',
'Last login time' => 'Letzte Anmeldung',
'Last password change' => 'Letzte Kennwort-Änderung',
'Location' => 'Ort',
'Login' => 'Anmelden',
'Logout' => 'Abmelden',
@ -188,12 +146,16 @@ return [
'Not blocked' => 'Nicht geblockt',
'Not found' => 'Nicht gefunden',
'Once you delete your account, there is no going back' => 'Wenn Du Dein Konto gelöscht hast, gibt es kein zurück mehr',
'Once you have deleted your data, you will not longer be able to sign in with this account.' => 'Wenn Du die eigenen Daten gelöscht hast, kannst Du Dich mit diesem Benutzernamen nicht mehr anmelden.',
'Password' => 'Passwort',
'Password age' => 'Kennwort-Alter',
'Password has been changed' => 'Passwort wurde geändert',
'Permissions' => 'Berechtigungen',
'Please be certain' => 'Bist Du wirklich sicher?',
'Please click the link below to complete your password reset' => 'Bitte klicke den Link unten, um Deine Passwort-Wiederherstellung abzuschließen',
'Please fix following errors:' => 'Bitte behebe die folgenden Fehler',
'Privacy' => 'Privatsphäre',
'Privacy settings' => 'Privatsphäre-Einstellungen',
'Profile' => 'Profil',
'Profile details' => 'Profildetails',
'Profile details have been updated' => 'Profildetails wurden gespeichert',
@ -213,6 +175,7 @@ return [
'Roles' => 'Rollen',
'Rule' => 'Regel',
'Rule class must extend "yii\\rbac\\Rule".' => 'Regelklasse muss "yii\\rbac\\Rule" erweitern.',
'Rule class name' => 'Regel-Klassen-Name',
'Rule name' => 'Regelname',
'Rule name {0} is already in use' => 'Regelname {0} bereits in Benutzung',
'Rule {0} does not exists' => 'Regel {0} existiert nicht',
@ -220,6 +183,7 @@ return [
'Rules' => 'Regeln',
'Save' => 'Speichern',
'Scan the QrCode with Google Authenticator App, then insert its temporary code on the box and submit.' => 'Scanne den Qr-Code mit der Google Authenticator App, dann füge den temporären Schlüssel in das Feld und sende es ab.',
'Select rule...' => 'Regel auswählen...',
'Send password recovery email' => 'Sende Mail zur Passwortwiederherstellung',
'Sign in' => 'Anmelden',
'Sign up' => 'Registrieren',
@ -231,16 +195,25 @@ return [
'The confirmation link is invalid or expired. Please try requesting a new one.' => 'Dein Aktivierungslink ist falsch oder abgelaufen. Bitte fordere einen neuen an.',
'The verification code is incorrect.' => 'Der Verifizierungsschlüssel ist ungültig.',
'There is neither role nor permission with name "{0}"' => 'Es gibt weder eine Rolle noch eine Berechtigung mit dem Namen "{0}"',
'There was an error in saving user' => 'Fehler beim Speichern des Benutzers',
'This account has already been connected to another user' => 'Dieses Konto wurde bereits von einem anderen Benutzer verbunden',
'This email address has already been taken' => 'Die E-Mail Adresse ist bereits vergeben',
'This username has already been taken' => 'Dieser Benutzername ist bereits vergeben',
'This will disable two factor authentication. Are you sure?' => 'Hiermit deaktivierst Du die Zwei-Faktor-Authentifizierung. Bist Du sicher?',
'This will remove your personal data from this site. You will no longer be able to sign in.' => 'Hiermit löschst Du Deine persönlichen Daten von diesem Service. Du wirst Dich dann nicht mehr anmelden können.',
'Time zone' => 'Zeitzone',
'Time zone is not valid' => 'Zeitzone ist ungültig',
'Two Factor Authentication (2FA)' => 'Zwei-Faktor-Authentifizierung (2FA)',
'Two factor authentication code' => 'Zwei-Faktor-Authentifizierungs-Code',
'Two factor authentication has been disabled.' => 'Zwei-Faktor-Authentifizierung wurde deaktiviert',
'Two factor authentication protects you in case of stolen credentials' => 'Zwei-Faktor-Authentifizierung schützt Dich bei gestohlenen Zugangsdaten',
'Two factor authentication successfully enabled.' => 'Zwei-Faktor-Authentifizierung wurde erfolgreich aktiviert',
'Unable to confirm user. Please, try again.' => 'Der Benutzer konnte nicht bestätigt werden. Bitte versuche es nochmal.',
'Unable to create an account.' => 'Konto konnte nicht erstellt werden',
'Unable to create authorization item.' => 'Authorization Item konnte nicht erstellt werden',
'Unable to create new authorization rule.' => 'Es ist nicht möglich, eine neue Authentifizierungsregel zu erstellen.',
'Unable to delete user. Please, try again later.' => 'Benutzer konnte nicht gelöscht werden.',
'Unable to disable Two factor authentication.' => 'Fehler beim Deaktivieren der Zwei-Faktor-Authentifizierung',
'Unable to remove authorization item.' => 'Authentifizierung-Item konnte nicht gelöscht werden.',
'Unable to send confirmation link' => 'Konnte Bestätigungslink nicht versenden',
'Unable to send recovery message to the user' => 'Wiederherstellungsnachricht konnte nicht an den Benutzer zu gesendet werden.',
@ -264,6 +237,7 @@ return [
'User has been deleted' => 'Benutzer wurde gelöscht',
'User is not found' => 'Benutzer wurde nicht gefunden',
'User not found.' => 'Benutzer nicht gefunden.',
'User will be required to change password at next login' => 'Der Benutzer muss bei der nächsten Aneldung sein kennwort ändern',
'Username' => 'Benutzername',
'Users' => 'Benutzer',
'VKontakte' => 'VKontakte',
@ -276,6 +250,7 @@ return [
'Website' => 'Webseite',
'Welcome to {0}' => 'Willkommen auf {0}',
'Yandex' => 'Yandex',
'You are about to delete all your personal data from this site.' => 'Du löschst damit alle persönlichen Daten von diesem Service',
'You can assign multiple roles or permissions to user by using the form below' => 'Du kannst mehrere Rollen oder Berechtigungen zuweisen',
'You can connect multiple accounts to be able to log in using them' => 'Du kannst mehrere Konten verbinden und sich mit diesen anmelden',
'You cannot remove your own account' => 'Du kannst Dein eigenes Konto nicht löschen',
@ -289,9 +264,19 @@ return [
'Your account has been created and a message with further instructions has been sent to your email' => 'Dein Konto wurde erstellt und eine Nachricht mit weiteren Anweisungen wurde an Deine E-Mail Adresse gesendet',
'Your account on {0} has been created' => 'Ihr Konto auf {0} wurde erstellt',
'Your confirmation token is invalid or expired' => 'Dein Bestätigungs-Token ist falsch oder abgelaufen',
'Your consent is required to register' => 'Du musst Deine Zustimmung registrieren',
'Your email address has been changed' => 'Deine E-Mail Adresse wurde geändert',
'Your password has expired, you must change it now' => 'Dein Kennwort ist abgelaufen. Du musst es nun ändern',
'Your personal information has been removed' => 'Deine persönlichen Daten wurden gelöscht',
'Your profile has been updated' => 'Dein Profil wurde gespeichert',
'privacy policy' => 'Datenschutzrichtlinie',
'{0, date, MMM dd, YYYY HH:mm}' => '{0, date, dd. MMM YYYY, HH:mm}',
'{0, date, MMMM dd, YYYY HH:mm}' => '{0, date, dd. MMMM YYYY, HH:mm}',
'{0} cannot be blank.' => '{0} darf nicht leer sein.',
'According to the European General Data Protection Regulation (GDPR) we need your consent to work with your personal data.' => '',
'Data privacy' => '',
'Submit' => '',
'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' => '',
'A message has been sent to your email address. ' => '@@Eine Nachricht wurde an Deine E-Mail Adresse gesendet@@',
];

View File

@ -18,13 +18,9 @@
*/
return [
'(not set)' => '(nicht gesetzt)',
'A confirmation message has been sent to your new email address'
=> 'Eine Bestätigungsnachricht wurde an Ihre neue E-Mail Adresse versendet',
'A message has been sent to your email address. It contains a confirmation link that you must '.
'click to complete registration.'
=> 'Eine Nachricht wurde an Ihre E-Mail-Adresse gesendet. '.
'Sie enthält einen Bestätigungslink den Sie anklicken müssen, um die Registrierung abzuschließen.',
'A new confirmation link has been sent' => 'Ein neuer Bestätigungs-Link wurde versendet',
'A confirmation message has been sent to your new email address' => 'Eine Bestätigungsnachricht wurde an Ihre neue E-Mail-Adresse versendet',
'A message has been sent to your email address. It contains a confirmation link that you must click to complete registration.' => 'Eine Nachricht wurde an Ihre E-Mail-Adresse gesendet. Sie enthält einen Bestätigungslink, den Sie anklicken müssen, um die Registrierung abzuschließen.',
'A new confirmation link has been sent' => 'Ein neuer Bestätigungslink wurde versendet',
'A password will be generated automatically if not provided' => 'Leer lassen, um automatisch ein Passwort zu generieren',
'Account' => 'Konto',
'Account confirmation' => 'Kontobestätigung',
@ -32,17 +28,15 @@ return [
'Account details have been updated' => 'Kontodetails gespeichert',
'Account settings' => 'Kontoeinstellungen',
'Already registered? Sign in!' => 'Bereits registriert? Zur Anmeldung!',
'An email with instructions to create a new password has been sent to {email} if it is associated with an {appName} account. Your existing password has not been changed.' =>
'Eine E-Mail mit Hinweisen, wie ein Kennwort erstellt wird wurde an {email} gesendet, '.
'sofern es mit dem Konto {appName} verbunden ist. Das aktuelle Kennwort wurde nicht geändert.',
'An email with instructions to create a new password has been sent to {email} if it is associated with an {appName} account. Your existing password has not been changed.' => 'Eine E-Mail mit Hinweisen, wie ein Kennwort erstellt wird, wurde an {email} gesendet, sofern es mit dem Konto {appName} verbunden ist. Das aktuelle Kennwort wurde nicht geändert.',
'An error occurred processing your request' => 'Es ist ein Fehler aufgetreten',
'Are you sure you want to block this user?' => 'Sind Sie sicher, dass Sie diesen Benutzer blockieren wollen?',
'Are you sure you want to confirm this user?' => 'Sind Sie sicher, dass Sie diesen Benutzer bestätigen wollen?',
'Are you sure you want to delete this user?' => 'Sind Sie sicher, dass Sie diesen Benutzer löschen wollen?',
'Are you sure you want to switch to this user for the rest of this Session?' => 'Sind Sie sicher, dass Sie zu diesem Benutzer zu wechseln möchten für den Rest dieser Session?',
'Are you sure you want to switch to this user for the rest of this Session?' => 'Sind Sie sicher, dass Sie zu diesem Benutzer für den Rest der Session wechseln möchten?',
'Are you sure you want to unblock this user?' => 'Sind Sie sicher, dass Sie diesen Benutzer wieder freischalten wollen?',
'Are you sure you wish the user to change their password at next login?' => 'Sind Sie sicher, dass der benutzer sein Kennwort beim nächsten Anmeldenändern soll?',
'Are you sure you wish to send a password recovery email to this user?' => 'Sind Sie sicher, dass Sie eine Passwortwiederherstellungs-Mail an diesen Benutzer senden möchten?',
'Are you sure you wish the user to change their password at next login?' => 'Sind Sie sicher, dass der Benutzer sein Kennwort beim nächsten Anmelden ändern soll?',
'Are you sure you wish to send a password recovery email to this user?' => 'Sind Sie sicher, dass Sie eine E-Mail zur Passwortwiederherstellung an diesen Benutzer senden möchten?',
'Are you sure? Deleted user can not be restored' => 'Sind Sie sicher? Gelöschte Benutzer können nicht wiederhergestellt werden',
'Are you sure? There is no going back' => 'Sind Sie sicher? Es gibt kein Zurück',
'Assignments' => 'Zuordnungen',
@ -55,15 +49,15 @@ return [
'Authorization rule has been added.' => 'Berechtigungsregel wurde hinzugefügt.',
'Authorization rule has been removed.' => 'Berechtigungsregel wurde entfernt.',
'Authorization rule has been updated.' => 'Berechtigungsregel wurde gespeichert.',
'Awesome, almost there. Now you need to click the confirmation link sent to your new email address.' => 'Fast geschafft. Nun müssen Sie nur noch den Aktivierungslink besuchen, der an ihre neue E-Mail Adresse gesendet wurde.',
'Awesome, almost there. Now you need to click the confirmation link sent to your old email address.' => 'Fast geschafft. Nun müssen Sie nur noch den Aktivierungslink besuchen, der an ihre alte E-Mail Adresse gesendet wurde.',
'Awesome, almost there. Now you need to click the confirmation link sent to your new email address.' => 'Fast geschafft. Nun müssen Sie nur noch den Aktivierungslink besuchen, der an ihre neue E-Mail-Adresse gesendet wurde.',
'Awesome, almost there. Now you need to click the confirmation link sent to your old email address.' => 'Fast geschafft. Nun müssen Sie nur noch den Aktivierungslink besuchen, der an ihre alte E-Mail-Adresse gesendet wurde.',
'Back to privacy settings' => 'Zurück zu Privatsphäre-Einstellungen',
'Bio' => 'Bio',
'Block' => 'Blockieren',
'Block status' => 'Blockadestatus',
'Block status' => 'Blockstatus',
'Blocked at {0, date, MMMM dd, YYYY HH:mm}' => 'Blockiert am {0, date, dd. MMMM YYYY, HH:mm}',
'Cancel' => 'Abbrechen',
'Cannot assign role "{0}" as the AuthManager is not configured on your console application.' => 'Kann die Rolle "{0}" nicht zuordnen da der AuthManager in der Console Application nicht konfiguriert ist.',
'Cannot assign role "{0}" as the AuthManager is not configured on your console application.' => 'Kann die Rolle "{0}" nicht zuordnen da, der AuthManager in der Konsolen Applikation nicht konfiguriert ist.',
'Change your avatar at Gravatar.com' => 'Ändern Sie ihren Avatar auf Gravatar.com',
'Children' => 'Unterelemente',
'Class' => 'Klasse',
@ -116,15 +110,14 @@ return [
'Gravatar email' => 'Gravatar E-Mail',
'Hello' => 'Hallo',
'Here you can download your personal data in a comma separated values format.' => 'Hier können Sie eigene persönliche Daten in komma-separiertem Format herunterladen',
'I agree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => '@@Ich stimme der Verarbeitung meiner persönlichen Daten und der Benutzung von Cookies zur Vereinfachung der Benutzer dieses Services zu. Weitere Informationen stehen in unserer {privacyPolicy}@@',
'If you already registered, sign in and connect this account on settings page' => 'Wenn Sie sich bereits registriert haben, melden Sie sich an und verbinden Sie dieses Konto auf der Einstellungs-Seite',
'If you cannot click the link, please try pasting the text into your browser' => 'Wenn Sie den Link nicht anklicken können, versuchen Sie, diesen in ihre Browser-Leiste einzufügen',
'I agree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => 'Ich stimme der Verarbeitung meiner persönlichen Daten und der Benutzung von Cookies zur Vereinfachung der Benutzer dieser Webseite zu. Weitere Informationen stehen in unserer {privacyPolicy}',
'If you already registered, sign in and connect this account on settings page' => 'Wenn Sie bereits registriert sind, melden Sie sich an und verbinden Sie dieses Konto auf der Einstellungsseite',
'If you cannot click the link, please try pasting the text into your browser' => 'Wenn Sie den Link nicht anklicken können, versuchen Sie, diesen in ihre Browserleiste einzufügen',
'If you did not make this request you can ignore this email' => 'Wenn Sie diese Anfrage nicht gemacht haben, können Sie diese E-Mail ignorieren',
'Impersonate this user' => 'Wechsle zu diesem Benutzer',
'In order to complete your registration, please click the link below' => 'Um Ihre Registrierung abzuschliessen, klicken Sie bitte auf den Link unten',
'In order to complete your registration, please click the link below' => 'Um Ihre Registrierung abzuschließen, klicken Sie bitte auf den folgenden Link',
'In order to complete your request, please click the link below' => 'Um Ihre Anfrage abzuschliessen, klicken Sie bitte auf den Link unten',
'In order to finish your registration, we need you to enter following fields' => 'Um Ihre Registrierung abzuschliessen, müssen Sie noch die folgenden Felder ausfüllen',
'Information' => 'Information',
'Invalid login or password' => 'Falscher Login oder falsches Passwort',
'Invalid or expired link' => 'Falscher oder abgelaufener link',
'Invalid password' => 'Ungültiges Kennwort',
@ -135,7 +128,7 @@ return [
'Joined on {0, date}' => 'Mitglied seit {0, date}',
'Last login IP' => 'Letzte Anmeldung von IP',
'Last login time' => 'Letzte Anmeldung',
'Last password change' => 'Letzte Kennwortnderung',
'Last password change' => 'Letzte Passwortänderung',
'Location' => 'Ort',
'Login' => 'Anmelden',
'Logout' => 'Abmelden',
@ -158,25 +151,25 @@ return [
'Password has been changed' => 'Passwort wurde geändert',
'Permissions' => 'Berechtigungen',
'Please be certain' => 'Sind Sie sich wirklich sicher?',
'Please click the link below to complete your password reset' => 'Bitte klicken Sie auf den Link unten um ihre Passwort-Wiederherstellung abzuschliessen',
'Please click the link below to complete your password reset' => 'Bitte klicken Sie auf den folgenden Link, um das Zurücksetzen Ihres Passworts abzuschließen',
'Please fix following errors:' => 'Bitte beheben Sie die folgenden Fehler',
'Privacy' => 'Privatsphäre',
'Privacy settings' => 'Privatsphäre-Einstellungen',
'Profile' => 'Profil',
'Profile details' => 'Profildetails',
'Profile details have been updated' => 'Profildetails wurden gespeichert',
'Profile settings' => 'Profileinstellungen',
'Profile details' => 'Profil-Details',
'Profile details have been updated' => 'Profil-Details wurden gespeichert',
'Profile settings' => 'Profil-Einstellungen',
'Recover your password' => 'Passwort wiederherstellen',
'Recovery link is invalid or expired. Please try requesting a new one.' => 'Wiederherstellungs-Link ist falsch oder abgelaufen. Bitte fordern Sie einen neuen an',
'Recovery message sent' => 'Wiederherstellungs-Nachricht wurde gesendet',
'Recovery link is invalid or expired. Please try requesting a new one.' => 'Wiederherstellungslink ist falsch oder abgelaufen. Bitte fordern Sie einen neuen an',
'Recovery message sent' => 'Wiederherstellungsnachricht gesendet',
'Registration IP' => 'Registrierungs-IP',
'Registration on this website is disabled' => 'Die Registrierung auf dieser Webseite ist deaktiviert',
'Registration time' => 'Registrierungszeit',
'Remember me next time' => 'Anmeldung für das nächste mal merken',
'Remember me next time' => 'Anmeldung für das nächste Mal merken',
'Request new confirmation message' => 'Neuen Wiederherstellungs-Link anfordern',
'Required "key" cannot be empty.' => 'Erforderlicher "key" darf nicht leer sein.',
'Required "secret" cannot be empty.' => 'Erforderliches "secret" darf nicht leer sein.',
'Reset your password' => 'Passwort wiederherstellen',
'Reset your password' => 'Ihr Passwort zurücksetzen',
'Role "{0}" not found. Creating it.' => 'Rolle "{0}" nicht gefunden. Erstelle diese.',
'Roles' => 'Rollen',
'Rule' => 'Regel',
@ -193,7 +186,7 @@ return [
'Send password recovery email' => 'Sende Mail zur Passwortwiederherstellung',
'Sign in' => 'Anmelden',
'Sign up' => 'Registrieren',
'Something went wrong' => 'Etwas ist schiefgelaufen',
'Something went wrong' => 'Etwas ist schief gelaufen',
'Switch identities is disabled.' => 'Identitäten wechseln ist deaktiviert.',
'Thank you for signing up on {0}' => 'Danke für ihre Registrierung auf {0}',
'Thank you, registration is now complete.' => 'Danke, ihre Registrierung ist nun abgeschlossen.',
@ -201,22 +194,22 @@ return [
'The confirmation link is invalid or expired. Please try requesting a new one.' => 'Ihr Aktivierungslink ist falsch oder abgelaufen. Bitte fordern Sie einen neuen an.',
'The verification code is incorrect.' => 'Der Verifizierungsschlüssel ist ungültig.',
'There is neither role nor permission with name "{0}"' => 'Es gibt weder eine Rolle noch eine Berechtigung mit dem Namen "{0}"',
'There was an error in saving user' => 'Fehler beim Speichern des Benutzers',
'There was an error in saving user' => 'Es gab einen Fehler beim Speichern des Benutzers',
'This account has already been connected to another user' => 'Dieses Konto wurde bereits von einem anderen Benutzer verbunden',
'This email address has already been taken' => 'Die E-Mail Adresse ist bereits vergeben',
'This email address has already been taken' => 'Die E-Mail-Adresse ist bereits vergeben',
'This username has already been taken' => 'Dieser Benutzername ist bereits vergeben',
'This will disable two factor authentication. Are you sure?' => 'Hiermit deaktivieren Sie die Zwei-Faktor-Authentifizierung. Sind Sie sicher?',
'This will remove your personal data from this site. You will no longer be able to sign in.' => 'Hiermit löschen Sie Ihre persönlichen Daten von diesem Service. Sie werden sich nun nicht mehr anmelden können.',
'This will remove your personal data from this site. You will no longer be able to sign in.' => 'Hiermit löschen Sie Ihre persönlichen Daten von dieser Webseite. Sie werden sich nun nicht mehr anmelden können.',
'Time zone' => 'Zeitzone',
'Time zone is not valid' => 'Zeitzone ist ungültig',
'Two Factor Authentication (2FA)' => 'Zwei-Faktor-Authentifizierung (2FA)',
'Two factor authentication code' => 'Zwei-Faktor-Authentifizierungs-Code',
'Two factor authentication has been disabled.' => 'Zwei-Faktor-Authentifizierung wurde deaktiviert',
'Two factor authentication protects you in case of stolen credentials' => 'Zwei-Faktor-Authentifizierung schützt Sie bei gestohlenen Zugangsdaten',
'Two factor authentication protects you in case of stolen credentials' => 'Zwei-Faktor-Authentifizierung schützt Sie im Fall von gestohlenen Zugangsdaten',
'Two factor authentication successfully enabled.' => 'Zwei-Faktor-Authentifizierung wurde erfolgreich aktiviert',
'Unable to confirm user. Please, try again.' => 'Der Benutzer konnte nicht bestätigt werden. Bitte versuchen Sie es erneut.',
'Unable to create an account.' => 'Konto konnte nicht erstellt werden',
'Unable to create authorization item.' => 'Authorization Item konnte nicht erstellt werden',
'Unable to create authorization item.' => 'Authentifizierungselement kann nicht erstellt werden',
'Unable to create new authorization rule.' => 'Unfähig eine neue Authentifizierungsregel zu erstellen.',
'Unable to delete user. Please, try again later.' => 'Benutzer konnte nicht gelöscht werden.',
'Unable to disable Two factor authentication.' => 'Fehler beim Deaktivieren der Zwei-Faktor-Authentifizierung',
@ -243,24 +236,24 @@ return [
'User has been deleted' => 'Benutzer wurde gelöscht',
'User is not found' => 'Benutzer wurde nicht gefunden',
'User not found.' => 'Benutzer nicht gefunden.',
'User will be required to change password at next login' => 'Der Benutzer wird bei der nchsten Aneldung zur Kennwort-Änderungen gezwungen',
'User will be required to change password at next login' => 'Der Benutzer wird bei der nächsten Aneldung zur Kennwort-Änderungen gezwungen',
'Username' => 'Benutzername',
'Users' => 'Benutzer',
'VKontakte' => 'VKontakte',
'Verification failed. Please, enter new code.' => 'Verifizierung fehlgeschlagen. Bitte einen neuen Schlüssel eingeben.',
'We couldn\'t re-send the mail to confirm your address. Please, verify is the correct email or if it has been confirmed already.' => 'Wir konnten die Mail zur Bestätigung Ihrer Adresse nicht noch einmal senden. Bitte kontrollieren Sie ob die E-Mail-Adresse korrekt ist oder diese bereits bestätigt wurde.',
'We have generated a password for you' => 'Ein Passwort wurde für Sie generiert',
'We have received a request to change the email address for your account on {0}' => 'Wir haben eine Anfrage, ihre E-Mail Adresse auf {0} zu verändern, bekommen',
'We have received a request to change the email address for your account on {0}' => 'Wir haben eine Anfrage, ihre E-Mail-Adresse auf {0} zu verändern, bekommen',
'We have received a request to reset the password for your account on {0}' => 'Wir haben eine Anfrage, ihr Passwort auf {0} wiederherzustellen, bekommen',
'We have sent confirmation links to both old and new email addresses. You must click both links to complete your request.' => 'Wir haben Ihnen Bestätigungslinks an die alte und neue E-Mail-Adresse geschickt. Sie müssen beide Links anklicken um die Anfrage fertigzustellen.',
'Website' => 'Webseite',
'Welcome to {0}' => 'Willkommen auf {0}',
'Yandex' => 'Yandex',
'You are about to delete all your personal data from this site.' => 'Sie löschen damit alle persönlichen Daten von diesem Service',
'You can assign multiple roles or permissions to user by using the form below' => 'Sie können mehrere Rollen oder Berechtigungen zuweisen',
'You are about to delete all your personal data from this site.' => 'Sie löschen damit alle persönlichen Daten von dieser Webseite',
'You can assign multiple roles or permissions to user by using the form below' => 'Sie können dem Benutzer mehrere Rollen oder Berechtigungen zuweisen, indem Sie das folgende Formular verwenden',
'You can connect multiple accounts to be able to log in using them' => 'Sie können mehrere Konten verbinden und sich mit diesen anmelden',
'You cannot remove your own account' => 'Sie können ihr eigenes Konto nicht löschen',
'You need to confirm your email address' => 'Sie müssen ihre E-Mail Adresse bestätigen',
'You need to confirm your email address' => 'Sie müssen ihre E-Mail-Adresse bestätigen',
'Your account details have been updated' => 'Ihre Kontodetails wurden gespeichert',
'Your account has been blocked' => 'Ihr Konto wurde blockiert',
'Your account has been blocked.' => 'Ihr Konto wurde blockiert.',
@ -269,14 +262,19 @@ return [
'Your account has been created' => 'Ihr Konto wurde erstellt',
'Your account has been created and a message with further instructions has been sent to your email' => 'Ihr Konto wurde erstellt und eine Nachricht mit weiteren Anweisungen wurde an ihre E-Mail Adresse versendet',
'Your account on {0} has been created' => 'Ihr Konto auf {0} wurde erstellt',
'Your confirmation token is invalid or expired' => 'Ihr Bestätigungs-Token ist falsch oder abgelaufen',
'Your confirmation token is invalid or expired' => 'Ihr Bestätigungstoken ist falsch oder abgelaufen',
'Your consent is required to register' => 'Sie müssen Ihre Zustimmung registrieren',
'Your email address has been changed' => 'Ihre E-Mail Adresse wurde geändert',
'Your password has expired, you must change it now' => 'Ihr Kennwort ist abgelaufen. Sie müssen es nun ändern',
'Your email address has been changed' => 'Ihre E-Mail-Adresse wurde geändert',
'Your password has expired, you must change it now' => 'Ihr Passwort ist abgelaufen, Sie müssen es jetzt ändern',
'Your personal information has been removed' => 'Ihre persönlichen Daten wurden gelöscht',
'Your profile has been updated' => 'Ihr Profil wurde gespeichert',
'privacy policy' => '@@Datenschutzrichtlinie@@',
'privacy policy' => 'Datenschutzrichtlinie',
'{0, date, MMM dd, YYYY HH:mm}' => '{0, date, dd. MMM YYYY, HH:mm}',
'{0, date, MMMM dd, YYYY HH:mm}' => '{0, date, dd. MMMM YYYY, HH:mm}',
'{0} cannot be blank.' => '{0} darf nicht leer sein.',
'According to the European General Data Protection Regulation (GDPR) we need your consent to work with your personal data.' => 'Gemäß der europäischen Datenschutzgrundverordnung (DSGVO) benötigen wir Ihre Zustimmung, um mit Ihren personenbezogenen Daten zu arbeiten.',
'Data privacy' => 'Datenschutz',
'Submit' => 'Absenden',
'Unfortunately, you can not work with this site without giving us consent to process your data.' => 'Leider können Sie nicht mit dieser Seite arbeiten, ohne uns die Zustimmung zur Verarbeitung Ihrer Daten zu geben.',
'Your consent is required to work with this site' => 'Ihre Zustimmung ist erforderlich, um mit dieser Website zu arbeiten',
];

View File

@ -112,7 +112,7 @@ return [
'Gravatar email' => 'Correo electrónico de Gravatar',
'Hello' => 'Hola',
'Here you can download your personal data in a comma separated values format.' => 'Aquí puede descargar su información personal en formato de valores separados por comas.',
'I agree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => '@@Doy mi consentimiento para el procesamiento de mis datos personales y el uso de «cookies» para facilitar el funcionamiento de este sitio. Para más información lea nuestra {privacyPolicy}@@',
'I agree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => 'Doy mi consentimiento para el procesamiento de mis datos personales y el uso de «cookies» para facilitar el funcionamiento de este sitio. Para más información lea nuestra {privacyPolicy}',
'If you already registered, sign in and connect this account on settings page' => 'Si ya está registrado, inicie sesión y conecte esta cuenta en la página de configuración',
'If you cannot click the link, please try pasting the text into your browser' => 'Si no puede pulsar en el enlace, intente pegar el siguiente texto en su navegador web',
'If you did not make this request you can ignore this email' => 'Si no hizo esta petición, puede ignorar este mensaje',
@ -273,7 +273,7 @@ return [
'Your password has expired, you must change it now' => 'Su contraseña ha expirado, debe cambiarla ahora',
'Your personal information has been removed' => 'Su información personal ha sido eliminada',
'Your profile has been updated' => 'Su perfil ha sido actualizado',
'privacy policy' => '@@política de privacidad@@',
'privacy policy' => 'política de privacidad',
'{0, date, MMMM dd, YYYY HH:mm}' => '{0, date, dd MMMM, YYYY HH:mm}',
'{0} cannot be blank.' => '{0} no puede estar vacío.',
'Your consent is required to work with this site' => '',

View File

@ -276,6 +276,6 @@ return [
'Your consent is required to work with this site' => '',
'{0, date, MMM dd, YYYY HH:mm}' => '',
'{0, date, MMMM dd, YYYY HH:mm}' => '',
'I agree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => '@@Nõusutn oma isikuandmete töötlemise ning küpsiste kasutamisega, et selle lehe kasutamiset hõlbustada. Lisainfot loe lehelt {privacyPolicy}.@@',
'privacy policy' => '@@privaatsuspoliitika@@',
'I agree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => 'Nõusutn oma isikuandmete töötlemise ning küpsiste kasutamisega, et selle lehe kasutamiset hõlbustada. Lisainfot loe lehelt {privacyPolicy}.',
'privacy policy' => 'privaatsuspoliitika',
];

View File

@ -17,55 +17,29 @@
* NOTE: this file must be saved in UTF-8 encoding.
*/
return [
'I agree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => '@@@@',
'privacy policy' => '@@@@',
'{0, date, MMM dd, YYYY HH:mm}' => '@@@@',
'(not set)' => '(تنظیم نشده)',
'A confirmation message has been sent to your new email address' => 'ایمیلی برای تایید به آدرس ایمیل جدید شما ارسال شد',
'A message has been sent to your email address. It contains a confirmation link that you must click to complete registration.' => 'ایمیلی حاوی لینک فعال سازی حساب کاربریتان برای شما ارسال شد ، لطفا بر روی لینک موجود در ایمیل کلیک کنید تا ثبت نام کامل شود.',
'A new confirmation link has been sent' => 'لینک فعال سازی جدیدی برای شما ارسال شد',
'A password will be generated automatically if not provided' => 'اگر رمز عبور را وارد نکنید یک رمز عبور تصادفی برای شما ساخته خواهد شد',
'According to the European General Data Protection Regulation (GDPR) we need your consent to work with your personal data.' => '',
'Account' => 'حساب کاربری',
'Account confirmation' => 'تایید حساب کاربری',
'Account details' => 'مشخصات حساب کاربری',
'Account details have been updated' => 'جزئیات حساب کاربری بروز شد',
'Account settings' => 'تنظیمات حساب کاربری',
'Already registered? Sign in!' => 'قبلاً ثبت نام کرده اید ؟ پس وارد شوید!',
'An email with instructions to create a new password has been sent to {email} if it is associated with an {appName} account. Your existing password has not been changed.' => '',
'An error occurred processing your request' => 'در زمان پردازش درخواست شما خطایی رخ داد',
'Are you sure you want to block this user?' => 'آیا از مسدود کردن این کاربر اطمینان دارید ؟',
'Are you sure you want to confirm this user?' => 'آیا از تایید این کاربر اطمینان دارید؟',
'Are you sure you want to delete this user?' => 'آیا از حذف این کاربر اطمینان دارید؟',
'Are you sure you want to switch to this user for the rest of this Session?' => '',
'Are you sure you want to unblock this user?' => 'آیا از آزاد سازی این کاربر اطمینان دارید؟',
'Are you sure you wish the user to change their password at next login?' => '',
'Are you sure you wish to send a password recovery email to this user?' => '',
'Are you sure? Deleted user can not be restored' => 'مطمئن هستید؟ امکان بازیابی اکانت پاک شده وجود ندارد',
'Are you sure? There is no going back' => '',
'Assignments' => 'تکالیف',
'Assignments have been updated' => '',
'Auth item with such name already exists' => '',
'Authentication rule class {0} can not be instantiated' => '',
'Authorization item successfully created.' => '',
'Authorization item successfully removed.' => '',
'Authorization item successfully updated.' => '',
'Authorization rule has been added.' => '',
'Authorization rule has been removed.' => '',
'Authorization rule has been updated.' => '',
'Awesome, almost there. Now you need to click the confirmation link sent to your new email address.' => '',
'Awesome, almost there. Now you need to click the confirmation link sent to your old email address.' => '',
'Back to privacy settings' => '',
'Bio' => 'بیوگرافی',
'Block' => 'مسدود',
'Block status' => 'وضعیت انسداد',
'Blocked at {0, date, MMMM dd, YYYY HH:mm}' => 'مسدود شده در تاریخ {0, date, MMMM dd, YYYY HH:mm}',
'Cancel' => '',
'Cannot assign role "{0}" as the AuthManager is not configured on your console application.' => '',
'Change your avatar at Gravatar.com' => 'نمایه خود را در Gavatar.com تغییر دهید',
'Children' => '',
'Class' => '',
'Close' => '',
'Complete password reset on {0}' => 'تنظیم مجدد رمز عبور را در {0} کامل کنید',
'Confirm' => 'تایید',
'Confirm account on {0}' => 'حساب کاربری را در {0} تایید کن',
@ -79,87 +53,48 @@ return [
'Continue' => 'ادامه',
'Create' => 'ایجاد کردن',
'Create a user account' => 'ایجاد حساب کاربری',
'Create new permission' => '',
'Create new role' => '',
'Create new rule' => '',
'Created at' => '',
'Credentials will be sent to the user by email' => 'مشخصات کاربری از طریق ایمیل به کاربر ارسال خواهد شد',
'Current password' => 'رمز عبور فعلی',
'Current password is not valid' => 'رمز عبور فعلی معتبر نیست',
'Data privacy' => '',
'Data processing consent' => '',
'Delete' => 'حذف کردن',
'Delete account' => '',
'Delete my account' => '',
'Delete personal data' => '',
'Deleted by GDPR request' => '',
'Description' => '',
'Didn\'t receive confirmation message?' => 'ایمیل فعال سازی را دریافت نکرده اید؟',
'Disable two factor authentication' => '',
'Disconnect' => 'قطع ارتباط',
'Don\'t have an account? Sign up!' => 'هنوز حساب کاربری ندارید؟ پس ثبت نام کنید!',
'Download my data' => '',
'Email' => 'ایمیل',
'Email (public)' => 'ایمیل (عمومی)',
'Enable' => '',
'Enable two factor authentication' => '',
'Error occurred while changing password' => 'در طول تغییر گذرواژه خطا رخ داد',
'Error occurred while confirming user' => 'در طول فعال سازی شناسه کاربری خطا رخ داد',
'Error occurred while deleting user' => 'در زمان حذف کاربر خطایی رخ داد',
'Error sending registration message to "{email}". Please try again later.' => '',
'Error sending welcome message to "{email}". Please try again later.' => '',
'Export my data' => '',
'Finish' => 'پایان',
'Force password change at next login' => '',
'Forgot password?' => 'رمز عبور خود را فراموش کرده اید؟',
'Gravatar email' => 'ایمیل گاواتار',
'Hello' => 'سلام',
'Here you can download your personal data in a comma separated values format.' => '',
'If you already registered, sign in and connect this account on settings page' => 'اگر شما قبلا ثبت نام کرده اید وارد شوید و این اکانت را در صفحه تنظیمات متصل کنید',
'If you cannot click the link, please try pasting the text into your browser' => 'اگر برای کلیک بر روی این اکانت مشکلی دارید لطفا آدرس را در مرورگر کپی کنید',
'If you did not make this request you can ignore this email' => 'اگر شما این ایمیل را درخواست نداده اید پس می توانید آن را نادیده بگیرید',
'Impersonate this user' => '',
'In order to complete your registration, please click the link below' => 'برای کامل کردن ثبت نام خود لطفا بر روی لینک زیر کلیک کنید',
'In order to complete your request, please click the link below' => 'برای کامل کردن درخواست خود لطفا بر روی لینک زیر کلیک کنید',
'In order to finish your registration, we need you to enter following fields' => '',
'Information' => 'اطلاعات',
'Invalid login or password' => 'نام کاربری یا رمز عبور نامعتبر است',
'Invalid or expired link' => 'لینک فعال سازی معتبر نیست یا منقضی شده است',
'Invalid password' => '',
'Invalid two factor authentication code' => '',
'Invalid value' => '',
'It will be deleted forever' => '',
'Items' => '',
'Joined on {0, date}' => 'عضو شده در {0, date}',
'Last login IP' => '',
'Last login time' => '',
'Last password change' => '',
'Location' => 'موقعیت',
'Login' => 'ورود',
'Logout' => 'خروج',
'Manage users' => 'مدیریت کاربران',
'Name' => 'نام',
'Networks' => 'شبکه ها',
'Never' => '',
'New email' => 'ایمیل جدید',
'New password' => 'رمز عبور جدید',
'New permission' => 'اجازه دسترسی جدید',
'New role' => 'نقش جدید',
'New rule' => '',
'New user' => 'کاربر جدید',
'Not blocked' => 'مسدود نشده',
'Not found' => '',
'Once you delete your account, there is no going back' => '',
'Once you have deleted your data, you will not longer be able to sign in with this account.' => '',
'Password' => 'رمز عبور',
'Password age' => '',
'Password has been changed' => 'رمز عبور تغییر پیدا کرد',
'Permissions' => 'اجازه دسترسی',
'Please be certain' => '',
'Please click the link below to complete your password reset' => 'لطفا برای کامل کردن روند بازیابی رمز عبور بر روی لینک زیر کلیک کنید',
'Please fix following errors:' => 'لطفا خطا های زیر را بر طرف کنید :',
'Privacy' => '',
'Privacy settings' => '',
'Profile' => 'پروفایل',
'Profile details' => 'مشخصات پروفایل',
'Profile details have been updated' => 'مشخصات پروفایل بروز شد',
@ -168,15 +103,119 @@ return [
'Recovery link is invalid or expired. Please try requesting a new one.' => 'ایمیل تنظیم مجدد رمز عبور معتبر نیست یا منقضی شده است. لطفا دوباره درخواست دهید تا ایمیل جدیدی برایتان ارسال شود.',
'Recovery message sent' => 'ایمیل تنظیم مجدد رمز عبور ارسال شد',
'Registration IP' => 'آدرس ای پی ثبت نام',
'Registration on this website is disabled' => '',
'Registration time' => 'تاریخ ثبت نام',
'Remember me next time' => 'دفعه بعد مرا به یاد بسپار',
'Request new confirmation message' => 'درخواست ایمیل فعال سازی جدید',
'Reset your password' => 'بازیابی رمز عبور',
'Roles' => 'نقش ها',
'Save' => 'ذخیره',
'Sign in' => 'ورود',
'Sign up' => 'ثبت نام',
'Something went wrong' => 'چیز اشتباهی رخ داد',
'Thank you for signing up on {0}' => 'با تشکر از ثبت نام شما در {0}',
'Thank you, registration is now complete.' => 'متشکریم ، ثبت نام شما کامل شد.',
'The confirmation link is invalid or expired. Please try requesting a new one.' => 'لینک تایید معتبر نیست یا منقضی شده است. لطفا دوباره درخواست دهید تا ایمیل جدیدی برایتان ارسال شود.',
'This account has already been connected to another user' => 'این اکانت قبلا به حساب کاربری دیگری متصل شده است',
'This email address has already been taken' => 'این آدرس ایمیل قبلا ثبت شده است',
'This username has already been taken' => 'این نام کاربری قبلا ثبت شده است',
'Time zone' => 'موقعیت زمانی',
'Time zone is not valid' => 'موقعبت زمانی معتبر نیست',
'Unblock' => 'آزاد سازی',
'Unconfirmed' => 'تایید نشده',
'Update' => 'بروزرسانی',
'Update user account' => 'اکانت کاربر را بروز کنید',
'User has been confirmed' => 'کاربر تایید شد',
'User has been created' => 'کاربر ساخته شد',
'User has been deleted' => 'کاربر حذف شد',
'User is not found' => 'کاربر پیدا نشد',
'User not found.' => 'کاربر پیدا نشد.',
'Username' => 'نام کاربری',
'Users' => 'کاربرها',
'We have received a request to change the email address for your account on {0}' => 'ما درخواستی برای تغییر آدرس ایمیل اکانت شما در {0} دریافت کرده ایم',
'We have received a request to reset the password for your account on {0}' => 'ما درخواستی برای تنظیم مجدد رمز عبور برای حساب کاربری شما در {0} دریافت کردیم',
'Website' => 'وب سایت',
'Welcome to {0}' => 'خوش آمدید به {0}',
'Yandex' => 'یاندکس',
'You can assign multiple roles or permissions to user by using the form below' => 'شما می توانید نقش ها یا مجوز دسترسی های متعددی را از طریق فرم زیر به کاربر تخصیص دهید',
'You can connect multiple accounts to be able to log in using them' => 'شما می توانید حساب کاربری متعددی را برای اینکه بتوانید با آنها وارد شوید به سیستم متصل کنید',
'You need to confirm your email address' => 'شما باید ایمیل خود را تایید کنید',
'Your account details have been updated' => 'مشخصات حساب کاربری شما بروز شد',
'Your account has been blocked' => 'اکانت شما مسدود شده است',
'Your account has been blocked.' => 'اکانت شما مسدود شده است.',
'Your account has been connected' => 'حساب کاربری شما متصل شد',
'Your account has been created' => 'اکانت شما ساخته شد',
'Your account has been created and a message with further instructions has been sent to your email' => 'اکانت شما ساخته شد و ایمیلی حاوی دستورالعمل های بعدی به شما ارسال شد',
'Your account on {0} has been created' => 'حساب کاربری شما در {0} ساخته شد',
'Your confirmation token is invalid or expired' => 'لینک تایید شما معتبر نیست یا منقضی شده است',
'Your email address has been changed' => 'آدرس ایمیل شما تغییر کرد',
'Your profile has been updated' => 'پروفایل شما بروز شد',
'{0, date, MMMM dd, YYYY HH:mm}' => '{0, date, dd MMMM, YYYY HH:mm}',
'According to the European General Data Protection Regulation (GDPR) we need your consent to work with your personal data.' => '',
'An email with instructions to create a new password has been sent to {email} if it is associated with an {appName} account. Your existing password has not been changed.' => '',
'Are you sure you want to switch to this user for the rest of this Session?' => '',
'Are you sure you wish the user to change their password at next login?' => '',
'Are you sure you wish to send a password recovery email to this user?' => '',
'Are you sure? There is no going back' => '',
'Assignments have been updated' => '',
'Auth item with such name already exists' => '',
'Authentication rule class {0} can not be instantiated' => '',
'Authorization item successfully created.' => '',
'Authorization item successfully removed.' => '',
'Authorization item successfully updated.' => '',
'Authorization rule has been added.' => '',
'Authorization rule has been removed.' => '',
'Authorization rule has been updated.' => '',
'Awesome, almost there. Now you need to click the confirmation link sent to your new email address.' => '',
'Awesome, almost there. Now you need to click the confirmation link sent to your old email address.' => '',
'Back to privacy settings' => '',
'Cancel' => '',
'Cannot assign role "{0}" as the AuthManager is not configured on your console application.' => '',
'Children' => '',
'Class' => '',
'Close' => '',
'Create new permission' => '',
'Create new role' => '',
'Create new rule' => '',
'Created at' => '',
'Data privacy' => '',
'Data processing consent' => '',
'Delete account' => '',
'Delete my account' => '',
'Delete personal data' => '',
'Deleted by GDPR request' => '',
'Description' => '',
'Disable two factor authentication' => '',
'Download my data' => '',
'Enable' => '',
'Enable two factor authentication' => '',
'Error sending registration message to "{email}". Please try again later.' => '',
'Error sending welcome message to "{email}". Please try again later.' => '',
'Export my data' => '',
'Force password change at next login' => '',
'Here you can download your personal data in a comma separated values format.' => '',
'Impersonate this user' => '',
'In order to finish your registration, we need you to enter following fields' => '',
'Invalid password' => '',
'Invalid two factor authentication code' => '',
'Invalid value' => '',
'It will be deleted forever' => '',
'Items' => '',
'Last login IP' => '',
'Last login time' => '',
'Last password change' => '',
'Never' => '',
'New rule' => '',
'Not found' => '',
'Once you delete your account, there is no going back' => '',
'Once you have deleted your data, you will not longer be able to sign in with this account.' => '',
'Password age' => '',
'Please be certain' => '',
'Privacy' => '',
'Privacy settings' => '',
'Registration on this website is disabled' => '',
'Required "key" cannot be empty.' => '',
'Required "secret" cannot be empty.' => '',
'Reset your password' => 'بازیابی رمز عبور',
'Role "{0}" not found. Creating it.' => '',
'Roles' => 'نقش ها',
'Rule' => '',
'Rule class must extend "yii\\rbac\\Rule".' => '',
'Rule class name' => '',
@ -185,29 +224,17 @@ return [
'Rule {0} does not exists' => '',
'Rule {0} not found.' => '',
'Rules' => '',
'Save' => 'ذخیره',
'Scan the QrCode with Google Authenticator App, then insert its temporary code on the box and submit.' => '',
'Select rule...' => '',
'Send password recovery email' => '',
'Sign in' => 'ورود',
'Sign up' => 'ثبت نام',
'Something went wrong' => 'چیز اشتباهی رخ داد',
'Submit' => '',
'Switch identities is disabled.' => '',
'Thank you for signing up on {0}' => 'با تشکر از ثبت نام شما در {0}',
'Thank you, registration is now complete.' => 'متشکریم ، ثبت نام شما کامل شد.',
'The "recaptcha" component must be configured.' => '',
'The confirmation link is invalid or expired. Please try requesting a new one.' => 'لینک تایید معتبر نیست یا منقضی شده است. لطفا دوباره درخواست دهید تا ایمیل جدیدی برایتان ارسال شود.',
'The verification code is incorrect.' => '',
'There is neither role nor permission with name "{0}"' => '',
'There was an error in saving user' => '',
'This account has already been connected to another user' => 'این اکانت قبلا به حساب کاربری دیگری متصل شده است',
'This email address has already been taken' => 'این آدرس ایمیل قبلا ثبت شده است',
'This username has already been taken' => 'این نام کاربری قبلا ثبت شده است',
'This will disable two factor authentication. Are you sure?' => '',
'This will remove your personal data from this site. You will no longer be able to sign in.' => '',
'Time zone' => 'موقعیت زمانی',
'Time zone is not valid' => 'موقعبت زمانی معتبر نیست',
'Two Factor Authentication (2FA)' => '',
'Two factor authentication code' => '',
'Two factor authentication has been disabled.' => '',
@ -225,83 +252,29 @@ return [
'Unable to update authorization item.' => '',
'Unable to update authorization rule.' => '',
'Unable to update block status.' => '',
'Unblock' => 'آزاد سازی',
'Unconfirmed' => 'تایید نشده',
'Unfortunately, you can not work with this site without giving us consent to process your data.' => '',
'Update' => 'بروزرسانی',
'Update assignments' => '',
'Update permission' => '',
'Update role' => '',
'Update rule' => '',
'Update user account' => 'اکانت کاربر را بروز کنید',
'Updated at' => '',
'User account could not be created.' => '',
'User block status has been updated.' => '',
'User could not be registered.' => '',
'User has been confirmed' => 'کاربر تایید شد',
'User has been created' => 'کاربر ساخته شد',
'User has been deleted' => 'کاربر حذف شد',
'User is not found' => 'کاربر پیدا نشد',
'User not found.' => 'کاربر پیدا نشد.',
'User will be required to change password at next login' => '',
'Username' => 'نام کاربری',
'Users' => 'کاربرها',
'VKontakte' => '',
'Verification failed. Please, enter new code.' => '',
'We couldn\'t re-send the mail to confirm your address. Please, verify is the correct email or if it has been confirmed already.' => '',
'We have generated a password for you' => '',
'We have received a request to change the email address for your account on {0}' => 'ما درخواستی برای تغییر آدرس ایمیل اکانت شما در {0} دریافت کرده ایم',
'We have received a request to reset the password for your account on {0}' => 'ما درخواستی برای تنظیم مجدد رمز عبور برای حساب کاربری شما در {0} دریافت کردیم',
'We have sent confirmation links to both old and new email addresses. You must click both links to complete your request.' => '',
'Website' => 'وب سایت',
'Welcome to {0}' => 'خوش آمدید به {0}',
'Yandex' => 'یاندکس',
'You are about to delete all your personal data from this site.' => '',
'You can assign multiple roles or permissions to user by using the form below' => 'شما می توانید نقش ها یا مجوز دسترسی های متعددی را از طریق فرم زیر به کاربر تخصیص دهید',
'You can connect multiple accounts to be able to log in using them' => 'شما می توانید حساب کاربری متعددی را برای اینکه بتوانید با آنها وارد شوید به سیستم متصل کنید',
'You cannot remove your own account' => '',
'You need to confirm your email address' => 'شما باید ایمیل خود را تایید کنید',
'Your account details have been updated' => 'مشخصات حساب کاربری شما بروز شد',
'Your account has been blocked' => 'اکانت شما مسدود شده است',
'Your account has been blocked.' => 'اکانت شما مسدود شده است.',
'Your account has been completely deleted' => '',
'Your account has been connected' => 'حساب کاربری شما متصل شد',
'Your account has been created' => 'اکانت شما ساخته شد',
'Your account has been created and a message with further instructions has been sent to your email' => 'اکانت شما ساخته شد و ایمیلی حاوی دستورالعمل های بعدی به شما ارسال شد',
'Your account on {0} has been created' => 'حساب کاربری شما در {0} ساخته شد',
'Your confirmation token is invalid or expired' => 'لینک تایید شما معتبر نیست یا منقضی شده است',
'Your consent is required to register' => '',
'Your consent is required to work with this site' => '',
'Your email address has been changed' => 'آدرس ایمیل شما تغییر کرد',
'Your password has expired, you must change it now' => '',
'Your personal information has been removed' => '',
'Your profile has been updated' => 'پروفایل شما بروز شد',
'{0, date, MMMM dd, YYYY HH:mm}' => '{0, date, dd MMMM, YYYY HH:mm}',
'{0} cannot be blank.' => '',
'A message has been sent to your email address. ' => '@@@@',
'An email has been sent with instructions for resetting your password' => 'ایمیلی حاوی راهنمایی برای تنظیم مجدد رمز عبور به شما ارسال شد',
'Awesome, almost there. ' => '@@@@',
'Class "{0}" does not exist' => '@@@@',
'Disable Two-Factor Auth' => '@@@@',
'Enable Two-factor auth' => '@@@@',
'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}' => '@@@@',
'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}' => '@@@@',
'Invalid two-factor code' => '@@@@',
'Last login' => '@@@@',
'Registration ip' => 'ای پی ثبت نام',
'Rule class can not be instantiated' => '@@@@',
'Rule class must extend "yii\\rbac\\Rule"' => '@@@@',
'This will disable two-factor auth. Are you sure?' => '@@@@',
'Two Factor Authentication' => '@@@@',
'Two factor authentication protects you against stolen credentials' => '@@@@',
'Two factor successfully enabled.' => '@@@@',
'Two-Factor Authentication' => '@@@@',
'Two-factor auth protects you against stolen credentials' => '@@@@',
'Two-factor authentication code' => '@@@@',
'Two-factor authorization has been disabled.' => '@@@@',
'Two-factor code' => '@@@@',
'Unable to disable two-factor authorization.' => '@@@@',
'We couldn\'t re-send the mail to confirm your address. ' => '@@@@',
'We have sent confirmation links to both old and new email addresses. ' => '@@@@',
'An email has been sent with instructions for resetting your password' => '@@ایمیلی حاوی راهنمایی برای تنظیم مجدد رمز عبور به شما ارسال شد@@',
'Registration ip' => '@@ای پی ثبت نام@@',
];

View File

@ -17,9 +17,6 @@
* NOTE: this file must be saved in UTF-8 encoding.
*/
return [
'I agree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => '@@@@',
'privacy policy' => '@@@@',
'{0, date, MMM dd, YYYY HH:mm}' => '@@@@',
'(not set)' => '',
'A confirmation message has been sent to your new email address' => '',
'A message has been sent to your email address. It contains a confirmation link that you must click to complete registration.' => '',
@ -278,30 +275,4 @@ return [
'Your profile has been updated' => '',
'{0, date, MMMM dd, YYYY HH:mm}' => '',
'{0} cannot be blank.' => '',
'A message has been sent to your email address. ' => '@@@@',
'An email has been sent with instructions for resetting your password' => '@@@@',
'Awesome, almost there. ' => '@@@@',
'Class "{0}" does not exist' => '@@@@',
'Disable Two-Factor Auth' => '@@@@',
'Enable Two-factor auth' => '@@@@',
'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}' => '@@@@',
'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}' => '@@@@',
'Invalid two-factor code' => '@@@@',
'Last login' => '@@@@',
'Registration ip' => '@@@@',
'Rule class can not be instantiated' => '@@@@',
'Rule class must extend "yii\\rbac\\Rule"' => '@@@@',
'This will disable two-factor auth. Are you sure?' => '@@@@',
'Two Factor Authentication' => '@@@@',
'Two factor authentication protects you against stolen credentials' => '@@@@',
'Two factor successfully enabled.' => '@@@@',
'Two-Factor Authentication' => '@@@@',
'Two-factor auth protects you against stolen credentials' => '@@@@',
'Two-factor authentication code' => '@@@@',
'Two-factor authorization has been disabled.' => '@@@@',
'Two-factor code' => '@@@@',
'Unable to disable two-factor authorization.' => '@@@@',
'We couldn\'t re-send the mail to confirm your address. ' => '@@@@',
'We have sent confirmation links to both old and new email addresses. ' => '@@@@',
];

View File

@ -276,6 +276,6 @@ return [
'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' => '',
'{0, date, MMM dd, YYYY HH:mm}' => '',
'I agree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => '@@J\'accepte le traitement de mes données personnelles et l\'utilisation de cookies pour faciliter le fonctionnement de ce site. Pour plus d\'information, lisez notre {privacyPolicy}@@',
'privacy policy' => '@@politique de confidentialité@@',
'I agree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => 'J\'accepte le traitement de mes données personnelles et l\'utilisation de cookies pour faciliter le fonctionnement de ce site. Pour plus d\'information, lisez notre {privacyPolicy}',
'privacy policy' => 'politique de confidentialité',
];

View File

@ -17,9 +17,6 @@
* NOTE: this file must be saved in UTF-8 encoding.
*/
return [
'I agree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => '@@@@',
'privacy policy' => '@@@@',
'{0, date, MMM dd, YYYY HH:mm}' => '@@@@',
'(not set)' => '',
'A confirmation message has been sent to your new email address' => '',
'A message has been sent to your email address. It contains a confirmation link that you must click to complete registration.' => '',
@ -278,30 +275,4 @@ return [
'Your profile has been updated' => '',
'{0, date, MMMM dd, YYYY HH:mm}' => '',
'{0} cannot be blank.' => '',
'A message has been sent to your email address. ' => '@@@@',
'An email has been sent with instructions for resetting your password' => '@@@@',
'Awesome, almost there. ' => '@@@@',
'Class "{0}" does not exist' => '@@@@',
'Disable Two-Factor Auth' => '@@@@',
'Enable Two-factor auth' => '@@@@',
'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}' => '@@@@',
'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}' => '@@@@',
'Invalid two-factor code' => '@@@@',
'Last login' => '@@@@',
'Registration ip' => '@@@@',
'Rule class can not be instantiated' => '@@@@',
'Rule class must extend "yii\\rbac\\Rule"' => '@@@@',
'This will disable two-factor auth. Are you sure?' => '@@@@',
'Two Factor Authentication' => '@@@@',
'Two factor authentication protects you against stolen credentials' => '@@@@',
'Two factor successfully enabled.' => '@@@@',
'Two-Factor Authentication' => '@@@@',
'Two-factor auth protects you against stolen credentials' => '@@@@',
'Two-factor authentication code' => '@@@@',
'Two-factor authorization has been disabled.' => '@@@@',
'Two-factor code' => '@@@@',
'Unable to disable two-factor authorization.' => '@@@@',
'We couldn\'t re-send the mail to confirm your address. ' => '@@@@',
'We have sent confirmation links to both old and new email addresses. ' => '@@@@',
];

View File

@ -109,7 +109,7 @@ return [
'Gravatar email' => 'Gravatar e-mail',
'Hello' => 'Helló',
'Here you can download your personal data in a comma separated values format.' => 'Itt személyes adatait vesszővel elválasztott formátumban töltheti le.',
'I agree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => '@@Egyetértek személyes adataim feldolgozásával és cookie-k használatával a webhely működésének megkönnyítése érdekében. További információért olvassa el a {privacyPolicy}@@',
'I agree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => 'Egyetértek személyes adataim feldolgozásával és cookie-k használatával a webhely működésének megkönnyítése érdekében. További információért olvassa el a {privacyPolicy}',
'If you already registered, sign in and connect this account on settings page' => 'Ha már regisztráltál, jelentkezz be és kösd be ezt a fiókot a beállítások oldalán',
'If you cannot click the link, please try pasting the text into your browser' => 'Ha nem tud kattintani a linkre, kérjük, próbálja meg a szöveg beillesztését a böngészőbe',
'If you did not make this request you can ignore this email' => 'Ha ezt a kérelmet nem hajtotta végre, figyelmen kívül hagyhatja ezt az e-mailt',
@ -265,7 +265,7 @@ return [
'Your password has expired, you must change it now' => 'A jelszava lejárt, most módosítania kell',
'Your personal information has been removed' => 'Személyes adatait eltávolítottuk',
'Your profile has been updated' => 'A profilja frissítve lett',
'privacy policy' => '@@Adatvédelmi irányelvek@@',
'privacy policy' => 'Adatvédelmi irányelvek',
'{0, date, MMM dd, YYYY HH:mm}' => '{0, dátum, MMM dd, ÉÉÉÉ HH: mm}',
'{0, date, MMMM dd, YYYY HH:mm}' => '{0, dátum, MMMM dd, ÉÉÉÉ HH: mm}',
'{0} cannot be blank.' => '{0} nem lehet üres.',

View File

@ -22,12 +22,14 @@ return [
'A message has been sent to your email address. It contains a confirmation link that you must click to complete registration.' => 'È stato inviato un messaggio al tuo indirizzo email. Contiene un collegamento di verifica che devi aprire per completare la registrazione.',
'A new confirmation link has been sent' => 'È stato inviato un nuovo link di conferma',
'A password will be generated automatically if not provided' => 'La password verrà generata automaticamente se non fornita',
'According to the European General Data Protection Regulation (GDPR) we need your consent to work with your personal data.' => 'Come descritto nel Regolamento Europeo per la Protezione dei Dati (GDPR), è necessario il tuo consenso per l\'utilizzo dei dati personali.',
'Account' => 'Account',
'Account confirmation' => 'Conferma account',
'Account details' => 'Dettagli account',
'Account details have been updated' => 'I dettagli del tuo account sono stati aggiornati',
'Account settings' => 'Impostazioni account',
'Already registered? Sign in!' => 'Già registrato? Accedi!',
'An email with instructions to create a new password has been sent to {email} if it is associated with an {appName} account. Your existing password has not been changed.' => 'Una mail con le istruzioni per creare una nuova password è stata inviata all\'indirizzo {email} se associato a un account {appName}. La tua password non è ancora stata cambiata.',
'An error occurred processing your request' => 'Si è verificato un errore durante l\'elaborazione della richiesta',
'Are you sure you want to block this user?' => 'Sicuro di voler bloccare questo utente?',
'Are you sure you want to confirm this user?' => 'Sicuro di voler confermare questo utente?',
@ -81,6 +83,7 @@ return [
'Credentials will be sent to the user by email' => 'Le credenziali verranno inviate all\'utente via email',
'Current password' => 'Password attuale',
'Current password is not valid' => 'La password attuale non è valida',
'Data privacy' => 'Data privacy',
'Data processing consent' => 'Consenso al trattamento dei dati',
'Delete' => 'Elimina',
'Delete account' => 'Elimina account',
@ -109,7 +112,7 @@ return [
'Gravatar email' => 'Email di Gravatar',
'Hello' => 'Ciao',
'Here you can download your personal data in a comma separated values format.' => 'Da qui puoi scaricare i tuoi dati in formato CSV.',
'I agree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => '@@Consento al trattamento dei miei dati personali e all\'uso dei cookie per agevolare le attività di questo sito. Per ulteriori informazioni leggere la nostra {privacyPolicy}@@',
'I agree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => 'Consento al trattamento dei miei dati personali e all\'uso dei cookie per agevolare le attività di questo sito. Per ulteriori informazioni leggere la nostra {privacyPolicy}',
'If you already registered, sign in and connect this account on settings page' => 'Se sei già registrato accedi e collega questo account nella pagina delle impostazioni',
'If you cannot click the link, please try pasting the text into your browser' => 'Se non puoi fare click sul link prova a copiare ed incollare il testo nel browser',
'If you did not make this request you can ignore this email' => 'Se non hai effettuato tu la richiesta puoi ignorare questa email',
@ -187,6 +190,7 @@ return [
'Sign in' => 'Accedi',
'Sign up' => 'Registrati',
'Something went wrong' => 'È successo qualcosa di strano',
'Submit' => 'Invia',
'Switch identities is disabled.' => 'Il cambio identità è disabilitato',
'Thank you for signing up on {0}' => 'Grazie per esserti registrato su {0}',
'Thank you, registration is now complete.' => 'Grazie, la tua registrazione è completa.',
@ -221,6 +225,7 @@ return [
'Unable to update block status.' => 'Impossibile aggiornare lo stato di blocco.',
'Unblock' => 'Sblocca',
'Unconfirmed' => 'Non confermato',
'Unfortunately, you can not work with this site without giving us consent to process your data.' => 'Siamo spiacenti è richiesto il consenso all\'utilizzo dei dati personali per navigare sul sito.',
'Update' => 'Modifica',
'Update assignments' => 'Modifica assegnamenti',
'Update permission' => 'Modifica permessi',
@ -264,19 +269,14 @@ return [
'Your account on {0} has been created' => 'Il tuo account presso {0} è stato creato',
'Your confirmation token is invalid or expired' => 'Il token di conferma non è valido o è scaduto',
'Your consent is required to register' => 'È richiesto il tuo consenso per la registrazione',
'Your consent is required to work with this site' => 'È richiesto il tuo consenso per navigare sul sito',
'Your email address has been changed' => 'Il tuo indirizzo email è stato cambiato',
'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 profile has been updated' => 'Il tuo profilo è stato aggiornato',
'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, MMMM dd, YYYY HH:mm}' => '{0, date, dd MMMM YYYY HH:mm}',
'{0} cannot be blank.' => '{0} non può essere vuoto.',
'According to the European General Data Protection Regulation (GDPR) we need your consent to work with your personal data.' => 'Come descritto nel Regolamento Europeo per la Protezione dei Dati (GDPR), è necessario il tuo consenso per l\'utilizzo dei dati personali.',
'An email with instructions to create a new password has been sent to {email} if it is associated with an {appName} account. Your existing password has not been changed.' => 'Una mail con le istruzioni per creare una nuova password è stata inviata all\'indirizzo {email} se associato a un account {appName}. La tua password non è ancora stata cambiata.',
'Data privacy' => 'Data privacy',
'Submit' => 'Invia',
'Unfortunately, you can not work with this site without giving us consent to process your data.' => 'Siamo spiacenti è richiesto il consenso all\'utilizzo dei dati personali per navigare sul sito.',
'Your consent is required to work with this site' => 'È richiesto il tuo consenso per navigare sul sito',
'{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' => '@@È stata inviata un\'email con le istruzioni per azzerare la tua password@@',
];

View File

@ -17,9 +17,6 @@
* NOTE: this file must be saved in UTF-8 encoding.
*/
return [
'I agree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => '@@@@',
'privacy policy' => '@@@@',
'{0, date, MMM dd, YYYY HH:mm}' => '@@@@',
'(not set)' => '',
'A confirmation message has been sent to your new email address' => '',
'A message has been sent to your email address. It contains a confirmation link that you must click to complete registration.' => '',
@ -278,30 +275,4 @@ return [
'Your profile has been updated' => '',
'{0, date, MMMM dd, YYYY HH:mm}' => '',
'{0} cannot be blank.' => '',
'A message has been sent to your email address. ' => '@@@@',
'An email has been sent with instructions for resetting your password' => '@@@@',
'Awesome, almost there. ' => '@@@@',
'Class "{0}" does not exist' => '@@@@',
'Disable Two-Factor Auth' => '@@@@',
'Enable Two-factor auth' => '@@@@',
'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}' => '@@@@',
'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}' => '@@@@',
'Invalid two-factor code' => '@@@@',
'Last login' => '@@@@',
'Registration ip' => '@@@@',
'Rule class can not be instantiated' => '@@@@',
'Rule class must extend "yii\\rbac\\Rule"' => '@@@@',
'This will disable two-factor auth. Are you sure?' => '@@@@',
'Two Factor Authentication' => '@@@@',
'Two factor authentication protects you against stolen credentials' => '@@@@',
'Two factor successfully enabled.' => '@@@@',
'Two-Factor Authentication' => '@@@@',
'Two-factor auth protects you against stolen credentials' => '@@@@',
'Two-factor authentication code' => '@@@@',
'Two-factor authorization has been disabled.' => '@@@@',
'Two-factor code' => '@@@@',
'Unable to disable two-factor authorization.' => '@@@@',
'We couldn\'t re-send the mail to confirm your address. ' => '@@@@',
'We have sent confirmation links to both old and new email addresses. ' => '@@@@',
];

View File

@ -17,9 +17,6 @@
* NOTE: this file must be saved in UTF-8 encoding.
*/
return [
'I agree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => '@@@@',
'privacy policy' => '@@@@',
'{0, date, MMM dd, YYYY HH:mm}' => '@@@@',
'(not set)' => '',
'A confirmation message has been sent to your new email address' => '',
'A message has been sent to your email address. It contains a confirmation link that you must click to complete registration.' => '',
@ -278,30 +275,4 @@ return [
'Your profile has been updated' => '',
'{0, date, MMMM dd, YYYY HH:mm}' => '',
'{0} cannot be blank.' => '',
'A message has been sent to your email address. ' => '@@@@',
'An email has been sent with instructions for resetting your password' => '@@@@',
'Awesome, almost there. ' => '@@@@',
'Class "{0}" does not exist' => '@@@@',
'Disable Two-Factor Auth' => '@@@@',
'Enable Two-factor auth' => '@@@@',
'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}' => '@@@@',
'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}' => '@@@@',
'Invalid two-factor code' => '@@@@',
'Last login' => '@@@@',
'Registration ip' => '@@@@',
'Rule class can not be instantiated' => '@@@@',
'Rule class must extend "yii\\rbac\\Rule"' => '@@@@',
'This will disable two-factor auth. Are you sure?' => '@@@@',
'Two Factor Authentication' => '@@@@',
'Two factor authentication protects you against stolen credentials' => '@@@@',
'Two factor successfully enabled.' => '@@@@',
'Two-Factor Authentication' => '@@@@',
'Two-factor auth protects you against stolen credentials' => '@@@@',
'Two-factor authentication code' => '@@@@',
'Two-factor authorization has been disabled.' => '@@@@',
'Two-factor code' => '@@@@',
'Unable to disable two-factor authorization.' => '@@@@',
'We couldn\'t re-send the mail to confirm your address. ' => '@@@@',
'We have sent confirmation links to both old and new email addresses. ' => '@@@@',
];

View File

@ -109,7 +109,7 @@ return [
'Gravatar email' => 'Gravatar email',
'Hello' => 'Hallo',
'Here you can download your personal data in a comma separated values format.' => 'Hier kan je al jouw persoonlijke data downloaden in een komma\'s gescheiden formaat.',
'I agree 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 met het verwerken van mijn persoonlijke data en het gebruik van cookies om de werking van deze website te vergemakkelijken. Voor meer, lees onze {privacyPolicy}@@',
'I agree 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 met het verwerken van mijn persoonlijke data en het gebruik van cookies om de werking van deze website te vergemakkelijken. Voor meer, lees onze {privacyPolicy}',
'If you already registered, sign in and connect this account on settings page' => 'Als je reeds geregistreerd bent, meldt je aan en verbind deze account via de instellingen pagina',
'If you cannot click the link, please try pasting the text into your browser' => 'Als je niet op deze link kan klikken, kopieer en plak de tekst in jouw browser',
'If you did not make this request you can ignore this email' => 'Als je deze aanvraag niet deed mag je deze email negeren',
@ -265,7 +265,7 @@ return [
'Your password has expired, you must change it now' => 'Jouw wachtwoord is vervallen. Gelieve het onmiddelijk te wijzigen',
'Your personal information has been removed' => 'Jouw persoonlijke gegevens werden verwijderd',
'Your profile has been updated' => 'Jouw profiel werd geupdate',
'privacy policy' => '@@privacy policy@@',
'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} kan niet leeg zijn.',

View File

@ -270,28 +270,4 @@ return [
'privacy policy' => 'privacy policy',
'{0, date, MMMM dd, YYYY HH:mm}' => '{0, date, dd MMMM, YYYY HH:mm}',
'{0} cannot be blank.' => '{0} kan niet leeg zijn.',
'A message has been sent to your email address. ' => '@@@@',
'Awesome, almost there. ' => '@@@@',
'Class \'{0}\' does not exist' => '@@@@',
'Disable Two-Factor Auth' => '@@@@',
'Enable Two-factor auth' => '@@@@',
'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}' => '@@@@',
'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}' => '@@@@',
'Invalid two-factor code' => '@@@@',
'Last login' => '@@@@',
'Registration ip' => '@@@@',
'Rule class can not be instantiated' => '@@@@',
'Rule class must extend \'yii\rbac\Rule\'' => '@@@@',
'This will disable two-factor auth. Are you sure?' => '@@@@',
'Two Factor Authentication' => '@@@@',
'Two factor successfully enabled.' => '@@@@',
'Two-Factor Authentication' => '@@@@',
'Two-factor auth protects you against stolen credentials' => '@@@@',
'Two-factor authentication code' => '@@@@',
'Two-factor authorization has been disabled.' => '@@@@',
'Two-factor code' => '@@@@',
'Unable to disable two-factor authorization.' => '@@@@',
'We couldn\'t re-send the mail to confirm your address. ' => '@@@@',
'We have sent confirmation links to both old and new email addresses. ' => '@@@@',
];

View File

@ -91,7 +91,7 @@ return [
'Didn\'t receive confirmation message?' => 'Nie otrzymałeś emaila aktywacyjnego?',
'Disable two factor authentication' => 'Wyłącz uwierzytelnianie dwuetapowe',
'Disconnect' => 'Odłącz',
'Don\'t have an account? Sign up!' => 'Nie masz jeszcze konto? Zarejestruj się!',
'Don\'t have an account? Sign up!' => 'Nie masz jeszcze konta? Zarejestruj się!',
'Download my data' => 'Pobierz swoje dane',
'Email' => 'Email',
'Email (public)' => 'Email (publiczny)',
@ -109,7 +109,7 @@ return [
'Gravatar email' => 'Email z Gravatara',
'Hello' => 'Witaj',
'Here you can download your personal data in a comma separated values format.' => 'Tutaj możesz pobrać swoje dane osobowe w formacie CSV.',
'I agree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => '@@Zgadzam się na przetwarzanie moich danych osobowych i na użycie cookies w celu zapewnienia możliwości poprawnego działania tego serwisu. Aby dowiedzieć się więcej na ten temat, zapoznaj się z naszą {privacyPolicy}.@@',
'I agree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => 'Zgadzam się na przetwarzanie moich danych osobowych i na użycie cookies w celu zapewnienia możliwości poprawnego działania tego serwisu. Aby dowiedzieć się więcej na ten temat, zapoznaj się z naszą {privacyPolicy}.',
'If you already registered, sign in and connect this account on settings page' => 'Jeśli jesteś już zarejestrowany, zaloguj się i podłącz to konto na stronie ustawień',
'If you cannot click the link, please try pasting the text into your browser' => 'Jeśli kliknięcie w link nie działa, spróbuj skopiować go i wkleić w pasku adresu przeglądarki',
'If you did not make this request you can ignore this email' => 'Jeśli nie jesteś autorem tego żądania, prosimy o zignorowanie emaila.',
@ -265,7 +265,7 @@ return [
'Your password has expired, you must change it now' => 'Twoje hasło zostało zdezaktualizowane, musisz je teraz zmienić',
'Your personal information has been removed' => 'Twoje dane osobowe zostały usunięte',
'Your profile has been updated' => 'Twój profil został zaktualizowany',
'privacy policy' => '@@polityką prywatności@@',
'privacy policy' => 'polityką prywatności',
'{0, date, MMM dd, YYYY HH:mm}' => '{0, date, dd MMM YYYY, HH:mm}',
'{0, date, MMMM dd, YYYY HH:mm}' => '{0, date, dd MMMM YYYY, HH:mm}',
'{0} cannot be blank.' => '{0} nie może pozostać bez wartości',
@ -281,9 +281,6 @@ return [
'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@@',
'Enable Two-factor auth' => '@@Włącz uwierzytelnianie dwuetapowe@@',
'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}' => '@@@@',
'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}' => '@@@@',
'Invalid two-factor code' => '@@Nieprawidłowy kod uwierzytelniania dwuetapowego@@',
'Last login' => '@@Data ostatniego logowania@@',
'This will disable two-factor auth. Are you sure?' => '@@To wyłączy uwierzytelnianie dwuetapowe. Czy jesteś pewny?@@',

View File

@ -109,7 +109,7 @@ return [
'Gravatar email' => 'E-mail do Gravatar',
'Hello' => 'Olá',
'Here you can download your personal data in a comma separated values format.' => 'Aqui você pode baixar seus dados pessoais em um formato de valores separados por vírgulas.',
'I agree 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 nossa {privacyPolicy}@@',
'I agree 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 nossa {privacyPolicy}',
'If you already registered, sign in and connect this account on settings page' => 'Se você já se registrou, faça login e conecte esta conta na página de configurações',
'If you cannot click the link, please try pasting the text into your browser' => 'Se você não pode clicar no link, tente colar o texto em seu navegador',
'If you did not make this request you can ignore this email' => 'Se você não fez essa solicitação, ignore este e-mail',
@ -265,7 +265,7 @@ return [
'Your password has expired, you must change it now' => 'Sua senha expirou, você deve alterá-la agora',
'Your personal information has been removed' => 'Suas informações pessoais foram removidas',
'Your profile has been updated' => 'Seu perfil foi atualizado',
'privacy policy' => '@@política de Privacidade@@',
'privacy policy' => 'política de Privacidade',
'{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} não pode estar em branco',

View File

@ -103,7 +103,7 @@ return [
'Forgot password?' => 'Esqueceu a sua senha?',
'Hello' => 'Olá',
'Here you can download your personal data in a comma separated values format.' => 'Aqui pode descarregar os seus dados pessoais num ficheiro separado por virgulas.',
'I agree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => '@@Eu aceito o processamento dos meus dados pessoais e o uso de cookies para facilitar as operações neste site. Para mais informações leia a nossa {privacyPolicy}@@',
'I agree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => 'Eu aceito o processamento dos meus dados pessoais e o uso de cookies para facilitar as operações neste site. Para mais informações leia a nossa {privacyPolicy}',
'If you already registered, sign in and connect this account on settings page' => 'Se já se registou, entre e associe esta conta nas definições',
'If you cannot click the link, please try pasting the text into your browser' => 'Se não conseguir abrir o link, por favor tente colá-lo no seu browser',
'If you did not make this request you can ignore this email' => 'Se não fez este pedido pode ignorar este email',
@ -254,8 +254,7 @@ return [
'Your password has expired, you must change it now' => 'A sua password expirou, deve alterá-la agora',
'Your personal information has been removed' => 'Os seus dados pessoais foram removidos',
'Your profile has been updated' => 'O seu perfil foi atualziado',
'privacy policy' => '@@politica de privacidade@@',
'{0, date, MMM dd, YYYY HH:mm}' => '@@@@',
'privacy policy' => 'politica de privacidade',
'{0} cannot be blank.' => '{0} não pode ficar vazio.',
'According to the European General Data Protection Regulation (GDPR) we need your consent to work with your personal data.' => '',
'An email with instructions to create a new password has been sent to {email} if it is associated with an {appName} account. Your existing password has not been changed.' => '',
@ -278,30 +277,4 @@ return [
'Yandex' => '',
'Your consent is required to work with this site' => '',
'{0, date, MMMM dd, YYYY HH:mm}' => '',
'A message has been sent to your email address. ' => '@@@@',
'An email has been sent with instructions for resetting your password' => '@@Foi enviado um email com as instruções para restaurar a sua password@@',
'Awesome, almost there. ' => '@@@@',
'Class "{0}" does not exist' => '@@@@',
'Disable Two-Factor Auth' => '@@@@',
'Enable Two-factor auth' => '@@@@',
'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}' => '@@@@',
'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}' => '@@@@',
'Invalid two-factor code' => '@@@@',
'Last login' => '@@@@',
'Registration ip' => '@@@@',
'Rule class can not be instantiated' => '@@@@',
'Rule class must extend "yii\\rbac\\Rule"' => '@@@@',
'This will disable two-factor auth. Are you sure?' => '@@@@',
'Two Factor Authentication' => '@@@@',
'Two factor authentication protects you against stolen credentials' => '@@Autenticação de dois passos protege-o do roubo de credenciais de acesso@@',
'Two factor successfully enabled.' => '@@@@',
'Two-Factor Authentication' => '@@@@',
'Two-factor auth protects you against stolen credentials' => '@@@@',
'Two-factor authentication code' => '@@@@',
'Two-factor authorization has been disabled.' => '@@@@',
'Two-factor code' => '@@@@',
'Unable to disable two-factor authorization.' => '@@@@',
'We couldn\'t re-send the mail to confirm your address. ' => '@@@@',
'We have sent confirmation links to both old and new email addresses. ' => '@@@@',
];

View File

@ -109,7 +109,7 @@ return [
'Gravatar email' => 'Gravatar email',
'Hello' => 'buna',
'Here you can download your personal data in a comma separated values format.' => 'Aici puteți descărca datele personale într-un format de valori separate prin virgulă.',
'I agree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => '@@Sunt de acord cu prelucrarea datelor mele personale și utilizarea cookie-urilor pentru a facilita funcționarea acestui site. Pentru mai multe informații, citiți {privacyPolicy}@@',
'I agree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => 'Sunt de acord cu prelucrarea datelor mele personale și utilizarea cookie-urilor pentru a facilita funcționarea acestui site. Pentru mai multe informații, citiți {privacyPolicy}',
'If you already registered, sign in and connect this account on settings page' => 'Dacă v-ați înregistrat deja, conectați-vă și conectați-l pe pagina de setări',
'If you cannot click the link, please try pasting the text into your browser' => 'Dacă nu puteți da clic pe link, încercați să inserați textul în browser',
'If you did not make this request you can ignore this email' => 'Dacă nu ați făcut această solicitare, puteți ignora acest e-mail',
@ -265,7 +265,7 @@ return [
'Your password has expired, you must change it now' => 'Parola dvs. a expirat, trebuie să o modificați acum',
'Your personal information has been removed' => 'Informațiile dvs. personale au fost eliminate',
'Your profile has been updated' => 'Profilul dvs. a fost actualizat',
'privacy policy' => '@@politica de confidentialitate@@',
'privacy policy' => 'politica de confidentialitate',
'{0, date, MMM dd, YYYY HH:mm}' => '{0, data, MMM dd, AAAA HH: mm}',
'{0, date, MMMM dd, YYYY HH:mm}' => '{0, data, MMMM dd, AAAA HH: mm}',
'{0} cannot be blank.' => '{0} nu poate fi gol.',

View File

@ -110,7 +110,7 @@ return [
'Gravatar email' => 'Email для Gravatar',
'Hello' => 'Здравствуйте',
'Here you can download your personal data in a comma separated values format.' => 'Здесь вы можете загрузить свои персональные данные в формате значений, разделенных запятыми.',
'I agree 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 agree 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}',
'If you already registered, sign in and connect this account on settings page' => 'Если вы уже зарегистрированы, войдите и подключите аккаунт в настройках',
'If you cannot click the link, please try pasting the text into your browser' => 'Если вы не можете нажать на ссылку, скопируйте её и вставьте в адресную строку вашего браузера',
'If you did not make this request you can ignore this email' => 'Если вы получили это сообщение по ошибке, просто проигнорируйте или удалите его',
@ -269,7 +269,7 @@ return [
'Your password has expired, you must change it now' => 'Срок действия вашего пароля истек, сейчас вы должны изменить его',
'Your personal information has been removed' => 'Ваша персональная информация удалена',
'Your profile has been updated' => 'Настройки профиля были успешно сохранены',
'privacy policy' => '@@политикой конфиденциальности@@',
'privacy policy' => 'политикой конфиденциальности',
'{0, date, MMM dd, YYYY HH:mm}' => '{0, date, d MMM YYYY в HH:mm}',
'{0, date, MMMM dd, YYYY HH:mm}' => '{0, date, d MMMM YYYY в HH:mm}',
'{0} cannot be blank.' => '{0} не может быть пустым.',
@ -284,7 +284,6 @@ return [
'Class "{0}" does not exist' => '@@Класс "{0}" не найден@@',
'Disable Two-Factor Auth' => '@@Отключить двухфакторную авторизацию@@',
'Enable Two-factor auth' => '@@Включить двухфакторную авторизацию@@',
'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}' => '@@@@',
'Invalid two-factor code' => '@@Неверный код двухфакторной авторизации@@',
'Last login' => '@@Последний вход@@',
'Registration ip' => '@@IP при регистрации@@',

View File

@ -116,7 +116,7 @@ return [
'Gravatar email' => 'Gravatarový e-mail',
'Hello' => 'Dobrý deň',
'Here you can download your personal data in a comma separated values format.' => 'Tu si môžete stiahnuť svoje osobné údaje vo formáte oddelenom čiarkami',
'I agree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => '@@Súhlasím so spracovaním mojich osobných údajov a používaním súborov cookie s cieľom zjednodušiť užívateľa tejto služby. Ďalšie informácie sú k dispozícii na našej {privacyPolicy}@@',
'I agree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => 'Súhlasím so spracovaním mojich osobných údajov a používaním súborov cookie s cieľom zjednodušiť užívateľa tejto služby. Ďalšie informácie sú k dispozícii na našej {privacyPolicy}',
'If you already registered, sign in and connect this account on settings page' => 'Ak ste sa už zaregistrovali, prihláste sa a pripojte daný účet na stránke nastavení',
'If you cannot click the link, please try pasting the text into your browser' => 'Ak na odkaz nemôžete kliknúť, skúste ho pridať na panel prehľadávača',
'If you did not make this request you can ignore this email' => 'Ak ste túto žiadosť nepodali, môžete tento e-mail ignorovať',
@ -275,7 +275,7 @@ return [
'Your password has expired, you must change it now' => 'Vaše heslo vypršalo, musíte si ho teraz zmeniť',
'Your personal information has been removed' => 'Vaše osobné údaje boli odstránené',
'Your profile has been updated' => 'Váš profil bol aktualizovaný',
'privacy policy' => '@@Zásady ochrany osobných údajov@@',
'privacy policy' => 'Zásady ochrany osobných údajov',
'{0, date, MMM dd, YYYY HH:mm}' => '{0, date, dd. MMM YYYY, HH:mm}',
'{0, date, MMMM dd, YYYY HH:mm}' => '{0, date, dd. MMMM YYYY, HH:mm}',
'{0} cannot be blank.' => '{0} nesmie byť prázdne.',

View File

@ -17,9 +17,6 @@
* NOTE: this file must be saved in UTF-8 encoding.
*/
return [
'I agree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => '@@@@',
'privacy policy' => '@@@@',
'{0, date, MMM dd, YYYY HH:mm}' => '@@@@',
'(not set)' => '',
'A confirmation message has been sent to your new email address' => '',
'A message has been sent to your email address. It contains a confirmation link that you must click to complete registration.' => '',
@ -278,30 +275,4 @@ return [
'Your profile has been updated' => '',
'{0, date, MMMM dd, YYYY HH:mm}' => '',
'{0} cannot be blank.' => '',
'A message has been sent to your email address. ' => '@@@@',
'An email has been sent with instructions for resetting your password' => '@@@@',
'Awesome, almost there. ' => '@@@@',
'Class "{0}" does not exist' => '@@@@',
'Disable Two-Factor Auth' => '@@@@',
'Enable Two-factor auth' => '@@@@',
'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}' => '@@@@',
'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}' => '@@@@',
'Invalid two-factor code' => '@@@@',
'Last login' => '@@@@',
'Registration ip' => '@@@@',
'Rule class can not be instantiated' => '@@@@',
'Rule class must extend "yii\\rbac\\Rule"' => '@@@@',
'This will disable two-factor auth. Are you sure?' => '@@@@',
'Two Factor Authentication' => '@@@@',
'Two factor authentication protects you against stolen credentials' => '@@@@',
'Two factor successfully enabled.' => '@@@@',
'Two-Factor Authentication' => '@@@@',
'Two-factor auth protects you against stolen credentials' => '@@@@',
'Two-factor authentication code' => '@@@@',
'Two-factor authorization has been disabled.' => '@@@@',
'Two-factor code' => '@@@@',
'Unable to disable two-factor authorization.' => '@@@@',
'We couldn\'t re-send the mail to confirm your address. ' => '@@@@',
'We have sent confirmation links to both old and new email addresses. ' => '@@@@',
];

View File

@ -17,9 +17,6 @@
* NOTE: this file must be saved in UTF-8 encoding.
*/
return [
'I agree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => '@@@@',
'privacy policy' => '@@@@',
'{0, date, MMM dd, YYYY HH:mm}' => '@@@@',
'(not set)' => '',
'A confirmation message has been sent to your new email address' => '',
'A message has been sent to your email address. It contains a confirmation link that you must click to complete registration.' => '',
@ -278,30 +275,4 @@ return [
'Your profile has been updated' => '',
'{0, date, MMMM dd, YYYY HH:mm}' => '',
'{0} cannot be blank.' => '',
'A message has been sent to your email address. ' => '@@@@',
'An email has been sent with instructions for resetting your password' => '@@@@',
'Awesome, almost there. ' => '@@@@',
'Class "{0}" does not exist' => '@@@@',
'Disable Two-Factor Auth' => '@@@@',
'Enable Two-factor auth' => '@@@@',
'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}' => '@@@@',
'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}' => '@@@@',
'Invalid two-factor code' => '@@@@',
'Last login' => '@@@@',
'Registration ip' => '@@@@',
'Rule class can not be instantiated' => '@@@@',
'Rule class must extend "yii\\rbac\\Rule"' => '@@@@',
'This will disable two-factor auth. Are you sure?' => '@@@@',
'Two Factor Authentication' => '@@@@',
'Two factor authentication protects you against stolen credentials' => '@@@@',
'Two factor successfully enabled.' => '@@@@',
'Two-Factor Authentication' => '@@@@',
'Two-factor auth protects you against stolen credentials' => '@@@@',
'Two-factor authentication code' => '@@@@',
'Two-factor authorization has been disabled.' => '@@@@',
'Two-factor code' => '@@@@',
'Unable to disable two-factor authorization.' => '@@@@',
'We couldn\'t re-send the mail to confirm your address. ' => '@@@@',
'We have sent confirmation links to both old and new email addresses. ' => '@@@@',
];

View File

@ -110,7 +110,7 @@ return [
'Gravatar email' => 'Gravatar email',
'Hello' => 'Привіт',
'Here you can download your personal data in a comma separated values format.' => 'Тут Ви можете скачати Ваші персональні дані у форматі CSV.',
'I agree 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 agree 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}',
'If you already registered, sign in and connect this account on settings page' => 'Якщо Ви вже зареєстровані - увійдіть та підключіть цей акаунт в налаштуваннях.',
'If you cannot click the link, please try pasting the text into your browser' => 'Якщо Ви не можете натиснути на посилання, спробуйте вставити його адресу у Ваш браузер.',
'If you did not make this request you can ignore this email' => 'Якщо Ви не робили запит - можете ігнорувати дане повідомлення.',

View File

@ -17,9 +17,6 @@
* NOTE: this file must be saved in UTF-8 encoding.
*/
return [
'I agree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => '@@@@',
'privacy policy' => '@@@@',
'{0, date, MMM dd, YYYY HH:mm}' => '@@@@',
'(not set)' => '',
'A confirmation message has been sent to your new email address' => '',
'A message has been sent to your email address. It contains a confirmation link that you must click to complete registration.' => '',
@ -278,30 +275,4 @@ return [
'Your profile has been updated' => '',
'{0, date, MMMM dd, YYYY HH:mm}' => '',
'{0} cannot be blank.' => '',
'A message has been sent to your email address. ' => '@@@@',
'An email has been sent with instructions for resetting your password' => '@@@@',
'Awesome, almost there. ' => '@@@@',
'Class "{0}" does not exist' => '@@@@',
'Disable Two-Factor Auth' => '@@@@',
'Enable Two-factor auth' => '@@@@',
'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}' => '@@@@',
'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}' => '@@@@',
'Invalid two-factor code' => '@@@@',
'Last login' => '@@@@',
'Registration ip' => '@@@@',
'Rule class can not be instantiated' => '@@@@',
'Rule class must extend "yii\\rbac\\Rule"' => '@@@@',
'This will disable two-factor auth. Are you sure?' => '@@@@',
'Two Factor Authentication' => '@@@@',
'Two factor authentication protects you against stolen credentials' => '@@@@',
'Two factor successfully enabled.' => '@@@@',
'Two-Factor Authentication' => '@@@@',
'Two-factor auth protects you against stolen credentials' => '@@@@',
'Two-factor authentication code' => '@@@@',
'Two-factor authorization has been disabled.' => '@@@@',
'Two-factor code' => '@@@@',
'Unable to disable two-factor authorization.' => '@@@@',
'We couldn\'t re-send the mail to confirm your address. ' => '@@@@',
'We have sent confirmation links to both old and new email addresses. ' => '@@@@',
];

View File

@ -17,9 +17,6 @@
* NOTE: this file must be saved in UTF-8 encoding.
*/
return [
'I agree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => '@@@@',
'privacy policy' => '@@@@',
'{0, date, MMM dd, YYYY HH:mm}' => '@@@@',
'(not set)' => '',
'A confirmation message has been sent to your new email address' => '',
'A message has been sent to your email address. It contains a confirmation link that you must click to complete registration.' => '',
@ -278,30 +275,4 @@ return [
'Your profile has been updated' => '',
'{0, date, MMMM dd, YYYY HH:mm}' => '',
'{0} cannot be blank.' => '',
'A message has been sent to your email address. ' => '@@@@',
'An email has been sent with instructions for resetting your password' => '@@@@',
'Awesome, almost there. ' => '@@@@',
'Class "{0}" does not exist' => '@@@@',
'Disable Two-Factor Auth' => '@@@@',
'Enable Two-factor auth' => '@@@@',
'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}' => '@@@@',
'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}' => '@@@@',
'Invalid two-factor code' => '@@@@',
'Last login' => '@@@@',
'Registration ip' => '@@@@',
'Rule class can not be instantiated' => '@@@@',
'Rule class must extend "yii\\rbac\\Rule"' => '@@@@',
'This will disable two-factor auth. Are you sure?' => '@@@@',
'Two Factor Authentication' => '@@@@',
'Two factor authentication protects you against stolen credentials' => '@@@@',
'Two factor successfully enabled.' => '@@@@',
'Two-Factor Authentication' => '@@@@',
'Two-factor auth protects you against stolen credentials' => '@@@@',
'Two-factor authentication code' => '@@@@',
'Two-factor authorization has been disabled.' => '@@@@',
'Two-factor code' => '@@@@',
'Unable to disable two-factor authorization.' => '@@@@',
'We couldn\'t re-send the mail to confirm your address. ' => '@@@@',
'We have sent confirmation links to both old and new email addresses. ' => '@@@@',
];

View File

@ -2,9 +2,9 @@
$db = [
'class' => 'yii\db\Connection',
'dsn' => 'mysql:host=localhost;dbname=yii2-usuario-test',
'dsn' => 'mysql:host=127.0.0.1;dbname=yii2-usuario-test',
'username' => 'root',
'password' => '',
'password' => 'password',
'charset' => 'utf8',
];

View File

@ -0,0 +1,160 @@
<?php
use Da\User\Helper\SecurityHelper;
use yii\base\Security;
/**
* Testing for the `SecurityHelper.generatePassword()` function.
* Note that this test considers these sets of characters:
* $sets = [
* 'lower' => 'abcdefghjkmnpqrstuvwxyz',
* 'upper' => 'ABCDEFGHJKMNPQRSTUVWXYZ',
* 'digit' => '123456789',
* 'special' => '!#$%&*+,-.:;<=>?@_~'
* ];
*/
class GeneratePasswordTest extends \Codeception\Test\Unit
{
const ITERATIONS = 10000;
// Test with minPasswordRequirements equal to null (get default value/parameter)
public function testNullParameter ()
{
$length = 8;
$minPasswordRequirements = null;
// Helper
$securityHelper = new SecurityHelper(new Security()); // Empty security (it does not matter)
// Check password correctness
$ok = true;
for ($i = 0; $i < self::ITERATIONS; $i++) {
$password = $securityHelper->generatePassword($length, $minPasswordRequirements);
$result = preg_match('/\A(?=(.*\d){1})(?=(?:[^a-z]*[a-z]){1})(?=(?:[^A-Z]*[A-Z]){1})[0-9a-zA-Z!#$%&*+,-.:;<=>?@_~]{8,}\z/', $password);
if ($result === 0) {
$ok = false;
break;
}
}
$this->assertTrue($ok);
}
// Test with minPasswordRequirements equal to an empty array (= password without requirements)
public function testEmptyParameter ()
{
$length = 8;
$minPasswordRequirements = [];
// Helper
$securityHelper = new SecurityHelper(new Security()); // Empty security (it does not matter)
// Check password correctness
$ok = true;
for ($i = 0; $i < self::ITERATIONS; $i++) {
$password = $securityHelper->generatePassword($length, $minPasswordRequirements);
$result = preg_match('/\A[0-9a-zA-Z!#$%&*+,-.:;<=>?@_~]{8,}\z/', $password);
if ($result === 0) {
$ok = false;
break;
}
}
$this->assertTrue($ok);
}
// Test with many lowercase characters, one uppercase character, one digit and one special character
public function testManyLowercaseCharacter ()
{
// Function parameters
$length = 8;
$minPasswordRequirements = [
'min' => 10,
'special' => 1,
'digit' => 1,
'upper' => 1,
'lower' => 5
];
// Helper
$securityHelper = new SecurityHelper(new Security()); // Empty security (it does not matter)
// Check password correctness
$ok = true;
for ($i = 0; $i < self::ITERATIONS; $i++) {
$password = $securityHelper->generatePassword($length, $minPasswordRequirements);
$result = preg_match('/\A(?=(.*\d){1})(?=(?:[^a-z]*[a-z]){5})(?=(?:[^A-Z]*[A-Z]){1})(?=(?:[0-9a-zA-Z]*[!#$%&*+,-.:;<=>?@_~]){1})[0-9a-zA-Z!#$%&*+,-.:;<=>?@_~]{10,}\z/', $password);
if ($result === 0) {
$ok = false;
break;
}
}
$this->assertTrue($ok);
}
// Test with many special characters, one uppercase character, one digit
public function testManySpecialCharacter ()
{
// Function parameters
$length = 10;
$minPasswordRequirements = [
'min' => 10,
'special' => 6,
'digit' => 1,
'upper' => 1,
];
// Helper
$securityHelper = new SecurityHelper(new Security()); // Empty security (it does not matter)
// Check password correctness
$ok = true;
for ($i = 0; $i < self::ITERATIONS; $i++) {
$password = $securityHelper->generatePassword($length, $minPasswordRequirements);
$result = preg_match('/\A(?=(.*\d){1})(?=(?:[^A-Z]*[A-Z]){1})(?=(?:[0-9a-zA-Z]*[!#$%&*+,-.:;<=>?@_~]){6})[0-9a-zA-Z!#$%&*+,-.:;<=>?@_~]{10,}\z/', $password);
if ($result === 0) {
$ok = false;
break;
}
}
$this->assertTrue($ok);
}
// Test with a long password and no requirements
public function testLongPassword ()
{
// Function parameters
$length = 20;
$minPasswordRequirements = [];
// Helper
$securityHelper = new SecurityHelper(new Security()); // Empty security (it does not matter)
// Check password correctness
$ok = true;
for ($i = 0; $i < self::ITERATIONS; $i++) {
$password = $securityHelper->generatePassword($length, $minPasswordRequirements);
$result = preg_match('/\A[0-9a-zA-Z!#$%&*+,-.:;<=>?@_~]{20,}\z/', $password);
if ($result === 0) {
$ok = false;
break;
}
}
$this->assertTrue($ok);
}
// Test with random requirements
public function testRandomRequirements ()
{
// Function parameters
$length = 8;
$minPasswordRequirements = [
'min' => 10,
'special' => 4,
'digit' => 3,
'upper' => 2,
'lower' => 1
];
// Helper
$securityHelper = new SecurityHelper(new Security()); // Empty security (it does not matter)
// Check password correctness
$ok = true;
for ($i = 0; $i < self::ITERATIONS; $i++) {
$password = $securityHelper->generatePassword($length, $minPasswordRequirements);
$result = preg_match('/\A(?=(.*\d){3})(?=(?:[^a-z]*[a-z]){1})(?=(?:[^A-Z]*[A-Z]){2})(?=(?:[0-9a-zA-Z]*[!#$%&*+,-.:;<=>?@_~]){4})[0-9a-zA-Z!#$%&*+,-.:;<=>?@_~]{10,}\z/', $password);
if ($result === 0) {
$ok = false;
break;
}
}
$this->assertTrue($ok);
}
}