mirror of
https://github.com/firefly-iii/firefly-iii.git
synced 2025-09-23 04:46:44 +00:00
Update php7/8 detection code.
This commit is contained in:
@@ -78,7 +78,7 @@ class HomeController extends Controller
|
|||||||
|
|
||||||
// check if the label is "everything" or "Custom range" which will betray
|
// check if the label is "everything" or "Custom range" which will betray
|
||||||
// a possible problem with the budgets.
|
// a possible problem with the budgets.
|
||||||
if ($label === (string) trans('firefly.everything') || $label === (string) trans('firefly.customRange')) {
|
if ($label === (string)trans('firefly.everything') || $label === (string)trans('firefly.customRange')) {
|
||||||
$isCustomRange = true;
|
$isCustomRange = true;
|
||||||
Log::debug('Range is now marked as "custom".');
|
Log::debug('Range is now marked as "custom".');
|
||||||
}
|
}
|
||||||
@@ -86,7 +86,7 @@ class HomeController extends Controller
|
|||||||
$diff = $start->diffInDays($end) + 1;
|
$diff = $start->diffInDays($end) + 1;
|
||||||
|
|
||||||
if ($diff > 50) {
|
if ($diff > 50) {
|
||||||
$request->session()->flash('warning', (string) trans('firefly.warning_much_data', ['days' => $diff]));
|
$request->session()->flash('warning', (string)trans('firefly.warning_much_data', ['days' => $diff]));
|
||||||
}
|
}
|
||||||
|
|
||||||
$request->session()->put('is_custom_range', $isCustomRange);
|
$request->session()->put('is_custom_range', $isCustomRange);
|
||||||
@@ -110,14 +110,15 @@ class HomeController extends Controller
|
|||||||
*/
|
*/
|
||||||
public function index(AccountRepositoryInterface $repository)
|
public function index(AccountRepositoryInterface $repository)
|
||||||
{
|
{
|
||||||
$types = config('firefly.accountTypesByIdentifier.asset');
|
$result = version_compare(phpversion(), '8.0');
|
||||||
$count = $repository->count($types);
|
$types = config('firefly.accountTypesByIdentifier.asset');
|
||||||
|
$count = $repository->count($types);
|
||||||
Log::channel('audit')->info('User visits homepage.');
|
Log::channel('audit')->info('User visits homepage.');
|
||||||
|
|
||||||
if (0 === $count) {
|
if (0 === $count) {
|
||||||
return redirect(route('new-user.index'));
|
return redirect(route('new-user.index'));
|
||||||
}
|
}
|
||||||
$subTitle = (string) trans('firefly.welcome_back');
|
$subTitle = (string)trans('firefly.welcome_back');
|
||||||
$transactions = [];
|
$transactions = [];
|
||||||
$frontPage = app('preferences')->getFresh('frontPageAccounts', $repository->getAccountsByType([AccountType::ASSET])->pluck('id')->toArray());
|
$frontPage = app('preferences')->getFresh('frontPageAccounts', $repository->getAccountsByType([AccountType::ASSET])->pluck('id')->toArray());
|
||||||
/** @var Carbon $start */
|
/** @var Carbon $start */
|
||||||
|
@@ -35,7 +35,6 @@ use Illuminate\Http\Request;
|
|||||||
use Illuminate\Support\Arr;
|
use Illuminate\Support\Arr;
|
||||||
use Laravel\Passport\Passport;
|
use Laravel\Passport\Passport;
|
||||||
use Log;
|
use Log;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class InstallController
|
* Class InstallController
|
||||||
*
|
*
|
||||||
@@ -134,12 +133,18 @@ class InstallController extends Controller
|
|||||||
public function keys(): void
|
public function keys(): void
|
||||||
{
|
{
|
||||||
// switch on PHP version.
|
// switch on PHP version.
|
||||||
// switch on PHP version.
|
$result = version_compare(phpversion(), '8.0');
|
||||||
if (7 === PHP_MAJOR_VERSION) {
|
Log::info(sprintf('PHP version is %s', $result));
|
||||||
|
if (-1 === $result) {
|
||||||
|
Log::info('Will run PHP7 code.');
|
||||||
|
// PHP 7
|
||||||
$rsa = new \phpseclib\Crypt\RSA;
|
$rsa = new \phpseclib\Crypt\RSA;
|
||||||
$keys = $rsa->createKey(4096);
|
$keys = $rsa->createKey(4096);
|
||||||
}
|
}
|
||||||
if (8 === PHP_MAJOR_VERSION) {
|
|
||||||
|
if ($result >= 0) {
|
||||||
|
Log::info('Will run PHP8 code.');
|
||||||
|
// PHP 8
|
||||||
$keys = \phpseclib3\Crypt\RSA::createKey(4096);
|
$keys = \phpseclib3\Crypt\RSA::createKey(4096);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -105,11 +105,18 @@ trait CreateStuff
|
|||||||
protected function createOAuthKeys(): void // create stuff
|
protected function createOAuthKeys(): void // create stuff
|
||||||
{
|
{
|
||||||
// switch on PHP version.
|
// switch on PHP version.
|
||||||
if (7 === PHP_MAJOR_VERSION) {
|
$result = version_compare(phpversion(), '8.0');
|
||||||
|
Log::info(sprintf('PHP version is %s', $result));
|
||||||
|
if (-1 === $result) {
|
||||||
|
Log::info('Will run PHP7 code.');
|
||||||
|
// PHP 7
|
||||||
$rsa = new \phpseclib\Crypt\RSA;
|
$rsa = new \phpseclib\Crypt\RSA;
|
||||||
$keys = $rsa->createKey(4096);
|
$keys = $rsa->createKey(4096);
|
||||||
}
|
}
|
||||||
if (8 === PHP_MAJOR_VERSION) {
|
|
||||||
|
if ($result >= 0) {
|
||||||
|
Log::info('Will run PHP8 code.');
|
||||||
|
// PHP 8
|
||||||
$keys = \phpseclib3\Crypt\RSA::createKey(4096);
|
$keys = \phpseclib3\Crypt\RSA::createKey(4096);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -60,7 +60,7 @@ return [
|
|||||||
'less' => ':attribute muss kleiner als 10.000.000 sein',
|
'less' => ':attribute muss kleiner als 10.000.000 sein',
|
||||||
'active_url' => ':attribute ist keine gültige URL.',
|
'active_url' => ':attribute ist keine gültige URL.',
|
||||||
'after' => ':attribute muss ein Datum nach :date sein.',
|
'after' => ':attribute muss ein Datum nach :date sein.',
|
||||||
'date_after' => 'The start date must be before the end date.',
|
'date_after' => 'Das Startdatum muss vor dem Enddatum liegen.',
|
||||||
'alpha' => ':attribute darf nur Buchstaben enthalten.',
|
'alpha' => ':attribute darf nur Buchstaben enthalten.',
|
||||||
'alpha_dash' => ':attribute darf nur Buchstaben, Zahlen und Bindestrichen enthalten.',
|
'alpha_dash' => ':attribute darf nur Buchstaben, Zahlen und Bindestrichen enthalten.',
|
||||||
'alpha_num' => ':attribute darf nur Buchstaben und Zahlen enthalten.',
|
'alpha_num' => ':attribute darf nur Buchstaben und Zahlen enthalten.',
|
||||||
|
@@ -1155,9 +1155,9 @@ return [
|
|||||||
'updated_withdrawal' => 'Dépense ":description" mise à jour',
|
'updated_withdrawal' => 'Dépense ":description" mise à jour',
|
||||||
'updated_deposit' => 'Dépôt ":description" mis à jour',
|
'updated_deposit' => 'Dépôt ":description" mis à jour',
|
||||||
'updated_transfer' => 'Transfert ":description" mis à jour',
|
'updated_transfer' => 'Transfert ":description" mis à jour',
|
||||||
'no_changes_withdrawal' => 'Withdrawal ":description" was not changed.',
|
'no_changes_withdrawal' => 'Le retrait ":description" n\'a pas été modifié.',
|
||||||
'no_changes_deposit' => 'Deposit ":description" was not changed.',
|
'no_changes_deposit' => 'Le dépôt ":description" n\'a pas été modifié.',
|
||||||
'no_changes_transfer' => 'Transfer ":description" was not changed.',
|
'no_changes_transfer' => 'Le transfert ":description" n\'a pas été changé.',
|
||||||
'delete_withdrawal' => 'Supprimer la dépense ":description"',
|
'delete_withdrawal' => 'Supprimer la dépense ":description"',
|
||||||
'delete_deposit' => 'Supprimer le dépôt ":description"',
|
'delete_deposit' => 'Supprimer le dépôt ":description"',
|
||||||
'delete_transfer' => 'Supprimer le transfert ":description"',
|
'delete_transfer' => 'Supprimer le transfert ":description"',
|
||||||
@@ -1238,7 +1238,7 @@ return [
|
|||||||
'journal_link_bill' => 'Cette opération est liée à la facture <a href=":route">:name</a>. Pour supprimer l\'association, décocher la case. Utilisez les règles pour la connecter à une autre facture.',
|
'journal_link_bill' => 'Cette opération est liée à la facture <a href=":route">:name</a>. Pour supprimer l\'association, décocher la case. Utilisez les règles pour la connecter à une autre facture.',
|
||||||
'transaction_stored_link' => '<a href="transactions/show/{ID}">L\'opération n°{ID} ("{title}")</a> a été enregistrée.',
|
'transaction_stored_link' => '<a href="transactions/show/{ID}">L\'opération n°{ID} ("{title}")</a> a été enregistrée.',
|
||||||
'transaction_new_stored_link' => '<a href="transactions/show/{ID}">L\'opération n°{ID}</a> a été enregistrée.',
|
'transaction_new_stored_link' => '<a href="transactions/show/{ID}">L\'opération n°{ID}</a> a été enregistrée.',
|
||||||
'transaction_updated_link' => '<a href="transactions/show/{ID}">Transaction #{ID}</a> ("{title}") has been updated.',
|
'transaction_updated_link' => '<a href="transactions/show/{ID}">L\'opération n°{ID}</a> ("{title}") a été mise à jour.',
|
||||||
'transaction_updated_no_changes' => '<a href="transactions/show/{ID}">Transaction #{ID}</a> ("{title}") did not receive any changes.',
|
'transaction_updated_no_changes' => '<a href="transactions/show/{ID}">Transaction #{ID}</a> ("{title}") did not receive any changes.',
|
||||||
'first_split_decides' => 'La première ventilation détermine la valeur de ce champ',
|
'first_split_decides' => 'La première ventilation détermine la valeur de ce champ',
|
||||||
'first_split_overrules_source' => 'La première ventilation peut remplacer le compte source',
|
'first_split_overrules_source' => 'La première ventilation peut remplacer le compte source',
|
||||||
|
@@ -60,7 +60,7 @@ return [
|
|||||||
'less' => ':attribute doit être inférieur à 10 000 000',
|
'less' => ':attribute doit être inférieur à 10 000 000',
|
||||||
'active_url' => 'Le champ :attribute n\'est pas une URL valide.',
|
'active_url' => 'Le champ :attribute n\'est pas une URL valide.',
|
||||||
'after' => 'Le champ :attribute doit être une date postérieure à :date.',
|
'after' => 'Le champ :attribute doit être une date postérieure à :date.',
|
||||||
'date_after' => 'The start date must be before the end date.',
|
'date_after' => 'La date de début doit être antérieure à la date de fin.',
|
||||||
'alpha' => 'Le champ :attribute doit seulement contenir des lettres.',
|
'alpha' => 'Le champ :attribute doit seulement contenir des lettres.',
|
||||||
'alpha_dash' => 'Le champ :attribute peut seulement contenir des lettres, des chiffres et des tirets.',
|
'alpha_dash' => 'Le champ :attribute peut seulement contenir des lettres, des chiffres et des tirets.',
|
||||||
'alpha_num' => 'Le champ :attribute peut seulement contenir des chiffres et des lettres.',
|
'alpha_num' => 'Le champ :attribute peut seulement contenir des chiffres et des lettres.',
|
||||||
|
@@ -30,7 +30,7 @@ return [
|
|||||||
'edit_piggyBank' => 'Sửa heo đất ":name"',
|
'edit_piggyBank' => 'Sửa heo đất ":name"',
|
||||||
'preferences' => 'Quyền ưu tiên',
|
'preferences' => 'Quyền ưu tiên',
|
||||||
'profile' => 'Hồ sơ',
|
'profile' => 'Hồ sơ',
|
||||||
'accounts' => 'Accounts',
|
'accounts' => 'Tài khoản',
|
||||||
'changePassword' => 'Đổi mật khẩu',
|
'changePassword' => 'Đổi mật khẩu',
|
||||||
'change_email' => 'Đổi địa chỉ email',
|
'change_email' => 'Đổi địa chỉ email',
|
||||||
'bills' => 'Hóa đơn',
|
'bills' => 'Hóa đơn',
|
||||||
@@ -62,5 +62,5 @@ return [
|
|||||||
'telemetry_view' => 'Xem dữ liệu thu thập',
|
'telemetry_view' => 'Xem dữ liệu thu thập',
|
||||||
'edit_object_group' => 'Chỉnh sửa nhóm ":title"',
|
'edit_object_group' => 'Chỉnh sửa nhóm ":title"',
|
||||||
'delete_object_group' => 'Xóa nhóm ":title"',
|
'delete_object_group' => 'Xóa nhóm ":title"',
|
||||||
'logout_others' => 'Logout other sessions'
|
'logout_others' => 'Đăng xuất tất cả phiên đăng nhập'
|
||||||
];
|
];
|
||||||
|
@@ -34,12 +34,12 @@ return [
|
|||||||
'admin_test_body' => 'Đây là một thông báo thử nghiệm từ Firefly III của bạn. Nó đã được gửi đến :email.',
|
'admin_test_body' => 'Đây là một thông báo thử nghiệm từ Firefly III của bạn. Nó đã được gửi đến :email.',
|
||||||
|
|
||||||
// new IP
|
// new IP
|
||||||
'login_from_new_ip' => 'New login on Firefly III',
|
'login_from_new_ip' => 'Đăng nhập mới trên Firefly III',
|
||||||
'new_ip_body' => 'Firefly III detected a new login on your account from an unknown IP address. If you never logged in from the IP address below, or it has been more than six months ago, Firefly III will warn you.',
|
'new_ip_body' => 'Firefly III đã phát hiện một thông tin đăng nhập mới vào tài khoản của bạn từ một địa chỉ IP không xác định. Nếu bạn chưa bao giờ đăng nhập từ địa chỉ IP bên dưới hoặc đã hơn sáu tháng trước, Firefly III sẽ cảnh báo bạn.',
|
||||||
'new_ip_warning' => 'If you recognize this IP address or the login, you can ignore this message. If you didn\'t login, of if you have no idea what this is about, verify your password security, change it, and log out all other sessions. To do this, go to your profile page. Of course you have 2FA enabled already, right? Stay safe!',
|
'new_ip_warning' => 'Nếu bạn nhận ra địa chỉ IP này hoặc thông tin đăng nhập, bạn có thể bỏ qua thông báo này. Nếu bạn không đăng nhập, nếu bạn không biết điều này là gì, hãy xác minh bảo mật mật khẩu của bạn, thay đổi mật khẩu và đăng xuất tất cả các phiên khác. Để làm điều này, hãy truy cập trang hồ sơ của bạn.',
|
||||||
'ip_address' => 'IP address',
|
'ip_address' => 'Địa chỉ IP',
|
||||||
'host_name' => 'Host',
|
'host_name' => 'Máy chủ',
|
||||||
'date_time' => 'Date + time',
|
'date_time' => 'Ngày & Giờ',
|
||||||
|
|
||||||
// access token created
|
// access token created
|
||||||
'access_token_created_subject' => 'Mã truy cập mới đã được tạo',
|
'access_token_created_subject' => 'Mã truy cập mới đã được tạo',
|
||||||
@@ -52,7 +52,7 @@ return [
|
|||||||
'registered_welcome' => 'Chào mừng đến <a style="color:#337ab7" href=":address">Firefly III</a>. Đăng ký của bạn đã được thực hiện và email này để xác nhận nó!',
|
'registered_welcome' => 'Chào mừng đến <a style="color:#337ab7" href=":address">Firefly III</a>. Đăng ký của bạn đã được thực hiện và email này để xác nhận nó!',
|
||||||
'registered_pw' => 'Nếu bạn đã quên mật khẩu của mình, vui lòng đặt lại bằng cách sử dụng <a style="color:#337ab7" href=":address/password/reset"> công cụ đặt lại mật khẩu </a>.',
|
'registered_pw' => 'Nếu bạn đã quên mật khẩu của mình, vui lòng đặt lại bằng cách sử dụng <a style="color:#337ab7" href=":address/password/reset"> công cụ đặt lại mật khẩu </a>.',
|
||||||
'registered_help' => 'Có một biểu tượng trợ giúp ở góc trên bên phải của mỗi trang. Nếu bạn cần giúp đỡ, bấm vào nó!',
|
'registered_help' => 'Có một biểu tượng trợ giúp ở góc trên bên phải của mỗi trang. Nếu bạn cần giúp đỡ, bấm vào nó!',
|
||||||
'registered_doc_html' => 'If you haven\'t already, please read the <a style="color:#337ab7" href="https://docs.firefly-iii.org/about-firefly-iii/personal-finances">grand theory</a>.',
|
'registered_doc_html' => 'Nếu bạn chưa có, vui lòng đọc lý thuyết <a style="color:#337ab7" href="https://docs.firefly-iii.org/about-firefly-iii/grand-theory"> </ a>.',
|
||||||
'registered_doc_text' => 'Nếu bạn chưa có, xin vui lòng đọc hướng dẫn sử dụng đầu tiên và mô tả.',
|
'registered_doc_text' => 'Nếu bạn chưa có, xin vui lòng đọc hướng dẫn sử dụng đầu tiên và mô tả.',
|
||||||
'registered_closing' => 'Hãy tận hưởng!',
|
'registered_closing' => 'Hãy tận hưởng!',
|
||||||
'registered_firefly_iii_link' => 'Firefly III:',
|
'registered_firefly_iii_link' => 'Firefly III:',
|
||||||
|
@@ -29,17 +29,17 @@ return [
|
|||||||
'edit' => 'Sửa',
|
'edit' => 'Sửa',
|
||||||
'delete' => 'Xóa',
|
'delete' => 'Xóa',
|
||||||
'split' => 'Chia ra',
|
'split' => 'Chia ra',
|
||||||
'single_split' => 'Split',
|
'single_split' => 'Chia ra',
|
||||||
'clone' => 'Nhân ra',
|
'clone' => 'Nhân ra',
|
||||||
'last_seven_days' => 'Bảy ngày gần đây',
|
'last_seven_days' => 'Bảy ngày gần đây',
|
||||||
'last_thirty_days' => 'Ba mươi ngày gần đây',
|
'last_thirty_days' => 'Ba mươi ngày gần đây',
|
||||||
'last_180_days' => 'Last 180 days',
|
'last_180_days' => '180 ngày qua',
|
||||||
'YTD' => 'YTD',
|
'YTD' => 'YTD',
|
||||||
'welcome_back' => 'Chào mừng trở lại?',
|
'welcome_back' => 'Chào mừng trở lại?',
|
||||||
'everything' => 'Tất cả mọi thứ',
|
'everything' => 'Tất cả mọi thứ',
|
||||||
'today' => 'hôm nay',
|
'today' => 'hôm nay',
|
||||||
'customRange' => 'Chọn trong khoảng',
|
'customRange' => 'Chọn trong khoảng',
|
||||||
'date_range' => 'Date range',
|
'date_range' => 'Khoảng thời gian',
|
||||||
'apply' => 'Áp dụng',
|
'apply' => 'Áp dụng',
|
||||||
'select_date' => 'Chọn ngày..',
|
'select_date' => 'Chọn ngày..',
|
||||||
'cancel' => 'Hủy',
|
'cancel' => 'Hủy',
|
||||||
@@ -56,13 +56,13 @@ return [
|
|||||||
'Opening balance' => 'Số dư đầu kỳ',
|
'Opening balance' => 'Số dư đầu kỳ',
|
||||||
'create_new_stuff' => 'Tạo công cụ mới',
|
'create_new_stuff' => 'Tạo công cụ mới',
|
||||||
'new_withdrawal' => 'Rút tiền mới',
|
'new_withdrawal' => 'Rút tiền mới',
|
||||||
'create_new_transaction' => 'Create a new transaction',
|
'create_new_transaction' => 'Tạo giao dịch mới',
|
||||||
'sidebar_frontpage_create' => 'Tạo',
|
'sidebar_frontpage_create' => 'Tạo',
|
||||||
'new_transaction' => 'Giao dịch mới',
|
'new_transaction' => 'Giao dịch mới',
|
||||||
'no_rules_for_bill' => 'Hóa đơn này không có quy tắc nào liên quan đến nó.',
|
'no_rules_for_bill' => 'Hóa đơn này không có quy tắc nào liên quan đến nó.',
|
||||||
'go_to_asset_accounts' => 'Xem tài khoản của bạn',
|
'go_to_asset_accounts' => 'Xem tài khoản của bạn',
|
||||||
'go_to_budgets' => 'Chuyển đến ngân sách của bạn',
|
'go_to_budgets' => 'Chuyển đến ngân sách của bạn',
|
||||||
'go_to_withdrawals' => 'Go to your withdrawals',
|
'go_to_withdrawals' => 'Chuyển đến mục rút tiền của bạn',
|
||||||
'clones_journal_x' => 'Giao dịch này là một bản sao của ":description" (#:id)',
|
'clones_journal_x' => 'Giao dịch này là một bản sao của ":description" (#:id)',
|
||||||
'go_to_categories' => 'Đi đến danh mục của bạn',
|
'go_to_categories' => 'Đi đến danh mục của bạn',
|
||||||
'go_to_bills' => 'Đi đến hóa đơn của bạn',
|
'go_to_bills' => 'Đi đến hóa đơn của bạn',
|
||||||
@@ -208,21 +208,21 @@ return [
|
|||||||
'button_register' => 'Đăng ký',
|
'button_register' => 'Đăng ký',
|
||||||
'authorization' => 'Ủy quyền',
|
'authorization' => 'Ủy quyền',
|
||||||
'active_bills_only' => 'Chỉ hóa đơn hoạt động',
|
'active_bills_only' => 'Chỉ hóa đơn hoạt động',
|
||||||
'active_bills_only_total' => 'all active bills',
|
'active_bills_only_total' => 'tất cả hóa đơn đang hoạt động',
|
||||||
'active_exp_bills_only' => 'hóa đơn hoạt động và dự kiến',
|
'active_exp_bills_only' => 'hóa đơn hoạt động và dự kiến',
|
||||||
'active_exp_bills_only_total' => 'all active expected bills only',
|
'active_exp_bills_only_total' => 'chỉ tất cả các hóa đơn dự kiến đang hoạt động',
|
||||||
'per_period_sum_1D' => 'Expected daily costs',
|
'per_period_sum_1D' => 'Chi phí hàng ngày dự kiến',
|
||||||
'per_period_sum_1W' => 'Expected weekly costs',
|
'per_period_sum_1W' => 'Chi phí hàng tuần dự kiến',
|
||||||
'per_period_sum_1M' => 'Expected monthly costs',
|
'per_period_sum_1M' => 'Chi phí hàng tháng dự kiến',
|
||||||
'per_period_sum_3M' => 'Expected quarterly costs',
|
'per_period_sum_3M' => 'Chi phí hàng quý dự kiến',
|
||||||
'per_period_sum_6M' => 'Expected half-yearly costs',
|
'per_period_sum_6M' => 'Chi phí nửa năm dự kiến',
|
||||||
'per_period_sum_1Y' => 'Expected yearly costs',
|
'per_period_sum_1Y' => 'Chi phí hàng năm dự kiến',
|
||||||
'average_per_bill' => 'trung bình mỗi hóa đơn',
|
'average_per_bill' => 'trung bình mỗi hóa đơn',
|
||||||
'expected_total' => 'tổng dự kiến',
|
'expected_total' => 'tổng dự kiến',
|
||||||
'reconciliation_account_name' => ':name reconciliation (:currency)',
|
'reconciliation_account_name' => ':name reconciliation (:currency)',
|
||||||
'saved' => 'Saved',
|
'saved' => 'Đã lưu',
|
||||||
'advanced_options' => 'Advanced options',
|
'advanced_options' => 'Tùy chọn nâng cao',
|
||||||
'advanced_options_explain' => 'Some pages in Firefly III have advanced options hidden behind this button. This page doesn\'t have anything fancy here, but do check out the others!',
|
'advanced_options_explain' => 'Một số trang trong Firefly III có các tùy chọn nâng cao ẩn sau nút này. Trang này không có gì lạ mắt ở đây, nhưng hãy kiểm tra các trang khác!',
|
||||||
'here_be_dragons' => 'Hic sunt dracones',
|
'here_be_dragons' => 'Hic sunt dracones',
|
||||||
|
|
||||||
// Webhooks
|
// Webhooks
|
||||||
@@ -244,8 +244,8 @@ return [
|
|||||||
'all_source_accounts' => 'Tài khoản gửi',
|
'all_source_accounts' => 'Tài khoản gửi',
|
||||||
'back_to_index' => 'Quay lại chỉ mục',
|
'back_to_index' => 'Quay lại chỉ mục',
|
||||||
'cant_logout_guard' => 'Firefly III can\'t log you out.',
|
'cant_logout_guard' => 'Firefly III can\'t log you out.',
|
||||||
'external_url' => 'External URL',
|
'external_url' => 'URL bên ngoài',
|
||||||
'internal_reference' => 'Internal reference',
|
'internal_reference' => 'Tài liệu tham khảo nội bộ',
|
||||||
|
|
||||||
// check for updates:
|
// check for updates:
|
||||||
'update_check_title' => 'Kiểm tra cập nhật',
|
'update_check_title' => 'Kiểm tra cập nhật',
|
||||||
@@ -279,26 +279,26 @@ return [
|
|||||||
'search_found_transactions' => 'Tìm thấy Firefly III :count giao dịch trong :time giây. | Firefly III được tìm thấy :count giao dịch trong :time giây.',
|
'search_found_transactions' => 'Tìm thấy Firefly III :count giao dịch trong :time giây. | Firefly III được tìm thấy :count giao dịch trong :time giây.',
|
||||||
'search_found_more_transactions' => 'Firefly III đã tìm thấy hơn :count giao dịch trong :time giây.',
|
'search_found_more_transactions' => 'Firefly III đã tìm thấy hơn :count giao dịch trong :time giây.',
|
||||||
'search_for_query' => 'Firefly III đang tìm kiếm các giao dịch với tất cả những từ này trong đó: <span class="text-info">:query</span>',
|
'search_for_query' => 'Firefly III đang tìm kiếm các giao dịch với tất cả những từ này trong đó: <span class="text-info">:query</span>',
|
||||||
'search_modifier_date_is' => 'Transaction date is ":value"',
|
'search_modifier_date_is' => 'Ngày giao dịch là ":value"',
|
||||||
'search_modifier_id' => 'Transaction ID is ":value"',
|
'search_modifier_id' => 'ID giao dịch là ":value"',
|
||||||
'search_modifier_date_before' => 'Transaction date is before or on ":value"',
|
'search_modifier_date_before' => 'Ngày giao dịch phải trước hoặc ngay ":value"',
|
||||||
'search_modifier_date_after' => 'Transaction date is after or on ":value"',
|
'search_modifier_date_after' => 'Ngày giao dịch phải sau hoặc ngay ":value"',
|
||||||
'search_modifier_created_on' => 'Transaction was created on ":value"',
|
'search_modifier_created_on' => 'Giao dịch được tạo vào ":value"',
|
||||||
'search_modifier_updated_on' => 'Transaction was last updated on ":value"',
|
'search_modifier_updated_on' => 'Giao dịch được cập nhật lần cuối vào ":value"',
|
||||||
'search_modifier_external_id' => 'External ID is ":value"',
|
'search_modifier_external_id' => 'ID bên ngoài là ":value"',
|
||||||
'search_modifier_internal_reference' => 'Internal reference is ":value"',
|
'search_modifier_internal_reference' => 'Tham chiếu nội bộ là ":value"',
|
||||||
'search_modifier_description_starts' => 'Description is ":value"',
|
'search_modifier_description_starts' => 'Mô tả là ":value"',
|
||||||
'search_modifier_description_ends' => 'Description ends with ":value"',
|
'search_modifier_description_ends' => 'Mô tả kết thúc bằng ":value"',
|
||||||
'search_modifier_description_contains' => 'Description contains ":value"',
|
'search_modifier_description_contains' => 'Mô tả có chứa ":value"',
|
||||||
'search_modifier_description_is' => 'Description is exactly ":value"',
|
'search_modifier_description_is' => 'Mô tả chính xác ":value"',
|
||||||
'search_modifier_currency_is' => 'Transaction (foreign) currency is ":value"',
|
'search_modifier_currency_is' => 'Đơn vị tiền tệ của giao dịch (nước ngoài) là ":value"',
|
||||||
'search_modifier_foreign_currency_is' => 'Transaction foreign currency is ":value"',
|
'search_modifier_foreign_currency_is' => 'Ngoại tệ giao dịch là ":value"',
|
||||||
'search_modifier_has_attachments' => 'The transaction must have an attachment',
|
'search_modifier_has_attachments' => 'Giao dịch phải có tệp đính kèm',
|
||||||
'search_modifier_has_no_category' => 'The transaction must have no category',
|
'search_modifier_has_no_category' => 'Giao dịch phải không có danh mục',
|
||||||
'search_modifier_has_any_category' => 'The transaction must have a (any) category',
|
'search_modifier_has_any_category' => 'Giao dịch phải có danh mục',
|
||||||
'search_modifier_has_no_budget' => 'The transaction must have no budget',
|
'search_modifier_has_no_budget' => 'Giao dịch phải không có ngân sách',
|
||||||
'search_modifier_has_any_budget' => 'The transaction must have a (any) budget',
|
'search_modifier_has_any_budget' => 'Giao dịch có ngân sách (bất kỳ)',
|
||||||
'search_modifier_has_no_tag' => 'The transaction must have no tags',
|
'search_modifier_has_no_tag' => 'Giao dịch phải không có thẻ',
|
||||||
'search_modifier_has_any_tag' => 'The transaction must have a (any) tag',
|
'search_modifier_has_any_tag' => 'The transaction must have a (any) tag',
|
||||||
'search_modifier_notes_contain' => 'The transaction notes contain ":value"',
|
'search_modifier_notes_contain' => 'The transaction notes contain ":value"',
|
||||||
'search_modifier_notes_start' => 'The transaction notes start with ":value"',
|
'search_modifier_notes_start' => 'The transaction notes start with ":value"',
|
||||||
@@ -323,7 +323,7 @@ return [
|
|||||||
'search_modifier_destination_account_starts' => 'Destination account name starts with ":value"',
|
'search_modifier_destination_account_starts' => 'Destination account name starts with ":value"',
|
||||||
'search_modifier_destination_account_ends' => 'Destination account name ends with ":value"',
|
'search_modifier_destination_account_ends' => 'Destination account name ends with ":value"',
|
||||||
'search_modifier_destination_account_id' => 'Destination account ID is :value',
|
'search_modifier_destination_account_id' => 'Destination account ID is :value',
|
||||||
'search_modifier_destination_is_cash' => 'Destination account is (cash) account',
|
'search_modifier_destination_is_cash' => 'Tài khoản đích là tài khoản (tiền mặt)',
|
||||||
'search_modifier_source_is_cash' => 'Source account is (cash) account',
|
'search_modifier_source_is_cash' => 'Source account is (cash) account',
|
||||||
'search_modifier_destination_account_nr_is' => 'Destination account number (IBAN) is ":value"',
|
'search_modifier_destination_account_nr_is' => 'Destination account number (IBAN) is ":value"',
|
||||||
'search_modifier_destination_account_nr_contains' => 'Destination account number (IBAN) contains ":value"',
|
'search_modifier_destination_account_nr_contains' => 'Destination account number (IBAN) contains ":value"',
|
||||||
@@ -455,16 +455,16 @@ return [
|
|||||||
'rule_trigger_source_account_nr_starts' => 'Source account number / IBAN starts with ":trigger_value"',
|
'rule_trigger_source_account_nr_starts' => 'Source account number / IBAN starts with ":trigger_value"',
|
||||||
'rule_trigger_source_account_nr_ends_choice' => 'Source account number / IBAN ends with..',
|
'rule_trigger_source_account_nr_ends_choice' => 'Source account number / IBAN ends with..',
|
||||||
'rule_trigger_source_account_nr_ends' => 'Source account number / IBAN ends with ":trigger_value"',
|
'rule_trigger_source_account_nr_ends' => 'Source account number / IBAN ends with ":trigger_value"',
|
||||||
'rule_trigger_source_account_nr_is_choice' => 'Source account number / IBAN is..',
|
'rule_trigger_source_account_nr_is_choice' => 'Số tài khoản nguồn / IBAN là..',
|
||||||
'rule_trigger_source_account_nr_is' => 'Source account number / IBAN is ":trigger_value"',
|
'rule_trigger_source_account_nr_is' => 'Số tài khoản nguồn / IBAN là ":trigger_value"',
|
||||||
'rule_trigger_source_account_nr_contains_choice' => 'Source account number / IBAN contains..',
|
'rule_trigger_source_account_nr_contains_choice' => 'Số tài khoản nguồn / IBAN chứa..',
|
||||||
'rule_trigger_source_account_nr_contains' => 'Source account number / IBAN contains ":trigger_value"',
|
'rule_trigger_source_account_nr_contains' => 'Số tài khoản nguồn / IBAN chứa ":trigger_value"',
|
||||||
'rule_trigger_destination_account_starts_choice' => 'Destination account name starts with..',
|
'rule_trigger_destination_account_starts_choice' => 'Tên tài khoản đích bắt đầu bằng..',
|
||||||
'rule_trigger_destination_account_starts' => 'Destination account name starts with ":trigger_value"',
|
'rule_trigger_destination_account_starts' => 'Tên tài khoản đích bắt đầu bằng ":trigger_value"',
|
||||||
'rule_trigger_destination_account_ends_choice' => 'Destination account name ends with..',
|
'rule_trigger_destination_account_ends_choice' => 'Tên tài khoản đích kết thúc bằng..',
|
||||||
'rule_trigger_destination_account_ends' => 'Destination account name ends with ":trigger_value"',
|
'rule_trigger_destination_account_ends' => 'Tên tài khoản đích kết thúc bằng ":trigger_value"',
|
||||||
'rule_trigger_destination_account_is_choice' => 'Destination account name is..',
|
'rule_trigger_destination_account_is_choice' => 'Tên tài khoản đích là..',
|
||||||
'rule_trigger_destination_account_is' => 'Destination account name is ":trigger_value"',
|
'rule_trigger_destination_account_is' => 'Tên tài khoản đích là ":trigger_value"',
|
||||||
'rule_trigger_destination_account_contains_choice' => 'Destination account name contains..',
|
'rule_trigger_destination_account_contains_choice' => 'Destination account name contains..',
|
||||||
'rule_trigger_destination_account_contains' => 'Destination account name contains ":trigger_value"',
|
'rule_trigger_destination_account_contains' => 'Destination account name contains ":trigger_value"',
|
||||||
'rule_trigger_destination_account_nr_starts_choice' => 'Destination account number / IBAN starts with..',
|
'rule_trigger_destination_account_nr_starts_choice' => 'Destination account number / IBAN starts with..',
|
||||||
@@ -499,10 +499,10 @@ return [
|
|||||||
'rule_trigger_date_before' => 'Ngày giao dịch là trước: ":trigger_value"',
|
'rule_trigger_date_before' => 'Ngày giao dịch là trước: ":trigger_value"',
|
||||||
'rule_trigger_date_after_choice' => 'Ngày giao dịch sau..',
|
'rule_trigger_date_after_choice' => 'Ngày giao dịch sau..',
|
||||||
'rule_trigger_date_after' => 'Ngày giao dịch sau: ":trigger_value"',
|
'rule_trigger_date_after' => 'Ngày giao dịch sau: ":trigger_value"',
|
||||||
'rule_trigger_created_on_choice' => 'Transaction was made on..',
|
'rule_trigger_created_on_choice' => 'Giao dịch bị từ chối..',
|
||||||
'rule_trigger_created_on' => 'Transaction was made on ":trigger_value"',
|
'rule_trigger_created_on' => 'Giao dịch được tạo: ":trigger_value"',
|
||||||
'rule_trigger_updated_on_choice' => 'Transaction was last edited on..',
|
'rule_trigger_updated_on_choice' => 'Giao dịch được cập nhật lần cuối vào..',
|
||||||
'rule_trigger_updated_on' => 'Transaction was last edited on ":trigger_value"',
|
'rule_trigger_updated_on' => 'Giao dịch được cập nhật lần cuối vào ":trigger_value"',
|
||||||
'rule_trigger_budget_is_choice' => 'Ngân sách là..',
|
'rule_trigger_budget_is_choice' => 'Ngân sách là..',
|
||||||
'rule_trigger_budget_is' => 'Ngân sách là ":trigger_value"',
|
'rule_trigger_budget_is' => 'Ngân sách là ":trigger_value"',
|
||||||
'rule_trigger_tag_is_choice' => 'Nhãn là..',
|
'rule_trigger_tag_is_choice' => 'Nhãn là..',
|
||||||
@@ -541,8 +541,8 @@ return [
|
|||||||
'rule_trigger_notes_end' => 'Ghi chú kết thúc bằng ":trigger_value"',
|
'rule_trigger_notes_end' => 'Ghi chú kết thúc bằng ":trigger_value"',
|
||||||
'rule_trigger_bill_is_choice' => 'Bill is..',
|
'rule_trigger_bill_is_choice' => 'Bill is..',
|
||||||
'rule_trigger_bill_is' => 'Bill is ":trigger_value"',
|
'rule_trigger_bill_is' => 'Bill is ":trigger_value"',
|
||||||
'rule_trigger_external_id_choice' => 'External ID is..',
|
'rule_trigger_external_id_choice' => 'ID bên ngoài là..',
|
||||||
'rule_trigger_external_id' => 'External ID is ":trigger_value"',
|
'rule_trigger_external_id' => 'ID bên ngoài là ":trigger_value"',
|
||||||
'rule_trigger_internal_reference_choice' => 'Internal reference is..',
|
'rule_trigger_internal_reference_choice' => 'Internal reference is..',
|
||||||
'rule_trigger_internal_reference' => 'Internal reference is ":trigger_value"',
|
'rule_trigger_internal_reference' => 'Internal reference is ":trigger_value"',
|
||||||
'rule_trigger_journal_id_choice' => 'Transaction journal ID is..',
|
'rule_trigger_journal_id_choice' => 'Transaction journal ID is..',
|
||||||
@@ -678,7 +678,7 @@ return [
|
|||||||
'pref_optional_fields_transaction' => 'Các trường tùy chọn cho giao dịch',
|
'pref_optional_fields_transaction' => 'Các trường tùy chọn cho giao dịch',
|
||||||
'pref_optional_fields_transaction_help' => 'Theo mặc định, không phải tất cả các trường đều được bật khi tạo giao dịch mới (vì sự lộn xộn). Dưới đây, bạn có thể kích hoạt các trường này nếu bạn nghĩ rằng chúng có thể hữu ích cho bạn. Tất nhiên, bất kỳ trường nào bị vô hiệu hóa, nhưng đã được điền vào, sẽ hiển thị bất kể cài đặt.',
|
'pref_optional_fields_transaction_help' => 'Theo mặc định, không phải tất cả các trường đều được bật khi tạo giao dịch mới (vì sự lộn xộn). Dưới đây, bạn có thể kích hoạt các trường này nếu bạn nghĩ rằng chúng có thể hữu ích cho bạn. Tất nhiên, bất kỳ trường nào bị vô hiệu hóa, nhưng đã được điền vào, sẽ hiển thị bất kể cài đặt.',
|
||||||
'optional_tj_date_fields' => 'Trường ngày',
|
'optional_tj_date_fields' => 'Trường ngày',
|
||||||
'optional_tj_other_fields' => 'Other fields',
|
'optional_tj_other_fields' => 'Các dữ liệu khác',
|
||||||
'optional_tj_attachment_fields' => 'Trường đính kèm',
|
'optional_tj_attachment_fields' => 'Trường đính kèm',
|
||||||
'pref_optional_tj_interest_date' => 'Ngày lãi',
|
'pref_optional_tj_interest_date' => 'Ngày lãi',
|
||||||
'pref_optional_tj_book_date' => 'Ngày đặt sách',
|
'pref_optional_tj_book_date' => 'Ngày đặt sách',
|
||||||
@@ -689,28 +689,28 @@ return [
|
|||||||
'pref_optional_tj_internal_reference' => 'Tài liệu tham khảo nội bộ',
|
'pref_optional_tj_internal_reference' => 'Tài liệu tham khảo nội bộ',
|
||||||
'pref_optional_tj_notes' => 'Ghi chú',
|
'pref_optional_tj_notes' => 'Ghi chú',
|
||||||
'pref_optional_tj_attachments' => 'Tài liệu đính kèm',
|
'pref_optional_tj_attachments' => 'Tài liệu đính kèm',
|
||||||
'pref_optional_tj_external_uri' => 'External URL',
|
'pref_optional_tj_external_uri' => 'URL bên ngoài',
|
||||||
'pref_optional_tj_location' => 'Location',
|
'pref_optional_tj_location' => 'Vị trí',
|
||||||
'pref_optional_tj_links' => 'Transaction links',
|
'pref_optional_tj_links' => 'Liên kết giao dịch',
|
||||||
'optional_field_meta_dates' => 'Ngày',
|
'optional_field_meta_dates' => 'Ngày',
|
||||||
'optional_field_meta_business' => 'Kinh doanh',
|
'optional_field_meta_business' => 'Kinh doanh',
|
||||||
'optional_field_attachments' => 'Tài liệu đính kèm',
|
'optional_field_attachments' => 'Tài liệu đính kèm',
|
||||||
'optional_field_meta_data' => 'Dữ liệu meta tùy chọn',
|
'optional_field_meta_data' => 'Dữ liệu meta tùy chọn',
|
||||||
'external_uri' => 'External URL',
|
'external_uri' => 'URL bên ngoài',
|
||||||
|
|
||||||
// profile:
|
// profile:
|
||||||
'delete_stuff_header' => 'Delete data',
|
'delete_stuff_header' => 'Xóa dữ liệu',
|
||||||
'permanent_delete_stuff' => 'Hãy cẩn thận với các nút này. Xóa nội dung là vĩnh viễn.',
|
'permanent_delete_stuff' => 'Hãy cẩn thận với các nút này. Xóa nội dung là vĩnh viễn.',
|
||||||
'other_sessions_logged_out' => 'All your other sessions have been logged out.',
|
'other_sessions_logged_out' => 'All your other sessions have been logged out.',
|
||||||
'delete_all_budgets' => 'Xóa TẤT CẢ ngân sách của bạn',
|
'delete_all_budgets' => 'Xóa TẤT CẢ ngân sách của bạn',
|
||||||
'delete_all_categories' => 'Xóa TẤT CẢ danh mục của bạn',
|
'delete_all_categories' => 'Xóa TẤT CẢ danh mục của bạn',
|
||||||
'delete_all_tags' => 'Xóa TẤT CẢ các nhãn của bạn',
|
'delete_all_tags' => 'Xóa TẤT CẢ các nhãn của bạn',
|
||||||
'delete_all_bills' => 'Delete ALL your bills',
|
'delete_all_bills' => 'Xóa TẤT CẢ các hóa đơn của bạn',
|
||||||
'delete_all_piggy_banks' => 'Delete ALL your piggy banks',
|
'delete_all_piggy_banks' => 'Xóa TẤT CẢ các ống heo của bạn',
|
||||||
'delete_all_rules' => 'Delete ALL your rules',
|
'delete_all_rules' => 'Xóa TẤT CẢ các luật của bạn',
|
||||||
'delete_all_recurring' => 'Delete ALL your recurring transactions',
|
'delete_all_recurring' => 'Xóa TẤT CẢ các giao dịch định kỳ của bạn',
|
||||||
'delete_all_object_groups' => 'Delete ALL your object groups',
|
'delete_all_object_groups' => 'Xóa TẤT CẢ các nhóm đối tượng của bạn',
|
||||||
'delete_all_accounts' => 'Delete ALL your accounts',
|
'delete_all_accounts' => 'Xóa TẤT CẢ các tài khoản của bạn',
|
||||||
'delete_all_asset_accounts' => 'Delete ALL your asset accounts',
|
'delete_all_asset_accounts' => 'Delete ALL your asset accounts',
|
||||||
'delete_all_expense_accounts' => 'Delete ALL your expense accounts',
|
'delete_all_expense_accounts' => 'Delete ALL your expense accounts',
|
||||||
'delete_all_revenue_accounts' => 'Delete ALL your revenue accounts',
|
'delete_all_revenue_accounts' => 'Delete ALL your revenue accounts',
|
||||||
|
@@ -120,8 +120,8 @@ return [
|
|||||||
'stop_processing' => 'Dừng xử lý',
|
'stop_processing' => 'Dừng xử lý',
|
||||||
'start_date' => 'Bắt đầu',
|
'start_date' => 'Bắt đầu',
|
||||||
'end_date' => 'Kết thúc',
|
'end_date' => 'Kết thúc',
|
||||||
'start' => 'Start of range',
|
'start' => 'Bắt đầu phạm vi',
|
||||||
'end' => 'End of range',
|
'end' => 'Kết thúc phạm vi',
|
||||||
'delete_account' => 'Xóa tài khoản ":name"',
|
'delete_account' => 'Xóa tài khoản ":name"',
|
||||||
'delete_bill' => 'Xóa hóa đơn ":name"',
|
'delete_bill' => 'Xóa hóa đơn ":name"',
|
||||||
'delete_budget' => 'Xóa ngân sách ":name"',
|
'delete_budget' => 'Xóa ngân sách ":name"',
|
||||||
|
@@ -33,10 +33,10 @@ return [
|
|||||||
'index_cash_account' => 'Đây là những tài khoản được tạo ra cho đến nay. Bạn có thể sử dụng tài khoản tiền mặt để theo dõi chi phí tiền mặt nhưng tất nhiên đó không phải là bắt buộc.',
|
'index_cash_account' => 'Đây là những tài khoản được tạo ra cho đến nay. Bạn có thể sử dụng tài khoản tiền mặt để theo dõi chi phí tiền mặt nhưng tất nhiên đó không phải là bắt buộc.',
|
||||||
|
|
||||||
// transactions
|
// transactions
|
||||||
'transactions_create_basic_info' => 'Enter the basic information of your transaction. Source, destination, date and description.',
|
'transactions_create_basic_info' => 'Nhập thông tin cơ bản của giao dịch. Nguồn, đích, ngày tháng và mô tả.',
|
||||||
'transactions_create_amount_info' => 'Enter the amount of the transaction. If necessary the fields will auto-update for foreign amount info.',
|
'transactions_create_amount_info' => 'Nhập số tiền của giao dịch. Nếu cần, các trường sẽ tự động cập nhật thông tin về ngoại tệ.',
|
||||||
'transactions_create_optional_info' => 'All of these fields are optional. Adding meta-data here will make your transactions better organised.',
|
'transactions_create_optional_info' => 'Tất cả các trường là tùy chọn. Thêm siêu dữ liệu ở đây sẽ làm cho các giao dịch của bạn được tổ chức tốt hơn.',
|
||||||
'transactions_create_split' => 'If you want to split a transaction, add more splits with this button',
|
'transactions_create_split' => 'Nếu bạn muốn phân tách một giao dịch, hãy thêm nhiều lần chia tách bằng nút này',
|
||||||
|
|
||||||
// create account:
|
// create account:
|
||||||
'accounts_create_iban' => 'Cung cấp cho tài khoản của bạn một IBAN hợp lệ. Điều này có thể làm cho việc nhập dữ liệu rất dễ dàng trong tương lai.',
|
'accounts_create_iban' => 'Cung cấp cho tài khoản của bạn một IBAN hợp lệ. Điều này có thể làm cho việc nhập dữ liệu rất dễ dàng trong tương lai.',
|
||||||
|
@@ -37,7 +37,7 @@ return [
|
|||||||
'linked_to_rules' => 'Quy tắc liên quan',
|
'linked_to_rules' => 'Quy tắc liên quan',
|
||||||
'active' => 'Đang hoạt động?',
|
'active' => 'Đang hoạt động?',
|
||||||
'percentage' => 'phần trăm.',
|
'percentage' => 'phần trăm.',
|
||||||
'recurring_transaction' => 'Recurring transaction',
|
'recurring_transaction' => 'Giao dịch định kỳ',
|
||||||
'next_due' => 'Kỳ hạn tiếp theo',
|
'next_due' => 'Kỳ hạn tiếp theo',
|
||||||
'transaction_type' => 'Loại giao dịch',
|
'transaction_type' => 'Loại giao dịch',
|
||||||
'lastActivity' => 'Hoạt động cuối cùng',
|
'lastActivity' => 'Hoạt động cuối cùng',
|
||||||
@@ -46,7 +46,7 @@ return [
|
|||||||
'account_type' => 'Loại tài khoản',
|
'account_type' => 'Loại tài khoản',
|
||||||
'created_at' => 'Được tạo tại',
|
'created_at' => 'Được tạo tại',
|
||||||
'account' => 'Tài khoản',
|
'account' => 'Tài khoản',
|
||||||
'external_uri' => 'External URI',
|
'external_uri' => 'URL bên ngoài',
|
||||||
'matchingAmount' => 'Số tiền',
|
'matchingAmount' => 'Số tiền',
|
||||||
'destination' => 'Nơi đến',
|
'destination' => 'Nơi đến',
|
||||||
'source' => 'Nơi gửi',
|
'source' => 'Nơi gửi',
|
||||||
|
@@ -60,7 +60,7 @@ return [
|
|||||||
'less' => ':thuộc tính phải nhỏ hơn 10,000,000',
|
'less' => ':thuộc tính phải nhỏ hơn 10,000,000',
|
||||||
'active_url' => 'Thuộc tính: không phải là một URL hợp lệ.',
|
'active_url' => 'Thuộc tính: không phải là một URL hợp lệ.',
|
||||||
'after' => 'Thuộc tính: phải là một ngày sau: ngày.',
|
'after' => 'Thuộc tính: phải là một ngày sau: ngày.',
|
||||||
'date_after' => 'The start date must be before the end date.',
|
'date_after' => '"Ngày bắt đầu" phải trước "Ngày kết thúc".',
|
||||||
'alpha' => 'Thuộc tính: chỉ có thể chứa các chữ cái.',
|
'alpha' => 'Thuộc tính: chỉ có thể chứa các chữ cái.',
|
||||||
'alpha_dash' => 'Thuộc tính: chỉ có thể chứa chữ cái, số và dấu gạch ngang.',
|
'alpha_dash' => 'Thuộc tính: chỉ có thể chứa chữ cái, số và dấu gạch ngang.',
|
||||||
'alpha_num' => 'Thuộc tính: chỉ có thể chứa các chữ cái và số.',
|
'alpha_num' => 'Thuộc tính: chỉ có thể chứa các chữ cái và số.',
|
||||||
@@ -131,7 +131,7 @@ return [
|
|||||||
'current_target_amount' => 'Số tiền hiện tại phải nhỏ hơn số tiền mục tiêu.',
|
'current_target_amount' => 'Số tiền hiện tại phải nhỏ hơn số tiền mục tiêu.',
|
||||||
'unique_piggy_bank_for_user' => 'Tên của con heo đất phải là duy nhất.',
|
'unique_piggy_bank_for_user' => 'Tên của con heo đất phải là duy nhất.',
|
||||||
'unique_object_group' => 'Tên nhóm phải không bị trùng',
|
'unique_object_group' => 'Tên nhóm phải không bị trùng',
|
||||||
'starts_with' => 'The value must start with :values.',
|
'starts_with' => 'Giá trị phải bắt đầu bằng :values.',
|
||||||
'unique_webhook' => 'You already have a webhook with these values.',
|
'unique_webhook' => 'You already have a webhook with these values.',
|
||||||
'unique_existing_webhook' => 'You already have another webhook with these values.',
|
'unique_existing_webhook' => 'You already have another webhook with these values.',
|
||||||
|
|
||||||
@@ -143,7 +143,7 @@ return [
|
|||||||
'email' => 'địa chỉ email',
|
'email' => 'địa chỉ email',
|
||||||
'description' => 'mô tả',
|
'description' => 'mô tả',
|
||||||
'amount' => 'số tiền',
|
'amount' => 'số tiền',
|
||||||
'transactions.*.amount' => 'transaction amount',
|
'transactions.*.amount' => 'số tiền giao dịch',
|
||||||
'name' => 'tên',
|
'name' => 'tên',
|
||||||
'piggy_bank_id' => 'ID heo đất',
|
'piggy_bank_id' => 'ID heo đất',
|
||||||
'targetamount' => 'lượng mục tiêu',
|
'targetamount' => 'lượng mục tiêu',
|
||||||
@@ -183,7 +183,7 @@ return [
|
|||||||
'withdrawal_dest_need_data' => 'Cần lấy ID tài khoản đích hợp lệ và / hoặc tên tài khoản đích hợp lệ để tiếp tục.',
|
'withdrawal_dest_need_data' => 'Cần lấy ID tài khoản đích hợp lệ và / hoặc tên tài khoản đích hợp lệ để tiếp tục.',
|
||||||
'withdrawal_dest_bad_data' => 'Không thể tìm thấy tài khoản đích hợp lệ khi tìm kiếm ID ":id" hoặc tên ":name".',
|
'withdrawal_dest_bad_data' => 'Không thể tìm thấy tài khoản đích hợp lệ khi tìm kiếm ID ":id" hoặc tên ":name".',
|
||||||
|
|
||||||
'generic_source_bad_data' => 'Could not find a valid source account when searching for ID ":id" or name ":name".',
|
'generic_source_bad_data' => 'Không thể tìm thấy tài khoản nguồn hợp lệ khi tìm kiếm ID ":id" hoặc tên ":name".',
|
||||||
|
|
||||||
'deposit_source_need_data' => 'Cần lấy ID tài khoản nguồn hợp lệ và / hoặc tên tài khoản nguồn hợp lệ để tiếp tục.',
|
'deposit_source_need_data' => 'Cần lấy ID tài khoản nguồn hợp lệ và / hoặc tên tài khoản nguồn hợp lệ để tiếp tục.',
|
||||||
'deposit_source_bad_data' => 'Cần lấy ID tài khoản nguồn hợp lệ và / hoặc tên tài khoản nguồn hợp lệ để continuaCould không tìm thấy tài khoản nguồn hợp lệ khi tìm kiếm IDe ":id" hoặc tên ":name".',
|
'deposit_source_bad_data' => 'Cần lấy ID tài khoản nguồn hợp lệ và / hoặc tên tài khoản nguồn hợp lệ để continuaCould không tìm thấy tài khoản nguồn hợp lệ khi tìm kiếm IDe ":id" hoặc tên ":name".',
|
||||||
@@ -205,7 +205,7 @@ return [
|
|||||||
'generic_invalid_destination' => 'Bạn không thể sử dụng tài khoản này làm tài khoản đích.',
|
'generic_invalid_destination' => 'Bạn không thể sử dụng tài khoản này làm tài khoản đích.',
|
||||||
|
|
||||||
'gte.numeric' => ':attribute phải lớn hơn hoặc bằng :value.',
|
'gte.numeric' => ':attribute phải lớn hơn hoặc bằng :value.',
|
||||||
'gt.numeric' => 'The :attribute must be greater than :value.',
|
'gt.numeric' => ':attribute phải lớn hơn :value.',
|
||||||
'gte.file' => ':attribute phải lớn hơn hoặc bằng :value kilobyte.',
|
'gte.file' => ':attribute phải lớn hơn hoặc bằng :value kilobyte.',
|
||||||
'gte.string' => ':attribute phải lớn hơn hoặc bằng :value ký tự.',
|
'gte.string' => ':attribute phải lớn hơn hoặc bằng :value ký tự.',
|
||||||
'gte.array' => ':attribute phải có :value mục trở lên.',
|
'gte.array' => ':attribute phải có :value mục trở lên.',
|
||||||
|
Reference in New Issue
Block a user