From 60dac4664b5df6b633ef7787261e873ffc7e55cb Mon Sep 17 00:00:00 2001 From: Alexey Vasilyev Date: Mon, 22 Jun 2015 17:56:41 +0300 Subject: [PATCH 1/4] Russian translation --- config/langs.php | 1 + resources/lang/ru/cachet.php | 97 +++++++++++++++ resources/lang/ru/dashboard.php | 196 +++++++++++++++++++++++++++++++ resources/lang/ru/forms.php | 147 +++++++++++++++++++++++ resources/lang/ru/pagination.php | 28 +++++ resources/lang/ru/reminders.php | 31 +++++ resources/lang/ru/setup.php | 24 ++++ resources/lang/ru/validation.php | 116 ++++++++++++++++++ 8 files changed, 640 insertions(+) create mode 100644 resources/lang/ru/cachet.php create mode 100644 resources/lang/ru/dashboard.php create mode 100644 resources/lang/ru/forms.php create mode 100644 resources/lang/ru/pagination.php create mode 100644 resources/lang/ru/reminders.php create mode 100644 resources/lang/ru/setup.php create mode 100644 resources/lang/ru/validation.php diff --git a/config/langs.php b/config/langs.php index 58571562..6042b1f1 100755 --- a/config/langs.php +++ b/config/langs.php @@ -21,6 +21,7 @@ return [ 'ko' => '한글', 'nl' => 'Nederlands', 'pt-BR' => 'Portuguese, Brazilian', + 'ru' => 'Русский', 'zh-CN' => '简体中文', 'zh-TW' => '繁體中文', ]; diff --git a/resources/lang/ru/cachet.php b/resources/lang/ru/cachet.php new file mode 100644 index 00000000..e1c70fa6 --- /dev/null +++ b/resources/lang/ru/cachet.php @@ -0,0 +1,97 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +return [ + // Components + 'components' => [ + 'status' => [ + 1 => 'Работает', + 2 => 'Падение производительности', + 3 => 'Частичные неполадки', + 4 => 'Не работает', + ], + ], + + // Incidents + 'incidents' => [ + 'none' => 'Инцидентов не происходило.', + 'past' => 'Прошлые инциденты', + 'previous_week' => 'Прошлая неделя', + 'next_week' => 'Следующая неделя', + 'none' => 'Инцидентов не происходило.', + 'scheduled' => 'Запланированное обслуживание', + 'scheduled_at' => ', запланировано :timestamp', + 'status' => [ + 0 => 'Запланировано', // TODO: Hopefully remove this. + 1 => 'Исследуется', + 2 => 'Причина определена', + 3 => 'Под наблюдением', + 4 => 'Исправлено', + ], + ], + + // Service Status + 'service' => [ + 'good' => 'Все системы работают нормально.', + 'bad' => 'В некоторых системах наблюдаются проблемы.', + ], + + 'api' => [ + 'regenerate' => 'Регенерировать API ключ', + 'revoke' => 'Отозвать API ключ', + ], + + // Metrics + 'metrics' => [ + 'filter' => [ + 'hourly' => 'Часы', + 'daily' => 'Дни', + 'monthly' => 'Месяцы', + ], + ], + + // Subscriber + 'subscriber' => [ + 'subscribe' => 'Подпишитесь, чтобы получать информацию об изменениях.', + 'button' => 'Подписка', + 'email' => [ + 'subscribe' => 'Подписка на рассылку об изменениях.', + 'subscribed' => 'Вы подписались на рассылку email уведомлений. Проверьте вашу почту, чтобы подтвердить подписку.', + 'verified' => 'Ваша подписка подтверждена. Спасибо!', + 'unsubscribe' => 'Отписаться от рассылки.', + 'unsubscribed' => 'Ваша подписка отменена.', + 'failure' => 'Произошла ошибка при подписке на рассылку.', + 'verify' => [ + 'text' => "Пожалуйста подтвердите вашу подписку на уведомления об изменениях статуса проекта :app_name.\n:link\nСпасибо! :app_name", + 'html-preheader' => 'Пожалуйста подтвердите подписку на уведомления :app_name.', + 'html' => '

Пожалуйста подтвердите вашу подписку на уведомления об изменениях статуса проекта :app_name.

:link

Спасибо! :app_name

', + ], + 'maintenance' => [ + 'text' => "На проекте :app_name запланированы технические работы.\nСпасибо! :app_name", + 'html-preheader' => 'Плановые работы на проекте :app_name.', + 'html' => '

На проекте :app_name запланированы технические работы.

Спасибо! :app_name

', + ], + 'incident' => [ + 'text' => "На проекте :app_name добавлен новый инцидент.\nСпасибо! :app_name", + 'html-preheader' => 'Новый инцидент на проекте :app_name.', + 'html' => '

На проекте :app_name добавлен новый инцидент.

Спасибо! :app_name

', + ], + ], + ], + + // Other + 'powered_by' => ':app Статусная страница работает на Cachet.', + 'about_this_site' => 'Об этом сайте', + 'rss-feed' => 'RSS фид', + 'atom-feed' => 'Atom фид', + 'feed' => 'Статус фид', + +]; diff --git a/resources/lang/ru/dashboard.php b/resources/lang/ru/dashboard.php new file mode 100644 index 00000000..f91f5ada --- /dev/null +++ b/resources/lang/ru/dashboard.php @@ -0,0 +1,196 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +return [ + + 'dashboard' => 'Панель управления', + + // Incidents + 'incidents' => [ + 'title' => 'Инциденты и Плановые работы', + 'incidents' => 'Инциденты', + 'logged' => '{0} Нет инцидентов, отличная работа!|У вас записан один инцидент.|Записано инцидентов: :count', + 'incident-create-template' => 'Добавить Шаблон', + 'incident-templates' => 'Шаблоны Инцидентов', + 'add' => [ + 'title' => 'Добавить инцидент', + 'success' => 'Инцидент добавлен.', + 'failure' => 'Что-то пошло не так при добавлении инцидента.', + ], + 'edit' => [ + 'title' => 'Правка инцидента', + 'success' => 'Инцидент обновлен.', + 'failure' => 'Что-то пошло не так при изменении инцидента.', + ], + + // Incident templates + 'templates' => [ + 'title' => 'Шаблоны инцидентов', + 'add' => [ + 'title' => 'Создать шаблон инцидента', + 'success' => 'Шаблон создан.', + 'failure' => 'Что-то пошло не так при создании шаблона.', + ], + 'edit' => [ + 'title' => 'Правка шаблона', + 'success' => 'Шаблон обновлен!', + 'failure' => 'Что-то пошло не так при изменении шаблона.', + ], + ], + ], + + // Incident Maintenance + 'schedule' => [ + 'schedule' => 'Плановые работы', + 'scheduled_at' => 'Запланировано :timestamp', + 'add' => [ + 'title' => 'Добавить плановые работы', + 'success' => 'Плановые работы добавлены.', + 'failure' => 'Что-то пошло не так при добавлении плановых работ.', + ], + 'edit' => [ + 'title' => 'Правка плановых работ', + 'success' => 'Плановые работы обновлены!', + 'failure' => 'Что-то пошло не так при изменении плановых работ.', + ], + 'delete' => [ + 'success' => 'Плановые работы удалены и не будут отображаться на вашей статусной странице.', + 'failure' => 'Не удается удалить плановые работы. Попробуйте еще раз.', + ], + ], + + // Components + 'components' => [ + 'components' => 'Компоненты', + 'component_statuses' => 'Статус Компонентов', + 'listed_group' => 'В группе :name', + 'add' => [ + 'title' => 'Добавить компонент', + 'message' => 'Вам необходимо добавить хотя бы один компонент.', + 'success' => 'Компонент создан.', + 'failure' => 'Что-то пошло не так при создании компонента.', + ], + 'edit' => [ + 'title' => 'Правка компонента', + 'success' => 'Компонент обновлен.', + 'failure' => 'Что-то пошло не так при изменении компонента.', + ], + + // Component groups + 'groups' => [ + 'groups' => 'Группа компонентов|Группы компонентов', + 'no_components' => 'Вам необходимо добавить группу компонентов', + 'add' => [ + 'title' => 'Добавить группу компонентов', + 'success' => 'Группа компонентов создана.', + 'failure' => 'Что-то пошло не так при создании группы компонентов.', + ], + 'edit' => [ + 'title' => 'Правка группы компонентов', + 'success' => 'Группа компонентов обновлена.', + 'failure' => 'Что-то пошло не так при изменении группы компонентов.', + ], + ], + ], + + // Metrics + 'metrics' => [ + 'metrics' => 'Метрики', + 'add' => [ + 'title' => 'Создать метрику', + 'success' => 'Метрика создана.', + 'failure' => 'Что-то пошло не так при создании метрики.', + ], + 'edit' => [ + 'title' => 'Правка метрики', + 'success' => 'Метрика обновлена.', + 'failure' => 'Что-то пошло не так при изменении метрики.', + ], + ], + + // Team + 'team' => [ + 'team' => 'Компания', + 'member' => 'Сотрудник', + 'profile' => 'Профиль', + 'description' => 'Сотрудники компании смогут добавлять и изменять компоненты и инциденты.', + 'add' => [ + 'title' => 'Добавить сотрудника', + 'success' => 'Сотрудник добавлен.', + 'failure' => 'Что-то пошло не так при добавлении сотрудника.', + ], + 'edit' => [ + 'title' => 'Обновить профиль', + 'success' => 'Профиль изменен.', + 'failure' => 'Что-то пошло не так при изменении профиля.', + ], + ], + + // Settings + 'settings' => [ + 'settings' => 'Настройки', + 'app-setup' => [ + 'app-setup' => 'Настройки приложения', + 'images-only' => 'Могут быть загружены только картинки.', + 'too-big' => 'Загруженный вами файл слишком большой. Загрузите картинку меньше чем :size', + ], + 'security' => [ + 'security' => 'Безопасность', + 'two-factor' => 'Пользователи без двухфакторной авторизации', + ], + 'stylesheet' => [ + 'stylesheet' => 'CSS-стили', + ], + 'theme' => [ + 'theme' => 'Тема', + ], + 'edit' => [ + 'success' => 'Настройки сохранены.', + 'failure' => 'Не удается сохранить настройки.', + ], + ], + + // Login + 'login' => [ + 'login' => 'Вход', + 'logged_in' => 'Вы успешно вошли.', + 'welcome' => 'Добро пожаловать!', + 'two-factor' => 'Пожалуйста, введите ваш токен.', + ], + + // Sidebar footer + 'help' => 'Помощь', + 'status_page' => 'Статусная страница', + 'logout' => 'Выйти', + + // Notifications + 'notifications' => [ + 'notifications' => 'Уведомления', + 'awesome' => 'Отлично!', + 'whoops' => 'Ой-ой!', + ], + + // Welcome modal + 'welcome' => [ + 'welcome' => 'Добро пожаловать в Cachet', + 'message' => 'Ваша статусная страница почти готова! Возможно, вы захотите настроить дополнительные параметры', + 'close' => 'Я хочу сразу в панель управления', + 'steps' => [ + 'component' => 'Создать компоненты', + 'incident' => 'Создать инциденты', + 'customize' => 'Настроить', + 'team' => 'Добавить пользователей', + 'api' => 'Сгенерировать API токен', + 'two-factor' => 'Двухфакторная авторизация', + ], + ], + +]; diff --git a/resources/lang/ru/forms.php b/resources/lang/ru/forms.php new file mode 100644 index 00000000..8c9ad946 --- /dev/null +++ b/resources/lang/ru/forms.php @@ -0,0 +1,147 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +return [ + + // Setup form fields + 'setup' => [ + 'email' => 'Email', + 'username' => 'Имя пользователя', + 'password' => 'Пароль', + 'site_name' => 'Название сайта', + 'site_domain' => 'Домен', + 'site_timezone' => 'Выберите временную зону', + 'site_locale' => 'Выберите язык', + 'enable_google2fa' => 'Включить двухфакторную авторизацию через Google', + 'cache_driver' => 'Cache Driver', + 'session_driver' => 'Session Driver', + ], + + // Login form fields + 'login' => [ + 'email' => 'Email', + 'password' => 'Пароль', + '2fauth' => 'Код аутентификации', + 'invalid' => 'Неправильный email или пароль', + 'invalid-token' => 'Неправильный токен', + 'cookies' => 'Необходимо включить cookies для входа.', + ], + + // Incidents form fields + 'incidents' => [ + 'name' => 'Название', + 'status' => 'Статус', + 'component' => 'Компонент', + 'message' => 'Сообщение', + 'message-help' => 'Вы можете использовать Markdown.', + 'scheduled_at' => 'Когда запланированы работы?', + 'incident_time' => 'Когда инцидент произошел?', + 'notify_subscribers' => 'Уведомить подписчиков', + 'visibility' => 'Видимость Инцидента', + 'public' => 'Доступен публично', + 'logged_in_only' => 'Видимый только авторизованным пользователям', + 'templates' => [ + 'name' => 'Название', + 'template' => 'Шаблон', + ], + ], + + // Components form fields + 'components' => [ + 'name' => 'Название', + 'status' => 'Статус', + 'group' => 'Группа', + 'description' => 'Описание', + 'link' => 'Ссылка', + 'tags' => 'Теги', + 'tags-help' => 'Разделитель - запятые.', + + 'groups' => [ + 'name' => 'Название', + ], + ], + + // Metric form fields + 'metrics' => [ + 'name' => 'Название', + 'suffix' => 'Суффикс', + 'description' => 'Описание', + 'description-help' => 'Вы можете использовать Markdown.', + 'display-chart' => 'Отображать график на статусной странице?', + 'default-value' => 'Значение по-умолчанию', + 'calc_type' => 'Расчет метрики', + 'type_sum' => 'Сумма', + 'type_avg' => 'Среднее значение', + + 'points' => [ + 'value' => 'Значение', + ], + ], + + // Settings + 'settings' => [ + /// Application setup + 'app-setup' => [ + 'site-name' => 'Название сайта', + 'site-url' => 'URL сайта', + 'site-timezone' => 'Временная зона', + 'site-locale' => 'Язык', + 'date-format' => 'Формат даты', + 'incident-date-format' => 'Формат даты и времени инцидента', + 'display-graphs' => 'Отображать графики на статусной странице?', + 'about-this-page' => 'Об этой странице', + 'days-of-incidents' => 'Сколько дней показывать инциденты?', + 'banner' => 'Картинка-баннер', + 'banner-help' => "Рекомендуется загружать картинки не больше 930 пикс. в ширину.", + 'analytics_google' => 'Код Google Analytics', + 'analytics_gosquared' => 'Код GoSquared Analytics', + 'analytics_piwik_url' => 'URL установки Piwik (без http(s)://)', + 'analytics_piwik_siteid' => 'Идентификатор сайта в Piwik', + 'subscribers' => 'Разрешить посетителям подписываться на email-уведомления?', + ], + 'security' => [ + 'allowed-domains' => 'Разрешенные домены', + 'allowed-domains-help' => 'Разделитель - запятые. Домен, установленный в настройках разрешен по-умолчанию.', + ], + 'stylesheet' => [ + 'custom-css' => 'Собственная css-таблица', + ], + 'theme' => [ + 'background-color' => 'Цвет фона', + 'text-color' => 'Цвет текста', + ], + ], + + 'user' => [ + 'username' => 'Имя пользователя', + 'email' => 'Email', + 'password' => 'Пароль', + 'api-token' => 'API токен', + 'api-token-help' => 'Регенерирование API токена заблокирует существующим приложениям доступ в Cachet. Вам будет необходимо прописать в них новый токен.', + '2fa' => [ + 'help' => 'Включение двухфакторной аутентификации увеличивает безопасность вашей учетной записи. Вам понадобится скачать Google Authenticator или аналогичное приложение на свой смартфон. Когда в следующий раз вы войдете в панель управления, вам понадобится токен, выданный этим приложением.', + ], + ], + + // Buttons + 'add' => 'Добавить', + 'save' => 'Сохранить', + 'update' => 'Обновить', + 'create' => 'Создать', + 'edit' => 'Правка', + 'delete' => 'Удалить', + 'submit' => 'Сохранить', + 'cancel' => 'Отмена', + 'remove' => 'Удалить', + + // Other + 'optional' => '* не обязательное', +]; diff --git a/resources/lang/ru/pagination.php b/resources/lang/ru/pagination.php new file mode 100644 index 00000000..bdba8d07 --- /dev/null +++ b/resources/lang/ru/pagination.php @@ -0,0 +1,28 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +return [ + + /* + |-------------------------------------------------------------------------- + | Pagination Language Lines + |-------------------------------------------------------------------------- + | + | The following language lines are used by the paginator library to build + | the simple pagination links. You are free to change them to anything + | you want to customize your views to better match your application. + | + */ + + 'previous' => '« Предыдущая', + 'next' => 'Следующая »', + +]; diff --git a/resources/lang/ru/reminders.php b/resources/lang/ru/reminders.php new file mode 100644 index 00000000..f4965920 --- /dev/null +++ b/resources/lang/ru/reminders.php @@ -0,0 +1,31 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +return [ + + /* + |-------------------------------------------------------------------------- + | Password Reminder Language Lines + |-------------------------------------------------------------------------- + | + | The following language lines are the default lines which match reasons + | that are given by the password broker for a password update attempt + | has failed, such as for an invalid token or invalid new password. + | + */ + + 'password' => 'Пароли должны совпадать и быть не меньше 6 символов.', + 'user' => 'Неудается найти пользователя с таким email-адресом', + 'token' => 'Токен для сброса пароля не верен.', + 'sent' => 'Напоминание пароля отправлено!', + 'reset' => 'Пароль сброшен!', + +]; diff --git a/resources/lang/ru/setup.php b/resources/lang/ru/setup.php new file mode 100644 index 00000000..6679ff8b --- /dev/null +++ b/resources/lang/ru/setup.php @@ -0,0 +1,24 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +return [ + 'setup' => 'Установка', + 'title' => 'Установка Cachet', + 'service_details' => 'Детали сервиса', + 'env_setup' => 'Настройка окружения', + 'status_page_setup' => 'Настройка страницы статуса', + 'show_support' => 'Показывать, что статусная страница создана на Cachet?', + 'admin_account' => 'Учетная запись администратора', + 'complete_setup' => 'Завершить установку', + 'completed' => 'Cachet успешно настроен!', + 'finish_setup' => 'Перейти в панель управления', + 'allow_tracking' => 'Разрешить отправку анонимной статистики использования?', +]; diff --git a/resources/lang/ru/validation.php b/resources/lang/ru/validation.php new file mode 100644 index 00000000..31b1805f --- /dev/null +++ b/resources/lang/ru/validation.php @@ -0,0 +1,116 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +return [ + + /* + |-------------------------------------------------------------------------- + | Validation Language Lines + |-------------------------------------------------------------------------- + | + | The following language lines contain the default error messages used by + | the validator class. Some of these rules have multiple versions such + | as the size rules. Feel free to tweak each of these messages here. + | + */ + + 'accepted' => ':attribute должно быть принято.', + 'active_url' => ':attribute не является корректным URL-адресом', + 'after' => ':attribute должно быть датой после :date.', + 'alpha' => ':attribute может содержать только буквы.', + 'alpha_dash' => ':attribute может содержать только буквы, цифры и дефисы.', + 'alpha_num' => ':attribute может содержать только буквы и цифры.', + 'array' => ':attribute должно быть массивом.', + 'before' => ':attribute должно быть датой до :date.', + 'between' => [ + 'numeric' => ':attribute должно быть между :min и :max.', + 'file' => ':attribute должно быть от :min до :max килобайт.', + 'string' => ':attribute должно быть от :min до :max символов.', + 'array' => ':attribute должно содержать от :min до :max элементов.', + ], + 'boolean' => 'Поле :attribute должно содержать true или false.', + 'confirmed' => 'Поля :attribute подтверждения не совпадает.', + 'date' => ':attribute не является корректной датой.', + 'date_format' => ':attribute не соответствует формату :format.', + 'different' => ':attribute и :other должны различаться.', + 'digits' => ':attribute должно содержать :digits цифр.', + 'digits_between' => ':attribute должно содержать от :min до :max цифр.', + 'email' => ':attribute не является корректным email-адресом.', + 'exists' => 'Выбранное значение :attribute не верно.', + 'image' => ':attribute должно быть картинкой.', + 'in' => 'Выбранное значение :attribute не верно.', + 'integer' => ':attribute должно быть целым числом.', + 'ip' => ':attribute не является корректным IP-адресом.', + 'max' => [ + 'numeric' => ':attribute не может быть больше :max.', + 'file' => ':attribute не может быть больше :max килобайт.', + 'string' => ':attribute не может быть больше :max символов.', + 'array' => ':attribute не может содержать больше чем :max элементов.', + ], + 'mimes' => ':attribute должно быть файлов типа: :values.', + 'min' => [ + 'numeric' => ':attribute не может быть меньше :min.', + 'file' => ':attribute не может быть меньше :min килобайт.', + 'string' => ':attribute не может быть меньше :min символов.', + 'array' => ':attribute не может содержать меньше чем :min элементов.', + ], + 'not_in' => 'Выбранное значение :attribute не верно.', + 'numeric' => ':attribute должно быть числом.', + 'regex' => ':attribute формат неверен.', + 'required' => 'Поле :attribute является обязательным.', + 'required_if' => 'Поле :attribute является обязательным, если :other имеет значение :value.', + 'required_with' => 'Поле :attribute является обязательным, если заполнено :values.', + 'required_with_all' => 'Поле :attribute является обязательным, если :values заполнены.', + 'required_without' => 'Поле :attribute является обязательным, если :values не заполнены.', + 'required_without_all' => 'Поле :attribute является обязательным, если ни одно из :values не заполнены.', + 'same' => 'Поля :attribute и :other должны совпадать.', + 'size' => [ + 'numeric' => 'The :attribute must be :size.', + 'file' => 'The :attribute must be :size kilobytes.', + 'string' => 'The :attribute must be :size characters.', + 'array' => 'The :attribute must contain :size items.', + ], + 'string' => 'The :attribute must be a string.', + 'unique' => 'The :attribute has already been taken.', + 'url' => 'Не верный формат :attribute.', + 'timezone' => ':attribute должно быть корректной временной зоной.', + + /* + |-------------------------------------------------------------------------- + | Custom Validation Language Lines + |-------------------------------------------------------------------------- + | + | Here you may specify custom validation messages for attributes using the + | convention "attribute.rule" to name the lines. This makes it quick to + | specify a specific custom language line for a given attribute rule. + | + */ + + 'custom' => [ + 'attribute-name' => [ + 'rule-name' => 'custom-message', + ], + ], + + /* + |-------------------------------------------------------------------------- + | Custom Validation Attributes + |-------------------------------------------------------------------------- + | + | The following language lines are used to swap attribute place-holders + | with something more reader friendly such as E-Mail Address instead + | of "email". This simply helps us make messages a little cleaner. + | + */ + + 'attributes' => [], + +]; From c12d901147d96b9bbb7de2967d1fdd4cceb8d57f Mon Sep 17 00:00:00 2001 From: Alexey Vasilyev Date: Mon, 22 Jun 2015 18:02:56 +0300 Subject: [PATCH 2/4] Style guide fixes --- config/langs.php | 2 +- resources/lang/ru/forms.php | 28 ++++++++++++++-------------- 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/config/langs.php b/config/langs.php index 6042b1f1..733e3bcf 100755 --- a/config/langs.php +++ b/config/langs.php @@ -21,7 +21,7 @@ return [ 'ko' => '한글', 'nl' => 'Nederlands', 'pt-BR' => 'Portuguese, Brazilian', - 'ru' => 'Русский', + 'ru' => 'Русский', 'zh-CN' => '简体中文', 'zh-TW' => '繁體中文', ]; diff --git a/resources/lang/ru/forms.php b/resources/lang/ru/forms.php index 8c9ad946..5b9788af 100644 --- a/resources/lang/ru/forms.php +++ b/resources/lang/ru/forms.php @@ -48,7 +48,7 @@ return [ 'visibility' => 'Видимость Инцидента', 'public' => 'Доступен публично', 'logged_in_only' => 'Видимый только авторизованным пользователям', - 'templates' => [ + 'templates' => [ 'name' => 'Название', 'template' => 'Шаблон', ], @@ -90,19 +90,19 @@ return [ 'settings' => [ /// Application setup 'app-setup' => [ - 'site-name' => 'Название сайта', - 'site-url' => 'URL сайта', - 'site-timezone' => 'Временная зона', - 'site-locale' => 'Язык', - 'date-format' => 'Формат даты', - 'incident-date-format' => 'Формат даты и времени инцидента', - 'display-graphs' => 'Отображать графики на статусной странице?', - 'about-this-page' => 'Об этой странице', - 'days-of-incidents' => 'Сколько дней показывать инциденты?', - 'banner' => 'Картинка-баннер', - 'banner-help' => "Рекомендуется загружать картинки не больше 930 пикс. в ширину.", - 'analytics_google' => 'Код Google Analytics', - 'analytics_gosquared' => 'Код GoSquared Analytics', + 'site-name' => 'Название сайта', + 'site-url' => 'URL сайта', + 'site-timezone' => 'Временная зона', + 'site-locale' => 'Язык', + 'date-format' => 'Формат даты', + 'incident-date-format' => 'Формат даты и времени инцидента', + 'display-graphs' => 'Отображать графики на статусной странице?', + 'about-this-page' => 'Об этой странице', + 'days-of-incidents' => 'Сколько дней показывать инциденты?', + 'banner' => 'Картинка-баннер', + 'banner-help' => "Рекомендуется загружать картинки не больше 930 пикс. в ширину.", + 'analytics_google' => 'Код Google Analytics', + 'analytics_gosquared' => 'Код GoSquared Analytics', 'analytics_piwik_url' => 'URL установки Piwik (без http(s)://)', 'analytics_piwik_siteid' => 'Идентификатор сайта в Piwik', 'subscribers' => 'Разрешить посетителям подписываться на email-уведомления?', From 3c5a5b49f146bbab437b14610eeac53c8c0e3af9 Mon Sep 17 00:00:00 2001 From: Alexey Vasilyev Date: Mon, 22 Jun 2015 18:06:07 +0300 Subject: [PATCH 3/4] Style guide fixes. --- resources/lang/ru/forms.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/lang/ru/forms.php b/resources/lang/ru/forms.php index 5b9788af..083d1394 100644 --- a/resources/lang/ru/forms.php +++ b/resources/lang/ru/forms.php @@ -100,7 +100,7 @@ return [ 'about-this-page' => 'Об этой странице', 'days-of-incidents' => 'Сколько дней показывать инциденты?', 'banner' => 'Картинка-баннер', - 'banner-help' => "Рекомендуется загружать картинки не больше 930 пикс. в ширину.", + 'banner-help' => 'Рекомендуется загружать картинки не больше 930 пикс. в ширину.', 'analytics_google' => 'Код Google Analytics', 'analytics_gosquared' => 'Код GoSquared Analytics', 'analytics_piwik_url' => 'URL установки Piwik (без http(s)://)', From 91dfa822bc8b5e21e890ff16548b6f1c70cb2d63 Mon Sep 17 00:00:00 2001 From: Alexey Vasilyev Date: Mon, 22 Jun 2015 23:29:27 +0300 Subject: [PATCH 4/4] Russian translation fixes --- resources/lang/ru/cachet.php | 12 +++--- resources/lang/ru/dashboard.php | 70 ++++++++++++++++---------------- resources/lang/ru/forms.php | 38 ++++++++--------- resources/lang/ru/reminders.php | 10 ++--- resources/lang/ru/setup.php | 4 +- resources/lang/ru/validation.php | 42 +++++++++---------- 6 files changed, 88 insertions(+), 88 deletions(-) diff --git a/resources/lang/ru/cachet.php b/resources/lang/ru/cachet.php index e1c70fa6..5071f7b1 100644 --- a/resources/lang/ru/cachet.php +++ b/resources/lang/ru/cachet.php @@ -31,7 +31,7 @@ return [ 'scheduled_at' => ', запланировано :timestamp', 'status' => [ 0 => 'Запланировано', // TODO: Hopefully remove this. - 1 => 'Исследуется', + 1 => 'Проводим анализ проблемы', 2 => 'Причина определена', 3 => 'Под наблюдением', 4 => 'Исправлено', @@ -45,23 +45,23 @@ return [ ], 'api' => [ - 'regenerate' => 'Регенерировать API ключ', + 'regenerate' => 'Сгенерировать ключ API', 'revoke' => 'Отозвать API ключ', ], // Metrics 'metrics' => [ 'filter' => [ - 'hourly' => 'Часы', - 'daily' => 'Дни', - 'monthly' => 'Месяцы', + 'hourly' => 'Ежечасно', + 'daily' => 'Ежедневно', + 'monthly' => 'Ежемесячно', ], ], // Subscriber 'subscriber' => [ 'subscribe' => 'Подпишитесь, чтобы получать информацию об изменениях.', - 'button' => 'Подписка', + 'button' => 'Подписаться', 'email' => [ 'subscribe' => 'Подписка на рассылку об изменениях.', 'subscribed' => 'Вы подписались на рассылку email уведомлений. Проверьте вашу почту, чтобы подтвердить подписку.', diff --git a/resources/lang/ru/dashboard.php b/resources/lang/ru/dashboard.php index f91f5ada..c6769b76 100644 --- a/resources/lang/ru/dashboard.php +++ b/resources/lang/ru/dashboard.php @@ -18,15 +18,15 @@ return [ 'title' => 'Инциденты и Плановые работы', 'incidents' => 'Инциденты', 'logged' => '{0} Нет инцидентов, отличная работа!|У вас записан один инцидент.|Записано инцидентов: :count', - 'incident-create-template' => 'Добавить Шаблон', - 'incident-templates' => 'Шаблоны Инцидентов', + 'incident-create-template' => 'Создать шаблон', + 'incident-templates' => 'Шаблоны инцидентов', 'add' => [ 'title' => 'Добавить инцидент', 'success' => 'Инцидент добавлен.', 'failure' => 'Что-то пошло не так при добавлении инцидента.', ], 'edit' => [ - 'title' => 'Правка инцидента', + 'title' => 'Редактировать инцидент', 'success' => 'Инцидент обновлен.', 'failure' => 'Что-то пошло не так при изменении инцидента.', ], @@ -40,7 +40,7 @@ return [ 'failure' => 'Что-то пошло не так при создании шаблона.', ], 'edit' => [ - 'title' => 'Правка шаблона', + 'title' => 'Редактировать шаблон', 'success' => 'Шаблон обновлен!', 'failure' => 'Что-то пошло не так при изменении шаблона.', ], @@ -49,15 +49,15 @@ return [ // Incident Maintenance 'schedule' => [ - 'schedule' => 'Плановые работы', - 'scheduled_at' => 'Запланировано :timestamp', + 'schedule' => 'Плановое техническое обслуживание', + 'scheduled_at' => 'Запланировано на :timestamp', 'add' => [ - 'title' => 'Добавить плановые работы', + 'title' => 'Добавить плановое техническое обслуживание', 'success' => 'Плановые работы добавлены.', 'failure' => 'Что-то пошло не так при добавлении плановых работ.', ], 'edit' => [ - 'title' => 'Правка плановых работ', + 'title' => 'Изменить плановое техническое обслуживание', 'success' => 'Плановые работы обновлены!', 'failure' => 'Что-то пошло не так при изменении плановых работ.', ], @@ -70,16 +70,16 @@ return [ // Components 'components' => [ 'components' => 'Компоненты', - 'component_statuses' => 'Статус Компонентов', + 'component_statuses' => 'Статусы компонентов', 'listed_group' => 'В группе :name', 'add' => [ 'title' => 'Добавить компонент', - 'message' => 'Вам необходимо добавить хотя бы один компонент.', + 'message' => 'Вам следует добавить компонент.', 'success' => 'Компонент создан.', 'failure' => 'Что-то пошло не так при создании компонента.', ], 'edit' => [ - 'title' => 'Правка компонента', + 'title' => 'Редактировать компонент', 'success' => 'Компонент обновлен.', 'failure' => 'Что-то пошло не так при изменении компонента.', ], @@ -87,14 +87,14 @@ return [ // Component groups 'groups' => [ 'groups' => 'Группа компонентов|Группы компонентов', - 'no_components' => 'Вам необходимо добавить группу компонентов', + 'no_components' => 'Вам следует добавить группу компонентов.', 'add' => [ 'title' => 'Добавить группу компонентов', - 'success' => 'Группа компонентов создана.', + 'success' => 'Группа компонентов добавлена.', 'failure' => 'Что-то пошло не так при создании группы компонентов.', ], 'edit' => [ - 'title' => 'Правка группы компонентов', + 'title' => 'Изменение группы компонентов', 'success' => 'Группа компонентов обновлена.', 'failure' => 'Что-то пошло не так при изменении группы компонентов.', ], @@ -110,7 +110,7 @@ return [ 'failure' => 'Что-то пошло не так при создании метрики.', ], 'edit' => [ - 'title' => 'Правка метрики', + 'title' => 'Изменить метрику', 'success' => 'Метрика обновлена.', 'failure' => 'Что-то пошло не так при изменении метрики.', ], @@ -118,18 +118,18 @@ return [ // Team 'team' => [ - 'team' => 'Компания', - 'member' => 'Сотрудник', + 'team' => 'Команда', + 'member' => 'Участник', 'profile' => 'Профиль', - 'description' => 'Сотрудники компании смогут добавлять и изменять компоненты и инциденты.', + 'description' => 'Участники команды смогут добавлять и изменять компоненты и инциденты.', 'add' => [ - 'title' => 'Добавить сотрудника', - 'success' => 'Сотрудник добавлен.', - 'failure' => 'Что-то пошло не так при добавлении сотрудника.', + 'title' => 'Добавить нового участника команды', + 'success' => 'Участник команды добавлен.', + 'failure' => 'Что-то пошло не так при добавлении участника команды.', ], 'edit' => [ 'title' => 'Обновить профиль', - 'success' => 'Профиль изменен.', + 'success' => 'Данные профиля обновлены.', 'failure' => 'Что-то пошло не так при изменении профиля.', ], ], @@ -139,15 +139,15 @@ return [ 'settings' => 'Настройки', 'app-setup' => [ 'app-setup' => 'Настройки приложения', - 'images-only' => 'Могут быть загружены только картинки.', + 'images-only' => 'Могут быть загружены только изображения.', 'too-big' => 'Загруженный вами файл слишком большой. Загрузите картинку меньше чем :size', ], 'security' => [ 'security' => 'Безопасность', - 'two-factor' => 'Пользователи без двухфакторной авторизации', + 'two-factor' => 'Пользователи без двухфакторной аутентификации', ], 'stylesheet' => [ - 'stylesheet' => 'CSS-стили', + 'stylesheet' => 'Таблица стилей', ], 'theme' => [ 'theme' => 'Тема', @@ -160,15 +160,15 @@ return [ // Login 'login' => [ - 'login' => 'Вход', - 'logged_in' => 'Вы успешно вошли.', - 'welcome' => 'Добро пожаловать!', + 'login' => 'Войти', + 'logged_in' => 'Вы вошли в систему.', + 'welcome' => 'С возвращением!', 'two-factor' => 'Пожалуйста, введите ваш токен.', ], // Sidebar footer 'help' => 'Помощь', - 'status_page' => 'Статусная страница', + 'status_page' => 'Страница статуса', 'logout' => 'Выйти', // Notifications @@ -182,14 +182,14 @@ return [ 'welcome' => [ 'welcome' => 'Добро пожаловать в Cachet', 'message' => 'Ваша статусная страница почти готова! Возможно, вы захотите настроить дополнительные параметры', - 'close' => 'Я хочу сразу в панель управления', + 'close' => 'Я хочу сразу перейти в панель управления', 'steps' => [ - 'component' => 'Создать компоненты', - 'incident' => 'Создать инциденты', - 'customize' => 'Настроить', - 'team' => 'Добавить пользователей', + 'component' => 'Создание компонентов', + 'incident' => 'Создание инцидентов', + 'customize' => 'Настройка', + 'team' => 'Добавление пользователей', 'api' => 'Сгенерировать API токен', - 'two-factor' => 'Двухфакторная авторизация', + 'two-factor' => 'Двухфакторная аутентификация', ], ], diff --git a/resources/lang/ru/forms.php b/resources/lang/ru/forms.php index 083d1394..9c4076fd 100644 --- a/resources/lang/ru/forms.php +++ b/resources/lang/ru/forms.php @@ -13,24 +13,24 @@ return [ // Setup form fields 'setup' => [ - 'email' => 'Email', + 'email' => 'Эл. почта', 'username' => 'Имя пользователя', 'password' => 'Пароль', 'site_name' => 'Название сайта', - 'site_domain' => 'Домен', - 'site_timezone' => 'Выберите временную зону', - 'site_locale' => 'Выберите язык', - 'enable_google2fa' => 'Включить двухфакторную авторизацию через Google', - 'cache_driver' => 'Cache Driver', - 'session_driver' => 'Session Driver', + 'site_domain' => 'Домен сайта', + 'site_timezone' => 'Выберите ваш часовой пояс', + 'site_locale' => 'Выберите ваш язык', + 'enable_google2fa' => 'Включить двухфакторную аутентификацию через Google', + 'cache_driver' => 'Драйвер кеша', + 'session_driver' => 'Драйвер сессий', ], // Login form fields 'login' => [ - 'email' => 'Email', + 'email' => 'Эл. почта', 'password' => 'Пароль', '2fauth' => 'Код аутентификации', - 'invalid' => 'Неправильный email или пароль', + 'invalid' => 'Неправильный E-mail или пароль', 'invalid-token' => 'Неправильный токен', 'cookies' => 'Необходимо включить cookies для входа.', ], @@ -41,11 +41,11 @@ return [ 'status' => 'Статус', 'component' => 'Компонент', 'message' => 'Сообщение', - 'message-help' => 'Вы можете использовать Markdown.', + 'message-help' => 'Вы также можете использовать Markdown.', 'scheduled_at' => 'Когда запланированы работы?', 'incident_time' => 'Когда инцидент произошел?', 'notify_subscribers' => 'Уведомить подписчиков', - 'visibility' => 'Видимость Инцидента', + 'visibility' => 'Видимость инцидента', 'public' => 'Доступен публично', 'logged_in_only' => 'Видимый только авторизованным пользователям', 'templates' => [ @@ -74,7 +74,7 @@ return [ 'name' => 'Название', 'suffix' => 'Суффикс', 'description' => 'Описание', - 'description-help' => 'Вы можете использовать Markdown.', + 'description-help' => 'Вы также можете использовать Markdown.', 'display-chart' => 'Отображать график на статусной странице?', 'default-value' => 'Значение по-умолчанию', 'calc_type' => 'Расчет метрики', @@ -92,8 +92,8 @@ return [ 'app-setup' => [ 'site-name' => 'Название сайта', 'site-url' => 'URL сайта', - 'site-timezone' => 'Временная зона', - 'site-locale' => 'Язык', + 'site-timezone' => 'Часовой пояс сайта', + 'site-locale' => 'Язык сайта', 'date-format' => 'Формат даты', 'incident-date-format' => 'Формат даты и времени инцидента', 'display-graphs' => 'Отображать графики на статусной странице?', @@ -112,7 +112,7 @@ return [ 'allowed-domains-help' => 'Разделитель - запятые. Домен, установленный в настройках разрешен по-умолчанию.', ], 'stylesheet' => [ - 'custom-css' => 'Собственная css-таблица', + 'custom-css' => 'Пользовательские таблицы стилей', ], 'theme' => [ 'background-color' => 'Цвет фона', @@ -122,10 +122,10 @@ return [ 'user' => [ 'username' => 'Имя пользователя', - 'email' => 'Email', + 'email' => 'Эл. почта', 'password' => 'Пароль', 'api-token' => 'API токен', - 'api-token-help' => 'Регенерирование API токена заблокирует существующим приложениям доступ в Cachet. Вам будет необходимо прописать в них новый токен.', + 'api-token-help' => 'Обновление вашего API токена заблокирует существующим приложениям доступ в Cachet. Вам будет необходимо прописать в них новый токен.', '2fa' => [ 'help' => 'Включение двухфакторной аутентификации увеличивает безопасность вашей учетной записи. Вам понадобится скачать Google Authenticator или аналогичное приложение на свой смартфон. Когда в следующий раз вы войдете в панель управления, вам понадобится токен, выданный этим приложением.', ], @@ -136,9 +136,9 @@ return [ 'save' => 'Сохранить', 'update' => 'Обновить', 'create' => 'Создать', - 'edit' => 'Правка', + 'edit' => 'Изменить', 'delete' => 'Удалить', - 'submit' => 'Сохранить', + 'submit' => 'Отправить', 'cancel' => 'Отмена', 'remove' => 'Удалить', diff --git a/resources/lang/ru/reminders.php b/resources/lang/ru/reminders.php index f4965920..3e695d73 100644 --- a/resources/lang/ru/reminders.php +++ b/resources/lang/ru/reminders.php @@ -22,10 +22,10 @@ return [ | */ - 'password' => 'Пароли должны совпадать и быть не меньше 6 символов.', - 'user' => 'Неудается найти пользователя с таким email-адресом', - 'token' => 'Токен для сброса пароля не верен.', - 'sent' => 'Напоминание пароля отправлено!', - 'reset' => 'Пароль сброшен!', + 'password' => 'Пароль должен состоять минимум из 6 символов и совпадать с подтверждением.', + 'user' => 'Пользователь с данным адресом электронной почты не существует.', + 'token' => 'Неверный токен обнуления пароля.', + 'sent' => 'Напоминание о пароле выслано!', + 'reset' => 'Ваш пароль был сброшен!', ]; diff --git a/resources/lang/ru/setup.php b/resources/lang/ru/setup.php index 6679ff8b..26b658bd 100644 --- a/resources/lang/ru/setup.php +++ b/resources/lang/ru/setup.php @@ -14,11 +14,11 @@ return [ 'title' => 'Установка Cachet', 'service_details' => 'Детали сервиса', 'env_setup' => 'Настройка окружения', - 'status_page_setup' => 'Настройка страницы статуса', + 'status_page_setup' => 'Настройки статусной страницы', 'show_support' => 'Показывать, что статусная страница создана на Cachet?', 'admin_account' => 'Учетная запись администратора', 'complete_setup' => 'Завершить установку', - 'completed' => 'Cachet успешно настроен!', + 'completed' => 'Вы успешно установили Cachet!', 'finish_setup' => 'Перейти в панель управления', 'allow_tracking' => 'Разрешить отправку анонимной статистики использования?', ]; diff --git a/resources/lang/ru/validation.php b/resources/lang/ru/validation.php index 31b1805f..11ed83c9 100644 --- a/resources/lang/ru/validation.php +++ b/resources/lang/ru/validation.php @@ -23,10 +23,10 @@ return [ */ 'accepted' => ':attribute должно быть принято.', - 'active_url' => ':attribute не является корректным URL-адресом', + 'active_url' => ':attribute не является правильным URL.', 'after' => ':attribute должно быть датой после :date.', 'alpha' => ':attribute может содержать только буквы.', - 'alpha_dash' => ':attribute может содержать только буквы, цифры и дефисы.', + 'alpha_dash' => ':attribute может содержать только латинские буквы, цифры и дефис.', 'alpha_num' => ':attribute может содержать только буквы и цифры.', 'array' => ':attribute должно быть массивом.', 'before' => ':attribute должно быть датой до :date.', @@ -43,45 +43,45 @@ return [ 'different' => ':attribute и :other должны различаться.', 'digits' => ':attribute должно содержать :digits цифр.', 'digits_between' => ':attribute должно содержать от :min до :max цифр.', - 'email' => ':attribute не является корректным email-адресом.', + 'email' => ':attribute должно быть корректным адресом электронной почты.', 'exists' => 'Выбранное значение :attribute не верно.', - 'image' => ':attribute должно быть картинкой.', + 'image' => ':attribute должно быть изображением.', 'in' => 'Выбранное значение :attribute не верно.', 'integer' => ':attribute должно быть целым числом.', 'ip' => ':attribute не является корректным IP-адресом.', 'max' => [ - 'numeric' => ':attribute не может быть больше :max.', + 'numeric' => ':attribute не может быть больше чем :max .', 'file' => ':attribute не может быть больше :max килобайт.', - 'string' => ':attribute не может быть больше :max символов.', + 'string' => ':attribute не должно превышать :max символов.', 'array' => ':attribute не может содержать больше чем :max элементов.', ], - 'mimes' => ':attribute должно быть файлов типа: :values.', + 'mimes' => ':attribute должно быть файлом типа: :values.', 'min' => [ - 'numeric' => ':attribute не может быть меньше :min.', - 'file' => ':attribute не может быть меньше :min килобайт.', - 'string' => ':attribute не может быть меньше :min символов.', - 'array' => ':attribute не может содержать меньше чем :min элементов.', + 'numeric' => ':attribute должно быть не меньше :min.', + 'file' => ':attribute должно быть не меньше :min килобайт.', + 'string' => ':attribute должно быть не меньше :min символов.', + 'array' => ':attribute должно содержать не меньше чем :min элементов.', ], 'not_in' => 'Выбранное значение :attribute не верно.', 'numeric' => ':attribute должно быть числом.', - 'regex' => ':attribute формат неверен.', + 'regex' => 'Неправильный формат :attribute.', 'required' => 'Поле :attribute является обязательным.', 'required_if' => 'Поле :attribute является обязательным, если :other имеет значение :value.', 'required_with' => 'Поле :attribute является обязательным, если заполнено :values.', - 'required_with_all' => 'Поле :attribute является обязательным, если :values заполнены.', + 'required_with_all' => 'Поле :attribute является обязательным, если все :values заполнены.', 'required_without' => 'Поле :attribute является обязательным, если :values не заполнены.', 'required_without_all' => 'Поле :attribute является обязательным, если ни одно из :values не заполнены.', 'same' => 'Поля :attribute и :other должны совпадать.', 'size' => [ - 'numeric' => 'The :attribute must be :size.', - 'file' => 'The :attribute must be :size kilobytes.', - 'string' => 'The :attribute must be :size characters.', - 'array' => 'The :attribute must contain :size items.', + 'numeric' => 'Поле :attribute должно быть длиной :size.', + 'file' => 'Поле :attribute должно быть объемом :size килобайт.', + 'string' => 'Поле :attribute должно содержать :size символов.', + 'array' => 'Поле :attribute должно содержать :size элементов.', ], - 'string' => 'The :attribute must be a string.', - 'unique' => 'The :attribute has already been taken.', - 'url' => 'Не верный формат :attribute.', - 'timezone' => ':attribute должно быть корректной временной зоной.', + 'string' => 'Поле :attribute должно быть строкой.', + 'unique' => ':attribute уже занято.', + 'url' => 'Неправильный формат :attribute.', + 'timezone' => ':attribute должно быть корректным часовым поясом.', /* |--------------------------------------------------------------------------