feat: VivesPOS landing on Winter CMS 1.2 — theme + plugin + Dockerfile
Some checks are pending
Module sub-split / Sub-split (push) Waiting to run
Some checks are pending
Module sub-split / Sub-split (push) Waiting to run
- Base: wintercms/winter branch 1.2 (full framework) - Theme vivespos: Canvas 7 + Bootstrap 5 CDN, custom CSS - Layout: deferred GTM/GA4 tracking, JSON-LD SoftwareApplication - Partials: hero (offline-first), features, modes (offline/nube toggle), screenshots, pricing (3 planes), comparison, FAQ, CTA - Plugin VivesPOS.Site with ContactForm - Dockerfile: PHP 8.2 Apache, port 80, healthcheck - Added winter/wn-pages, blog, sitemap, seo plugins - Active theme set to vivespos
This commit is contained in:
105
modules/system/lang/ru/client.php
Normal file
105
modules/system/lang/ru/client.php
Normal file
@@ -0,0 +1,105 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Client-side Language Lines
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| These are messages made available to the client browser via JavaScript.
|
||||
| To compile this file run: php artisan winter:util compile lang
|
||||
|
|
||||
*/
|
||||
|
||||
'markdowneditor' => [
|
||||
'formatting' => 'Форматирование',
|
||||
'quote' => 'Цитата',
|
||||
'code' => 'Код',
|
||||
'header1' => 'Заголовок 1',
|
||||
'header2' => 'Заголовок 2',
|
||||
'header3' => 'Заголовок 3',
|
||||
'header4' => 'Заголовок 4',
|
||||
'header5' => 'Заголовок 5',
|
||||
'header6' => 'Заголовок 6',
|
||||
'bold' => 'Жирный шрифт',
|
||||
'italic' => 'Курсив',
|
||||
'unorderedlist' => 'Ненумерованный список',
|
||||
'orderedlist' => 'Нумированный список',
|
||||
'video' => 'Видео',
|
||||
'image' => 'Изображение',
|
||||
'link' => 'Ссылка',
|
||||
'horizontalrule' => 'Вставить горизонтальную черту',
|
||||
'fullscreen' => 'Полный экран',
|
||||
'preview' => 'Предпросмотр',
|
||||
],
|
||||
'mediamanager' => [
|
||||
'insert_link' => "Вставить медиа-ссылку",
|
||||
'insert_image' => "Вставить медиа-изображение",
|
||||
'insert_video' => "Вставить медиа-видео",
|
||||
'insert_audio' => "Вставить медиа-аудио",
|
||||
'invalid_file_empty_insert' => "Пожалуйста, выберите файл для вставки ссылки.",
|
||||
'invalid_file_single_insert' => "Пожалуйста, выберите один файл.",
|
||||
'invalid_image_empty_insert' => "Пожалуйста, выберите изображения для вставки.",
|
||||
'invalid_video_empty_insert' => "Пожалуйста, выберите видео для вставки.",
|
||||
'invalid_audio_empty_insert' => "Пожалуйста, выберите аудио для вставки.",
|
||||
],
|
||||
'alert' => [
|
||||
'confirm_button_text' => 'Ок',
|
||||
'cancel_button_text' => 'Отмена',
|
||||
'widget_remove_confirm' => 'Удалить этот виджет?',
|
||||
],
|
||||
'datepicker' => [
|
||||
'previousMonth' => 'Предыдущий месяц',
|
||||
'nextMonth' => 'Следующий месяц',
|
||||
'months' => ['Январь', 'Февраль', 'Март', 'Апрель', 'Май', 'Июнь', 'Июль', 'Август', 'Сентябрь', 'Октябрь', 'Ноябрь', 'Декабрь'],
|
||||
'weekdays' => ['Воскресение', 'Понедельник', 'Вторник', 'Среда', 'Четверг', 'Пятница', 'Суббота'],
|
||||
'weekdaysShort' => ['Вс', 'Пн', 'Вт', 'Ср', 'Чт', 'Пт', 'Сб'],
|
||||
],
|
||||
'colorpicker' => [
|
||||
'last_color' => 'Использовать ранее выбранный цвет',
|
||||
'aria_palette' => 'Область выбора цвета',
|
||||
'aria_hue' => 'Ползунок выбора оттенка',
|
||||
'aria_opacity' => 'Ползунок выбора прозрачности',
|
||||
],
|
||||
'filter' => [
|
||||
'group' => [
|
||||
'all' => 'все',
|
||||
],
|
||||
'scopes' => [
|
||||
'apply_button_text' => 'Применить',
|
||||
'clear_button_text' => 'Очистить',
|
||||
],
|
||||
'dates' => [
|
||||
'all' => 'все',
|
||||
'filter_button_text' => 'Фильтр',
|
||||
'reset_button_text' => 'Сбросить',
|
||||
'date_placeholder' => 'Дата',
|
||||
'after_placeholder' => 'После',
|
||||
'before_placeholder' => 'До',
|
||||
],
|
||||
'numbers' => [
|
||||
'all' => 'все',
|
||||
'filter_button_text' => 'Фильтр',
|
||||
'reset_button_text' => 'Сброс',
|
||||
'min_placeholder' => 'Min',
|
||||
'max_placeholder' => 'Max',
|
||||
],
|
||||
],
|
||||
'eventlog' => [
|
||||
'show_stacktrace' => 'Показать трассировку стека',
|
||||
'hide_stacktrace' => 'Скрыть трассировку стека',
|
||||
'tabs' => [
|
||||
'formatted' => 'Форматированный',
|
||||
'raw' => 'Исходный',
|
||||
],
|
||||
'editor' => [
|
||||
'title' => 'Редактор исходного кода',
|
||||
'description' => 'Ваша операционная система должна быть настроена на прослушивание к одной из этих схем URL.',
|
||||
'openWith' => 'Открыть с помощью',
|
||||
'remember_choice' => 'Запомнить выбранный вариант для этой сессии',
|
||||
'open' => 'Открыть',
|
||||
'cancel' => 'Отмена',
|
||||
],
|
||||
],
|
||||
];
|
||||
474
modules/system/lang/ru/lang.php
Normal file
474
modules/system/lang/ru/lang.php
Normal file
@@ -0,0 +1,474 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
'app' => [
|
||||
'name' => 'Winter CMS',
|
||||
'tagline' => 'Возвращение к истокам',
|
||||
],
|
||||
'locale' => [
|
||||
'ar' => 'العربية',
|
||||
'be' => 'Беларуская',
|
||||
'bg' => 'Български',
|
||||
'ca' => 'Català',
|
||||
'cs' => 'Čeština',
|
||||
'da' => 'Dansk',
|
||||
'en' => 'English (United States)',
|
||||
'en-au' => 'English (Australia)',
|
||||
'en-ca' => 'English (Canada)',
|
||||
'en-gb' => 'English (United Kingdom)',
|
||||
'et' => 'Eesti',
|
||||
'de' => 'Deutsch',
|
||||
'el' => 'Ελληνικά',
|
||||
'es' => 'Español',
|
||||
'es-ar' => 'Español (Argentina)',
|
||||
'fa' => 'فارسی',
|
||||
'fr' => 'Français',
|
||||
'fr-ca' => 'Français (Canada)',
|
||||
'hu' => 'Magyar',
|
||||
'id' => 'Bahasa Indonesia',
|
||||
'it' => 'Italiano',
|
||||
'ja' => '日本語',
|
||||
'kr' => '한국어',
|
||||
'lt' => 'Lietuvių',
|
||||
'lv' => 'Latviešu',
|
||||
'nb-no' => 'Norsk (Bokmål)',
|
||||
'nl' => 'Nederlands',
|
||||
'pl' => 'Polski',
|
||||
'pt-br' => 'Português (Brasil)',
|
||||
'pt-pt' => 'Português (Portugal)',
|
||||
'ro' => 'Română',
|
||||
'rs' => 'Srpski',
|
||||
'ru' => 'Русский',
|
||||
'fi' => 'Suomi',
|
||||
'sv' => 'Svenska',
|
||||
'sk' => 'Slovenský',
|
||||
'sl' => 'Slovenščina',
|
||||
'th' => 'ไทย',
|
||||
'tr' => 'Türkçe',
|
||||
'uk' => 'Українська мова',
|
||||
'zh-cn' => '简体中文',
|
||||
'zh-tw' => '繁體中文',
|
||||
'vn' => 'Tiếng việt',
|
||||
],
|
||||
'directory' => [
|
||||
'create_fail' => 'Невозможно создать директорию: :name',
|
||||
],
|
||||
'file' => [
|
||||
'create_fail' => 'Невозможно создать файл: :name',
|
||||
],
|
||||
'combiner' => [
|
||||
'not_found' => "Сборщик ресурсов не может найти файл ':name'.",
|
||||
],
|
||||
'system' => [
|
||||
'name' => 'Система',
|
||||
'menu_label' => 'Система',
|
||||
'categories' => [
|
||||
'cms' => 'CMS',
|
||||
'misc' => 'Разное',
|
||||
'logs' => 'Логи',
|
||||
'mail' => 'Почта',
|
||||
'shop' => 'Магазин',
|
||||
'team' => 'Команда',
|
||||
'users' => 'Пользователи',
|
||||
'system' => 'Система',
|
||||
'social' => 'Социальное',
|
||||
'backend' => 'Backend',
|
||||
'events' => 'События',
|
||||
'customers' => 'Клиентское',
|
||||
'my_settings' => 'Мои настройки',
|
||||
'notifications' => 'Уведомления',
|
||||
],
|
||||
],
|
||||
'theme' => [
|
||||
'label' => 'Тема',
|
||||
'unnamed' => 'Безымянная тема',
|
||||
'name' => [
|
||||
'label' => 'Название темы',
|
||||
'help' => 'Название темы по ее уникальному коду. Например, Winter.Vanilla',
|
||||
],
|
||||
],
|
||||
'themes' => [
|
||||
'install' => 'Установить темы',
|
||||
'search' => 'поиск тем для установки...',
|
||||
'installed' => 'Установленные темы',
|
||||
'no_themes' => 'Нет тем, установленных из магазина.',
|
||||
'recommended' => 'Рекомендуется',
|
||||
'remove_confirm' => 'Вы уверены, что хотите удалить выбранную тему?',
|
||||
],
|
||||
'plugin' => [
|
||||
'label' => 'Плагин',
|
||||
'unnamed' => 'Безымянный плагин',
|
||||
'name' => [
|
||||
'label' => 'Имя плагина',
|
||||
'help' => 'Введите название плагина со своим уникальным кодом. Например, Winter.Blog',
|
||||
],
|
||||
'by_author' => 'Создано :name',
|
||||
],
|
||||
'plugins' => [
|
||||
'manage' => 'Управление плагинами',
|
||||
'install' => 'Установить плагины',
|
||||
'install_products' => 'Установка расширений',
|
||||
'search' => 'поиск плагинов для установки...',
|
||||
'installed' => 'Установленные плагины',
|
||||
'no_plugins' => 'Нет плагинов, установленных из магазина.',
|
||||
'recommended' => 'Рекомендуется',
|
||||
'plugin_label' => 'Плагин',
|
||||
'unknown_plugin' => 'Плагин был удален из файловой системы.',
|
||||
'select_label' => 'Выберите действие...',
|
||||
'bulk_actions_label' => 'Массовые действия',
|
||||
'check_yes' => 'Да',
|
||||
'check_no' => 'Нет',
|
||||
'unfrozen' => 'Обновления включены',
|
||||
'enabled' => 'Плагин включен',
|
||||
'freeze' => 'отключить обновления для',
|
||||
'unfreeze' => 'включить обновления для',
|
||||
'enable' => 'включить',
|
||||
'disable' => 'выключить',
|
||||
'refresh' => 'сбросить',
|
||||
'remove' => 'Удалить',
|
||||
'freeze_label' => 'Выключить обновления',
|
||||
'unfreeze_label' => 'Включить обновления',
|
||||
'enable_label' => 'Включить плагины',
|
||||
'disable_label' => 'Отключить плагины',
|
||||
'refresh_label' => 'Сбросить данные плагина',
|
||||
'action_confirm' => 'Вы уверены что хотите :action эти плагины?',
|
||||
'freeze_success' => 'Обновления успешно выключены для выбранных плагинов.',
|
||||
'unfreeze_success' => 'Обновления успешно включены для выбранных плагинов.',
|
||||
'enable_success' => 'Выбранные плагины успешно включены.',
|
||||
'disable_success' => 'Выбранные плагины успешно выключены.',
|
||||
'refresh_confirm' => 'Вы уверены, что хотите сбросить данные выбранных плагинов? Это приведет к сбросу данных каждого плагина, восстановив его в исходное состояние.',
|
||||
'refresh_success' => 'Выбранные плагины успешно обновлены.',
|
||||
'remove_confirm' => 'Вы уверены, что хотите удалить выбранные Плагины? Это также приведет к удалению всех связанных данных.',
|
||||
'remove_success' => 'Выбранные плагины успешно удалены.',
|
||||
'replace' => [
|
||||
'multi_install_error' => 'Замена нескольких плагинов в настоящее время не поддерживается',
|
||||
],
|
||||
],
|
||||
'project' => [
|
||||
'name' => 'Проект',
|
||||
'owner_label' => 'Владелец',
|
||||
'attach' => 'Подключить проект',
|
||||
'detach' => 'Отсоединить проект',
|
||||
'none' => 'Не обнаружено',
|
||||
'id' => [
|
||||
'label' => 'Идентификатор проекта',
|
||||
'help' => 'Как найти идентификатор вашего проекта',
|
||||
'missing' => 'Пожалуйста, укажите идентификатор вашего проекта для использования.',
|
||||
],
|
||||
'detach_confirm' => 'Вы уверены, что хотите отсоединить этот проект?',
|
||||
'unbind_success' => 'Проект был успешно отсоединен.',
|
||||
],
|
||||
'settings' => [
|
||||
'menu_label' => 'Настройки',
|
||||
'not_found' => 'Не удается найти указанные настройки.',
|
||||
'missing_model' => 'На странице настроек отсутствует определение модели.',
|
||||
'update_success' => 'Настройки для :name успешно обновлены.',
|
||||
'test_subject' => 'Тест почтового драйвера',
|
||||
'test_content' => 'Это тестовое письмо для подтверждения того, что предоставленные настройки почты работают.',
|
||||
'test_confirm' => 'Это сохранит вашу текущую конфигурацию и отправит тестовое письмо на :email.',
|
||||
'return' => 'Вернуться к системным настройкам',
|
||||
'search' => 'Поиск',
|
||||
],
|
||||
'mail' => [
|
||||
'log_file' => 'Файл журнала',
|
||||
'menu_label' => 'Настройки почты',
|
||||
'menu_description' => 'Управление настройками электронной почты.',
|
||||
'general' => 'Общее',
|
||||
'method' => 'Метод',
|
||||
'sender_name' => 'Имя отправителя',
|
||||
'sender_email' => 'Адрес отправителя',
|
||||
'php_mail' => 'PHP mail',
|
||||
'smtp' => 'SMTP',
|
||||
'smtp_address' => 'Сервер исходящей почты',
|
||||
'smtp_authorization' => 'Использовать SMTP авторизацию',
|
||||
'smtp_authorization_comment' => 'Активируйте эту опцию, если ваш SMTP-сервер требует авторизацию.',
|
||||
'smtp_username' => 'SMTP логин',
|
||||
'smtp_password' => 'SMTP пароль',
|
||||
'smtp_port' => 'SMTP порт',
|
||||
'sendmail' => 'Sendmail',
|
||||
'sendmail_path' => 'Путь к Sendmail',
|
||||
'sendmail_path_comment' => 'Пожалуйста, укажите путь к sendmail.',
|
||||
'drivers_hint_content' => 'Смотрите в <a href=":url" target="_blank">документации</a> список других поддерживаемых почтовых методов и способы их включения.',
|
||||
],
|
||||
'mail_templates' => [
|
||||
'menu_label' => 'Шаблоны почты',
|
||||
'menu_description' => 'Изменение шаблонов писем, отправляемых пользователям и администраторам.',
|
||||
'new_template' => 'Новая тема',
|
||||
'new_layout' => 'Новый шаблон',
|
||||
'new_partial' => 'Новый фрагмент',
|
||||
'template' => 'Шаблон',
|
||||
'templates' => 'Шаблоны',
|
||||
'partial' => 'Фрагмент',
|
||||
'partials' => 'Фрагменты',
|
||||
'menu_layouts_label' => 'Шаблоны почты',
|
||||
'menu_partials_label' => 'Фрагменты почты',
|
||||
'layout' => 'Шаблон',
|
||||
'layouts' => 'Шаблоны',
|
||||
'no_layout' => '-- Нет шаблона --',
|
||||
'name' => 'Название',
|
||||
'name_comment'=> 'Уникальное имя, используемое для обозначения этого шаблона',
|
||||
'code'=> 'Код',
|
||||
'code_comment'=> 'Уникальный код, используемый для обозначения этого шаблона',
|
||||
'subject' => 'Тема',
|
||||
'subject_comment' => 'Тема сообщения',
|
||||
'description' => 'Описание',
|
||||
'content_html'=> 'HTML',
|
||||
'content_css' => 'CSS',
|
||||
'content_text'=> 'Простой текст',
|
||||
'test_send' => 'Отправить тестовое сообщение',
|
||||
'test_success'=> 'Тестовое сообщение было успешно отправлено.',
|
||||
'test_confirm'=> 'Тестовое сообщение будет отправлено на :email. Продолжить?',
|
||||
'creating'=> 'Создание...',
|
||||
'creating_layout' => 'Создание шаблона...',
|
||||
'saving'=> 'Сохранение...',
|
||||
'saving_layout' => 'Сохранение шаблона...',
|
||||
'delete_confirm'=> 'Вы действительно хотите это удалить?',
|
||||
'delete_layout_confirm' => 'Вы действительно хотите удалить этот шаблон?',
|
||||
'deleting'=> 'Удаление...',
|
||||
'deleting_layout' => 'Удаление шаблона...',
|
||||
'sending' => 'Отправка тестового сообщения...',
|
||||
'return'=> 'Вернуться к списку шаблонов',
|
||||
'options' => 'Опции',
|
||||
'disable_auto_inline_css' => 'Выключить автоматический встроенный CSS',
|
||||
],
|
||||
'mail_brand' => [
|
||||
'menu_label' => 'Почтовый брендинг',
|
||||
'menu_description' => 'Измените цвета и внешний вид почтовых шаблонов.',
|
||||
'page_title' => 'Настройка внешнего вида почты',
|
||||
'sample_template'=> [
|
||||
'heading' => 'Заголовок',
|
||||
'paragraph' => 'Это абзац, содержит текст Lorem Ipsum и ссылку. Cumque dicta <a>doloremque eaque</a>, enim error laboriosam pariatur possimus tenetur veritatis voluptas.',
|
||||
'table' => [
|
||||
'item'=> 'Пункт',
|
||||
'description' => 'Описание',
|
||||
'price' => 'Цена',
|
||||
'centered'=> 'По центру',
|
||||
'right_aligned' => 'По правому краю',
|
||||
],
|
||||
'buttons' => [
|
||||
'primary'=> 'Основная кнопка',
|
||||
'positive' => 'Положительная кнопка',
|
||||
'negative' => 'Отрицательная кнопка',
|
||||
],
|
||||
'panel' => 'Насколько великолепна эта панель?',
|
||||
'more'=> 'Еще один текст',
|
||||
'promotion' => 'Код купона: WINTER',
|
||||
'subcopy' => 'Это подкопия письма',
|
||||
'thanks'=> 'Спасибо',
|
||||
],
|
||||
'fields' => [
|
||||
'_section_background'=> 'Задний план',
|
||||
'body_bg'=> 'Фон тела документа',
|
||||
'content_bg' => 'Фон обертки содержимого',
|
||||
'content_inner_bg' => 'Фон содержимого',
|
||||
'_section_buttons' => 'Кнопки',
|
||||
'button_text_color'=> 'Цвет текста кнопки',
|
||||
'button_primary_bg'=> 'Цвет основной кнопки',
|
||||
'button_positive_bg' => 'Цвет положительной кнопки',
|
||||
'button_negative_bg' => 'Цвет отрицательной кнопки',
|
||||
'_section_type'=> 'Типография',
|
||||
'header_color' => 'Цвет заголовка',
|
||||
'heading_color'=> 'Цвет заголовков',
|
||||
'text_color' => 'Цвет текста',
|
||||
'link_color' => 'Цвет ссылки',
|
||||
'footer_color' => 'Нижний колонтитул',
|
||||
'_section_borders' => 'Границы',
|
||||
'body_border_color'=> 'Цвет под заголовком',
|
||||
'subcopy_border_color' => 'Цвет над колонтитулом',
|
||||
'table_border_color' => 'Цвет таблицы',
|
||||
'_section_components'=> 'Компоненты',
|
||||
'panel_bg' => 'Фон панели',
|
||||
'promotion_bg' => 'Фон промо блока',
|
||||
'promotion_border_color' => 'Цвет рамки промо блока',
|
||||
],
|
||||
],
|
||||
'install'=> [
|
||||
'project_label' => 'Присоединить к проекту',
|
||||
'plugin_label'=> 'Установить плагин',
|
||||
'theme_label' => 'Установить тему',
|
||||
'missing_plugin_name' => 'Пожалуйста, укажите название плагина для установки.',
|
||||
'missing_theme_name'=> 'Пожалуйста, укажите название темы для установки.',
|
||||
'install_completing'=> 'Завершение процесса установки',
|
||||
'install_success' => 'Плагин был успешно установлен.',
|
||||
],
|
||||
'updates'=> [
|
||||
'title'=> 'Менеджер обновлений',
|
||||
'name' => 'Обновление ПО',
|
||||
'menu_label' => 'Обновления и плагины',
|
||||
'menu_description' => 'Обновление системы, управление и установка плагинов и тем.',
|
||||
'return_link'=> 'Вернуться к системе обновлений',
|
||||
'check_label'=> 'Проверить обновления ',
|
||||
'retry_label'=> 'Попробовать еще раз',
|
||||
'plugin_name'=> 'Название',
|
||||
'plugin_code'=> 'Код',
|
||||
'plugin_description' => 'Описание',
|
||||
'plugin_version' => 'Версия',
|
||||
'plugin_author'=> 'Автор',
|
||||
'plugin_not_found' => 'Плагин не найден',
|
||||
'plugin_version_not_found' => 'Версия плагина не найдена',
|
||||
'core_current_build' => 'Текущая сборка',
|
||||
'core_view_changelog'=> 'Просмотр списка изменений',
|
||||
'core_build' => 'Сборка :build',
|
||||
'core_build_help'=> 'Последняя доступная сборка.',
|
||||
'core_downloading' => 'Загрузка файлов приложения',
|
||||
'core_extracting'=> 'Распаковка файлов приложения',
|
||||
'core_set_build' => 'Установка номера сборки',
|
||||
'update_warnings_title'=> 'Обнаружены проблемы требующие вашего внимания',
|
||||
'update_warnings_plugin_missing' => 'Плагин :code ялвяется зависисмостью плагина :parent_code, но он не обнаружен в системе. Пожалуйста установите этот плагин.',
|
||||
'update_warnings_plugin_replace' => 'Плагин :plugin заменяет :alias, пожалуйста удалите :alias чтобы не было конфликтов',
|
||||
'update_warnings_plugin_replace_cli' => 'Плагин :plugin заменяет :alias, пожалуйста удалите :alias чтобы не было конфликтов',
|
||||
'changelog'=> 'Список изменений',
|
||||
'changelog_view_details' => 'Просмотр подробностей',
|
||||
'plugins'=> 'Плагины',
|
||||
'themes' => 'Темы',
|
||||
'disabled' => 'Отключено',
|
||||
'plugin_downloading' => 'Загрузка плагина: :name',
|
||||
'plugin_extracting'=> 'Распаковка плагина: :name',
|
||||
'plugin_version_none'=> 'Новый плагин',
|
||||
'plugin_current_version' => 'Текущая версия',
|
||||
'theme_new_install'=> 'Новая тема установлена.',
|
||||
'theme_downloading'=> 'Загрузка темы: :name',
|
||||
'theme_extracting' => 'Распаковка темы: :name',
|
||||
'update_label' => 'Обновить',
|
||||
'update_completing'=> 'Завершение процесса обновления',
|
||||
'update_loading' => 'Поиск доступных обновлений...',
|
||||
'update_success' => 'Процесс обновления был успешно завершен.',
|
||||
'update_failed_label'=> 'Не удалось выполнить обновление',
|
||||
'force_label'=> 'Принудительно обновить',
|
||||
'found'=> [
|
||||
'label' => 'Доступны новые обновления!',
|
||||
'help'=> 'Выберите «Обновить», чтобы начать процесс обновления.',
|
||||
],
|
||||
'none' => [
|
||||
'label' => 'Нет обновлений',
|
||||
'help'=> 'Новые обновления не найдены.',
|
||||
],
|
||||
'important_action' => [
|
||||
'empty' => 'Выберите действие',
|
||||
'confirm' => 'Подтвердите обновление',
|
||||
'skip'=> 'Пропустить этот плагин (только один раз)',
|
||||
'ignore'=> 'Пропустить этот плагин (всегда)',
|
||||
],
|
||||
'important_action_required'=> 'Необходимое действие',
|
||||
'important_view_guide' => 'Посмотреть руководство по обновлению',
|
||||
'important_view_release_notes' => 'Просмотреть заметки о выпуске',
|
||||
'important_alert_text' => 'Некоторые обновления требуют вашего внимания.',
|
||||
'details_title'=> 'Информация о плагине',
|
||||
'details_view_homepage'=> 'Перейти к домашней странице',
|
||||
'details_readme' => 'Документация',
|
||||
'details_readme_missing' => 'Документация не предоставлена.',
|
||||
'details_changelog'=> 'Изменения',
|
||||
'details_changelog_missing'=> 'Нет никакого измененного списка.',
|
||||
'details_upgrades' => 'Инструкция по обновлению',
|
||||
'details_upgrades_missing' => 'Инструкция по обновлению не предоставлена.',
|
||||
'details_licence'=> 'Лицензия',
|
||||
'details_licence_missing'=> 'Лицензия не предоставляется.',
|
||||
'details_current_version'=> 'Текущая версия',
|
||||
'details_author' => 'Автор',
|
||||
],
|
||||
'server' => [
|
||||
'connect_error'=> 'Ошибка подключения к серверу.',
|
||||
'response_not_found' => 'Сервер обновления не найден.',
|
||||
'response_invalid' => 'Неверный ответ сервера.',
|
||||
'response_empty' => 'Пустой ответ сервера.',
|
||||
'file_error' => 'Сервер не смог доставить пакет.',
|
||||
'file_corrupt' => 'Загруженный файл поврежден.',
|
||||
],
|
||||
'behavior' => [
|
||||
'missing_property' => 'Класс :class должен содержать свойство $:property, используемое расширением :behavior.',
|
||||
],
|
||||
'config' => [
|
||||
'not_found' => 'Не удалось найти конфигурационный файл :file, ожидаемый для :location.',
|
||||
'required'=> "Для конфигурации, используемой в :location не указано свойство ':property'.",
|
||||
],
|
||||
'zip'=> [
|
||||
'extract_failed' => "Невозможно извлечь файл ':file'.",
|
||||
],
|
||||
'event_log'=> [
|
||||
'hint' => 'В этом журнале отображается список возможных ошибок, которые возникают в работе приложения, таких как исключения и отладочная информация.',
|
||||
'menu_label' => 'Журнал событий',
|
||||
'menu_description' => 'Просмотр системного журнала событий.',
|
||||
'empty_link' => 'Очистить журнал событий',
|
||||
'empty_loading'=> 'Очищение журнала событий...',
|
||||
'empty_success'=> 'Журнал событий очищен',
|
||||
'return_link'=> 'Вернуться в журнал событий',
|
||||
'id' => 'ID',
|
||||
'id_label' => 'ID события',
|
||||
'created_at' => 'Дата и время',
|
||||
'message'=> 'Сообщение',
|
||||
'level'=> 'Уровень',
|
||||
'preview_title'=> 'События',
|
||||
],
|
||||
'request_log'=> [
|
||||
'hint' => 'В этом журнале отображается список запросов браузера, которые могут потребовать внимания. Например, если посетитель открывает несуществующую страницу, то в журнале создается запись с кодом статуса 404.',
|
||||
'menu_label' => 'Журнал запросов',
|
||||
'menu_description' => 'Просмотр неудачных или перенаправленных запросов.',
|
||||
'empty_link' => 'Очистить журнал запросов',
|
||||
'empty_loading'=> 'Очищение журнала запросов...',
|
||||
'empty_success'=> 'Успешное очищение журнала запросов.',
|
||||
'return_link'=> 'Вернуться к журналу запросов',
|
||||
'id' => 'ID',
|
||||
'id_label' => 'ID записи',
|
||||
'count'=> 'Счетчик',
|
||||
'referer'=> 'Источник запроса',
|
||||
'url'=> 'Адрес',
|
||||
'status_code'=> 'Статус',
|
||||
'preview_title'=> 'Запрос',
|
||||
],
|
||||
'permissions'=> [
|
||||
'name'=> 'Система',
|
||||
'manage_system_settings'=> 'Настройка системных параметров',
|
||||
'manage_software_updates' => 'Управление обновлениями',
|
||||
'access_logs' => 'Просмотр системных логов',
|
||||
'manage_mail_templates' => 'Управление почтовыми шаблонами',
|
||||
'manage_mail_settings'=> 'Управление настройками почты',
|
||||
'manage_other_administrators' => 'Управление другими администраторами',
|
||||
'impersonate_users' => 'Выдавать себя за пользователей',
|
||||
'manage_preferences'=> 'Управление настройками бэкенда',
|
||||
'manage_editor' => 'Управление настройками редактора кода',
|
||||
'manage_own_editor' => 'Управление настройками персонального редактора кода',
|
||||
'view_the_dashboard'=> 'Просмотр панели управления',
|
||||
'manage_default_dashboard'=> 'Управление панелью управления по умолчанию',
|
||||
'manage_branding' => 'Персонализация панели управления',
|
||||
],
|
||||
'log'=> [
|
||||
'menu_label' => 'Настройки журналов',
|
||||
'menu_description' => 'Укажите для каких частей CMS следует вести журнал.',
|
||||
'default_tab'=> 'Ведение журнала',
|
||||
'log_events' => 'Сохранять системные события',
|
||||
'log_events_comment' => 'Хранить системные события в базе данных в дополнение к файловому журналу.',
|
||||
'log_requests' => 'Сохранять неудачные запросы',
|
||||
'log_requests_comment' => 'Запросы браузера, которые могут потребовать внимания. Например, 404 ошибки.',
|
||||
'log_theme'=> 'Сохранять изменения темы',
|
||||
'log_theme_comment'=> 'Изменения которые внесены средствами CMS.',
|
||||
],
|
||||
'media'=> [
|
||||
'invalid_path'=> "Указан недопустимый путь к файлу: ':path'.",
|
||||
'folder_size_items' => 'элемент|элемента|элементов',
|
||||
],
|
||||
'page' => [
|
||||
'custom_error' => [
|
||||
'label' => 'Ошибка страницы',
|
||||
'help'=> 'Приносим извинения, что-то пошло не так и страница не может быть отображена.',
|
||||
],
|
||||
'invalid_token' => [
|
||||
'label' => 'Неверный токен безопасности',
|
||||
],
|
||||
'maintenance' => [
|
||||
'label'=> "Мы скоро вернемся!",
|
||||
'help' => "В настоящее время мы находимся на обслуживании, зайдите позже!",
|
||||
'message'=> 'Сообщение:',
|
||||
'available_at' => 'Попробуйте еще раз после:',
|
||||
],
|
||||
],
|
||||
'pagination' => [
|
||||
'previous' => 'Предыдущий',
|
||||
'next' => 'Следующий',
|
||||
],
|
||||
'datetime' => [
|
||||
'today' => 'Сегодня',
|
||||
'yesterday' => 'Вчера',
|
||||
'tomorrow' => 'Завтра',
|
||||
'at' => ':date в :time',
|
||||
],
|
||||
];
|
||||
150
modules/system/lang/ru/validation.php
Normal file
150
modules/system/lang/ru/validation.php
Normal file
@@ -0,0 +1,150 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Языковые строки для валидации
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| Следующие языковые строки содержат сообщения по умолчанию об ошибках, используемые
|
||||
| классом валидатора. Некоторые из этих правил имеют несколько версий, например
|
||||
| для правила size. Не стесняйтесь здесь настраивать каждое из этих сообщений.
|
||||
|
|
||||
*/
|
||||
|
||||
"accepted" => "Вы должны принять :attribute.",
|
||||
"active_url" => "Поле :attribute недействительный URL.",
|
||||
"after" => "Поле :attribute должно быть датой после :date.",
|
||||
'after_or_equal' => 'Поле :attribute должно быть датой после или равной :date.',
|
||||
"alpha" => "Поле :attribute может содержать только буквы.",
|
||||
"alpha_dash" => "Поле :attribute может содержать только буквы, цифры и дефис.",
|
||||
"alpha_num" => "Поле :attribute может содержать только буквы и цифры.",
|
||||
"array" => "Поле :attribute должно быть массивом.",
|
||||
"before" => "Поле :attribute должно быть датой перед :date.",
|
||||
'before_or_equal' => 'Поле :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_equals' => 'Поле :attribute должно быть датой равной :date.',
|
||||
"date_format" => "Поле :attribute не соответствует формату :format.",
|
||||
"different" => "Поля :attribute и :other должны различаться.",
|
||||
"digits" => "Длина цифрового поля :attribute должна быть :digits.",
|
||||
"digits_between" => "Длина цифрового поля :attribute должна быть между :min и :max.",
|
||||
'dimensions' => ':attribute имеет недопустимые размеры изображения.',
|
||||
'distinct' => 'Поле :attribute имеет повторяющееся значение.',
|
||||
"email" => "Поле :attribute должно быть адресом электронной почты.",
|
||||
'ends_with' => 'Поле :attribute должно заканчиваться одним из значений: :values.',
|
||||
"exists" => "Выбранное значение для :attribute отсутствует.",
|
||||
'file' => ':attribute должен быть файлом.',
|
||||
'filled' => 'Поле :attribute должно иметь значение.',
|
||||
'gt' => [
|
||||
'numeric' => 'Поле :attribute должно быть больше чем :value.',
|
||||
'file' => 'Файл :attribute должен быть больше :value килобайт.',
|
||||
'string' => 'Поле :attribute должно быть больше :value символов.',
|
||||
'array' => 'Поле :attribute должно содержать больше :value элементов.',
|
||||
],
|
||||
'gte' => [
|
||||
'numeric' => 'Поле :attribute должно быть больше или равно :value.',
|
||||
'file' => 'Файл :attribute должен быть больше или равен :value килобайт.',
|
||||
'string' => 'Поле :attribute должен быть больше или равно :value символов.',
|
||||
'array' => 'Поле :attribute должно содержать :value элементов или больше.',
|
||||
],
|
||||
"image" => "Поле :attribute должно быть изображением.",
|
||||
"in" => "Выбранное значение для :attribute ошибочно.",
|
||||
'in_array' => 'Поле :attribute не существует в :other.',
|
||||
"integer" => "Поле :attribute должно быть целым числом.",
|
||||
"ip" => "Поле :attribute должно быть действительным IP-адресом.",
|
||||
'ipv4' => 'Поле :attribute должно быть IPv4 адресом.',
|
||||
'ipv6' => 'Поле :attribute должно быть IPv6 адресом.',
|
||||
'json' => 'Поле :attribute должно быть JSON строкою.',
|
||||
'lt' => [
|
||||
'numeric' => 'Поле :attribute должно быть меньше :value.',
|
||||
'file' => 'Файл :attribute должен быть меньше :value килобайт.',
|
||||
'string' => 'Поле :attribute должно быть меньше :value символов.',
|
||||
'array' => 'Поле :attribute должно содержать меньше :value элементов.',
|
||||
],
|
||||
'lte' => [
|
||||
'numeric' => 'Поле :attribute должно быть меньше или равно :value.',
|
||||
'file' => 'Файл :attribute должен быть меньше или равен :value килобайт.',
|
||||
'string' => 'Поле :attribute должно быть меньше или равно :value символов.',
|
||||
'array' => 'Поле :attribute не должно содержать больше чем :value элементов.',
|
||||
],
|
||||
"max" => [
|
||||
"numeric" => "Поле :attribute должно быть не больше :max.",
|
||||
"file" => "Поле :attribute должно быть не больше :max килобайт.",
|
||||
"string" => "Поле :attribute должно быть не длиннее :max символов.",
|
||||
"array" => "Поле :attribute должно содержать не более :max элементов.",
|
||||
],
|
||||
"mimes" => "Поле :attribute должно быть файлом одного из типов: :values.",
|
||||
"mimetypes" => "Поле :attribute должно иметь одно из расширений: :values.",
|
||||
"min" => [
|
||||
"numeric" => "Поле :attribute должно быть не менее :min.",
|
||||
"file" => "Поле :attribute должно быть не менее :min килобайт.",
|
||||
"string" => "Поле :attribute должно быть не короче :min символов.",
|
||||
"array" => "Поле :attribute должно содержать не менее :min элементов.",
|
||||
],
|
||||
"not_in" => "Выбранное значение для :attribute ошибочно.",
|
||||
'not_regex' => 'Поле :attribute имеет ошибочный формат.',
|
||||
"numeric" => "Поле :attribute должно быть числом.",
|
||||
'present' => 'Поле :attribute должно присутствовать.',
|
||||
"regex" => "Поле :attribute имеет ошибочный формат.",
|
||||
"required" => "Поле :attribute обязательно для заполнения.",
|
||||
"required_if" => "Поле :attribute обязательно для заполнения, когда :other равно :value.",
|
||||
'required_unless' => 'Поле :attribute обязательно если :other нет среди :values.',
|
||||
"required_with" => "Поле :attribute обязательно для заполнения, когда :values указано.",
|
||||
'required_with_all' => 'Поле :attribute обязательно для заполнения когда одно из :values присутствует.',
|
||||
"required_without" => "Поле :attribute обязательно для заполнения, когда :values не указано.",
|
||||
'required_without_all' => 'Поле :attribute обязательно для заполнения когда нет ни одного из :values.',
|
||||
"same" => "Значение :attribute должно совпадать с :other.",
|
||||
"size" => [
|
||||
"numeric" => "Поле :attribute должно быть :size.",
|
||||
"file" => "Поле :attribute должно быть :size килобайт.",
|
||||
"string" => "Поле :attribute должно быть длиной :size символов.",
|
||||
"array" => "Количество элементов в поле :attribute должно быть :size.",
|
||||
],
|
||||
'starts_with' => 'Поле :attribute должно начинаться одним из значений: :values.',
|
||||
'string' => 'Поле :attribute должно быть строкой.',
|
||||
'timezone' => ':attribute должен быть допустимой временной зоной.',
|
||||
"unique" => "Такое значение поля :attribute уже существует.",
|
||||
'uploaded' => ':attribute не удалось загрузить.',
|
||||
"url" => "Поле :attribute имеет ошибочный формат.",
|
||||
'uuid' => 'Поле :attribute должно быть действительным UUID.',
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Пользовательские языковые строки для валидации
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| Здесь Вы можете указать собственные сообщения для атрибутов, используя
|
||||
| соглашение именования строк "attribute.rule". Это позволяет легко указать
|
||||
| свое сообщение для заданного правила атрибута.
|
||||
|
|
||||
*/
|
||||
|
||||
'custom' => [
|
||||
'attribute-name' => [
|
||||
'rule-name' => 'custom-message',
|
||||
],
|
||||
],
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Собственные названия атрибутов
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| Последующие строки используются для подмены программных имен элементов
|
||||
| пользовательского интерфейса на удобочитаемые. Например, вместо имени
|
||||
| поля "email" в сообщениях будет выводиться "электронный адрес".
|
||||
|
|
||||
*/
|
||||
|
||||
'attributes' => [],
|
||||
|
||||
];
|
||||
Reference in New Issue
Block a user