Skip to content

Commit 6a57e3b

Browse files
authored
Merge pull request #936 from ivanBell199/ivanBell199-patch-2
lang: [ru] add Russian language
2 parents 0cd4d2a + 2ac8ce7 commit 6a57e3b

File tree

3 files changed

+130
-1
lines changed

3 files changed

+130
-1
lines changed

src/Language/ru/Auth.php

Lines changed: 108 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,108 @@
1+
<?php
2+
3+
declare(strict_types=1);
4+
5+
return [
6+
// Exceptions
7+
'unknownAuthenticator' => '{0} не является действительным аутентификатором.',
8+
'unknownUserProvider' => 'Не удалось определить поставщика пользователей.',
9+
'invalidUser' => 'Не удалось найти указанного пользователя.',
10+
'bannedUser' => 'Невозможно войти, так как вы заблокированы.',
11+
'logOutBannedUser' => 'Вы вышли из системы, так как вас заблокировали.',
12+
'badAttempt' => 'Не удалось войти. Проверьте свои учётные данные.',
13+
'noPassword' => 'Невозможно проверить пользователя без пароля.',
14+
'invalidPassword' => 'Не удалось войти. Проверьте свой пароль.',
15+
'noToken' => 'У каждого запроса должен быть токен носителя в заголовке {0}.',
16+
'badToken' => 'Токен доступа недействителен.',
17+
'oldToken' => 'Срок действия токена доступа истёк.',
18+
'noUserEntity' => 'Для проверки пароля необходимо предоставить сущность пользователя.',
19+
'invalidEmail' => 'Не удалось подтвердить, что адрес электронной почты соответствует зарегистрированному.',
20+
'unableSendEmailToUser' => 'Извините, возникла проблема с отправкой электронного письма. Не удалось отправить электронное письмо на "{0}".',
21+
'throttled' => 'С этого IP-адреса было сделано слишком много запросов. Вы можете попробовать снова через {0} секунд.',
22+
'notEnoughPrivilege' => 'У вас нет необходимых разрешений для выполнения требуемой операции.',
23+
// JWT Exceptions
24+
'invalidJWT' => 'Токен недействителен.',
25+
'expiredJWT' => 'Срок действия токена истёк.',
26+
'beforeValidJWT' => 'Токен ещё не доступен.',
27+
28+
'email' => 'Адрес электронной почты',
29+
'username' => 'Имя пользователя',
30+
'password' => 'Пароль',
31+
'passwordConfirm' => 'Пароль (ещё раз)',
32+
'haveAccount' => 'Уже есть учётная запись?',
33+
'token' => 'Токен',
34+
35+
// Buttons
36+
'confirm' => 'Подтвердить',
37+
'send' => 'Отправить',
38+
39+
// Registration
40+
'register' => 'Зарегистрироваться',
41+
'registerDisabled' => 'Регистрация в настоящее время запрещена.',
42+
'registerSuccess' => 'Добро пожаловать на борт!',
43+
44+
// Login
45+
'login' => 'Вход',
46+
'needAccount' => 'Нужна учётная запись?',
47+
'rememberMe' => 'Запомнить меня',
48+
'forgotPassword' => 'Забыли пароль?',
49+
'useMagicLink' => 'Воспользуйтесь ссылкой для входа',
50+
'magicLinkSubject' => 'Ваша ссылка для входа',
51+
'magicTokenNotFound' => 'Не удалось проверить ссылку.',
52+
'magicLinkExpired' => 'Извините, срок действия ссылки истёк.',
53+
'checkYourEmail' => 'Проверьте свою электронную почту!',
54+
'magicLinkDetails' => 'Мы только что отправили вам электронное письмо со ссылкой для входа. Она действительна только в течение {0} минут.',
55+
'magicLinkDisabled' => 'Использование ссылки для входа в настоящее время запрещено.',
56+
'successLogout' => 'Вы успешно вышли.',
57+
'backToLogin' => 'Вернуться ко входу',
58+
59+
// Passwords
60+
'errorPasswordLength' => 'Пароли должны содержать не менее {0, number} символов.',
61+
'suggestPasswordLength' => 'Фразы длиной до 255 символов являются более надёжными паролями, которые легко запомнить.',
62+
'errorPasswordCommon' => 'Пароль не должен быть распространённым.',
63+
'suggestPasswordCommon' => 'Пароль был проверен на соответствие более чем 65 тысячам часто используемых паролей или паролей, которые были раскрыты в результате хакерских атак.',
64+
'errorPasswordPersonal' => 'Пароли не могут содержать повторно хешированную личную информацию.',
65+
'suggestPasswordPersonal' => 'Вариации вашего адреса электронной почты или имени пользователя не следует использовать для паролей.',
66+
'errorPasswordTooSimilar' => 'Пароль слишком похож на имя пользователя.',
67+
'suggestPasswordTooSimilar' => 'Не используйте части вашего имени пользователя в пароле.',
68+
'errorPasswordPwned' => 'Пароль {0} был раскрыт в результате утечки данных и был обнаружен {1, number} раз в {2} скомпрометированных паролях.',
69+
'suggestPasswordPwned' => '{0} никогда не следует использовать в качестве пароля. Если вы уже используете его где-либо, немедленно измените его.',
70+
'errorPasswordEmpty' => 'Требуется пароль.',
71+
'errorPasswordTooLongBytes' => 'Длина пароля не может превышать {param} байт.',
72+
'passwordChangeSuccess' => 'Пароль успешно изменён',
73+
'userDoesNotExist' => 'Пароль не изменён. Пользователь не существует',
74+
'resetTokenExpired' => 'К сожалению, срок действия вашего токена сброса истёк.',
75+
76+
// Email Globals
77+
'emailInfo' => 'Некоторые сведения о человеке:',
78+
'emailIpAddress' => 'IP-адрес:',
79+
'emailDevice' => 'Устройство:',
80+
'emailDate' => 'Дата:',
81+
82+
// 2FA
83+
'email2FATitle' => 'Двухфакторная аутентификация',
84+
'confirmEmailAddress' => 'Подтвердите свой адрес электронной почты.',
85+
'emailEnterCode' => 'Подтвердите свой Email',
86+
'emailConfirmCode' => 'Введите 6-значный код, который мы только что отправили на ваш адрес электронной почты.',
87+
'email2FASubject' => 'Ваш код аутентификации',
88+
'email2FAMailBody' => 'Ваш код аутентификации:',
89+
'invalid2FAToken' => 'Код неверный.',
90+
'need2FA' => 'Вы должны пройти двухфакторную проверку.',
91+
'needVerification' => 'Проверьте свою электронную почту, чтобы завершить активацию учётной записи.',
92+
93+
// Activate
94+
'emailActivateTitle' => 'Активация электронной почты',
95+
'emailActivateBody' => 'Мы только что отправили вам электронное письмо с кодом для подтверждения вашего адреса электронной почты. Скопируйте этот код и вставьте его ниже.',
96+
'emailActivateSubject' => 'Ваш код активации',
97+
'emailActivateMailBody' => 'Пожалуйста, воспользуйтесь приведённым ниже кодом для активации учетной записи и начала работы с сайтом.',
98+
'invalidActivateToken' => 'Код неверный.',
99+
'needActivate' => 'Вы должны завершить регистрацию, подтвердив код, отправленный на ваш адрес электронной почты.',
100+
'activationBlocked' => 'Вы должны активировать свою учетную запись перед входом в систему.',
101+
102+
// Groups
103+
'unknownGroup' => '{0} не является действительной группой.',
104+
'missingTitle' => 'Группы должны иметь название.',
105+
106+
// Permissions
107+
'unknownPermission' => '{0} не является действительным разрешением.',
108+
];

tests/Language/AbstractTranslationTestCase.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ abstract class AbstractTranslationTestCase extends TestCase
6868
// PolishTranslationTest::class => 'pl',
6969
PortugueseTranslationTest::class => 'pt',
7070
BrazilianTranslationTest::class => 'pt-BR',
71-
// RussianTranslationTest::class => 'ru',
71+
RussianTranslationTest::class => 'ru',
7272
// SinhalaTranslationTest::class => 'si',
7373
SlovakTranslationTest::class => 'sk',
7474
SerbianTranslationTest::class => 'sr',
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
<?php
2+
3+
declare(strict_types=1);
4+
5+
/**
6+
* This file is part of CodeIgniter 4 framework.
7+
*
8+
* (c) CodeIgniter Foundation <[email protected]>
9+
*
10+
* For the full copyright and license information, please view
11+
* the LICENSE file that was distributed with this source code.
12+
*/
13+
14+
namespace Tests\Language;
15+
16+
/**
17+
* @internal
18+
*/
19+
final class RussianTranslationTest extends AbstractTranslationTestCase
20+
{
21+
}

0 commit comments

Comments
 (0)