2018-01-08 19:19:03 +01:00
< ? php
2018-04-28 15:26:45 +02:00
2018-01-08 19:19:03 +01:00
/**
* validation . php
2020-02-14 08:07:45 +01:00
* Copyright ( c ) 2019 james @ firefly - iii . org
2018-01-08 19:19:03 +01:00
*
2019-10-05 06:23:46 +02:00
* This file is part of Firefly III ( https :// github . com / firefly - iii ) .
2018-01-08 19:19:03 +01:00
*
2019-10-05 06:23:46 +02:00
* This program is free software : you can redistribute it and / or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation , either version 3 of the
* License , or ( at your option ) any later version .
2018-01-08 19:19:03 +01:00
*
2019-10-05 06:23:46 +02:00
* This program is distributed in the hope that it will be useful ,
2018-01-08 19:19:03 +01:00
* but WITHOUT ANY WARRANTY ; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE . See the
2019-10-05 06:23:46 +02:00
* GNU Affero General Public License for more details .
2018-01-08 19:19:03 +01:00
*
2019-10-05 06:23:46 +02:00
* You should have received a copy of the GNU Affero General Public License
* along with this program . If not , see < https :// www . gnu . org / licenses />.
2018-01-08 19:19:03 +01:00
*/
2024-03-02 17:12:03 +01:00
/*
* PLEASE DO NOT EDIT THIS FILE DIRECTLY .
* YOUR CHANGES WILL BE OVERWRITTEN !
* YOUR PR WITH CHANGES TO THIS FILE WILL BE REJECTED !
*
* GO TO CROWDIN TO FIX OR CHANGE TRANSLATIONS !
*
* https :// crowdin . com / project / firefly - iii
*
*/
2023-01-14 15:47:51 +01:00
2018-06-01 14:22:37 +02:00
declare ( strict_types = 1 );
2018-01-08 19:19:03 +01:00
return [
2024-01-20 16:29:00 +01:00
'bad_type_source' => 'Firefly III не может определить тип транзакции на основе этого исходного счета.' ,
'bad_type_destination' => 'Firefly III не может определить тип транзакции на основе этого счета.' ,
2024-01-04 15:42:00 +01:00
'missing_where' => 'В массиве отсутствует связка "where" ("где")' ,
'missing_update' => 'В массиве отсутствует связка "update" ("обновить")' ,
'invalid_where_key' => 'JSON содержит недопустимый ключ для связки "where" ("где")' ,
'invalid_update_key' => 'JSON содержит недопустимый ключ для связки "update" ("обновить")' ,
'invalid_query_data' => 'В поле %s:%s вашего запроса содержатся неверные данные.' ,
'invalid_query_account_type' => 'Ваш запрос содержит счета разных типов, что недопустимо.' ,
'invalid_query_currency' => 'Ваш запрос содержит счета с разными валютами, что недопустимо.' ,
'iban' => 'Это некорректный IBAN.' ,
'zero_or_more' => 'Это значение не может быть отрицательным.' ,
'more_than_zero' => 'Значение должно быть больше нуля.' ,
'more_than_zero_correct' => 'Значение должно быть ноль или больше.' ,
'no_asset_account' => 'Это не счет активов.' ,
'date_or_time' => 'Значение должно быть корректной датой или временем (ISO 8601).' ,
'source_equals_destination' => 'Счёт источник и счёт назначения совпадают.' ,
'unique_account_number_for_user' => 'Этот номер счёта уже используется.' ,
'unique_iban_for_user' => 'Этот IBAN уже используется.' ,
'reconciled_forbidden_field' => 'Эта транзакция уже сверена, вы не можете изменить ":field"' ,
'deleted_user' => 'По соображениям безопасности, вы не можете зарегистрироваться, используя этот адрес электронной почты.' ,
'rule_trigger_value' => 'Это значение является недопустимым для выбранного триггера.' ,
2024-03-11 06:17:46 +01:00
'rule_action_expression' => 'Invalid expression. :error' ,
2024-01-04 15:42:00 +01:00
'rule_action_value' => 'Это значение является недопустимым для выбранного действия.' ,
'file_already_attached' => 'Загруженный файл ":name" уже прикреплён к этому объекту.' ,
'file_attached' => 'Файл ":name". успешно загружен.' ,
2024-03-18 01:30:56 +01:00
'file_zero' => 'The file is zero bytes in size.' ,
2024-01-04 15:42:00 +01:00
'must_exist' => 'ID в поле field :attribute не существует в базе данных.' ,
'all_accounts_equal' => 'В с е счета в данном поле должны совпадать.' ,
'group_title_mandatory' => 'Название группы является обязательным, если транзакций несколько.' ,
'transaction_types_equal' => 'В с е части транзакции должны быть одного типа.' ,
'invalid_transaction_type' => 'Недопустимый тип транзакции.' ,
'invalid_selection' => 'Вы сделали неправильный выбор.' ,
'belongs_user' => 'Это значение связано с объектом, который не существует.' ,
'belongs_user_or_user_group' => 'Это значение связано с объектом, который не существует в Вашем текущем финансовом администрировании.' ,
2024-04-07 06:51:34 +02:00
'no_access_group' => 'The user has no access to this user group.' ,
'no_accepted_roles_defined' => 'No access roles have been defined for this endpoint, access denied.' ,
2024-01-04 15:42:00 +01:00
'at_least_one_transaction' => 'Необходима как минимум одна транзакция.' ,
'recurring_transaction_id' => 'Необходима минимум одна транзакция.' ,
'need_id_to_match' => 'Вы должны отправить эту запись с ID для того, чтобы API мог сопоставить её.' ,
'too_many_unmatched' => 'Слишком много отправленных транзакций не могут быть сопоставлены с соответствующими записями в базе данных. Убедитесь, что существующие записи имеют правильный ID.' ,
'id_does_not_match' => 'Отправленный ID #:id не соответствует ожидаемому ID. Убедитесь, что он совпадает или не соответствует поле.' ,
'at_least_one_repetition' => 'Необходима как минимум одна транзакция.' ,
'require_repeat_until' => 'Требуется либо несколько повторений, либо конечная дата (repeat_until). Н о не о б а параметра разом.' ,
'require_currency_info' => 'Содержимое этого поля недействительно без информации о валюте.' ,
'not_transfer_account' => 'Этот счёт нельзя использовать для перевода.' ,
'require_currency_amount' => 'Содержимое этого поля недействительно без информации о валюте.' ,
'require_foreign_currency' => 'Это поле требует число' ,
'require_foreign_dest' => 'Это значение поля должно совпадать с валютой счета назначения.' ,
'require_foreign_src' => 'Это поле должно совпадать с валютой исходного счета.' ,
'equal_description' => 'Описание транзакции не должно совпадать с глобальным описанием.' ,
'file_invalid_mime' => 'Файл ":name" имеет тип ":mime". Загрузка файлов такого типа невозможна.' ,
'file_too_large' => 'Файл ":name" слишком большой.' ,
'belongs_to_user' => 'Значение :attribute неизвестно.' ,
'accepted' => 'Необходимо принять :attribute.' ,
'bic' => 'Это некорректный BIC.' ,
'at_least_one_trigger' => 'Правило должно иметь хотя бы одно условие.' ,
'at_least_one_active_trigger' => 'Правило должно иметь хотя бы один активный триггер.' ,
'at_least_one_action' => 'Правило должно иметь хотя бы одно действие.' ,
'at_least_one_active_action' => 'Правило должно иметь по крайней мере одно активное действие.' ,
'base64' => 'Это некорректный формат для данных, зашифрованных с помощью base64.' ,
'model_id_invalid' => 'Данный ID кажется недопустимым для этой модели.' ,
'less' => ':attribute должен быть меньше 10,000,000' ,
'active_url' => ':attribute не является допустимым URL-адресом.' ,
'after' => ':attribute должна быть позже :date.' ,
'date_after' => 'Дата начала должна быть до даты окончания.' ,
'alpha' => ':attribute может содержать только буквы.' ,
'alpha_dash' => ':attribute может содержать только буквы, числа и дефис.' ,
'alpha_num' => ':attribute может содержать только буквы и числа.' ,
'array' => ':attribute должен быть массивом.' ,
'unique_for_user' => 'Уже существует запись с этим :attribute.' ,
'before' => ':attribute должна быть раньше :date.' ,
'unique_object_for_user' => 'Это название уже используется.' ,
'unique_account_for_user' => 'Такое название счёта уже используется.' ,
2023-01-14 15:43:25 +01:00
2024-03-02 17:12:03 +01:00
/*
* PLEASE DO NOT EDIT THIS FILE DIRECTLY .
* YOUR CHANGES WILL BE OVERWRITTEN !
* YOUR PR WITH CHANGES TO THIS FILE WILL BE REJECTED !
*
* GO TO CROWDIN TO FIX OR CHANGE TRANSLATIONS !
*
* https :// crowdin . com / project / firefly - iii
*
*/
2023-01-14 15:47:51 +01:00
2024-01-04 15:42:00 +01:00
'between.numeric' => ':attribute должен быть больше :min и меньше :max.' ,
'between.file' => ':attribute должен быть размером :min - :max килобайт.' ,
'between.string' => ':attribute должен содержать :min - :max символов.' ,
'between.array' => ':attribute должен содержать :min - :max элементов.' ,
'boolean' => 'Поле :attribute должно быть истинным или ложным.' ,
'confirmed' => ':attribute не совпадает с подтверждением.' ,
'date' => ':attribute не является верной датой.' ,
'date_format' => ':attribute не совпадает с форматом :format.' ,
'different' => ':attribute и :other не должны совпадать.' ,
'digits' => ':attribute должно содержать :digits цифр.' ,
'digits_between' => ':attribute должен содержать :min - :max цифр.' ,
'email' => ':attribute не является верным email адресом.' ,
'filled' => 'Поле :attribute должно быть заполнено.' ,
'exists' => 'Выбран неверный :attribute.' ,
'image' => ':attribute должен быть изображением.' ,
'in' => 'Выбранный :attribute не верный.' ,
'integer' => ':attribute должно быть целым числом.' ,
'ip' => ':attribute должен быть верным IP-адресом.' ,
'json' => ':attribute должно быть верной JSON строкой.' ,
'max.numeric' => 'Значение :attribute не может быть больше :max.' ,
'max.file' => 'Значение :attribute не может быть больше :max килобайт.' ,
'max.string' => 'Значение :attribute не может быть больше :max символов.' ,
'max.array' => 'Значение :attribute не может содержать более :max элементов.' ,
'mimes' => ':attribute должен быть файлом типа :values.' ,
'min.numeric' => ':attribute должен быть минимум :min.' ,
'lte.numeric' => ':attribute должен быть меньше или равен :value.' ,
'min.file' => ':attribute должен быть минимум :min килобайт.' ,
'min.string' => 'Значение :attribute должно быть не меньше :min символов.' ,
'min.array' => 'Значение :attribute должно содержать не меньше :min элементов.' ,
'not_in' => 'Выбранный :attribute не верный.' ,
'numeric' => ':attribute должен быть числом.' ,
'scientific_notation' => ':attribute не может использовать научную обозначение.' ,
'numeric_native' => 'Сумма должна быть числом.' ,
'numeric_destination' => 'Сумма назначения должна быть числом.' ,
'numeric_source' => 'Исходная сумма должна быть числом.' ,
'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.' ,
'amount_min_over_max' => 'Минимальная сумма не может быть больше максимальной суммы.' ,
'size.file' => ':attribute должен быть размером :size килобайт.' ,
'size.string' => ':attribute должен состоять из :size символов.' ,
'size.array' => ':attribute должен содержать :size элементов.' ,
'unique' => ':attribute уже занят.' ,
'string' => 'Значение :attribute должно быть строкой.' ,
'url' => 'Неверный формат ввода :attribute.' ,
'timezone' => ':attribute должен быть в допустимом диапазоне.' ,
'2fa_code' => ':attribute введен неверно.' ,
'dimensions' => 'Недопустимые размеры изображения :attribute.' ,
'distinct' => 'Поле :attribute содержит повторяющееся значение.' ,
'file' => ':attribute должен быть файлом.' ,
'in_array' => 'Поле :attribute не существует в :other.' ,
'present' => 'Поле :attribute должно быть заполнено.' ,
'amount_zero' => 'Сумма не может быть равна нулю.' ,
'current_target_amount' => 'Текущая сумма должна быть меньше целевой суммы.' ,
'unique_piggy_bank_for_user' => 'Название копилки должно быть уникальным.' ,
'unique_object_group' => 'Название группы должно быть уникальным' ,
'starts_with' => 'Значение должно начинаться с :values.' ,
'unique_webhook' => 'У вас уже есть вебхук с этим сочетанием URL, триггер, ответа и доставки.' ,
'unique_existing_webhook' => 'У вас уже есть другой вебхук с этим сочетанием URL, триггер, ответа и доставки.' ,
'same_account_type' => 'О б а счета должны иметь один тип счета' ,
'same_account_currency' => 'О б а счета должны иметь одну и ту же валюту' ,
2024-01-01 15:17:11 +01:00
2024-03-02 17:12:03 +01:00
/*
* PLEASE DO NOT EDIT THIS FILE DIRECTLY .
* YOUR CHANGES WILL BE OVERWRITTEN !
* YOUR PR WITH CHANGES TO THIS FILE WILL BE REJECTED !
*
* GO TO CROWDIN TO FIX OR CHANGE TRANSLATIONS !
*
* https :// crowdin . com / project / firefly - iii
*
*/
2023-01-14 15:47:51 +01:00
2024-03-21 04:11:26 +01:00
'secure_password' => 'Это небезопасный пароль. Попробуйте еще раз! Подробнее: https://bit.ly/FF3-password' ,
2024-01-04 15:42:00 +01:00
'valid_recurrence_rep_type' => 'Недопустимый тип для повторяющихся транзакций.' ,
'valid_recurrence_rep_moment' => 'Неверный период повторения для данного типа повторений.' ,
'invalid_account_info' => 'Неверные данные о счёте.' ,
'attributes' => [
2018-03-04 08:54:01 +01:00
'email' => '"Адрес электронной почты"' ,
'description' => '"Описание"' ,
'amount' => 'Сумма' ,
2021-01-20 18:42:31 +01:00
'transactions.*.amount' => 'сумма транзакции' ,
2018-03-04 08:54:01 +01:00
'name' => '"Название"' ,
'piggy_bank_id' => 'ID копилки' ,
'targetamount' => '"Целевая сумма"' ,
2019-09-03 17:21:45 +02:00
'opening_balance_date' => 'дата начального баланса' ,
'opening_balance' => 'начальный баланс' ,
2018-03-04 08:54:01 +01:00
'match' => '"Ключи для связи"' ,
'amount_min' => '"Минимальная сумма"' ,
'amount_max' => '"Максимальная сумма"' ,
'title' => '"Заголовок"' ,
'tag' => '"Метка"' ,
'transaction_description' => 'описание транзакции' ,
'rule-action-value.1' => '"Значение действия #1"' ,
'rule-action-value.2' => '"Значение действия #2"' ,
'rule-action-value.3' => '"Значение действия #3"' ,
'rule-action-value.4' => '"Значение действия #4"' ,
'rule-action-value.5' => '"Значение действия #5"' ,
'rule-action.1' => '"Действие #1"' ,
'rule-action.2' => '"Действие #2"' ,
'rule-action.3' => '"Действие #3"' ,
'rule-action.4' => '"Действие #4"' ,
'rule-action.5' => '"Действие #5"' ,
'rule-trigger-value.1' => '"Значение условия #1"' ,
'rule-trigger-value.2' => '"Значение условия #2"' ,
'rule-trigger-value.3' => '"Значение условия #3"' ,
'rule-trigger-value.4' => '"Значение условия #4"' ,
'rule-trigger-value.5' => '"Значение условия #5"' ,
'rule-trigger.1' => '"Условие #1"' ,
'rule-trigger.2' => '"Условие #2"' ,
'rule-trigger.3' => '"Условие #3"' ,
'rule-trigger.4' => '"Условие #4"' ,
'rule-trigger.5' => '"Условие #5"' ,
2018-01-29 19:13:43 +01:00
],
2019-05-29 18:30:52 +02:00
// validation of accounts:
2024-01-04 15:42:00 +01:00
'withdrawal_source_need_data' => 'Для продолжения необходим действительный ID счёта-источника и/или действительное имя счёта.' ,
'withdrawal_source_bad_data' => '[a] Н е удалось найти учетную запись источника при поиске ID ":id" или имени ":name".' ,
'withdrawal_dest_need_data' => '[a] Для продолжения необходимо получить правильный идентификатор счета назначения и/или действительное имя счета назначения.' ,
'withdrawal_dest_bad_data' => 'Н е удалось найти действительный счёт назначения при поиске ID ":id" или имени ":name".' ,
2019-05-29 18:30:52 +02:00
2024-01-04 15:42:00 +01:00
'withdrawal_dest_iban_exists' => 'Этот IBAN счета назначения уже используется счетом актива или обязательства и не может быть использован в качестве назначения для снятия средств.' ,
'deposit_src_iban_exists' => 'Этот IBAN счета-источника уже используется счетом актива или обязательства и не может быть использован в качестве источника депозита.' ,
2023-06-27 15:01:42 +02:00
2024-01-04 15:42:00 +01:00
'reconciliation_source_bad_data' => 'Н е удалось найти действующую учетную запись сверки при поиске ID ":id" или имя ":name".' ,
2022-12-29 15:49:24 +01:00
2024-01-04 15:42:00 +01:00
'generic_source_bad_data' => '[e] Н е удалось найти корректный счёт-источник при поиске ID ":id" или имени ":name".' ,
2021-03-14 20:03:27 +01:00
2024-01-04 15:42:00 +01:00
'deposit_source_need_data' => 'Для продолжения необходим действительный ID счёта-источника и/или действительное имя счёта.' ,
'deposit_source_bad_data' => '[b] Н е удалось найти корректный счёт-источник при поиске ID ":id" или имени ":name".' ,
'deposit_dest_need_data' => '[b] Для продолжения необходим действительный ID счёта назначения и/или действительное имя счёта.' ,
'deposit_dest_bad_data' => 'Н е удалось найти действительный счёт назначения при поиске ID ":id" или имени ":name".' ,
'deposit_dest_wrong_type' => 'Сохраняемый счёт назначения - некорректный.' ,
2019-05-29 18:30:52 +02:00
2024-03-02 17:12:03 +01:00
/*
* PLEASE DO NOT EDIT THIS FILE DIRECTLY .
* YOUR CHANGES WILL BE OVERWRITTEN !
* YOUR PR WITH CHANGES TO THIS FILE WILL BE REJECTED !
*
* GO TO CROWDIN TO FIX OR CHANGE TRANSLATIONS !
*
* https :// crowdin . com / project / firefly - iii
*
*/
2023-01-14 15:47:51 +01:00
2024-01-04 15:42:00 +01:00
'transfer_source_need_data' => 'Для продолжения необходим действительный ID счёта-источника и/или действительное имя счёта.' ,
'transfer_source_bad_data' => '[c] Н е удалось найти учетную запись источника при поиске ID ":id" или имени ":name".' ,
'transfer_dest_need_data' => '[a] Для продолжения необходимо получить правильный идентификатор счета назначения и/или действительное имя счета назначения.' ,
'transfer_dest_bad_data' => 'Н е удалось найти действительный счёт назначения при поиске ID ":id" или имени ":name".' ,
'need_id_in_edit' => 'Каждая разделённая транзакция должна иметь transaction_journal_id (либо действительный ID, либо 0).' ,
2019-08-08 17:05:13 +02:00
2024-01-04 15:42:00 +01:00
'ob_source_need_data' => 'Для продолжения необходим действительный ID счёта-источника и/или действительное имя счёта.' ,
'lc_source_need_data' => 'Для продолжения необходимо получить идентификатор учетной записи исходного кода.' ,
'ob_dest_need_data' => '[a] Для продолжения необходимо получить правильный идентификатор счета назначения и/или действительное имя счета назначения.' ,
'ob_dest_bad_data' => 'Н е удалось найти действительный счёт назначения при поиске ID ":id" или имени ":name".' ,
'reconciliation_either_account' => 'Чтобы отправить сверку, вы должны отправить либо исходный код, либо целевой счет. Н е обоих, а не ничтожные.' ,
2020-01-09 06:29:16 +01:00
2024-01-04 15:42:00 +01:00
'generic_invalid_source' => 'Вы не можете использовать этот счёт в качестве счёта-источника.' ,
'generic_invalid_destination' => 'Вы не можете использовать этот счёт в качестве счёта назначения.' ,
2022-01-28 21:19:05 +01:00
2024-01-04 15:42:00 +01:00
'generic_no_source' => 'Вы должны представить информацию о счете источнике или идентификатор из журнала транзакции.' ,
'generic_no_destination' => 'Вы должны представить исходную информацию о б учетной записи или представить идентификатор журнала транзакций.' ,
2024-01-01 15:17:11 +01:00
2024-01-04 15:42:00 +01:00
'gte.numeric' => 'Значение :attribute должно быть больше или равно :value.' ,
'gt.numeric' => 'Значение :attribute должно быть больше :value.' ,
'gte.file' => 'Размер файла в поле :attribute должен быть больше или равен :value Килобайт(а ).' ,
'gte.string' => 'Значение :attribute должно быть больше или равно :value символам.' ,
'gte.array' => 'Значения поля :attribute должно включать :value элементов или больше.' ,
2020-03-16 06:47:06 +01:00
2024-01-04 15:42:00 +01:00
'amount_required_for_auto_budget' => 'Нужно указать сумму.' ,
'auto_budget_amount_positive' => 'Сумма должна быть больше 0.' ,
2024-01-03 13:05:54 +01:00
2024-01-04 15:42:00 +01:00
'auto_budget_period_mandatory' => 'Период авто-бюджета - это обязательно поле.' ,
2023-01-29 15:29:42 +01:00
// no access to administration:
2024-01-04 15:42:00 +01:00
'no_access_user_group' => 'У вас нет необходимых прав доступа для данного административного действия.' ,
2024-04-07 06:51:34 +02:00
'administration_owner_rename' => 'Вы не можете переименовать ваше стандартное управление.' ,
2018-01-08 19:19:03 +01:00
];
2023-01-14 15:43:25 +01:00
2024-03-02 17:12:03 +01:00
/*
* PLEASE DO NOT EDIT THIS FILE DIRECTLY .
* YOUR CHANGES WILL BE OVERWRITTEN !
* YOUR PR WITH CHANGES TO THIS FILE WILL BE REJECTED !
*
* GO TO CROWDIN TO FIX OR CHANGE TRANSLATIONS !
*
* https :// crowdin . com / project / firefly - iii
*
*/