mirror of
https://github.com/firefly-iii/firefly-iii.git
synced 2025-12-21 10:41:22 +00:00
Update meta data for new release.
This commit is contained in:
@@ -116,23 +116,26 @@ class UpdateRequest extends FormRequest
|
||||
/** @var array $repetition */
|
||||
foreach ($repetitions as $repetition) {
|
||||
$current = [];
|
||||
if(array_key_exists('type', $repetition)) {
|
||||
if (array_key_exists('type', $repetition)) {
|
||||
$current['type'] = $repetition['type'];
|
||||
}
|
||||
|
||||
if(array_key_exists('moment', $repetition)) {
|
||||
if (array_key_exists('moment', $repetition)) {
|
||||
$current['moment'] = (string)$repetition['moment'];
|
||||
}
|
||||
|
||||
if(array_key_exists('skip', $repetition)) {
|
||||
if (array_key_exists('skip', $repetition)) {
|
||||
$current['skip'] = (int)$repetition['skip'];
|
||||
}
|
||||
|
||||
if(array_key_exists('weekend', $repetition)) {
|
||||
$current['weekend'] = (int) $repetition['weekend'];
|
||||
if (array_key_exists('weekend', $repetition)) {
|
||||
$current['weekend'] = (int)$repetition['weekend'];
|
||||
}
|
||||
$return[] = $current;
|
||||
}
|
||||
if (0 === count($return)) {
|
||||
return null;
|
||||
}
|
||||
|
||||
return $return;
|
||||
}
|
||||
@@ -196,7 +199,7 @@ class UpdateRequest extends FormRequest
|
||||
$validator->after(
|
||||
function (Validator $validator) {
|
||||
//$this->validateOneRecurrenceTransaction($validator);
|
||||
$this->validateOneRepetitionUpdate($validator);
|
||||
//$this->validateOneRepetitionUpdate($validator);
|
||||
$this->validateRecurrenceRepetition($validator);
|
||||
$this->validateRepetitionMoment($validator);
|
||||
$this->validateForeignCurrencyInformation($validator);
|
||||
|
||||
@@ -56,7 +56,7 @@ class BillUpdateService
|
||||
|
||||
if (array_key_exists('currency_id', $data) || array_key_exists('currency_code', $data)) {
|
||||
$factory = app(TransactionCurrencyFactory::class);
|
||||
$currency = $factory->find($data['currency_id'] ?? null, $data['currency_code'] ?? null) ?? app('amount')->getDefaultCurrencyByUser($bill->user);
|
||||
$currency = $factory->find((int) ($data['currency_id'] ?? null), $data['currency_code'] ?? null) ?? app('amount')->getDefaultCurrencyByUser($bill->user);
|
||||
|
||||
// enable the currency if it isn't.
|
||||
$currency->enabled = true;
|
||||
|
||||
@@ -79,15 +79,18 @@ trait CalculateXOccurrencesSince
|
||||
*/
|
||||
protected function getXMonthlyOccurrencesSince(Carbon $date, Carbon $afterDate, int $count, int $skipMod, string $moment): array
|
||||
{
|
||||
Log::debug(sprintf('Now in %s', __METHOD__));
|
||||
Log::debug(sprintf('Now in %s(%s, %s, %d)', __METHOD__, $date->format('Y-m-d'), $afterDate->format('Y-m-d'), $count));
|
||||
$return = [];
|
||||
$mutator = clone $date;
|
||||
$total = 0;
|
||||
$attempts = 0;
|
||||
$dayOfMonth = (int)$moment;
|
||||
$dayOfMonth = 0 === $dayOfMonth ? 1 : $dayOfMonth;
|
||||
if ($mutator->day > $dayOfMonth) {
|
||||
Log::debug(sprintf('%d is after %d, add a month. Mutator is now', $mutator->day, $dayOfMonth));
|
||||
// day has passed already, add a month.
|
||||
$mutator->addMonth();
|
||||
Log::debug(sprintf('%s', $mutator->format('Y-m-d')));
|
||||
}
|
||||
|
||||
while ($total < $count) {
|
||||
@@ -98,7 +101,8 @@ trait CalculateXOccurrencesSince
|
||||
$total++;
|
||||
}
|
||||
$attempts++;
|
||||
$mutator->endOfMonth()->addDay();
|
||||
$mutator = $mutator->endOfMonth()->addDay();
|
||||
Log::debug(sprintf('Mutator is now %s', $mutator->format('Y-m-d')));
|
||||
}
|
||||
|
||||
return $return;
|
||||
@@ -213,7 +217,9 @@ trait CalculateXOccurrencesSince
|
||||
$date = new Carbon($moment);
|
||||
$date->year = $mutator->year;
|
||||
if ($mutator > $date) {
|
||||
Log::debug(sprintf('mutator (%s) > date (%s), so add a year to date (%s)', $mutator->format('Y-m-d'), $date->format('Y-m-d'), $date->format('Y-m-d'),));
|
||||
Log::debug(
|
||||
sprintf('mutator (%s) > date (%s), so add a year to date (%s)', $mutator->format('Y-m-d'), $date->format('Y-m-d'), $date->format('Y-m-d'),)
|
||||
);
|
||||
$date->addYear();
|
||||
Log::debug(sprintf('Date is now %s', $date->format('Y-m-d')));
|
||||
}
|
||||
|
||||
32
changelog.md
32
changelog.md
@@ -7,13 +7,25 @@ This project adheres to [Semantic Versioning](http://semver.org/).
|
||||
## 5.5.0 (API 1.5.0) 2021-xx-xx
|
||||
|
||||
### Added
|
||||
- [Webhooks](https://docs.firefly-iii.org/firefly-iii/pages-and-features/webhooks/)
|
||||
- [Issue 3717](https://github.com/firefly-iii/firefly-iii/issues/3717) Allow exporting in the CSV all the optional metadata
|
||||
- Can search for transactions using `id:123`.
|
||||
- [Issue 3717](https://github.com/firefly-iii/firefly-iii/issues/3717) Also export all optional metadata in the CSV files.
|
||||
- [Issue 4007](https://github.com/firefly-iii/firefly-iii/issues/4007) Whe updating transactions using a rule, the message will return the number of changed transactions.
|
||||
- [Issue 4334](https://github.com/firefly-iii/firefly-iii/issues/4334) Added the Portuguese language.
|
||||
- [Issue 4338](https://github.com/firefly-iii/firefly-iii/issues/4338) The recurring transactions calendar was off by one day.
|
||||
- [Issue 4339](https://github.com/firefly-iii/firefly-iii/issues/4339) When deleting recurring transactions you would be redirected to the deleted recurring transaction.
|
||||
- [Issue 4340](https://github.com/firefly-iii/firefly-iii/issues/4340) When running rules, any date related actions and triggers will pick up the correct date.
|
||||
- [Issue 4406](https://github.com/firefly-iii/firefly-iii/issues/4406) SQL errors when submitting large amounts to the budget overview.
|
||||
- [Issue 4412](https://github.com/firefly-iii/firefly-iii/issues/4412) During the cron job a NULL pointer could pop up.
|
||||
- [Issue 4488](https://github.com/firefly-iii/firefly-iii/issues/4488) The Japanese Yen was corrected to zero decimals.
|
||||
- [Issue 4503](https://github.com/firefly-iii/firefly-iii/issues/4503) When bills skip a moment the amounts would be off.
|
||||
- Firefly III now supports [webhooks](https://docs.firefly-iii.org/firefly-iii/pages-and-features/webhooks/).
|
||||
- The search now also supports searching for transactions using `id:123`.
|
||||
|
||||
### Changed
|
||||
- OAuth is visible for LDAP users.
|
||||
- If you set `FIREFLY_III_LAYOUT=v2`, Firefly III will show you the new layout on pages where it's available.
|
||||
- OAuth settings are visible for LDAP users.
|
||||
- If you set `FIREFLY_III_LAYOUT=v2`, Firefly III will show you the new layout on pages where it's available.
|
||||
|
||||
### Deprecated
|
||||
- The current layout will no longer receive fixes and changes.
|
||||
|
||||
### Fixed
|
||||
- [Issue 4045](https://github.com/firefly-iii/firefly-iii/issues/4045) Error message for "Amount Missing" doesn't have a look up value
|
||||
@@ -38,15 +50,17 @@ This project adheres to [Semantic Versioning](http://semver.org/).
|
||||
- PHP configs that have "MB" as size indicator would be parsed badly.
|
||||
|
||||
### API
|
||||
|
||||
*Lots of API changes, make sure you read [the documentation](https://api-docs.firefly-iii.org/).*
|
||||
|
||||
- [Issue 4050](https://github.com/firefly-iii/firefly-iii/issues/4050) Updated Transaction Search API to set limit from user preferences
|
||||
- [Issue 4113](https://github.com/firefly-iii/firefly-iii/issues/4113) Piggy Bank API Deletes Some Piggy Metadata
|
||||
- [Issue 4122](https://github.com/firefly-iii/firefly-iii/issues/4122) Remove reconciliation accounts from autocomplete
|
||||
- [Issue 4195](https://github.com/firefly-iii/firefly-iii/issues/4195) User endpoint broken
|
||||
- [Issue 4199](https://github.com/firefly-iii/firefly-iii/issues/4199) Unable to update tags using API
|
||||
- API endpoint for budget limits applicable to a date range now has budget info.
|
||||
- Add period and auto generated to budget limit
|
||||
- Add spent to budget limit.
|
||||
|
||||
- [Issue 4394](https://github.com/firefly-iii/firefly-iii/issues/4394) Storing budgets works again.
|
||||
- [Issue 4426](https://github.com/firefly-iii/firefly-iii/issues/4426) Storing accounts would lead to bad capitalization in liability type.
|
||||
- [Issue 4435](https://github.com/firefly-iii/firefly-iii/issues/4435) Storing piggy banks with object group information would fail.
|
||||
|
||||
## 5.4.6 (API 1.4.0) - 2020-10-07
|
||||
|
||||
|
||||
77
composer.lock
generated
77
composer.lock
generated
@@ -4,7 +4,7 @@
|
||||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
||||
"This file is @generated automatically"
|
||||
],
|
||||
"content-hash": "7294670d4c743796b6929563ab61451d",
|
||||
"content-hash": "897bc804b3a43ff012021d9a363d9e53",
|
||||
"packages": [
|
||||
{
|
||||
"name": "bacon/bacon-qr-code",
|
||||
@@ -3267,16 +3267,16 @@
|
||||
},
|
||||
{
|
||||
"name": "phpseclib/phpseclib",
|
||||
"version": "3.0.5",
|
||||
"version": "3.0.6",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/phpseclib/phpseclib.git",
|
||||
"reference": "7c751ea006577e4c2e83326d90c8b1e8c11b8ede"
|
||||
"reference": "906a5fafabe5e6ba51ef3dc65b2722a677908837"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/phpseclib/phpseclib/zipball/7c751ea006577e4c2e83326d90c8b1e8c11b8ede",
|
||||
"reference": "7c751ea006577e4c2e83326d90c8b1e8c11b8ede",
|
||||
"url": "https://api.github.com/repos/phpseclib/phpseclib/zipball/906a5fafabe5e6ba51ef3dc65b2722a677908837",
|
||||
"reference": "906a5fafabe5e6ba51ef3dc65b2722a677908837",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -3358,7 +3358,7 @@
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/phpseclib/phpseclib/issues",
|
||||
"source": "https://github.com/phpseclib/phpseclib/tree/3.0.5"
|
||||
"source": "https://github.com/phpseclib/phpseclib/tree/3.0.6"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -3374,7 +3374,7 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2021-02-12T16:18:16+00:00"
|
||||
"time": "2021-03-10T13:58:31+00:00"
|
||||
},
|
||||
{
|
||||
"name": "pragmarx/google2fa",
|
||||
@@ -8253,58 +8253,6 @@
|
||||
},
|
||||
"time": "2020-07-09T08:09:16+00:00"
|
||||
},
|
||||
{
|
||||
"name": "johnkary/phpunit-speedtrap",
|
||||
"version": "v3.3.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/johnkary/phpunit-speedtrap.git",
|
||||
"reference": "9ba81d42676da31366c85d3ff8c10a8352d02030"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/johnkary/phpunit-speedtrap/zipball/9ba81d42676da31366c85d3ff8c10a8352d02030",
|
||||
"reference": "9ba81d42676da31366c85d3ff8c10a8352d02030",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=7.1",
|
||||
"phpunit/phpunit": "^7.0 || ^8.0 || ^9.0"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "4.0-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"JohnKary\\PHPUnit\\Listener\\": "src/"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "John Kary",
|
||||
"email": "john@johnkary.net"
|
||||
}
|
||||
],
|
||||
"description": "Find and report on slow tests in your PHPUnit test suite",
|
||||
"homepage": "https://github.com/johnkary/phpunit-speedtrap",
|
||||
"keywords": [
|
||||
"phpunit",
|
||||
"profile",
|
||||
"slow"
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/johnkary/phpunit-speedtrap/issues",
|
||||
"source": "https://github.com/johnkary/phpunit-speedtrap/tree/v3.3.0"
|
||||
},
|
||||
"time": "2020-12-18T16:20:16+00:00"
|
||||
},
|
||||
{
|
||||
"name": "justinrainbow/json-schema",
|
||||
"version": "5.2.10",
|
||||
@@ -9751,12 +9699,12 @@
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/Roave/SecurityAdvisories.git",
|
||||
"reference": "672ed7cb0191a12cf8b12b752c9ef74bb5d21cec"
|
||||
"reference": "43a315341710475e88006a0e55864b348d3d781c"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/Roave/SecurityAdvisories/zipball/672ed7cb0191a12cf8b12b752c9ef74bb5d21cec",
|
||||
"reference": "672ed7cb0191a12cf8b12b752c9ef74bb5d21cec",
|
||||
"url": "https://api.github.com/repos/Roave/SecurityAdvisories/zipball/43a315341710475e88006a0e55864b348d3d781c",
|
||||
"reference": "43a315341710475e88006a0e55864b348d3d781c",
|
||||
"shasum": ""
|
||||
},
|
||||
"conflict": {
|
||||
@@ -9846,6 +9794,7 @@
|
||||
"illuminate/database": "<6.20.14|>=7,<7.30.4|>=8,<8.24",
|
||||
"illuminate/encryption": ">=4,<=4.0.11|>=4.1,<=4.1.31|>=4.2,<=4.2.22|>=5,<=5.0.35|>=5.1,<=5.1.46|>=5.2,<=5.2.45|>=5.3,<=5.3.31|>=5.4,<=5.4.36|>=5.5,<5.5.40|>=5.6,<5.6.15",
|
||||
"illuminate/view": ">=7,<7.1.2",
|
||||
"impresscms/impresscms": "<=1.4.2",
|
||||
"ivankristianto/phpwhois": "<=4.3",
|
||||
"james-heinrich/getid3": "<1.9.9",
|
||||
"joomla/archive": "<1.1.10",
|
||||
@@ -9921,7 +9870,7 @@
|
||||
"sensiolabs/connect": "<4.2.3",
|
||||
"serluck/phpwhois": "<=4.2.6",
|
||||
"shopware/core": "<=6.3.4",
|
||||
"shopware/platform": "<=6.3.5",
|
||||
"shopware/platform": "<=6.3.5.1",
|
||||
"shopware/shopware": "<5.6.9",
|
||||
"silverstripe/admin": ">=1.0.3,<1.0.4|>=1.1,<1.1.1",
|
||||
"silverstripe/assets": ">=1,<1.4.7|>=1.5,<1.5.2",
|
||||
@@ -10073,7 +10022,7 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2021-03-11T18:09:51+00:00"
|
||||
"time": "2021-03-13T00:05:05+00:00"
|
||||
},
|
||||
{
|
||||
"name": "sebastian/cli-parser",
|
||||
|
||||
@@ -99,9 +99,9 @@ return [
|
||||
'webhooks' => false,
|
||||
],
|
||||
|
||||
'version' => '5.5.0-beta.1',
|
||||
'version' => '5.5.0-beta.2',
|
||||
'api_version' => '1.5.0',
|
||||
'db_version' => 15,
|
||||
'db_version' => 16,
|
||||
'maxUploadSize' => 1073741824, // 1 GB
|
||||
'send_error_message' => env('SEND_ERROR_MESSAGE', true),
|
||||
'site_owner' => env('SITE_OWNER', ''),
|
||||
|
||||
2
public/v1/js/app.js
vendored
2
public/v1/js/app.js
vendored
File diff suppressed because one or more lines are too long
@@ -5,26 +5,26 @@
|
||||
*/
|
||||
|
||||
/*!
|
||||
* Sizzle CSS Selector Engine v2.3.5
|
||||
* Sizzle CSS Selector Engine v2.3.6
|
||||
* https://sizzlejs.com/
|
||||
*
|
||||
* Copyright JS Foundation and other contributors
|
||||
* Released under the MIT license
|
||||
* https://js.foundation/
|
||||
*
|
||||
* Date: 2020-03-14
|
||||
* Date: 2021-02-16
|
||||
*/
|
||||
|
||||
/*!
|
||||
* jQuery JavaScript Library v3.5.1
|
||||
* jQuery JavaScript Library v3.6.0
|
||||
* https://jquery.com/
|
||||
*
|
||||
* Includes Sizzle.js
|
||||
* https://sizzlejs.com/
|
||||
*
|
||||
* Copyright JS Foundation and other contributors
|
||||
* Copyright OpenJS Foundation and other contributors
|
||||
* Released under the MIT license
|
||||
* https://jquery.org/license
|
||||
*
|
||||
* Date: 2020-05-04T22:49Z
|
||||
* Date: 2021-03-02T17:08Z
|
||||
*/
|
||||
|
||||
2
public/v1/js/app_vue.js
vendored
2
public/v1/js/app_vue.js
vendored
File diff suppressed because one or more lines are too long
2
public/v1/js/create_transaction.js
vendored
2
public/v1/js/create_transaction.js
vendored
File diff suppressed because one or more lines are too long
2
public/v1/js/edit_transaction.js
vendored
2
public/v1/js/edit_transaction.js
vendored
File diff suppressed because one or more lines are too long
2
public/v1/js/profile.js
vendored
2
public/v1/js/profile.js
vendored
File diff suppressed because one or more lines are too long
2
public/v2/js/vendor.js
vendored
2
public/v2/js/vendor.js
vendored
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -30,7 +30,7 @@
|
||||
"category": "\u041a\u0430\u0442\u0435\u0433\u043e\u0440\u0438\u044f",
|
||||
"attachments": "\u041f\u0440\u0438\u043a\u0430\u0447\u0435\u043d\u0438 \u0444\u0430\u0439\u043b\u043e\u0432\u0435",
|
||||
"notes": "\u0411\u0435\u043b\u0435\u0436\u043a\u0438",
|
||||
"external_uri": "\u0412\u044a\u043d\u0448\u043d\u043e URI",
|
||||
"external_uri": "External URL",
|
||||
"update_transaction": "\u041e\u0431\u043d\u043e\u0432\u0438 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u044f\u0442\u0430",
|
||||
"after_update_create_another": "\u0421\u043b\u0435\u0434 \u043e\u0431\u043d\u043e\u0432\u044f\u0432\u0430\u043d\u0435\u0442\u043e \u0441\u0435 \u0432\u044a\u0440\u043d\u0435\u0442\u0435 \u0442\u0443\u043a, \u0437\u0430 \u0434\u0430 \u043f\u0440\u043e\u0434\u044a\u043b\u0436\u0438\u0442\u0435 \u0441 \u0440\u0435\u0434\u0430\u043a\u0446\u0438\u044f\u0442\u0430.",
|
||||
"store_as_new": "\u0421\u044a\u0445\u0440\u0430\u043d\u0435\u0442\u0435 \u043a\u0430\u0442\u043e \u043d\u043e\u0432\u0430 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u044f, \u0432\u043c\u0435\u0441\u0442\u043e \u0434\u0430 \u044f \u0430\u043a\u0442\u0443\u0430\u043b\u0438\u0437\u0438\u0440\u0430\u0442\u0435.",
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
"category": "Kategorie",
|
||||
"attachments": "P\u0159\u00edlohy",
|
||||
"notes": "Pozn\u00e1mky",
|
||||
"external_uri": "External URI",
|
||||
"external_uri": "External URL",
|
||||
"update_transaction": "Update transaction",
|
||||
"after_update_create_another": "After updating, return here to continue editing.",
|
||||
"store_as_new": "Store as a new transaction instead of updating.",
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
"category": "Kategorie",
|
||||
"attachments": "Anh\u00e4nge",
|
||||
"notes": "Notizen",
|
||||
"external_uri": "Externe URI",
|
||||
"external_uri": "Externe URL",
|
||||
"update_transaction": "Buchung aktualisieren",
|
||||
"after_update_create_another": "Nach dem Aktualisieren hierher zur\u00fcckkehren, um weiter zu bearbeiten.",
|
||||
"store_as_new": "Als neue Buchung speichern statt zu aktualisieren.",
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
"category": "\u039a\u03b1\u03c4\u03b7\u03b3\u03bf\u03c1\u03af\u03b1",
|
||||
"attachments": "\u03a3\u03c5\u03bd\u03b7\u03bc\u03bc\u03ad\u03bd\u03b1",
|
||||
"notes": "\u03a3\u03b7\u03bc\u03b5\u03b9\u03ce\u03c3\u03b5\u03b9\u03c2",
|
||||
"external_uri": "\u0395\u03be\u03c9\u03c4\u03b5\u03c1\u03b9\u03ba\u03cc URI",
|
||||
"external_uri": "External URL",
|
||||
"update_transaction": "\u0395\u03bd\u03b7\u03bc\u03ad\u03c1\u03c9\u03c3\u03b7 \u03c3\u03c5\u03bd\u03b1\u03bb\u03bb\u03b1\u03b3\u03ae\u03c2",
|
||||
"after_update_create_another": "\u039c\u03b5\u03c4\u03ac \u03c4\u03b7\u03bd \u03b5\u03bd\u03b7\u03bc\u03ad\u03c1\u03c9\u03c3\u03b7, \u03b5\u03c0\u03b9\u03c3\u03c4\u03c1\u03ad\u03c8\u03c4\u03b5 \u03b5\u03b4\u03ce \u03b3\u03b9\u03b1 \u03bd\u03b1 \u03c3\u03c5\u03bd\u03b5\u03c7\u03af\u03c3\u03b5\u03c4\u03b5 \u03c4\u03b7\u03bd \u03b5\u03c0\u03b5\u03be\u03b5\u03c1\u03b3\u03b1\u03c3\u03af\u03b1.",
|
||||
"store_as_new": "\u0391\u03c0\u03bf\u03b8\u03ae\u03ba\u03b5\u03c5\u03c3\u03b7 \u03c9\u03c2 \u03bd\u03ad\u03b1 \u03c3\u03c5\u03bd\u03b1\u03bb\u03bb\u03b1\u03b3\u03ae \u03b1\u03bd\u03c4\u03af \u03b3\u03b9\u03b1 \u03b5\u03bd\u03b7\u03bc\u03ad\u03c1\u03c9\u03c3\u03b7.",
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
"category": "Category",
|
||||
"attachments": "Attachments",
|
||||
"notes": "Notes",
|
||||
"external_uri": "External URI",
|
||||
"external_uri": "External URL",
|
||||
"update_transaction": "Update transaction",
|
||||
"after_update_create_another": "After updating, return here to continue editing.",
|
||||
"store_as_new": "Store as a new transaction instead of updating.",
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
"category": "Category",
|
||||
"attachments": "Attachments",
|
||||
"notes": "Notes",
|
||||
"external_uri": "External URI",
|
||||
"external_uri": "External URL",
|
||||
"update_transaction": "Update transaction",
|
||||
"after_update_create_another": "After updating, return here to continue editing.",
|
||||
"store_as_new": "Store as a new transaction instead of updating.",
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
"category": "Categoria",
|
||||
"attachments": "Archivos adjuntos",
|
||||
"notes": "Notas",
|
||||
"external_uri": "URI externa",
|
||||
"external_uri": "External URL",
|
||||
"update_transaction": "Actualizar transacci\u00f3n",
|
||||
"after_update_create_another": "Despu\u00e9s de actualizar, vuelve aqu\u00ed para continuar editando.",
|
||||
"store_as_new": "Almacenar como una nueva transacci\u00f3n en lugar de actualizar.",
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
"category": "Kategoria",
|
||||
"attachments": "Liitteet",
|
||||
"notes": "Muistiinpanot",
|
||||
"external_uri": "External URI",
|
||||
"external_uri": "External URL",
|
||||
"update_transaction": "P\u00e4ivit\u00e4 tapahtuma",
|
||||
"after_update_create_another": "P\u00e4ivityksen j\u00e4lkeen, palaa takaisin jatkamaan muokkausta.",
|
||||
"store_as_new": "Tallenna uutena tapahtumana p\u00e4ivityksen sijaan.",
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
"category": "Cat\u00e9gorie",
|
||||
"attachments": "Pi\u00e8ces jointes",
|
||||
"notes": "Notes",
|
||||
"external_uri": "URI externe",
|
||||
"external_uri": "URL externe",
|
||||
"update_transaction": "Mettre \u00e0 jour l'op\u00e9ration",
|
||||
"after_update_create_another": "Apr\u00e8s la mise \u00e0 jour, revenir ici pour continuer l'\u00e9dition.",
|
||||
"store_as_new": "Enregistrer comme une nouvelle op\u00e9ration au lieu de mettre \u00e0 jour.",
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
"category": "Kateg\u00f3ria",
|
||||
"attachments": "Mell\u00e9kletek",
|
||||
"notes": "Megjegyz\u00e9sek",
|
||||
"external_uri": "K\u00fcls\u0151 hivatkoz\u00e1s",
|
||||
"external_uri": "External URL",
|
||||
"update_transaction": "Tranzakci\u00f3 friss\u00edt\u00e9se",
|
||||
"after_update_create_another": "A friss\u00edt\u00e9s ut\u00e1n t\u00e9rjen vissza ide a szerkeszt\u00e9s folytat\u00e1s\u00e1hoz.",
|
||||
"store_as_new": "T\u00e1rol\u00e1s \u00faj tranzakci\u00f3k\u00e9nt friss\u00edt\u00e9s helyett.",
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
"category": "Categoria",
|
||||
"attachments": "Allegati",
|
||||
"notes": "Note",
|
||||
"external_uri": "URI esterno",
|
||||
"external_uri": "URL esterno",
|
||||
"update_transaction": "Aggiorna transazione",
|
||||
"after_update_create_another": "Dopo l'aggiornamento, torna qui per continuare la modifica.",
|
||||
"store_as_new": "Salva come nuova transazione invece di aggiornarla.",
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
"category": "Kategori",
|
||||
"attachments": "Vedlegg",
|
||||
"notes": "Notater",
|
||||
"external_uri": "External URI",
|
||||
"external_uri": "External URL",
|
||||
"update_transaction": "Update transaction",
|
||||
"after_update_create_another": "After updating, return here to continue editing.",
|
||||
"store_as_new": "Store as a new transaction instead of updating.",
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
"category": "Categorie",
|
||||
"attachments": "Bijlagen",
|
||||
"notes": "Notities",
|
||||
"external_uri": "Externe URI",
|
||||
"external_uri": "Externe URL",
|
||||
"update_transaction": "Update transactie",
|
||||
"after_update_create_another": "Na het opslaan terug om door te gaan met wijzigen.",
|
||||
"store_as_new": "Opslaan als nieuwe transactie ipv de huidige bij te werken.",
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
"category": "Kategoria",
|
||||
"attachments": "Za\u0142\u0105czniki",
|
||||
"notes": "Notatki",
|
||||
"external_uri": "Zewn\u0119trzne URI",
|
||||
"external_uri": "Zewn\u0119trzny adres URL",
|
||||
"update_transaction": "Zaktualizuj transakcj\u0119",
|
||||
"after_update_create_another": "Po aktualizacji wr\u00f3\u0107 tutaj, aby kontynuowa\u0107 edycj\u0119.",
|
||||
"store_as_new": "Zapisz jako now\u0105 zamiast aktualizowa\u0107.",
|
||||
|
||||
@@ -12,10 +12,10 @@
|
||||
"transaction_updated_link": "<a href=\"transactions\/show\/{ID}\">Transa\u00e7\u00e3o #{ID}<\/a> foi atualizada.",
|
||||
"transaction_new_stored_link": "<a href=\"transactions\/show\/{ID}\">Transa\u00e7\u00e3o #{ID}<\/a> foi salva.",
|
||||
"transaction_journal_information": "Informa\u00e7\u00e3o da transa\u00e7\u00e3o",
|
||||
"no_budget_pointer": "You seem to have no budgets yet. You should create some on the <a href=\"budgets\">budgets<\/a>-page. Budgets can help you keep track of expenses.",
|
||||
"no_bill_pointer": "You seem to have no bills yet. You should create some on the <a href=\"bills\">bills<\/a>-page. Bills can help you keep track of expenses.",
|
||||
"no_budget_pointer": "Parece que voc\u00ea ainda n\u00e3o tem or\u00e7amentos. Voc\u00ea deve criar alguns na p\u00e1gina de <a href=\"budgets\">or\u00e7amentos<\/a>. Or\u00e7amentos podem ajud\u00e1-lo a manter o controle das despesas.",
|
||||
"no_bill_pointer": "Parece que voc\u00ea ainda n\u00e3o tem contas. Voc\u00ea deve criar algumas em <a href=\"bills\">contas<\/a>. Contas podem ajudar voc\u00ea a manter o controle de despesas.",
|
||||
"source_account": "Conta origem",
|
||||
"hidden_fields_preferences": "You can enable more transaction options in your <a href=\"preferences\">preferences<\/a>.",
|
||||
"hidden_fields_preferences": "Voc\u00ea pode habilitar mais op\u00e7\u00f5es de transa\u00e7\u00e3o em suas <a href=\"preferences\">prefer\u00eancias<\/a>.",
|
||||
"destination_account": "Conta destino",
|
||||
"add_another_split": "Adicionar outra divis\u00e3o",
|
||||
"submission": "Envio",
|
||||
@@ -26,14 +26,14 @@
|
||||
"date": "Data",
|
||||
"tags": "Tags",
|
||||
"no_budget": "(sem or\u00e7amento)",
|
||||
"no_bill": "(sem fatura)",
|
||||
"no_bill": "(sem conta)",
|
||||
"category": "Categoria",
|
||||
"attachments": "Anexos",
|
||||
"notes": "Notas",
|
||||
"external_uri": "URI externo",
|
||||
"external_uri": "URL externa",
|
||||
"update_transaction": "Atualizar transa\u00e7\u00e3o",
|
||||
"after_update_create_another": "Depois de atualizar, retorne aqui para continuar editando.",
|
||||
"store_as_new": "Store as a new transaction instead of updating.",
|
||||
"store_as_new": "Armazene como uma nova transa\u00e7\u00e3o em vez de atualizar.",
|
||||
"split_title_help": "Se voc\u00ea criar uma transa\u00e7\u00e3o dividida, \u00e9 necess\u00e1rio haver uma descri\u00e7\u00e3o global para todas as partes da transa\u00e7\u00e3o.",
|
||||
"none_in_select_list": "(nenhum)",
|
||||
"no_piggy_bank": "(nenhum cofrinho)",
|
||||
@@ -43,9 +43,9 @@
|
||||
"source_account_reconciliation": "Voc\u00ea n\u00e3o pode editar a conta de origem de uma transa\u00e7\u00e3o de reconcilia\u00e7\u00e3o.",
|
||||
"budget": "Or\u00e7amento",
|
||||
"bill": "Fatura",
|
||||
"you_create_withdrawal": "Voc\u00ea est\u00e1 criando uma retirada.",
|
||||
"you_create_withdrawal": "Voc\u00ea est\u00e1 criando uma sa\u00edda.",
|
||||
"you_create_transfer": "Voc\u00ea est\u00e1 criando uma transfer\u00eancia.",
|
||||
"you_create_deposit": "Voc\u00ea est\u00e1 criando um deposito.",
|
||||
"you_create_deposit": "Voc\u00ea est\u00e1 criando uma entrada.",
|
||||
"edit": "Editar",
|
||||
"delete": "Apagar",
|
||||
"name": "Nome",
|
||||
@@ -83,8 +83,8 @@
|
||||
"profile_oauth_confidential": "Confidencial",
|
||||
"profile_oauth_confidential_help": "Exige que o cliente se autentique com um segredo. Clientes confidenciais podem manter credenciais de forma segura sem exp\u00f4-las \u00e0 partes n\u00e3o autorizadas. Aplica\u00e7\u00f5es p\u00fablicas, como aplica\u00e7\u00f5es de \u00e1rea de trabalho nativas ou JavaScript SPA, s\u00e3o incapazes de manter segredos com seguran\u00e7a.",
|
||||
"multi_account_warning_unknown": "Dependendo do tipo de transa\u00e7\u00e3o que voc\u00ea criar, a conta de origem e\/ou de destino das divis\u00f5es subsequentes pode ser sobrescrita pelo que estiver definido na primeira divis\u00e3o da transa\u00e7\u00e3o.",
|
||||
"multi_account_warning_withdrawal": "Tenha em mente que a conta de origem das subsequentes divis\u00f5es ser\u00e1 sobrescrita pelo que estiver definido na primeira divis\u00e3o da retirada.",
|
||||
"multi_account_warning_deposit": "Tenha em mente que a conta de destino das divis\u00f5es subsequentes ser\u00e1 sobrescrita pelo que estiver definido na primeira divis\u00e3o do dep\u00f3sito.",
|
||||
"multi_account_warning_withdrawal": "Tenha em mente que a conta de origem das subsequentes divis\u00f5es ser\u00e1 sobrescrita pelo que estiver definido na primeira divis\u00e3o da sa\u00edda.",
|
||||
"multi_account_warning_deposit": "Tenha em mente que a conta de destino das divis\u00f5es subsequentes ser\u00e1 sobrescrita pelo que estiver definido na primeira divis\u00e3o da entrada.",
|
||||
"multi_account_warning_transfer": "Tenha em mente que a conta de origem + de destino das divis\u00f5es subsequentes ser\u00e1 sobrescrita pelo que for definido na primeira divis\u00e3o da transfer\u00eancia."
|
||||
},
|
||||
"form": {
|
||||
|
||||
103
resources/assets/js/locales/pt.json
Normal file
103
resources/assets/js/locales/pt.json
Normal file
@@ -0,0 +1,103 @@
|
||||
{
|
||||
"firefly": {
|
||||
"welcome_back": "Tudo bem?",
|
||||
"flash_error": "Erro!",
|
||||
"flash_success": "Sucesso!",
|
||||
"close": "Fechar",
|
||||
"split_transaction_title": "Descri\u00e7\u00e3o da transac\u00e7\u00e3o dividida",
|
||||
"errors_submission": "Aconteceu algo errado com a sua submiss\u00e3o. Por favor, verifique os erros.",
|
||||
"split": "Dividir",
|
||||
"single_split": "Dividir",
|
||||
"transaction_stored_link": "<a href=\"transactions\/show\/{ID}\">Transa\u00e7\u00e3o #{ID} (\"{title}\")<\/a> foi guardada.",
|
||||
"transaction_updated_link": "<a href=\"transactions\/show\/{ID}\">Transa\u00e7\u00e3o#{ID}<\/a> foi atualizada.",
|
||||
"transaction_new_stored_link": "<a href=\"transactions\/show\/{ID}\">Transa\u00e7\u00e3o#{ID}<\/a> foi guardada.",
|
||||
"transaction_journal_information": "Informacao da transaccao",
|
||||
"no_budget_pointer": "Parece que ainda n\u00e3o tem or\u00e7amentos. Pode criar-los na p\u00e1gina de <a href=\"budgets\">or\u00e7amentos<\/a>. Or\u00e7amentos podem ajud\u00e1-lo a controlar as despesas.",
|
||||
"no_bill_pointer": "Parece que ainda n\u00e3o tem contas. Pode criar-las na p\u00e1gina de <a href=\"bills\">contas<\/a>. Contas podem ajud\u00e1-lo a controlar as despesas.",
|
||||
"source_account": "Conta de origem",
|
||||
"hidden_fields_preferences": "Pode ativar mais op\u00e7\u00f5es de transa\u00e7\u00f5es nas suas <a href=\"preferences\">prefer\u00eancias<\/a>.",
|
||||
"destination_account": "Conta de destino",
|
||||
"add_another_split": "Adicionar outra divis\u00e3o",
|
||||
"submission": "Submiss\u00e3o",
|
||||
"create_another": "Depois de guardar, voltar aqui para criar outra.",
|
||||
"reset_after": "Repor o formul\u00e1rio ap\u00f3s o envio",
|
||||
"submit": "Enviar",
|
||||
"amount": "Montante",
|
||||
"date": "Data",
|
||||
"tags": "Tags",
|
||||
"no_budget": "(sem orcamento)",
|
||||
"no_bill": "(sem contas)",
|
||||
"category": "Categoria",
|
||||
"attachments": "Anexos",
|
||||
"notes": "Notas",
|
||||
"external_uri": "URL Externo",
|
||||
"update_transaction": "Actualizar transac\u00e7\u00e3o",
|
||||
"after_update_create_another": "Ap\u00f3s a atualiza\u00e7\u00e3o, regresse aqui para continuar a editar.",
|
||||
"store_as_new": "Guarde como uma nova transa\u00e7\u00e3o em vez de atualizar.",
|
||||
"split_title_help": "Se criar uma transac\u00e7\u00e3o dividida, deve haver uma descri\u00e7\u00e3o global para todas as partes da transac\u00e7\u00e3o.",
|
||||
"none_in_select_list": "(nenhum)",
|
||||
"no_piggy_bank": "(nenhum mealheiro)",
|
||||
"description": "Descricao",
|
||||
"split_transaction_title_help": "Se criar uma transac\u00e7\u00e3o dividida, deve haver uma descri\u00e7\u00e3o global para todas as partes da transac\u00e7\u00e3o.",
|
||||
"destination_account_reconciliation": "N\u00e3o pode editar a conta de destino de uma transac\u00e7\u00e3o de reconcilia\u00e7\u00e3o.",
|
||||
"source_account_reconciliation": "N\u00e3o pode editar a conta de origem de uma transac\u00e7\u00e3o de reconcilia\u00e7\u00e3o.",
|
||||
"budget": "Orcamento",
|
||||
"bill": "Conta",
|
||||
"you_create_withdrawal": "Est\u00e1 a criar um levantamento.",
|
||||
"you_create_transfer": "Est\u00e1 a criar uma transfer\u00eancia.",
|
||||
"you_create_deposit": "Est\u00e1 a criar um deposito.",
|
||||
"edit": "Alterar",
|
||||
"delete": "Apagar",
|
||||
"name": "Nome",
|
||||
"profile_whoops": "Oops!",
|
||||
"profile_something_wrong": "Algo correu mal!",
|
||||
"profile_try_again": "Algo correu mal. Por favor, tente novamente.",
|
||||
"profile_oauth_clients": "Clientes OAuth",
|
||||
"profile_oauth_no_clients": "N\u00e3o criou nenhum cliente OAuth.",
|
||||
"profile_oauth_clients_header": "Clientes",
|
||||
"profile_oauth_client_id": "ID do Cliente",
|
||||
"profile_oauth_client_name": "Nome",
|
||||
"profile_oauth_client_secret": "C\u00f3digo secreto",
|
||||
"profile_oauth_create_new_client": "Criar Novo Cliente",
|
||||
"profile_oauth_create_client": "Criar Cliente",
|
||||
"profile_oauth_edit_client": "Editar Cliente",
|
||||
"profile_oauth_name_help": "Algo que os utilizadores reconhe\u00e7am e confiem.",
|
||||
"profile_oauth_redirect_url": "URL de redireccionamento",
|
||||
"profile_oauth_redirect_url_help": "URL de callback de autoriza\u00e7\u00e3o da aplica\u00e7\u00e3o.",
|
||||
"profile_authorized_apps": "Aplica\u00e7\u00f5es autorizados",
|
||||
"profile_authorized_clients": "Clientes autorizados",
|
||||
"profile_scopes": "Contextos",
|
||||
"profile_revoke": "Revogar",
|
||||
"profile_personal_access_tokens": "Tokens de acesso pessoal",
|
||||
"profile_personal_access_token": "Token de acesso pessoal",
|
||||
"profile_personal_access_token_explanation": "Aqui est\u00e1 o seu novo token de acesso pessoal. Esta \u00e9 a \u00fanica v\u00eas que o mesmo ser\u00e1 mostrado portanto n\u00e3o o perca! Pode utiliza-lo para fazer pedidos de API.",
|
||||
"profile_no_personal_access_token": "Voc\u00ea ainda n\u00e3o criou tokens de acesso pessoal.",
|
||||
"profile_create_new_token": "Criar novo token",
|
||||
"profile_create_token": "Criar token",
|
||||
"profile_create": "Criar",
|
||||
"profile_save_changes": "Guardar altera\u00e7\u00f5es",
|
||||
"default_group_title_name": "(n\u00e3o agrupado)",
|
||||
"piggy_bank": "Mealheiro",
|
||||
"profile_oauth_client_secret_title": "Segredo do cliente",
|
||||
"profile_oauth_client_secret_expl": "Aqui est\u00e1 o seu segredo de cliente. Apenas estar\u00e1 vis\u00edvel uma vez portanto n\u00e3o o perca! Pode agora utilizar este segredo para fazer pedidos \u00e0 API.",
|
||||
"profile_oauth_confidential": "Confidencial",
|
||||
"profile_oauth_confidential_help": "Exigir que o cliente se autentique com um segredo. Clientes confidenciais podem manter credenciais de forma segura sem expor as mesmas a terceiros n\u00e3o autorizadas. Aplica\u00e7\u00f5es p\u00fablicas, como por exemplo aplica\u00e7\u00f5es nativas de sistema operativo ou SPA JavaScript, s\u00e3o incapazes de garantir a seguran\u00e7a dos segredos.",
|
||||
"multi_account_warning_unknown": "Dependendo do tipo de transi\u00e7\u00e3o que quer criar, a conta de origem e\/ou a destino de subsequentes divis\u00f5es pode ser sub-escrita por quaisquer regra definida na primeira divis\u00e3o da transa\u00e7\u00e3o.",
|
||||
"multi_account_warning_withdrawal": "Mantenha em mente que a conta de origem de divis\u00f5es subsequentes ser\u00e1 sobre-escrita por quaisquer regra definida na primeira divis\u00e3o do levantamento.",
|
||||
"multi_account_warning_deposit": "Mantenha em mente que a conta de destino de divis\u00f5es subsequentes ser\u00e1 sobre-escrita por quaisquer regra definida na primeira divis\u00e3o do dep\u00f3sito.",
|
||||
"multi_account_warning_transfer": "Mantenha em mente que a conta de origem + destino de divis\u00f5es subsequentes ser\u00e3o sobre-escritas por quaisquer regras definidas na divis\u00e3o da transfer\u00eancia."
|
||||
},
|
||||
"form": {
|
||||
"interest_date": "Data de juros",
|
||||
"book_date": "Data de registo",
|
||||
"process_date": "Data de processamento",
|
||||
"due_date": "Data de vencimento",
|
||||
"foreign_amount": "Montante estrangeiro",
|
||||
"payment_date": "Data de pagamento",
|
||||
"invoice_date": "Data da factura",
|
||||
"internal_reference": "Referencia interna"
|
||||
},
|
||||
"config": {
|
||||
"html_language": "pt"
|
||||
}
|
||||
}
|
||||
@@ -30,7 +30,7 @@
|
||||
"category": "Categorie",
|
||||
"attachments": "Ata\u0219amente",
|
||||
"notes": "Noti\u021be",
|
||||
"external_uri": "External URI",
|
||||
"external_uri": "External URL",
|
||||
"update_transaction": "Actualiza\u021bi tranzac\u021bia",
|
||||
"after_update_create_another": "Dup\u0103 actualizare, reveni\u021bi aici pentru a continua editarea.",
|
||||
"store_as_new": "Stoca\u021bi ca o tranzac\u021bie nou\u0103 \u00een loc s\u0103 actualiza\u021bi.",
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
"flash_success": "\u0423\u0441\u043f\u0435\u0448\u043d\u043e!",
|
||||
"close": "\u0417\u0430\u043a\u0440\u044b\u0442\u044c",
|
||||
"split_transaction_title": "\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0440\u0430\u0437\u0434\u0435\u043b\u0451\u043d\u043d\u043e\u0439 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438",
|
||||
"errors_submission": "There was something wrong with your submission. Please check out the errors.",
|
||||
"errors_submission": "\u041f\u0440\u0438 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0435 \u0447\u0442\u043e-\u0442\u043e \u043f\u043e\u0448\u043b\u043e \u043d\u0435 \u0442\u0430\u043a. \u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u043f\u0440\u043e\u0432\u0435\u0440\u044c\u0442\u0435 \u043e\u0448\u0438\u0431\u043a\u0438 \u043d\u0438\u0436\u0435.",
|
||||
"split": "\u0420\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u044c",
|
||||
"single_split": "\u0420\u0430\u0437\u0434\u0435\u043b\u0451\u043d\u043d\u0430\u044f \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u044f",
|
||||
"transaction_stored_link": "<a href=\"transactions\/show\/{ID}\">\u0422\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u044f #{ID} (\"{title}\")<\/a> \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0430.",
|
||||
@@ -15,9 +15,9 @@
|
||||
"no_budget_pointer": "\u041f\u043e\u0445\u043e\u0436\u0435, \u0443 \u0432\u0430\u0441 \u043f\u043e\u043a\u0430 \u043d\u0435\u0442 \u0431\u044e\u0434\u0436\u0435\u0442\u043e\u0432. \u0412\u044b \u0434\u043e\u043b\u0436\u043d\u044b \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0438\u0445 \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435 <a href=\"budgets\">\u0411\u044e\u0434\u0436\u0435\u0442\u044b<\/a>. \u0411\u044e\u0434\u0436\u0435\u0442\u044b \u043c\u043e\u0433\u0443\u0442 \u043f\u043e\u043c\u043e\u0447\u044c \u0432\u0430\u043c \u043e\u0442\u0441\u043b\u0435\u0436\u0438\u0432\u0430\u0442\u044c \u0440\u0430\u0441\u0445\u043e\u0434\u044b.",
|
||||
"no_bill_pointer": "\u041f\u043e\u0445\u043e\u0436\u0435, \u0443 \u0432\u0430\u0441 \u043f\u043e\u043a\u0430 \u043d\u0435\u0442 \u0441\u0447\u0435\u0442\u043e\u0432 \u043d\u0430 \u043e\u043f\u043b\u0430\u0442\u0443. \u0412\u044b \u0434\u043e\u043b\u0436\u043d\u044b \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0438\u0445 \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435 <a href=\"bills\">\u0421\u0447\u0435\u0442\u0430 \u043d\u0430 \u043e\u043f\u043b\u0430\u0442\u0443<\/a>. \u0421\u0447\u0435\u0442\u0430 \u043d\u0430 \u043e\u043f\u043b\u0430\u0442\u0443 \u043c\u043e\u0433\u0443\u0442 \u043f\u043e\u043c\u043e\u0447\u044c \u0432\u0430\u043c \u043e\u0442\u0441\u043b\u0435\u0436\u0438\u0432\u0430\u0442\u044c \u0440\u0430\u0441\u0445\u043e\u0434\u044b.",
|
||||
"source_account": "\u0421\u0447\u0451\u0442-\u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a",
|
||||
"hidden_fields_preferences": "You can enable more transaction options in your <a href=\"preferences\">preferences<\/a>.",
|
||||
"hidden_fields_preferences": "\u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0431\u043e\u043b\u044c\u0448\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438 \u0432 <a href=\"preferences\">\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u0445<\/a>.",
|
||||
"destination_account": "\u0421\u0447\u0451\u0442 \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f",
|
||||
"add_another_split": "\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043d\u043e\u0432\u0443\u044e \u0447\u0430\u0441\u0442\u044c",
|
||||
"add_another_split": "\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0435\u0449\u0435 \u043e\u0434\u043d\u0443 \u0447\u0430\u0441\u0442\u044c",
|
||||
"submission": "\u041e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c",
|
||||
"create_another": "\u041f\u043e\u0441\u043b\u0435 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0432\u0435\u0440\u043d\u0443\u0442\u044c\u0441\u044f \u0441\u044e\u0434\u0430 \u0438 \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0435\u0449\u0451 \u043e\u0434\u043d\u0443 \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u0443\u044e \u0437\u0430\u043f\u0438\u0441\u044c.",
|
||||
"reset_after": "\u0421\u0431\u0440\u043e\u0441\u0438\u0442\u044c \u0444\u043e\u0440\u043c\u0443 \u043f\u043e\u0441\u043b\u0435 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438",
|
||||
@@ -30,7 +30,7 @@
|
||||
"category": "\u041a\u0430\u0442\u0435\u0433\u043e\u0440\u0438\u044f",
|
||||
"attachments": "\u0412\u043b\u043e\u0436\u0435\u043d\u0438\u044f",
|
||||
"notes": "\u0417\u0430\u043c\u0435\u0442\u043a\u0438",
|
||||
"external_uri": "\u0412\u043d\u0435\u0448\u043d\u0438\u0439 URI",
|
||||
"external_uri": "External URL",
|
||||
"update_transaction": "\u041e\u0431\u043d\u043e\u0432\u0438\u0442\u044c \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u044e",
|
||||
"after_update_create_another": "\u041f\u043e\u0441\u043b\u0435 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f \u0432\u0435\u0440\u043d\u0438\u0442\u0435\u0441\u044c \u0441\u044e\u0434\u0430, \u0447\u0442\u043e\u0431\u044b \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u044c \u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435.",
|
||||
"store_as_new": "\u0421\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c \u043a\u0430\u043a \u043d\u043e\u0432\u0443\u044e \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u044e \u0432\u043c\u0435\u0441\u0442\u043e \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f.",
|
||||
@@ -88,10 +88,10 @@
|
||||
"multi_account_warning_transfer": "\u0418\u043c\u0435\u0439\u0442\u0435 \u0432 \u0432\u0438\u0434\u0443, \u0447\u0442\u043e \u0441\u0447\u0451\u0442-\u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a \u0438 \u0441\u0447\u0451\u0442 \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0432 \u0434\u0440\u0443\u0433\u0438\u0445 \u0447\u0430\u0441\u0442\u044f\u0445 \u0440\u0430\u0437\u0434\u0435\u043b\u0451\u043d\u043d\u043e\u0439 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438 \u0431\u0443\u0434\u0443\u0442 \u0442\u0430\u043a\u0438\u043c\u0438 \u0436\u0435, \u043a\u0430\u043a \u0432 \u043f\u0435\u0440\u0432\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0430."
|
||||
},
|
||||
"form": {
|
||||
"interest_date": "\u0414\u0430\u0442\u0430 \u0432\u044b\u043f\u043b\u0430\u0442\u044b",
|
||||
"interest_date": "\u0414\u0430\u0442\u0430 \u043d\u0430\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0446\u0435\u043d\u0442\u043e\u0432",
|
||||
"book_date": "\u0414\u0430\u0442\u0430 \u0431\u0440\u043e\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f",
|
||||
"process_date": "\u0414\u0430\u0442\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438",
|
||||
"due_date": "\u0421\u0440\u043e\u043a",
|
||||
"due_date": "\u0421\u0440\u043e\u043a \u043e\u043f\u043b\u0430\u0442\u044b",
|
||||
"foreign_amount": "\u0421\u0443\u043c\u043c\u0430 \u0432 \u0438\u043d\u043e\u0441\u0442\u0440\u0430\u043d\u043d\u043e\u0439 \u0432\u0430\u043b\u044e\u0442\u0435",
|
||||
"payment_date": "\u0414\u0430\u0442\u0430 \u043f\u043b\u0430\u0442\u0435\u0436\u0430",
|
||||
"invoice_date": "\u0414\u0430\u0442\u0430 \u0432\u044b\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0441\u0447\u0451\u0442\u0430",
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
"category": "Kategori",
|
||||
"attachments": "Bilagor",
|
||||
"notes": "Noteringar",
|
||||
"external_uri": "Extern URI",
|
||||
"external_uri": "External URL",
|
||||
"update_transaction": "Uppdatera transaktion",
|
||||
"after_update_create_another": "Efter uppdaterat, \u00e5terkom hit f\u00f6r att forts\u00e4tta redigera.",
|
||||
"store_as_new": "Spara en ny transaktion ist\u00e4llet f\u00f6r att uppdatera.",
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
"category": "Danh m\u1ee5c",
|
||||
"attachments": "T\u1ec7p \u0111\u00ednh k\u00e8m",
|
||||
"notes": "Ghi ch\u00fa",
|
||||
"external_uri": "External URI",
|
||||
"external_uri": "External URL",
|
||||
"update_transaction": "C\u1eadp nh\u1eadt giao d\u1ecbch",
|
||||
"after_update_create_another": "Sau khi c\u1eadp nh\u1eadt, quay l\u1ea1i \u0111\u00e2y \u0111\u1ec3 ti\u1ebfp t\u1ee5c ch\u1ec9nh s\u1eeda.",
|
||||
"store_as_new": "L\u01b0u tr\u1eef nh\u01b0 m\u1ed9t giao d\u1ecbch m\u1edbi thay v\u00ec c\u1eadp nh\u1eadt.",
|
||||
|
||||
@@ -5,97 +5,97 @@
|
||||
"flash_success": "\u6210\u529f\uff01",
|
||||
"close": "\u5173\u95ed",
|
||||
"split_transaction_title": "\u62c6\u5206\u4ea4\u6613\u7684\u63cf\u8ff0",
|
||||
"errors_submission": "There was something wrong with your submission. Please check out the errors.",
|
||||
"split": "\u5206\u5272",
|
||||
"single_split": "Split",
|
||||
"transaction_stored_link": "<a href=\"transactions\/show\/{ID}\">Transaction #{ID} (\"{title}\")<\/a> has been stored.",
|
||||
"transaction_updated_link": "<a href=\"transactions\/show\/{ID}\">Transaction #{ID}<\/a> has been updated.",
|
||||
"transaction_new_stored_link": "<a href=\"transactions\/show\/{ID}\">Transaction #{ID}<\/a> has been stored.",
|
||||
"transaction_journal_information": "\u4ea4\u6613\u8d44\u8baf",
|
||||
"no_budget_pointer": "You seem to have no budgets yet. You should create some on the <a href=\"budgets\">budgets<\/a>-page. Budgets can help you keep track of expenses.",
|
||||
"no_bill_pointer": "You seem to have no bills yet. You should create some on the <a href=\"bills\">bills<\/a>-page. Bills can help you keep track of expenses.",
|
||||
"source_account": "\u6765\u6e90\u5e10\u6237",
|
||||
"hidden_fields_preferences": "You can enable more transaction options in your <a href=\"preferences\">preferences<\/a>.",
|
||||
"destination_account": "\u76ee\u6807\u5e10\u6237",
|
||||
"add_another_split": "\u589e\u52a0\u62c6\u5206",
|
||||
"errors_submission": "\u60a8\u63d0\u4ea4\u7684\u5185\u5bb9\u6709\u8bef\uff0c\u8bf7\u68c0\u67e5\u9519\u8bef\u4fe1\u606f\u3002",
|
||||
"split": "\u62c6\u5206",
|
||||
"single_split": "\u62c6\u5206",
|
||||
"transaction_stored_link": "<a href=\"transactions\/show\/{ID}\">\u4ea4\u6613 #{ID} (\u201c{title}\u201d)<\/a> \u5df2\u4fdd\u5b58\u3002",
|
||||
"transaction_updated_link": "<a href=\"transactions\/show\/{ID}\">\u4ea4\u6613 #{ID}<\/a> \u5df2\u66f4\u65b0\u3002",
|
||||
"transaction_new_stored_link": "<a href=\"transactions\/show\/{ID}\">\u4ea4\u6613 #{ID}<\/a> \u5df2\u4fdd\u5b58\u3002",
|
||||
"transaction_journal_information": "\u4ea4\u6613\u4fe1\u606f",
|
||||
"no_budget_pointer": "\u60a8\u8fd8\u6ca1\u6709\u9884\u7b97\uff0c\u60a8\u5e94\u8be5\u5728<a href=\"budgets\">\u9884\u7b97\u9875\u9762<\/a>\u8fdb\u884c\u521b\u5efa\u3002\u9884\u7b97\u53ef\u4ee5\u5e2e\u52a9\u60a8\u8ffd\u8e2a\u652f\u51fa\u3002",
|
||||
"no_bill_pointer": "\u60a8\u8fd8\u6ca1\u6709\u8d26\u5355\uff0c\u60a8\u5e94\u8be5\u5728<a href=\"bills\">\u8d26\u5355\u9875\u9762<\/a>\u8fdb\u884c\u521b\u5efa\u3002\u8d26\u5355\u53ef\u4ee5\u5e2e\u52a9\u60a8\u8ffd\u8e2a\u652f\u51fa\u3002",
|
||||
"source_account": "\u6765\u6e90\u8d26\u6237",
|
||||
"hidden_fields_preferences": "\u60a8\u53ef\u4ee5\u5728<a href=\"preferences\">\u504f\u597d\u8bbe\u5b9a<\/a>\u4e2d\u542f\u7528\u66f4\u591a\u4ea4\u6613\u9009\u9879\u3002",
|
||||
"destination_account": "\u76ee\u6807\u8d26\u6237",
|
||||
"add_another_split": "\u589e\u52a0\u53e6\u4e00\u7b14\u62c6\u5206",
|
||||
"submission": "\u63d0\u4ea4",
|
||||
"create_another": "\u4fdd\u5b58\u540e\uff0c\u8fd4\u56de\u6b64\u9875\u9762\u521b\u5efa\u53e6\u4e00\u7b14\u8bb0\u5f55\u3002",
|
||||
"create_another": "\u4fdd\u5b58\u540e\uff0c\u8fd4\u56de\u6b64\u9875\u9762\u4ee5\u521b\u5efa\u65b0\u8bb0\u5f55",
|
||||
"reset_after": "\u63d0\u4ea4\u540e\u91cd\u7f6e\u8868\u5355",
|
||||
"submit": "\u63d0\u4ea4",
|
||||
"amount": "\u91d1\u989d",
|
||||
"date": "\u65e5\u671f",
|
||||
"tags": "\u6807\u7b7e",
|
||||
"no_budget": "(\u65e0\u9884\u7b97)",
|
||||
"no_bill": "(no bill)",
|
||||
"no_bill": "(\u65e0\u8d26\u5355)",
|
||||
"category": "\u5206\u7c7b",
|
||||
"attachments": "\u9644\u52a0\u6863\u6848",
|
||||
"notes": "\u6ce8\u91ca",
|
||||
"external_uri": "External URI",
|
||||
"attachments": "\u9644\u4ef6",
|
||||
"notes": "\u5907\u6ce8",
|
||||
"external_uri": "\u5916\u90e8\u94fe\u63a5",
|
||||
"update_transaction": "\u66f4\u65b0\u4ea4\u6613",
|
||||
"after_update_create_another": "\u66f4\u65b0\u540e\uff0c\u8fd4\u56de\u6b64\u9875\u9762\u7ee7\u7eed\u7f16\u8f91\u3002",
|
||||
"store_as_new": "\u4fdd\u5b58\u4e3a\u65b0\u4ea4\u6613\u800c\u4e0d\u662f\u66f4\u65b0\u6b64\u4ea4\u6613\u3002",
|
||||
"split_title_help": "\u5982\u679c\u60a8\u521b\u5efa\u4e00\u4e2a\u62c6\u5206\u4ea4\u6613\uff0c\u5fc5\u987b\u6709\u4e00\u4e2a\u5168\u5c40\u7684\u4ea4\u6613\u63cf\u8ff0\u3002",
|
||||
"none_in_select_list": "\uff08\u7a7a\uff09",
|
||||
"no_piggy_bank": "\uff08\u65e0\u5b58\u94b1\u7f50\uff09",
|
||||
"split_title_help": "\u5982\u679c\u60a8\u521b\u5efa\u4e86\u4e00\u7b14\u62c6\u5206\u4ea4\u6613\uff0c\u5fc5\u987b\u6709\u4e00\u4e2a\u6240\u6709\u62c6\u5206\u7684\u5168\u5c40\u63cf\u8ff0\u3002",
|
||||
"none_in_select_list": "(\u7a7a)",
|
||||
"no_piggy_bank": "(\u65e0\u5b58\u94b1\u7f50)",
|
||||
"description": "\u63cf\u8ff0",
|
||||
"split_transaction_title_help": "\u5982\u679c\u60a8\u521b\u5efa\u4e86\u4e00\u4e2a\u5206\u5272\u4ea4\u6613\uff0c\u4ea4\u6613\u7684\u6240\u6709\u5206\u5272\u9879\u90fd\u5fc5\u987b\u6709\u5168\u5c40\u63cf\u8ff0\u3002",
|
||||
"split_transaction_title_help": "\u5982\u679c\u60a8\u521b\u5efa\u4e86\u4e00\u7b14\u62c6\u5206\u4ea4\u6613\uff0c\u5fc5\u987b\u6709\u4e00\u4e2a\u6240\u6709\u62c6\u5206\u7684\u5168\u5c40\u63cf\u8ff0\u3002",
|
||||
"destination_account_reconciliation": "\u60a8\u4e0d\u80fd\u7f16\u8f91\u5bf9\u8d26\u4ea4\u6613\u7684\u76ee\u6807\u8d26\u6237",
|
||||
"source_account_reconciliation": "\u60a8\u4e0d\u80fd\u7f16\u8f91\u5bf9\u8d26\u4ea4\u6613\u7684\u6e90\u8d26\u6237",
|
||||
"source_account_reconciliation": "\u60a8\u4e0d\u80fd\u7f16\u8f91\u5bf9\u8d26\u4ea4\u6613\u7684\u6765\u6e90\u8d26\u6237\u3002",
|
||||
"budget": "\u9884\u7b97",
|
||||
"bill": "\u5e10\u5355",
|
||||
"you_create_withdrawal": "\u60a8\u6b63\u5728\u521b\u5efa\u4e00\u4e2a\u63d0\u6b3e",
|
||||
"you_create_transfer": "\u60a8\u6b63\u5728\u521b\u5efa\u4e00\u4e2a\u8f6c\u8d26",
|
||||
"you_create_deposit": "\u60a8\u6b63\u5728\u521b\u5efa\u4e00\u4e2a\u5b58\u6b3e",
|
||||
"bill": "\u8d26\u5355",
|
||||
"you_create_withdrawal": "\u60a8\u6b63\u5728\u521b\u5efa\u4e00\u7b14\u652f\u51fa",
|
||||
"you_create_transfer": "\u60a8\u6b63\u5728\u521b\u5efa\u4e00\u7b14\u8f6c\u8d26",
|
||||
"you_create_deposit": "\u60a8\u6b63\u5728\u521b\u5efa\u4e00\u7b14\u6536\u5165",
|
||||
"edit": "\u7f16\u8f91",
|
||||
"delete": "\u5220\u9664",
|
||||
"name": "\u540d\u79f0",
|
||||
"profile_whoops": "Whoops!",
|
||||
"profile_something_wrong": "Something went wrong!",
|
||||
"profile_try_again": "Something went wrong. Please try again.",
|
||||
"profile_oauth_clients": "OAuth Clients",
|
||||
"profile_oauth_no_clients": "You have not created any OAuth clients.",
|
||||
"profile_oauth_clients_header": "Clients",
|
||||
"profile_oauth_client_id": "Client ID",
|
||||
"profile_oauth_client_name": "Name",
|
||||
"profile_oauth_client_secret": "Secret",
|
||||
"profile_oauth_create_new_client": "Create New Client",
|
||||
"profile_oauth_create_client": "Create Client",
|
||||
"profile_oauth_edit_client": "Edit Client",
|
||||
"profile_oauth_name_help": "Something your users will recognize and trust.",
|
||||
"profile_oauth_redirect_url": "Redirect URL",
|
||||
"profile_oauth_redirect_url_help": "Your application's authorization callback URL.",
|
||||
"profile_authorized_apps": "Authorized applications",
|
||||
"profile_authorized_clients": "Authorized clients",
|
||||
"profile_scopes": "Scopes",
|
||||
"profile_revoke": "Revoke",
|
||||
"profile_personal_access_tokens": "Personal Access Tokens",
|
||||
"profile_personal_access_token": "Personal Access Token",
|
||||
"profile_personal_access_token_explanation": "Here is your new personal access token. This is the only time it will be shown so don't lose it! You may now use this token to make API requests.",
|
||||
"profile_no_personal_access_token": "You have not created any personal access tokens.",
|
||||
"profile_create_new_token": "Create new token",
|
||||
"profile_create_token": "Create token",
|
||||
"profile_create": "Create",
|
||||
"profile_save_changes": "Save changes",
|
||||
"default_group_title_name": "(ungrouped)",
|
||||
"profile_whoops": "\u5f88\u62b1\u6b49\uff01",
|
||||
"profile_something_wrong": "\u53d1\u751f\u9519\u8bef\uff01",
|
||||
"profile_try_again": "\u53d1\u751f\u9519\u8bef\uff0c\u8bf7\u7a0d\u540e\u518d\u8bd5\u3002",
|
||||
"profile_oauth_clients": "OAuth \u5ba2\u6237\u7aef",
|
||||
"profile_oauth_no_clients": "\u60a8\u5c1a\u672a\u521b\u5efa\u4efb\u4f55 OAuth \u5ba2\u6237\u7aef\u3002",
|
||||
"profile_oauth_clients_header": "\u5ba2\u6237\u7aef",
|
||||
"profile_oauth_client_id": "\u5ba2\u6237\u7aef ID",
|
||||
"profile_oauth_client_name": "\u540d\u79f0",
|
||||
"profile_oauth_client_secret": "\u5bc6\u94a5",
|
||||
"profile_oauth_create_new_client": "\u521b\u5efa\u65b0\u5ba2\u6237\u7aef",
|
||||
"profile_oauth_create_client": "\u521b\u5efa\u5ba2\u6237\u7aef",
|
||||
"profile_oauth_edit_client": "\u7f16\u8f91\u5ba2\u6237\u7aef",
|
||||
"profile_oauth_name_help": "\u60a8\u7684\u7528\u6237\u53ef\u4ee5\u8bc6\u522b\u5e76\u4fe1\u4efb\u7684\u4fe1\u606f",
|
||||
"profile_oauth_redirect_url": "\u8df3\u8f6c\u7f51\u5740",
|
||||
"profile_oauth_redirect_url_help": "\u60a8\u7684\u5e94\u7528\u7a0b\u5e8f\u7684\u6388\u6743\u56de\u8c03\u7f51\u5740",
|
||||
"profile_authorized_apps": "\u5df2\u6388\u6743\u5e94\u7528",
|
||||
"profile_authorized_clients": "\u5df2\u6388\u6743\u5ba2\u6237\u7aef",
|
||||
"profile_scopes": "\u8303\u56f4",
|
||||
"profile_revoke": "\u64a4\u6d88",
|
||||
"profile_personal_access_tokens": "\u4e2a\u4eba\u8bbf\u95ee\u4ee4\u724c",
|
||||
"profile_personal_access_token": "\u4e2a\u4eba\u8bbf\u95ee\u4ee4\u724c",
|
||||
"profile_personal_access_token_explanation": "\u8bf7\u59a5\u5584\u4fdd\u5b58\u60a8\u7684\u65b0\u4e2a\u4eba\u8bbf\u95ee\u4ee4\u724c\uff0c\u6b64\u4ee4\u724c\u4ec5\u4f1a\u5728\u8fd9\u91cc\u5c55\u793a\u4e00\u6b21\u3002\u60a8\u73b0\u5728\u5df2\u53ef\u4ee5\u4f7f\u7528\u6b64\u4ee4\u724c\u8fdb\u884c API \u8bf7\u6c42\u3002",
|
||||
"profile_no_personal_access_token": "\u60a8\u8fd8\u6ca1\u6709\u521b\u5efa\u4e2a\u4eba\u8bbf\u95ee\u4ee4\u724c\u3002",
|
||||
"profile_create_new_token": "\u521b\u5efa\u65b0\u4ee4\u724c",
|
||||
"profile_create_token": "\u521b\u5efa\u4ee4\u724c",
|
||||
"profile_create": "\u521b\u5efa",
|
||||
"profile_save_changes": "\u4fdd\u5b58\u66f4\u6539",
|
||||
"default_group_title_name": "(\u672a\u5206\u7ec4)",
|
||||
"piggy_bank": "\u5b58\u94b1\u7f50",
|
||||
"profile_oauth_client_secret_title": "Client Secret",
|
||||
"profile_oauth_client_secret_expl": "Here is your new client secret. This is the only time it will be shown so don't lose it! You may now use this secret to make API requests.",
|
||||
"profile_oauth_confidential": "Confidential",
|
||||
"profile_oauth_confidential_help": "Require the client to authenticate with a secret. Confidential clients can hold credentials in a secure way without exposing them to unauthorized parties. Public applications, such as native desktop or JavaScript SPA applications, are unable to hold secrets securely.",
|
||||
"multi_account_warning_unknown": "Depending on the type of transaction you create, the source and\/or destination account of subsequent splits may be overruled by whatever is defined in the first split of the transaction.",
|
||||
"multi_account_warning_withdrawal": "Keep in mind that the source account of subsequent splits will be overruled by whatever is defined in the first split of the withdrawal.",
|
||||
"multi_account_warning_deposit": "Keep in mind that the destination account of subsequent splits will be overruled by whatever is defined in the first split of the deposit.",
|
||||
"multi_account_warning_transfer": "Keep in mind that the source + destination account of subsequent splits will be overruled by whatever is defined in the first split of the transfer."
|
||||
"profile_oauth_client_secret_title": "\u5ba2\u6237\u7aef\u5bc6\u94a5",
|
||||
"profile_oauth_client_secret_expl": "\u8bf7\u59a5\u5584\u4fdd\u5b58\u60a8\u7684\u65b0\u5ba2\u6237\u7aef\u7684\u5bc6\u94a5\uff0c\u6b64\u5bc6\u94a5\u4ec5\u4f1a\u5728\u8fd9\u91cc\u5c55\u793a\u4e00\u6b21\u3002\u60a8\u73b0\u5728\u5df2\u53ef\u4ee5\u4f7f\u7528\u6b64\u5bc6\u94a5\u8fdb\u884c API \u8bf7\u6c42\u3002",
|
||||
"profile_oauth_confidential": "\u4f7f\u7528\u52a0\u5bc6",
|
||||
"profile_oauth_confidential_help": "\u8981\u6c42\u5ba2\u6237\u7aef\u4f7f\u7528\u5bc6\u94a5\u8fdb\u884c\u8ba4\u8bc1\u3002\u52a0\u5bc6\u5ba2\u6237\u7aef\u53ef\u4ee5\u5b89\u5168\u50a8\u5b58\u51ed\u636e\u4e14\u4e0d\u5c06\u5176\u6cc4\u9732\u7ed9\u672a\u6388\u6743\u65b9\uff0c\u800c\u516c\u5171\u5e94\u7528\u7a0b\u5e8f\uff08\u4f8b\u5982\u672c\u5730\u8ba1\u7b97\u673a\u6216 JavaScript SPA \u5e94\u7528\u7a0b\u5e8f\uff09\u65e0\u6cd5\u4fdd\u8bc1\u51ed\u636e\u7684\u5b89\u5168\u6027\u3002",
|
||||
"multi_account_warning_unknown": "\u6839\u636e\u60a8\u521b\u5efa\u7684\u4ea4\u6613\u7c7b\u578b\uff0c\u540e\u7eed\u62c6\u5206\u7684\u6765\u6e90\u548c\/\u6216\u76ee\u6807\u8d26\u6237\u53ef\u80fd\u88ab\u4ea4\u6613\u7684\u9996\u7b14\u62c6\u5206\u7684\u914d\u7f6e\u6240\u8986\u76d6\u3002",
|
||||
"multi_account_warning_withdrawal": "\u8bf7\u6ce8\u610f\uff0c\u540e\u7eed\u62c6\u5206\u7684\u6765\u6e90\u8d26\u6237\u5c06\u4f1a\u88ab\u652f\u51fa\u7684\u9996\u7b14\u62c6\u5206\u7684\u914d\u7f6e\u6240\u8986\u76d6\u3002",
|
||||
"multi_account_warning_deposit": "\u8bf7\u6ce8\u610f\uff0c\u540e\u7eed\u62c6\u5206\u7684\u76ee\u6807\u8d26\u6237\u5c06\u4f1a\u88ab\u6536\u5165\u7684\u9996\u7b14\u62c6\u5206\u7684\u914d\u7f6e\u6240\u8986\u76d6\u3002",
|
||||
"multi_account_warning_transfer": "\u8bf7\u6ce8\u610f\uff0c\u540e\u7eed\u62c6\u5206\u7684\u6765\u6e90\u548c\u76ee\u6807\u8d26\u6237\u5c06\u4f1a\u88ab\u8f6c\u8d26\u7684\u9996\u7b14\u62c6\u5206\u7684\u914d\u7f6e\u6240\u8986\u76d6\u3002"
|
||||
},
|
||||
"form": {
|
||||
"interest_date": "\u5229\u7387\u65e5\u671f",
|
||||
"interest_date": "\u5229\u606f\u65e5\u671f",
|
||||
"book_date": "\u767b\u8bb0\u65e5\u671f",
|
||||
"process_date": "\u5904\u7406\u65e5\u671f",
|
||||
"due_date": "\u5230\u671f\u65e5",
|
||||
"foreign_amount": "\u5916\u5e01\u91d1\u989d",
|
||||
"payment_date": "\u4ed8\u6b3e\u65e5\u671f",
|
||||
"invoice_date": "\u53d1\u7968\u65e5\u671f",
|
||||
"internal_reference": "\u5185\u90e8\u53c2\u8003"
|
||||
"internal_reference": "\u5185\u90e8\u5f15\u7528"
|
||||
},
|
||||
"config": {
|
||||
"html_language": "zh-cn"
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
"category": "\u5206\u985e",
|
||||
"attachments": "\u9644\u52a0\u6a94\u6848",
|
||||
"notes": "\u5099\u8a3b",
|
||||
"external_uri": "External URI",
|
||||
"external_uri": "External URL",
|
||||
"update_transaction": "Update transaction",
|
||||
"after_update_create_another": "After updating, return here to continue editing.",
|
||||
"store_as_new": "Store as a new transaction instead of updating.",
|
||||
|
||||
@@ -60,6 +60,7 @@ return [
|
||||
'less' => ':attribute трябва да е по-малко от 10 000 000',
|
||||
'active_url' => ':attribute не е валиден URL адрес.',
|
||||
'after' => ':attribute трябва да бъде дата след :date.',
|
||||
'date_after' => 'End date must be before start date.',
|
||||
'alpha' => ':attribute може да съдържа единствено букви.',
|
||||
'alpha_dash' => ':attribute може да съдържа само букви, числа и тирета.',
|
||||
'alpha_num' => ':attribute може да съдържа само букви и числа.',
|
||||
@@ -182,6 +183,8 @@ return [
|
||||
'withdrawal_dest_need_data' => 'Трябва да използвате валидно ID на приходната сметка и / или валидно име на приходната сметка, за да продължите.',
|
||||
'withdrawal_dest_bad_data' => 'Не може да се намери валидна приходна сметка при търсене на ID ":id" или име ":name".',
|
||||
|
||||
'generic_source_bad_data' => 'Could not find a valid source account when searching for ID ":id" or name ":name".',
|
||||
|
||||
'deposit_source_need_data' => 'Трябва да използвате валидно ID на разходната сметка и / или валидно име на разходната сметка, за да продължите.',
|
||||
'deposit_source_bad_data' => 'Не може да се намери валидна разходна сметка при търсене на ID ":id" или име ":name".',
|
||||
'deposit_dest_need_data' => 'Трябва да използвате валидно ID на приходната сметка и / или валидно име на приходната сметка, за да продължите.',
|
||||
|
||||
@@ -60,6 +60,7 @@ return [
|
||||
'less' => ':attribute musí být menší než 10.000.000',
|
||||
'active_url' => ':attribute není platná adresa URL.',
|
||||
'after' => ':attribute nemůže být dříve než :date.',
|
||||
'date_after' => 'End date must be before start date.',
|
||||
'alpha' => ':attribute může obsahovat pouze písmena.',
|
||||
'alpha_dash' => ':attribute může obsahovat pouze písmena, čísla a pomlčky.',
|
||||
'alpha_num' => ':attribute může obsahovat pouze písmena a čísla.',
|
||||
@@ -182,6 +183,8 @@ return [
|
||||
'withdrawal_dest_need_data' => 'Pro pokračování je potřeba získat platné ID zdrojového účtu a/nebo platný název zdrojového účtu.',
|
||||
'withdrawal_dest_bad_data' => 'Při hledání ID „:id“ nebo jména „:name“ nelze najít platný cílový účet.',
|
||||
|
||||
'generic_source_bad_data' => 'Could not find a valid source account when searching for ID ":id" or name ":name".',
|
||||
|
||||
'deposit_source_need_data' => 'Pro pokračování je potřeba získat platné ID zdrojového účtu a/nebo platný název zdrojového účtu.',
|
||||
'deposit_source_bad_data' => 'Nelze najít platný zdrojový účet při hledání ID „:id“ nebo jména „:name“.',
|
||||
'deposit_dest_need_data' => 'Pro pokračování je potřeba získat platné cílové ID účtu a/nebo platné jméno cílového účtu.',
|
||||
|
||||
@@ -60,6 +60,7 @@ return [
|
||||
'less' => ':attribute muss kleiner als 10.000.000 sein',
|
||||
'active_url' => ':attribute ist keine gültige URL.',
|
||||
'after' => ':attribute muss ein Datum nach :date sein.',
|
||||
'date_after' => 'End date must be before start date.',
|
||||
'alpha' => ':attribute darf nur Buchstaben enthalten.',
|
||||
'alpha_dash' => ':attribute darf nur Buchstaben, Zahlen und Bindestrichen enthalten.',
|
||||
'alpha_num' => ':attribute darf nur Buchstaben und Zahlen enthalten.',
|
||||
@@ -182,6 +183,8 @@ return [
|
||||
'withdrawal_dest_need_data' => 'Um fortzufahren, benötigen Sie eine gültige Zielkontenkennung und/oder einen gültigen Zielkontonamen.',
|
||||
'withdrawal_dest_bad_data' => 'Bei der Suche nach Kennung „:id” oder Name „:name” konnte kein gültiges Zielkonto gefunden werden.',
|
||||
|
||||
'generic_source_bad_data' => 'Could not find a valid source account when searching for ID ":id" or name ":name".',
|
||||
|
||||
'deposit_source_need_data' => 'Um fortzufahren, benötigen Sie eine gültige Quellkontenkennung und/oder einen gültigen Quellkontonamen.',
|
||||
'deposit_source_bad_data' => 'Bei der Suche nach der Kennung „:id” oder dem Namen „:name” konnte kein gültiges Quellkonto gefunden werden.',
|
||||
'deposit_dest_need_data' => 'Um fortzufahren, benötigen Sie eine gültige Zielkontenkennung und/oder einen gültigen Zielkontonamen.',
|
||||
|
||||
@@ -60,6 +60,7 @@ return [
|
||||
'less' => 'Το :attribute πρέπει να είναι μικρότερο από 10,000,000',
|
||||
'active_url' => 'Το :attribute δεν είναι έγκυρο URL.',
|
||||
'after' => 'Το :attribute πρέπει να είναι ημερομηνία μετά από :date.',
|
||||
'date_after' => 'End date must be before start date.',
|
||||
'alpha' => 'Το :attribute μπορεί να περιέχει μόνο γράμματα.',
|
||||
'alpha_dash' => 'Το :attribute μπορεί να περιέχει γράμματα, αριθμοί, και παύλες.',
|
||||
'alpha_num' => 'Το :attribute μπορεί να περιέχει γράμματα και αριθμούς.',
|
||||
@@ -182,6 +183,8 @@ return [
|
||||
'withdrawal_dest_need_data' => 'Πρέπει να λάβετε ένα έγκυρο αναγνωριστικό ID λογαριασμού προέλευσης και/ή ένα έγκυρο όνομα λογαριασμού προορισμού για να συνεχίσετε.',
|
||||
'withdrawal_dest_bad_data' => 'Δεν μπορεσε να βρεθεί έγκυρος λογαριασμός προορισμού κατά την αναζήτηση του αναγνωριστικού ID ":id" ή του ονόματος ":name".',
|
||||
|
||||
'generic_source_bad_data' => 'Could not find a valid source account when searching for ID ":id" or name ":name".',
|
||||
|
||||
'deposit_source_need_data' => 'Πρέπει να λάβετε ένα έγκυρο αναγνωριστικό ID λογαριασμού προέλευσης και/ή ένα έγκυρο όνομα λογαριασμού προέλευσης για να συνεχίσετε.',
|
||||
'deposit_source_bad_data' => 'Δεν μπόρεσε να βρεθεί ένας έγκυρος λογαριασμός προέλευσης κατά την αναζήτηση του αναγνωριστικού ID ":id" ή του ονόματος ":name".',
|
||||
'deposit_dest_need_data' => 'Πρέπει να λάβετε ένα έγκυρο αναγνωριστικό ID λογαριασμού προορισμού και/ή ένα έγκυρο όνομα λογαριασμού προορισμού για να συνεχίσετε.',
|
||||
|
||||
@@ -60,6 +60,7 @@ return [
|
||||
'less' => ':attribute must be less than 10,000,000',
|
||||
'active_url' => 'The :attribute is not a valid URL.',
|
||||
'after' => 'The :attribute must be a date after :date.',
|
||||
'date_after' => 'End date must be before start date.',
|
||||
'alpha' => 'The :attribute may only contain letters.',
|
||||
'alpha_dash' => 'The :attribute may only contain letters, numbers, and dashes.',
|
||||
'alpha_num' => 'The :attribute may only contain letters and numbers.',
|
||||
@@ -182,6 +183,8 @@ return [
|
||||
'withdrawal_dest_need_data' => 'Need to get a valid destination account ID and/or valid destination account name to continue.',
|
||||
'withdrawal_dest_bad_data' => 'Could not find a valid destination account when searching for ID ":id" or name ":name".',
|
||||
|
||||
'generic_source_bad_data' => 'Could not find a valid source account when searching for ID ":id" or name ":name".',
|
||||
|
||||
'deposit_source_need_data' => 'Need to get a valid source account ID and/or valid source account name to continue.',
|
||||
'deposit_source_bad_data' => 'Could not find a valid source account when searching for ID ":id" or name ":name".',
|
||||
'deposit_dest_need_data' => 'Need to get a valid destination account ID and/or valid destination account name to continue.',
|
||||
|
||||
@@ -60,6 +60,7 @@ return [
|
||||
'less' => ':attribute debe ser menor que 10.000.000',
|
||||
'active_url' => 'El campo :attribute no es una URL válida.',
|
||||
'after' => 'El campo :attribute debe ser una fecha posterior a :date.',
|
||||
'date_after' => 'End date must be before start date.',
|
||||
'alpha' => 'El campo :attribute sólo puede contener letras.',
|
||||
'alpha_dash' => 'El campo :attribute sólo puede contener letras, números y guiones.',
|
||||
'alpha_num' => 'El campo :attribute sólo puede contener letras y números.',
|
||||
@@ -182,6 +183,8 @@ return [
|
||||
'withdrawal_dest_need_data' => 'Necesita obtener un ID de cuenta de destino válido y/o nombre de cuenta de destino válido para continuar.',
|
||||
'withdrawal_dest_bad_data' => 'No se pudo encontrar una cuenta de destino válida buscando ID ":id" o nombre ":name".',
|
||||
|
||||
'generic_source_bad_data' => 'Could not find a valid source account when searching for ID ":id" or name ":name".',
|
||||
|
||||
'deposit_source_need_data' => 'Necesita obtener un ID de cuenta de origen válido y/o nombre de cuenta de origen válido para continuar.',
|
||||
'deposit_source_bad_data' => 'No se pudo encontrar una cuenta de origen válida para ID ":id" o nombre ":name".',
|
||||
'deposit_dest_need_data' => 'Necesita obtener un ID de cuenta de destino válido y/o nombre de cuenta de destino válido para continuar.',
|
||||
|
||||
@@ -60,6 +60,7 @@ return [
|
||||
'less' => 'Määritteen :attribute täytyy olla pienempi kuin 10,000,000',
|
||||
'active_url' => ':attribute ei ole verkko-osoite.',
|
||||
'after' => 'Määritteen :attribute täytyy olla :date jälkeen oleva päivämäärä.',
|
||||
'date_after' => 'End date must be before start date.',
|
||||
'alpha' => ':attribute saa sisältää ainoastaan kirjaimia.',
|
||||
'alpha_dash' => ':attribute saa sisältää ainoastaan kirjaimia, numeroita ja viivoja.',
|
||||
'alpha_num' => ':attribute saa sisältää ainoastaan kirjaimia ja numeroita.',
|
||||
@@ -182,6 +183,8 @@ return [
|
||||
'withdrawal_dest_need_data' => 'Tarvitset kelvollisen kohdetilin tunnuksen ja/tai kelvollisen kohdetilin nimen jatkaaksesi.',
|
||||
'withdrawal_dest_bad_data' => 'Kelvollista kohdetiliä ei löytynyt tunnuksella ":id" tai nimellä ":name".',
|
||||
|
||||
'generic_source_bad_data' => 'Could not find a valid source account when searching for ID ":id" or name ":name".',
|
||||
|
||||
'deposit_source_need_data' => 'Tarvitset kelvollisen lähdetilin tunnuksen ja/tai kelvollisen lähdetilin nimen jatkaaksesi.',
|
||||
'deposit_source_bad_data' => 'Nostolle kelvollista lähdetiliä ei löytynyt tunnuksella ":id" tai nimellä ":name".',
|
||||
'deposit_dest_need_data' => 'Tarvitset kelvollisen kohdetilin tunnuksen ja/tai kelvollisen kohdetilin nimen jatkaaksesi.',
|
||||
|
||||
@@ -60,6 +60,7 @@ return [
|
||||
'less' => ':attribute doit être inférieur à 10 000 000',
|
||||
'active_url' => 'Le champ :attribute n\'est pas une URL valide.',
|
||||
'after' => 'Le champ :attribute doit être une date postérieure à :date.',
|
||||
'date_after' => 'End date must be before start date.',
|
||||
'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_num' => 'Le champ :attribute peut seulement contenir des chiffres et des lettres.',
|
||||
@@ -182,6 +183,8 @@ return [
|
||||
'withdrawal_dest_need_data' => 'Vous devez obtenir un ID de compte de destination valide et/ou un nom de compte de destination valide pour continuer.',
|
||||
'withdrawal_dest_bad_data' => 'Impossible de trouver un compte de destination valide lors de la recherche de l\'ID ":id" ou du nom ":name".',
|
||||
|
||||
'generic_source_bad_data' => 'Could not find a valid source account when searching for ID ":id" or name ":name".',
|
||||
|
||||
'deposit_source_need_data' => 'Vous devez obtenir un ID de compte source valide et/ou un nom de compte source valide pour continuer.',
|
||||
'deposit_source_bad_data' => 'Impossible de trouver un compte source valide lors de la recherche de l\'ID ":id" ou du nom ":name".',
|
||||
'deposit_dest_need_data' => 'Vous devez obtenir un ID de compte de destination valide et/ou un nom de compte de destination valide pour continuer.',
|
||||
|
||||
@@ -60,6 +60,7 @@ return [
|
||||
'less' => ':attribute kisebbnek kell lennie 10,000,000-nél',
|
||||
'active_url' => ':attribute nem egy érvényes URL.',
|
||||
'after' => ':attribute egy :date utáni dátum kell legyen.',
|
||||
'date_after' => 'End date must be before start date.',
|
||||
'alpha' => ':attribute csak betűket tartalmazhat.',
|
||||
'alpha_dash' => ':attribute csak számokat, betűket és kötőjeleket tartalmazhat.',
|
||||
'alpha_num' => ':attribute csak betűket és számokat tartalmazhat.',
|
||||
@@ -182,6 +183,8 @@ return [
|
||||
'withdrawal_dest_need_data' => 'Egy érvényes célszámla azonosító és/vagy egy érvényes célszámla név kell a folytatáshoz.',
|
||||
'withdrawal_dest_bad_data' => 'Nem található érvényes célszámla ":id" azonosító vagy ":name" név keresésekor.',
|
||||
|
||||
'generic_source_bad_data' => 'Could not find a valid source account when searching for ID ":id" or name ":name".',
|
||||
|
||||
'deposit_source_need_data' => 'Egy érvényes forrásszámla azonosító és/vagy egy érvényes forrásszámla név kell a folytatáshoz.',
|
||||
'deposit_source_bad_data' => 'Nem található érvényes forrásszámla ":id" azonosító vagy ":name" név keresésekor.',
|
||||
'deposit_dest_need_data' => 'Egy érvényes célszámla azonosító és/vagy egy érvényes célszámla név kell a folytatáshoz.',
|
||||
|
||||
@@ -60,6 +60,7 @@ return [
|
||||
'less' => ':attribute harus kurang dari 10,000,000',
|
||||
'active_url' => ':attribute bukan URL yang valid.',
|
||||
'after' => ':attribute harus tanggal setelah :date.',
|
||||
'date_after' => 'End date must be before start date.',
|
||||
'alpha' => ':attribute hanya boleh berisi huruf.',
|
||||
'alpha_dash' => ':attribute hanya boleh berisi huruf, angka dan tanda hubung.',
|
||||
'alpha_num' => ':attribute hanya boleh berisi huruf dan angka.',
|
||||
@@ -182,6 +183,8 @@ return [
|
||||
'withdrawal_dest_need_data' => 'Need to get a valid destination account ID and/or valid destination account name to continue.',
|
||||
'withdrawal_dest_bad_data' => 'Could not find a valid destination account when searching for ID ":id" or name ":name".',
|
||||
|
||||
'generic_source_bad_data' => 'Could not find a valid source account when searching for ID ":id" or name ":name".',
|
||||
|
||||
'deposit_source_need_data' => 'Need to get a valid source account ID and/or valid source account name to continue.',
|
||||
'deposit_source_bad_data' => 'Could not find a valid source account when searching for ID ":id" or name ":name".',
|
||||
'deposit_dest_need_data' => 'Need to get a valid destination account ID and/or valid destination account name to continue.',
|
||||
|
||||
@@ -60,6 +60,7 @@ return [
|
||||
'less' => ':attribute deve essere minore di 10.000.000',
|
||||
'active_url' => ':attribute non è un URL valido.',
|
||||
'after' => ':attribute deve essere una data dopo :date.',
|
||||
'date_after' => 'End date must be before start date.',
|
||||
'alpha' => ':attribute può contenere solo lettere.',
|
||||
'alpha_dash' => ':attribute può contenere solo lettere, numeri e trattini.',
|
||||
'alpha_num' => ':attribute può contenere solo lettere e numeri.',
|
||||
@@ -182,6 +183,8 @@ return [
|
||||
'withdrawal_dest_need_data' => 'È necessario ottenere un ID e/o un nome del conto di destinazione validi per continuare.',
|
||||
'withdrawal_dest_bad_data' => 'Non è stato possibile trovare un conto di destinazione valido effettuando la ricerca con l\'ID ":id" o il nome ":name".',
|
||||
|
||||
'generic_source_bad_data' => 'Could not find a valid source account when searching for ID ":id" or name ":name".',
|
||||
|
||||
'deposit_source_need_data' => 'È necessario ottenere un ID e/o un nome del conto di origine validi per continuare.',
|
||||
'deposit_source_bad_data' => 'Non è stato possibile trovare un conto d\'origine valido effettuando la ricerca con l\'ID ":id" o il nome ":name".',
|
||||
'deposit_dest_need_data' => 'È necessario ottenere un ID e/o un nome del conto di destinazione validi per continuare.',
|
||||
|
||||
@@ -60,6 +60,7 @@ return [
|
||||
'less' => ':attribute må være mindre enn 10,000,000',
|
||||
'active_url' => ':attribute er ikke en gyldig URL.',
|
||||
'after' => ':attribute må være en dato etter :date.',
|
||||
'date_after' => 'End date must be before start date.',
|
||||
'alpha' => ':attribute kan kun inneholde bokstaver.',
|
||||
'alpha_dash' => ':attribute kan bare inneholde bokstaver, tall og bindestreker.',
|
||||
'alpha_num' => ':attribute kan bare inneholde bokstaver og tall.',
|
||||
@@ -182,6 +183,8 @@ return [
|
||||
'withdrawal_dest_need_data' => 'Trenger en gyldig destinasjons konto-ID og/eller gyldig destinasjons kontonavn for å fortsette.',
|
||||
'withdrawal_dest_bad_data' => 'Could not find a valid destination account when searching for ID ":id" or name ":name".',
|
||||
|
||||
'generic_source_bad_data' => 'Could not find a valid source account when searching for ID ":id" or name ":name".',
|
||||
|
||||
'deposit_source_need_data' => 'Trenger en gyldig kilde konto-ID og/eller gyldig kilde kontonavn for å fortsette.',
|
||||
'deposit_source_bad_data' => 'Kunne ikke finne en gyldig kilde-konto ved å søke etter ID ":id" eller navn ":name".',
|
||||
'deposit_dest_need_data' => 'Trenger en gyldig destinasjons konto-ID og/eller gyldig destinasjons kontonavn for å fortsette.',
|
||||
|
||||
@@ -60,6 +60,7 @@ return [
|
||||
'less' => ':attribute moet minder zijn dan 10.000.000',
|
||||
'active_url' => ':attribute is geen geldige URL.',
|
||||
'after' => ':attribute moet een datum na :date zijn.',
|
||||
'date_after' => 'Einddatum kan niet vóór startdatum vallen.',
|
||||
'alpha' => ':attribute mag alleen letters bevatten.',
|
||||
'alpha_dash' => ':attribute mag alleen letters, nummers, onderstreep(_) en strepen(-) bevatten.',
|
||||
'alpha_num' => ':attribute mag alleen letters en nummers bevatten.',
|
||||
@@ -182,6 +183,8 @@ return [
|
||||
'withdrawal_dest_need_data' => 'Om door te gaan moet een geldig bronrekening ID en/of geldige bronrekeningnaam worden gevonden.',
|
||||
'withdrawal_dest_bad_data' => 'Kan geen geldige doelrekening vinden bij het zoeken naar ID ":id" of naam ":name".',
|
||||
|
||||
'generic_source_bad_data' => 'Kan geen geldige bronrekening vinden bij het zoeken naar ID ":id" of naam ":name".',
|
||||
|
||||
'deposit_source_need_data' => 'Om door te gaan moet een geldige bronrekening ID en/of geldige bronrekeningnaam worden gevonden.',
|
||||
'deposit_source_bad_data' => 'Kan geen geldige bronrekening vinden bij het zoeken naar ID ":id" of naam ":name".',
|
||||
'deposit_dest_need_data' => 'Om door te gaan moet een geldig doelrekening ID en/of geldige doelrekeningnaam worden gevonden.',
|
||||
|
||||
@@ -436,22 +436,22 @@ return [
|
||||
'rule_trigger_source_account_ends_choice' => 'Konto źródłowe kończy się na..',
|
||||
'rule_trigger_source_account_ends' => 'Konto źródłowe kończy się na ":trigger_value"',
|
||||
'rule_trigger_source_account_is_choice' => 'Kontem źródłowym jest..',
|
||||
'rule_trigger_source_account_is' => 'Source account name is ":trigger_value"',
|
||||
'rule_trigger_source_account_contains_choice' => 'Source account name contains..',
|
||||
'rule_trigger_source_account_contains' => 'Source account name contains ":trigger_value"',
|
||||
'rule_trigger_account_id_choice' => 'Account ID (source/destination) is exactly..',
|
||||
'rule_trigger_account_id' => 'Account ID (source/destination) is exactly :trigger_value',
|
||||
'rule_trigger_source_account_id_choice' => 'Source account ID is exactly..',
|
||||
'rule_trigger_source_account_id' => 'Source account ID is exactly :trigger_value',
|
||||
'rule_trigger_destination_account_id_choice' => 'Destination account ID is exactly..',
|
||||
'rule_trigger_destination_account_id' => 'Destination account ID is exactly :trigger_value',
|
||||
'rule_trigger_account_is_cash_choice' => 'Account (source/destination) is (cash) account',
|
||||
'rule_trigger_account_is_cash' => 'Account (source/destination) is (cash) account',
|
||||
'rule_trigger_source_is_cash_choice' => 'Source account is (cash) account',
|
||||
'rule_trigger_source_is_cash' => 'Source account is (cash) account',
|
||||
'rule_trigger_destination_is_cash_choice' => 'Destination account is (cash) account',
|
||||
'rule_trigger_destination_is_cash' => 'Destination account is (cash) account',
|
||||
'rule_trigger_source_account_nr_starts_choice' => 'Source account number / IBAN starts with..',
|
||||
'rule_trigger_source_account_is' => 'Nazwa konta źródłowego to ":trigger_value:"',
|
||||
'rule_trigger_source_account_contains_choice' => 'Nazwa konta źródłowego zawiera..',
|
||||
'rule_trigger_source_account_contains' => 'Nazwa konta źródłowego zawiera ":trigger_value"',
|
||||
'rule_trigger_account_id_choice' => 'ID konta (źródłowego/docelowego) to dokładnie..',
|
||||
'rule_trigger_account_id' => 'ID konta (źródłowego/docelowego) to dokładnie :trigger_value',
|
||||
'rule_trigger_source_account_id_choice' => 'ID konta źródłowego to dokładnie..',
|
||||
'rule_trigger_source_account_id' => 'ID konta źródłowego to dokładnie :trigger_value',
|
||||
'rule_trigger_destination_account_id_choice' => 'ID konta docelowego to dokładnie..',
|
||||
'rule_trigger_destination_account_id' => 'ID konta docelowego to dokładnie :trigger_value',
|
||||
'rule_trigger_account_is_cash_choice' => 'Konto (źródłowe/docelowe) to konto (gotówkowe)',
|
||||
'rule_trigger_account_is_cash' => 'Konto (źródłowe/docelowe) to konto (gotówkowe)',
|
||||
'rule_trigger_source_is_cash_choice' => 'Konto źródłowe to konto (gotówkowe)',
|
||||
'rule_trigger_source_is_cash' => 'Konto źródłowe to konto (gotówkowe)',
|
||||
'rule_trigger_destination_is_cash_choice' => 'Konto docelowe to konto (gotówkowe)',
|
||||
'rule_trigger_destination_is_cash' => 'Konto docelowe to konto (gotówkowe)',
|
||||
'rule_trigger_source_account_nr_starts_choice' => 'Numer / IBAN konta źródłowego zaczyna się od..',
|
||||
'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' => 'Source account number / IBAN ends with ":trigger_value"',
|
||||
|
||||
@@ -60,6 +60,7 @@ return [
|
||||
'less' => ':attribute musi być mniejszy od 10 000 000',
|
||||
'active_url' => ':attribute nie jest prawidłowym adresem URL.',
|
||||
'after' => ':attribute musi być datą późniejszą od :date.',
|
||||
'date_after' => 'End date must be before start date.',
|
||||
'alpha' => ':attribute może zawierać tylko litery.',
|
||||
'alpha_dash' => ':attribute może zawierać litery, cyfry oraz myślniki.',
|
||||
'alpha_num' => ':attribute może zawierać jedynie litery oraz cyfry.',
|
||||
@@ -182,6 +183,8 @@ return [
|
||||
'withdrawal_dest_need_data' => 'Aby kontynuować, musisz uzyskać prawidłowy identyfikator konta wydatków i/lub prawidłową nazwę konta wydatków.',
|
||||
'withdrawal_dest_bad_data' => 'Nie można znaleźć poprawnego konta wydatków podczas wyszukiwania identyfikatora ":id" lub nazwy ":name".',
|
||||
|
||||
'generic_source_bad_data' => 'Could not find a valid source account when searching for ID ":id" or name ":name".',
|
||||
|
||||
'deposit_source_need_data' => 'Aby kontynuować, musisz uzyskać prawidłowy identyfikator konta źródłowego i/lub prawidłową nazwę konta źródłowego.',
|
||||
'deposit_source_bad_data' => 'Nie można znaleźć poprawnego konta źródłowego podczas wyszukiwania identyfikatora ":id" lub nazwy ":name".',
|
||||
'deposit_dest_need_data' => 'Aby kontynuować, musisz uzyskać prawidłowy identyfikator konta wydatków i/lub prawidłową nazwę konta wydatków.',
|
||||
|
||||
@@ -1463,7 +1463,7 @@ return [
|
||||
'left_to_spend' => 'Restante para gastar',
|
||||
'earned' => 'Ganho',
|
||||
'overspent' => 'Gasto excedido',
|
||||
'left' => 'Esquerda',
|
||||
'left' => 'Restante',
|
||||
'max-amount' => 'Valor Máximo',
|
||||
'min-amount' => 'Valor mínimo',
|
||||
'journal-amount' => 'Valor atual da conta',
|
||||
@@ -1792,7 +1792,7 @@ return [
|
||||
'box_budgeted_in_currency' => 'Orçado (:currency)',
|
||||
'box_bill_paid_in_currency' => 'Contas pagas (:currency)',
|
||||
'box_bill_unpaid_in_currency' => 'Contas não pagas (:currency)',
|
||||
'box_left_to_spend_in_currency' => 'Valor para gastar (:currency)',
|
||||
'box_left_to_spend_in_currency' => 'Restante para gastar (:currency)',
|
||||
'box_net_worth_in_currency' => 'Valor líquido (:currency)',
|
||||
'box_spend_per_day' => 'Restante para gastar por dia: :amount',
|
||||
|
||||
|
||||
@@ -60,6 +60,7 @@ return [
|
||||
'less' => ':attribute deve ser menor do que 10.000.000',
|
||||
'active_url' => 'O campo :attribute não contém um URL válido.',
|
||||
'after' => 'O campo :attribute deverá conter uma data posterior a :date.',
|
||||
'date_after' => 'End date must be before start date.',
|
||||
'alpha' => 'O campo :attribute deverá conter apenas letras.',
|
||||
'alpha_dash' => 'O campo :attribute deverá conter apenas letras, números e traços.',
|
||||
'alpha_num' => 'O campo :attribute deverá conter apenas letras e números .',
|
||||
@@ -182,6 +183,8 @@ return [
|
||||
'withdrawal_dest_need_data' => 'É necessário obter um ID de uma conta de destino válida e/ou um nome de conta de destino válido para continuar.',
|
||||
'withdrawal_dest_bad_data' => 'Não foi possível encontrar uma conta de destino válida ao pesquisar por ID ":id" ou nome ":name".',
|
||||
|
||||
'generic_source_bad_data' => 'Could not find a valid source account when searching for ID ":id" or name ":name".',
|
||||
|
||||
'deposit_source_need_data' => 'É necessário obter um ID de uma conta de origem válida e/ou um nome de conta de origem válido para continuar.',
|
||||
'deposit_source_bad_data' => 'Não foi possível encontrar uma conta de origem válida ao pesquisar por ID ":id" ou nome ":name".',
|
||||
'deposit_dest_need_data' => 'É necessário obter obter um ID de conta de destino válido e/ou nome de conta de destino válido para continuar.',
|
||||
|
||||
@@ -60,6 +60,7 @@ return [
|
||||
'less' => ':attribute tem de ser menor que 10,000,000',
|
||||
'active_url' => 'O :attribute nao e um URL valido.',
|
||||
'after' => 'I :attribute tem de ser uma data depois de :date.',
|
||||
'date_after' => 'End date must be before start date.',
|
||||
'alpha' => 'O :attribute apenas pode conter letras.',
|
||||
'alpha_dash' => 'O :attribute apenas pode conter letras, numero e tracos.',
|
||||
'alpha_num' => 'O :attribute apenas pode conter letras e numeros.',
|
||||
@@ -182,6 +183,8 @@ return [
|
||||
'withdrawal_dest_need_data' => 'É necessário ter um ID de conta de destino válido e/ou um nome de conta de destino válido para continuar.',
|
||||
'withdrawal_dest_bad_data' => 'Não foi possível encontrar uma conta de destino válida ao pesquisar pelo ID ":id" ou nome ":name".',
|
||||
|
||||
'generic_source_bad_data' => 'Could not find a valid source account when searching for ID ":id" or name ":name".',
|
||||
|
||||
'deposit_source_need_data' => 'É preciso ter um ID de uma conta de origem válida e/ou um nome de uma conta de origem válida para continuar.',
|
||||
'deposit_source_bad_data' => 'Não foi possível encontrar uma conta de origem válida ao pesquisar pelo ID ":id" ou nome ":name".',
|
||||
'deposit_dest_need_data' => 'É necessário ter um ID de conta de destino válido e/ou um nome de conta de destino válido para continuar.',
|
||||
|
||||
@@ -60,6 +60,7 @@ return [
|
||||
'less' => ':attribute trebuie să fie mai mic decât 10,000,000',
|
||||
'active_url' => ':attribute nu este o adresă URL validă.',
|
||||
'after' => ':attribute trebuie să fie o dată ulterioară :date.',
|
||||
'date_after' => 'End date must be before start date.',
|
||||
'alpha' => ':attribute poate conține numai litere.',
|
||||
'alpha_dash' => ':attribute poate conține numai litere, numere și liniuțe.',
|
||||
'alpha_num' => ':attribute poate conține numai litere și numere.',
|
||||
@@ -182,6 +183,8 @@ return [
|
||||
'withdrawal_dest_need_data' => 'Trebuie să continuați să obțineți un ID de cont de destinație valabil și / sau un nume de cont de destinație valabil.',
|
||||
'withdrawal_dest_bad_data' => 'Nu s-a găsit un cont de destinaţie valabil la căutarea ID ":id" sau nume ":name".',
|
||||
|
||||
'generic_source_bad_data' => 'Could not find a valid source account when searching for ID ":id" or name ":name".',
|
||||
|
||||
'deposit_source_need_data' => 'Trebuie să continuați să obțineți un ID de cont sursă valabil și / sau un nume de cont sursă valabil.',
|
||||
'deposit_source_bad_data' => 'Nu s-a găsit un cont sursă valabil la căutarea ID ":id" sau nume ":name".',
|
||||
'deposit_dest_need_data' => 'Trebuie să continuați să obțineți un ID de cont de destinație valabil și / sau un nume de cont de destinație valabil.',
|
||||
|
||||
@@ -60,6 +60,7 @@ return [
|
||||
'less' => ':attribute должен быть меньше 10,000,000',
|
||||
'active_url' => ':attribute не является допустимым URL-адресом.',
|
||||
'after' => ':attribute должна быть позже :date.',
|
||||
'date_after' => 'End date must be before start date.',
|
||||
'alpha' => ':attribute может содержать только буквы.',
|
||||
'alpha_dash' => ':attribute может содержать только буквы, числа и дефис.',
|
||||
'alpha_num' => ':attribute может содержать только буквы и числа.',
|
||||
@@ -182,6 +183,8 @@ return [
|
||||
'withdrawal_dest_need_data' => 'Для продолжения необходим действительный ID счёта назначения и/или действительное имя счёта.',
|
||||
'withdrawal_dest_bad_data' => 'Не удалось найти действительный счёт назначения при поиске ID ":id" или имени ":name".',
|
||||
|
||||
'generic_source_bad_data' => 'Could not find a valid source account when searching for ID ":id" or name ":name".',
|
||||
|
||||
'deposit_source_need_data' => 'Для продолжения необходим действительный ID счёта-источника и/или действительное имя счёта.',
|
||||
'deposit_source_bad_data' => 'Не удалось найти корректный счёт-источник при поиске ID ":id" или имени ":name".',
|
||||
'deposit_dest_need_data' => 'Для продолжения необходим действительный ID счёта назначения и/или действительное имя счёта.',
|
||||
|
||||
@@ -60,6 +60,7 @@ return [
|
||||
'less' => ':attribute musí byť menej než 10.000.000',
|
||||
'active_url' => ':attribute nie je platná adresa URL.',
|
||||
'after' => ':attribute musí byť neskôr, než :date.',
|
||||
'date_after' => 'End date must be before start date.',
|
||||
'alpha' => ':attribute môže obsahovať len písmená.',
|
||||
'alpha_dash' => ':attribute môže obsahovať len písmená, čísla a pomlčky.',
|
||||
'alpha_num' => ':attribute môže obsahovať len písmená a čísla.',
|
||||
@@ -182,6 +183,8 @@ return [
|
||||
'withdrawal_dest_need_data' => 'Pro pokračovanie je potrebné platné ID zdrojového účtu a/alebo platný názov zdrojového účtu.',
|
||||
'withdrawal_dest_bad_data' => 'Pre ID „:id“ alebo mena „:name“ sa nenašiel žiadny platný cieľový účet.',
|
||||
|
||||
'generic_source_bad_data' => 'Could not find a valid source account when searching for ID ":id" or name ":name".',
|
||||
|
||||
'deposit_source_need_data' => 'Pre pokračovanie je potrebné platné ID zdrojového účtu a/alebo platný názov zdrojového účtu.',
|
||||
'deposit_source_bad_data' => 'Pre ID „:id“ alebo „:name“ sa nenašiel žiadny platný zdrojový účet.',
|
||||
'deposit_dest_need_data' => 'Pro pokračovanie je potrebné platné ID cieľového účtu a/alebo platné meno cieľového účtu.',
|
||||
|
||||
@@ -60,6 +60,7 @@ return [
|
||||
'less' => ':attribute måste vara mindre än 10 000 000',
|
||||
'active_url' => ':attribute är inte en giltig URL.',
|
||||
'after' => ':attribute måste vara ett datum efter :date.',
|
||||
'date_after' => 'End date must be before start date.',
|
||||
'alpha' => ':attribute får enbart innehålla bokstäver.',
|
||||
'alpha_dash' => ':attribute får endast innehålla bokstäver, siffror och bindestreck.',
|
||||
'alpha_num' => ':attribute får endast innehålla bokstäver och siffror.',
|
||||
@@ -182,6 +183,8 @@ return [
|
||||
'withdrawal_dest_need_data' => 'Ett giltigt destinationskonto-ID och/eller giltigt mottagarkontonamn behövs för att gå vidare.',
|
||||
'withdrawal_dest_bad_data' => 'Det gick inte att hitta ett giltigt mottagarkonto med ID ":id" eller namn ":name".',
|
||||
|
||||
'generic_source_bad_data' => 'Could not find a valid source account when searching for ID ":id" or name ":name".',
|
||||
|
||||
'deposit_source_need_data' => 'Ett giltigt källkonto-ID och/eller ett giltigt källkontonamn behövs för att gå vidare.',
|
||||
'deposit_source_bad_data' => 'Det gick inte att hitta ett giltigt källkonto med ID ":id" eller namn ":name".',
|
||||
'deposit_dest_need_data' => 'Ett giltigt destinationskonto-ID och/eller giltigt mottagarkontonamn behövs för att gå vidare.',
|
||||
|
||||
@@ -60,6 +60,7 @@ return [
|
||||
'less' => ':attribute 10.000.000 den daha az olmalıdır',
|
||||
'active_url' => ':attribute geçerli bir URL değil.',
|
||||
'after' => ':attribute :date tarihinden sonrası için tarihlendirilmelidir.',
|
||||
'date_after' => 'End date must be before start date.',
|
||||
'alpha' => ':attribute sadece harf içerebilir.',
|
||||
'alpha_dash' => ':attribute sadece harf, sayı ve kısa çizgi içerebilir.',
|
||||
'alpha_num' => ':attribute sadece harf ve sayı içerebilir.',
|
||||
@@ -182,6 +183,8 @@ return [
|
||||
'withdrawal_dest_need_data' => 'Need to get a valid destination account ID and/or valid destination account name to continue.',
|
||||
'withdrawal_dest_bad_data' => 'Could not find a valid destination account when searching for ID ":id" or name ":name".',
|
||||
|
||||
'generic_source_bad_data' => 'Could not find a valid source account when searching for ID ":id" or name ":name".',
|
||||
|
||||
'deposit_source_need_data' => 'Need to get a valid source account ID and/or valid source account name to continue.',
|
||||
'deposit_source_bad_data' => 'Could not find a valid source account when searching for ID ":id" or name ":name".',
|
||||
'deposit_dest_need_data' => 'Need to get a valid destination account ID and/or valid destination account name to continue.',
|
||||
|
||||
@@ -60,6 +60,7 @@ return [
|
||||
'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ệ.',
|
||||
'after' => 'Thuộc tính: phải là một ngày sau: ngày.',
|
||||
'date_after' => 'End date must be before start date.',
|
||||
'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_num' => 'Thuộc tính: chỉ có thể chứa các chữ cái và số.',
|
||||
@@ -182,6 +183,8 @@ 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_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".',
|
||||
|
||||
'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_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.',
|
||||
|
||||
@@ -60,6 +60,7 @@ return [
|
||||
'less' => ':attribute 必须小于 10,000,000',
|
||||
'active_url' => ':attribute 不是有效的网址',
|
||||
'after' => ':attribute 必须是一个在 :date 之后的日期',
|
||||
'date_after' => 'End date must be before start date.',
|
||||
'alpha' => ':attribute 只能包含英文字母',
|
||||
'alpha_dash' => ':attribute 只能包含英文字母、数字和减号',
|
||||
'alpha_num' => ':attribute 只能包含英文字母和数字',
|
||||
@@ -182,6 +183,8 @@ return [
|
||||
'withdrawal_dest_need_data' => '需要一个有效的目标账户 ID 和/或目标账户名称才能继续',
|
||||
'withdrawal_dest_bad_data' => '搜索 ID “:id”或名称“:name”时找不到有效的目标账户',
|
||||
|
||||
'generic_source_bad_data' => 'Could not find a valid source account when searching for ID ":id" or name ":name".',
|
||||
|
||||
'deposit_source_need_data' => '需要一个有效的来源账户 ID 和/或来源账户名称才能继续',
|
||||
'deposit_source_bad_data' => '搜索 ID “:id”或名称“:name”时找不到有效的来源账户',
|
||||
'deposit_dest_need_data' => '需要一个有效的目标账户 ID 和/或目标账户名称才能继续',
|
||||
|
||||
@@ -60,6 +60,7 @@ return [
|
||||
'less' => ':attribute 必須小於 10,000,000。',
|
||||
'active_url' => ':attribute 不是有效的 URL。',
|
||||
'after' => ':attribute 必須是一個在 :date 之後的日期。',
|
||||
'date_after' => 'End date must be before start date.',
|
||||
'alpha' => ':attribute 只能包含字母。',
|
||||
'alpha_dash' => ':attribute 只能包含字母、數字和破折號。',
|
||||
'alpha_num' => ':attribute 只能包含數字和字母。',
|
||||
@@ -182,6 +183,8 @@ return [
|
||||
'withdrawal_dest_need_data' => '需要有效的目標帳戶 ID 及/或有效的目標帳戶名稱才能繼續。',
|
||||
'withdrawal_dest_bad_data' => '搜尋 ID ":id" 或名稱 ":name" 都找不到有效的目標帳戶。',
|
||||
|
||||
'generic_source_bad_data' => 'Could not find a valid source account when searching for ID ":id" or name ":name".',
|
||||
|
||||
'deposit_source_need_data' => '需要有效的來源帳戶 ID 及/或有效的來源帳戶名稱才能繼續。',
|
||||
'deposit_source_bad_data' => '搜尋 ID ":id" 或名稱 ":name" 都找不到有效的來源帳戶。',
|
||||
'deposit_dest_need_data' => '需要有效的目標帳戶 ID 及/或有效的目標帳戶名稱才能繼續。',
|
||||
|
||||
@@ -109,7 +109,7 @@ class StoreControllerTest extends TestCase
|
||||
['weekly', (string)$faker->numberBetween(1, 7)],
|
||||
['ndom', (string)$faker->numberBetween(1, 4) . ',' . $faker->numberBetween(1, 7)],
|
||||
['monthly', (string)$faker->numberBetween(1, 31)],
|
||||
['yearly', $faker->date()],
|
||||
['yearly', $faker->dateTimeBetween('-1 year','now')->format('Y-m-d')],
|
||||
];
|
||||
$set = [];
|
||||
|
||||
|
||||
244
tests/Api/Models/Recurrence/UpdateControllerTest.php
Normal file
244
tests/Api/Models/Recurrence/UpdateControllerTest.php
Normal file
@@ -0,0 +1,244 @@
|
||||
<?php
|
||||
/*
|
||||
* UpdateControllerTest.php
|
||||
* Copyright (c) 2021 james@firefly-iii.org
|
||||
*
|
||||
* This file is part of Firefly III (https://github.com/firefly-iii).
|
||||
*
|
||||
* 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.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Affero General Public License for more details.
|
||||
*
|
||||
* 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/>.
|
||||
*/
|
||||
|
||||
namespace Tests\Api\Models\Recurrence;
|
||||
|
||||
|
||||
use Faker\Factory;
|
||||
use Laravel\Passport\Passport;
|
||||
use Log;
|
||||
use Tests\TestCase;
|
||||
use Tests\Traits\CollectsValues;
|
||||
use Tests\Traits\RandomValues;
|
||||
use Tests\Traits\TestHelpers;
|
||||
|
||||
/**
|
||||
* Class UpdateControllerTest
|
||||
*/
|
||||
class UpdateControllerTest extends TestCase
|
||||
{
|
||||
use RandomValues, TestHelpers, CollectsValues;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
public function setUp(): void
|
||||
{
|
||||
parent::setUp();
|
||||
Passport::actingAs($this->user());
|
||||
Log::info(sprintf('Now in %s.', get_class($this)));
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @dataProvider updateDataProvider
|
||||
*/
|
||||
public function testUpdate(array $submission): void
|
||||
{
|
||||
$ignore = [
|
||||
'created_at',
|
||||
'updated_at',
|
||||
];
|
||||
$route = route('api.v1.recurrences.update', [$submission['id']]);
|
||||
|
||||
$this->updateAndCompare($route, $submission, $ignore);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @return array
|
||||
*/
|
||||
public function updateDataProvider(): array
|
||||
{
|
||||
$submissions = [];
|
||||
$all = $this->updateDataSet();
|
||||
foreach ($all as $name => $data) {
|
||||
$submissions[] = [$data];
|
||||
}
|
||||
|
||||
return $submissions;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @return array
|
||||
*/
|
||||
public function updateDataSet(): array
|
||||
{
|
||||
$faker = Factory::create();
|
||||
$types = [
|
||||
['daily', ''],
|
||||
['weekly', (string)$faker->numberBetween(1, 7)],
|
||||
['ndom', (string)$faker->numberBetween(1, 4) . ',' . $faker->numberBetween(1, 7)],
|
||||
['monthly', (string)$faker->numberBetween(1, 31)],
|
||||
['yearly', $faker->dateTimeBetween('-1 year', 'now')->format('Y-m-d')],
|
||||
];
|
||||
|
||||
$set = [
|
||||
'title' => [
|
||||
'id' => 1,
|
||||
'fields' => [
|
||||
'title' => ['test_value' => $faker->uuid],
|
||||
],
|
||||
'extra_ignore' => [],
|
||||
],
|
||||
'description' => [
|
||||
'id' => 1,
|
||||
'fields' => [
|
||||
'description' => ['test_value' => $faker->uuid],
|
||||
],
|
||||
'extra_ignore' => [],
|
||||
],
|
||||
'first_date' => [
|
||||
'id' => 1,
|
||||
'fields' => [
|
||||
'first_date' => ['test_value' => $faker->date()],
|
||||
],
|
||||
'extra_ignore' => [],
|
||||
],
|
||||
'repeat_until' => [
|
||||
'id' => 1,
|
||||
'fields' => [
|
||||
'repeat_until' => ['test_value' => $faker->dateTimeBetween('1 year', '2 year')->format('Y-m-d')],
|
||||
],
|
||||
'extra_ignore' => [],
|
||||
],
|
||||
'nr_of_repetitions' => [
|
||||
'id' => 1,
|
||||
'fields' => [
|
||||
'nr_of_repetitions' => ['test_value' => $faker->numberBetween(1, 5)],
|
||||
],
|
||||
'extra_ignore' => ['repeat_until'],
|
||||
],
|
||||
'apply_rules' => [
|
||||
'id' => 1,
|
||||
'fields' => [
|
||||
'apply_rules' => ['test_value' => $faker->boolean],
|
||||
],
|
||||
'extra_ignore' => [],
|
||||
],
|
||||
'active' => [
|
||||
'id' => 1,
|
||||
'fields' => [
|
||||
'active' => ['test_value' => $faker->boolean],
|
||||
],
|
||||
'extra_ignore' => [],
|
||||
],
|
||||
'notes' => [
|
||||
'id' => 1,
|
||||
'fields' => [
|
||||
'notes' => ['test_value' => $faker->uuid],
|
||||
],
|
||||
'extra_ignore' => [],
|
||||
],
|
||||
];
|
||||
// repetitions. Will submit 0,1 2 3 repetitions:
|
||||
for ($i = 0; $i < 4; $i++) {
|
||||
if (0 === $i) {
|
||||
$set[] = [
|
||||
'id' => 1,
|
||||
'fields' => [
|
||||
'repetitions' => [
|
||||
'test_value' => [],
|
||||
],
|
||||
],
|
||||
'extra_ignore' => [],
|
||||
];
|
||||
continue;
|
||||
}
|
||||
$extraRepetitions = [];
|
||||
// do $i repetitions
|
||||
for ($ii = 0; $ii < $i; $ii++) {
|
||||
//echo 'Now at ' . $i . ':' . $ii . ' <br>' . "\n";
|
||||
// now loop fields, enough to create sets I guess?
|
||||
$thisType = $types[$faker->numberBetween(0, 4)];
|
||||
// TODO maybe do some permutation stuff here?
|
||||
$extraRepetition = [
|
||||
'type' => $thisType[0],
|
||||
'moment' => $thisType[1],
|
||||
'skip' => $faker->numberBetween(1, 3),
|
||||
'weekend' => $faker->numberBetween(1, 4),
|
||||
];
|
||||
|
||||
$extraRepetitions[] = $extraRepetition;
|
||||
}
|
||||
$set[] = [
|
||||
'id' => 1,
|
||||
'fields' => [
|
||||
'repetitions' => [
|
||||
'test_value' => $extraRepetitions,
|
||||
],
|
||||
],
|
||||
'extra_ignore' => [],
|
||||
];
|
||||
}
|
||||
|
||||
// transactions. Will submit 0,1 2 3 transactions:
|
||||
for ($i = 0; $i < 4; $i++) {
|
||||
if (0 === $i) {
|
||||
$set[] = [
|
||||
'id' => 1,
|
||||
'fields' => [
|
||||
'transactions' => [
|
||||
'test_value' => [],
|
||||
],
|
||||
],
|
||||
'extra_ignore' => [],
|
||||
];
|
||||
continue;
|
||||
}
|
||||
$extraTransactions = [];
|
||||
// do $i repetitions
|
||||
for ($ii = 0; $ii < $i; $ii++) {
|
||||
//echo 'Now at ' . $i . ':' . $ii . ' <br>' . "\n";
|
||||
// now loop fields, enough to create sets I guess?
|
||||
// TODO maybe do some permutation stuff here?
|
||||
$extraTransaction = [
|
||||
'description' => $faker->uuid,
|
||||
'amount' => number_format($faker->randomFloat(2, 10, 100), 2),
|
||||
'skip' => $faker->numberBetween(1, 3),
|
||||
'weekend' => $faker->numberBetween(1, 4),
|
||||
'budget_id' => $faker->numberBetween(1, 2),
|
||||
'category_id' => $faker->numberBetween(1, 2),
|
||||
'tags' => ['a', 'c', 'd'],
|
||||
'source_id' => 1,
|
||||
'destination_id' => 8,
|
||||
];
|
||||
|
||||
$extraTransactions[] = $extraTransaction;
|
||||
}
|
||||
// TODO later maybe
|
||||
// $set[] = [
|
||||
// 'id' => 1,
|
||||
// 'fields' => [
|
||||
// 'transactions' => [
|
||||
// 'test_value' => $extraTransactions,
|
||||
// ],
|
||||
// ],
|
||||
// 'extra_ignore' => [],
|
||||
// ];
|
||||
}
|
||||
|
||||
return $set;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@@ -131,13 +131,13 @@ trait TestHelpers
|
||||
{
|
||||
foreach ($opts as $i => $func) {
|
||||
if (array_key_exists($i, $set)) {
|
||||
if(!is_array($set[$i])) {
|
||||
if (!is_array($set[$i])) {
|
||||
$set[$i] = $func();
|
||||
}
|
||||
if(is_array($set[$i])) {
|
||||
foreach($set[$i] as $ii => $lines) {
|
||||
foreach($lines as $iii => $value) {
|
||||
if(isset($opts[$i][$ii][$iii])) {
|
||||
if (is_array($set[$i])) {
|
||||
foreach ($set[$i] as $ii => $lines) {
|
||||
foreach ($lines as $iii => $value) {
|
||||
if (isset($opts[$i][$ii][$iii])) {
|
||||
$set[$i][$ii][$iii] = $opts[$i][$ii][$iii]();
|
||||
}
|
||||
}
|
||||
@@ -194,19 +194,26 @@ trait TestHelpers
|
||||
}
|
||||
// field in response was also in body:
|
||||
if (array_key_exists($rKey, $submissionArray)) {
|
||||
if ($submissionArray[$rKey] !== $rValue) {
|
||||
// comparison must be on array:
|
||||
if (is_array($submissionArray[$rKey]) && is_array($rValue)) {
|
||||
$this->compareArray($originalAttributes, $rKey, $submissionArray[$rKey], $rValue);
|
||||
}
|
||||
|
||||
$message = sprintf(
|
||||
"Expected field '%s' to be %s but its %s\nOriginal: %s\nSubmission: %s\nResult: %s",
|
||||
$rKey,
|
||||
var_export($submissionArray[$rKey], true),
|
||||
var_export($rValue, true),
|
||||
$originalString,
|
||||
json_encode($submissionArray),
|
||||
$responseString
|
||||
);
|
||||
$this->assertTrue(false, $message);
|
||||
continue;
|
||||
if (!is_array($submissionArray[$rKey]) && !is_array($rValue)) {
|
||||
if ($submissionArray[$rKey] !== $rValue) {
|
||||
|
||||
$message = sprintf(
|
||||
"Expected field '%s' to be %s but its %s\nOriginal: %s\nSubmission: %s\nResult: %s",
|
||||
$rKey,
|
||||
var_export($submissionArray[$rKey], true),
|
||||
var_export($rValue, true),
|
||||
$originalString,
|
||||
json_encode($submissionArray),
|
||||
$responseString
|
||||
);
|
||||
$this->assertTrue(false, $message);
|
||||
continue;
|
||||
}
|
||||
}
|
||||
continue;
|
||||
}
|
||||
@@ -282,13 +289,18 @@ trait TestHelpers
|
||||
}
|
||||
|
||||
/**
|
||||
* @param array $fullOriginal
|
||||
* @param array $fullOriginal
|
||||
* @param string $key
|
||||
* @param array $original
|
||||
* @param array $returned
|
||||
*/
|
||||
protected function compareArray(array $fullOriginal, string $key, array $original, array $returned)
|
||||
{
|
||||
// TODO this should be configurable but OK
|
||||
if(in_array($key, ['transactions','repetitions'], true) && 0 === count($original) && 0 !== count($returned)) {
|
||||
// accept this.
|
||||
return;
|
||||
}
|
||||
$ignore = ['id', 'created_at', 'updated_at'];
|
||||
foreach ($returned as $objectKey => $object) {
|
||||
// each object is a transaction, a rule trigger, a rule action, whatever.
|
||||
|
||||
Reference in New Issue
Block a user