mirror of
https://github.com/firefly-iii/firefly-iii.git
synced 2026-01-03 09:01:19 +00:00
Compare commits
7 Commits
develop-20
...
develop-20
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
9ecb414b02 | ||
|
|
ad4f908c24 | ||
|
|
025f739442 | ||
|
|
6df7354c48 | ||
|
|
3f77c845ca | ||
|
|
d4771f7a5c | ||
|
|
ec4e2bfa4f |
9
.github/workflows/sonarcloud.yml
vendored
9
.github/workflows/sonarcloud.yml
vendored
@@ -45,15 +45,6 @@ jobs:
|
||||
- name: Install Composer dependencies
|
||||
run: composer install --prefer-dist --no-interaction --no-progress --no-scripts
|
||||
|
||||
- name: PHPStan
|
||||
run: .ci/phpstan.sh
|
||||
|
||||
- name: PHPMD
|
||||
run: .ci/phpmd.sh
|
||||
|
||||
- name: PHP CS Fixer
|
||||
run: .ci/phpcs.sh
|
||||
|
||||
- name: "Create database file"
|
||||
run: touch storage/database/database.sqlite
|
||||
|
||||
|
||||
@@ -143,7 +143,7 @@ class ReportController extends Controller
|
||||
$cache->addProperty($accounts);
|
||||
$cache->addProperty($end);
|
||||
if ($cache->has()) {
|
||||
return response()->json($cache->get());
|
||||
// return response()->json($cache->get());
|
||||
}
|
||||
|
||||
app('log')->debug('Going to do operations for accounts ', $accounts->pluck('id')->toArray());
|
||||
@@ -220,11 +220,14 @@ class ReportController extends Controller
|
||||
$currentEnd = app('navigation')->endOfPeriod($currentEnd, $preferredRange);
|
||||
}
|
||||
while ($currentStart <= $currentEnd) {
|
||||
$key = $currentStart->format($format);
|
||||
$title = $currentStart->isoFormat($titleFormat);
|
||||
$income['entries'][$title] = app('steam')->bcround($currency[$key]['earned'] ?? '0', $currency['currency_decimal_places']);
|
||||
$expense['entries'][$title] = app('steam')->bcround($currency[$key]['spent'] ?? '0', $currency['currency_decimal_places']);
|
||||
$currentStart = app('navigation')->addPeriod($currentStart, $preferredRange, 0);
|
||||
$key = $currentStart->format($format);
|
||||
$title = $currentStart->isoFormat($titleFormat);
|
||||
// #8663 make sure the period exists in the data previously collected.
|
||||
if (array_key_exists($key, $currency)) {
|
||||
$income['entries'][$title] = app('steam')->bcround($currency[$key]['earned'] ?? '0', $currency['currency_decimal_places']);
|
||||
$expense['entries'][$title] = app('steam')->bcround($currency[$key]['spent'] ?? '0', $currency['currency_decimal_places']);
|
||||
}
|
||||
$currentStart = app('navigation')->addPeriod($currentStart, $preferredRange, 0);
|
||||
}
|
||||
|
||||
$chartData[] = $income;
|
||||
|
||||
@@ -29,9 +29,11 @@ use FireflyIII\Exceptions\FireflyException;
|
||||
use FireflyIII\Models\Account;
|
||||
use FireflyIII\Models\AccountMeta;
|
||||
use FireflyIII\Models\AccountType;
|
||||
use FireflyIII\Models\Transaction;
|
||||
use FireflyIII\Models\TransactionCurrency;
|
||||
use FireflyIII\Repositories\UserGroups\Currency\CurrencyRepositoryInterface;
|
||||
use Illuminate\Support\Collection;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
|
||||
/**
|
||||
* Class AccountTransformer
|
||||
@@ -39,6 +41,7 @@ use Illuminate\Support\Collection;
|
||||
class AccountTransformer extends AbstractTransformer
|
||||
{
|
||||
private array $accountMeta;
|
||||
private array $lastActivity;
|
||||
private array $accountTypes;
|
||||
private array $balances;
|
||||
private array $convertedBalances;
|
||||
@@ -50,9 +53,11 @@ class AccountTransformer extends AbstractTransformer
|
||||
*/
|
||||
public function collectMetaData(Collection $objects): Collection
|
||||
{
|
||||
// TODO separate methods
|
||||
$this->currencies = [];
|
||||
$this->accountMeta = [];
|
||||
$this->accountTypes = [];
|
||||
$this->lastActivity = [];
|
||||
$this->balances = app('steam')->balancesByAccounts($objects, $this->getDate());
|
||||
$this->convertedBalances = app('steam')->balancesByAccountsConverted($objects, $this->getDate());
|
||||
|
||||
@@ -62,6 +67,7 @@ class AccountTransformer extends AbstractTransformer
|
||||
|
||||
// get currencies:
|
||||
$accountIds = $objects->pluck('id')->toArray();
|
||||
// TODO move query to repository
|
||||
$meta = AccountMeta::whereIn('account_id', $accountIds)
|
||||
->whereIn('name', ['currency_id', 'account_role', 'account_number'])
|
||||
->get(['account_meta.id', 'account_meta.account_id', 'account_meta.name', 'account_meta.data'])
|
||||
@@ -79,6 +85,7 @@ class AccountTransformer extends AbstractTransformer
|
||||
}
|
||||
// get account types:
|
||||
// select accounts.id, account_types.type from account_types left join accounts on accounts.account_type_id = account_types.id;
|
||||
// TODO move query to repository
|
||||
$accountTypes = AccountType::leftJoin('accounts', 'accounts.account_type_id', '=', 'account_types.id')
|
||||
->whereIn('accounts.id', $accountIds)
|
||||
->get(['accounts.id', 'account_types.type'])
|
||||
@@ -89,6 +96,17 @@ class AccountTransformer extends AbstractTransformer
|
||||
$this->accountTypes[$row->id] = (string)config(sprintf('firefly.shortNamesByFullName.%s', $row->type));
|
||||
}
|
||||
|
||||
// get last activity
|
||||
// TODO move query to repository
|
||||
$array = Transaction::whereIn('account_id', $accountIds)
|
||||
->leftJoin('transaction_journals', 'transaction_journals.id', 'transactions.transaction_journal_id')
|
||||
->groupBy('transactions.account_id')
|
||||
->get(['transactions.account_id', DB::raw('MAX(transaction_journals.date) as date_max')])->toArray()
|
||||
;
|
||||
foreach ($array as $row) {
|
||||
$this->lastActivity[(int)$row['account_id']] = Carbon::parse($row['date_max'], config('app.timezone'));
|
||||
}
|
||||
|
||||
// TODO needs separate method.
|
||||
/** @var null|array $sort */
|
||||
$sort = $this->parameters->get('sort');
|
||||
@@ -189,6 +207,7 @@ class AccountTransformer extends AbstractTransformer
|
||||
'current_balance_date' => $this->getDate()->endOfDay()->toAtomString(),
|
||||
|
||||
// more meta
|
||||
'last_activity' => array_key_exists($id, $this->lastActivity) ? $this->lastActivity[$id]->toAtomString() : null,
|
||||
|
||||
// 'notes' => $this->repository->getNoteText($account),
|
||||
// 'monthly_payment_date' => $monthlyPaymentDate,
|
||||
|
||||
73
composer.lock
generated
73
composer.lock
generated
@@ -2014,16 +2014,16 @@
|
||||
},
|
||||
{
|
||||
"name": "laravel/framework",
|
||||
"version": "v10.47.0",
|
||||
"version": "v10.48.2",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/laravel/framework.git",
|
||||
"reference": "fce29b8de62733cdecbe12e3bae801f83fff2ea4"
|
||||
"reference": "32a8bb151d748b579c3794dea53b56bd40dfbbd3"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/laravel/framework/zipball/fce29b8de62733cdecbe12e3bae801f83fff2ea4",
|
||||
"reference": "fce29b8de62733cdecbe12e3bae801f83fff2ea4",
|
||||
"url": "https://api.github.com/repos/laravel/framework/zipball/32a8bb151d748b579c3794dea53b56bd40dfbbd3",
|
||||
"reference": "32a8bb151d748b579c3794dea53b56bd40dfbbd3",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -2071,6 +2071,7 @@
|
||||
"conflict": {
|
||||
"carbonphp/carbon-doctrine-types": ">=3.0",
|
||||
"doctrine/dbal": ">=4.0",
|
||||
"mockery/mockery": "1.6.8",
|
||||
"phpunit/phpunit": ">=11.0.0",
|
||||
"tightenco/collect": "<5.5.33"
|
||||
},
|
||||
@@ -2216,7 +2217,7 @@
|
||||
"issues": "https://github.com/laravel/framework/issues",
|
||||
"source": "https://github.com/laravel/framework"
|
||||
},
|
||||
"time": "2024-03-05T15:18:36+00:00"
|
||||
"time": "2024-03-12T16:35:43+00:00"
|
||||
},
|
||||
{
|
||||
"name": "laravel/passport",
|
||||
@@ -9300,16 +9301,16 @@
|
||||
"packages-dev": [
|
||||
{
|
||||
"name": "barryvdh/laravel-debugbar",
|
||||
"version": "v3.11.0",
|
||||
"version": "v3.12.2",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/barryvdh/laravel-debugbar.git",
|
||||
"reference": "762684120b4edba3f2cd1d2c33d63a34866b6caa"
|
||||
"reference": "43555503052443964ce2c1c1f3b0378e58219eb8"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/barryvdh/laravel-debugbar/zipball/762684120b4edba3f2cd1d2c33d63a34866b6caa",
|
||||
"reference": "762684120b4edba3f2cd1d2c33d63a34866b6caa",
|
||||
"url": "https://api.github.com/repos/barryvdh/laravel-debugbar/zipball/43555503052443964ce2c1c1f3b0378e58219eb8",
|
||||
"reference": "43555503052443964ce2c1c1f3b0378e58219eb8",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -9368,7 +9369,7 @@
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/barryvdh/laravel-debugbar/issues",
|
||||
"source": "https://github.com/barryvdh/laravel-debugbar/tree/v3.11.0"
|
||||
"source": "https://github.com/barryvdh/laravel-debugbar/tree/v3.12.2"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -9380,7 +9381,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
],
|
||||
"time": "2024-03-09T08:41:41+00:00"
|
||||
"time": "2024-03-13T09:50:34+00:00"
|
||||
},
|
||||
{
|
||||
"name": "barryvdh/laravel-ide-helper",
|
||||
@@ -9962,16 +9963,16 @@
|
||||
},
|
||||
{
|
||||
"name": "maximebf/debugbar",
|
||||
"version": "v1.21.0",
|
||||
"version": "v1.21.3",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/maximebf/php-debugbar.git",
|
||||
"reference": "9700e509740daa03d909e5f7cc19f719bcbe6915"
|
||||
"reference": "0b407703b08ea0cf6ebc61e267cc96ff7000911b"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/maximebf/php-debugbar/zipball/9700e509740daa03d909e5f7cc19f719bcbe6915",
|
||||
"reference": "9700e509740daa03d909e5f7cc19f719bcbe6915",
|
||||
"url": "https://api.github.com/repos/maximebf/php-debugbar/zipball/0b407703b08ea0cf6ebc61e267cc96ff7000911b",
|
||||
"reference": "0b407703b08ea0cf6ebc61e267cc96ff7000911b",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -9991,7 +9992,7 @@
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "1.20-dev"
|
||||
"dev-master": "1.21-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
@@ -10022,13 +10023,13 @@
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/maximebf/php-debugbar/issues",
|
||||
"source": "https://github.com/maximebf/php-debugbar/tree/v1.21.0"
|
||||
"source": "https://github.com/maximebf/php-debugbar/tree/v1.21.3"
|
||||
},
|
||||
"time": "2024-03-01T15:28:34+00:00"
|
||||
"time": "2024-03-12T14:23:07+00:00"
|
||||
},
|
||||
{
|
||||
"name": "mockery/mockery",
|
||||
"version": "1.6.7",
|
||||
"version": "1.6.9",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/mockery/mockery.git",
|
||||
@@ -10636,16 +10637,16 @@
|
||||
},
|
||||
{
|
||||
"name": "phpstan/phpstan",
|
||||
"version": "1.10.60",
|
||||
"version": "1.10.62",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/phpstan/phpstan.git",
|
||||
"reference": "95dcea7d6c628a3f2f56d091d8a0219485a86bbe"
|
||||
"reference": "cd5c8a1660ed3540b211407c77abf4af193a6af9"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/phpstan/phpstan/zipball/95dcea7d6c628a3f2f56d091d8a0219485a86bbe",
|
||||
"reference": "95dcea7d6c628a3f2f56d091d8a0219485a86bbe",
|
||||
"url": "https://api.github.com/repos/phpstan/phpstan/zipball/cd5c8a1660ed3540b211407c77abf4af193a6af9",
|
||||
"reference": "cd5c8a1660ed3540b211407c77abf4af193a6af9",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -10694,7 +10695,7 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-03-07T13:30:19+00:00"
|
||||
"time": "2024-03-13T12:27:20+00:00"
|
||||
},
|
||||
{
|
||||
"name": "phpstan/phpstan-deprecation-rules",
|
||||
@@ -10795,16 +10796,16 @@
|
||||
},
|
||||
{
|
||||
"name": "phpunit/php-code-coverage",
|
||||
"version": "10.1.13",
|
||||
"version": "10.1.14",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/sebastianbergmann/php-code-coverage.git",
|
||||
"reference": "d51c3aec14896d5e80b354fad58e998d1980f8f8"
|
||||
"reference": "e3f51450ebffe8e0efdf7346ae966a656f7d5e5b"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/d51c3aec14896d5e80b354fad58e998d1980f8f8",
|
||||
"reference": "d51c3aec14896d5e80b354fad58e998d1980f8f8",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/e3f51450ebffe8e0efdf7346ae966a656f7d5e5b",
|
||||
"reference": "e3f51450ebffe8e0efdf7346ae966a656f7d5e5b",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -10861,7 +10862,7 @@
|
||||
"support": {
|
||||
"issues": "https://github.com/sebastianbergmann/php-code-coverage/issues",
|
||||
"security": "https://github.com/sebastianbergmann/php-code-coverage/security/policy",
|
||||
"source": "https://github.com/sebastianbergmann/php-code-coverage/tree/10.1.13"
|
||||
"source": "https://github.com/sebastianbergmann/php-code-coverage/tree/10.1.14"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -10869,7 +10870,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
],
|
||||
"time": "2024-03-09T16:54:15+00:00"
|
||||
"time": "2024-03-12T15:33:41+00:00"
|
||||
},
|
||||
{
|
||||
"name": "phpunit/php-file-iterator",
|
||||
@@ -11116,16 +11117,16 @@
|
||||
},
|
||||
{
|
||||
"name": "phpunit/phpunit",
|
||||
"version": "10.5.12",
|
||||
"version": "10.5.13",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/sebastianbergmann/phpunit.git",
|
||||
"reference": "41a9886b85ac7bf3929853baf96b95361cd69d2b"
|
||||
"reference": "20a63fc1c6db29b15da3bd02d4b6cf59900088a7"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/41a9886b85ac7bf3929853baf96b95361cd69d2b",
|
||||
"reference": "41a9886b85ac7bf3929853baf96b95361cd69d2b",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/20a63fc1c6db29b15da3bd02d4b6cf59900088a7",
|
||||
"reference": "20a63fc1c6db29b15da3bd02d4b6cf59900088a7",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -11197,7 +11198,7 @@
|
||||
"support": {
|
||||
"issues": "https://github.com/sebastianbergmann/phpunit/issues",
|
||||
"security": "https://github.com/sebastianbergmann/phpunit/security/policy",
|
||||
"source": "https://github.com/sebastianbergmann/phpunit/tree/10.5.12"
|
||||
"source": "https://github.com/sebastianbergmann/phpunit/tree/10.5.13"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -11213,7 +11214,7 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-03-09T12:04:07+00:00"
|
||||
"time": "2024-03-12T15:37:41+00:00"
|
||||
},
|
||||
{
|
||||
"name": "sebastian/cli-parser",
|
||||
|
||||
@@ -117,7 +117,7 @@ return [
|
||||
'expression_engine' => false,
|
||||
// see cer.php for exchange rates feature flag.
|
||||
],
|
||||
'version' => 'develop/2024-03-11',
|
||||
'version' => 'develop/2024-03-14',
|
||||
'api_version' => '2.0.12',
|
||||
'db_version' => 23,
|
||||
|
||||
|
||||
1
public/build/assets/index-6c8a02f2.js
Normal file
1
public/build/assets/index-6c8a02f2.js
Normal file
@@ -0,0 +1 @@
|
||||
import{d as l,f as d}from"./format-money-5a1aa122.js";import{f as o,i as n}from"./vendor-291d7a70.js";/* empty css */import{G as f}from"./get-2d864c96.js";const r=window.location.href.split("/"),h=r[r.length-1];let b=function(){return{notifications:{error:{show:!1,text:"",url:""},success:{show:!1,text:"",url:""},wait:{show:!1,text:""}},totalPages:1,page:1,tableColumns:{name:{enabled:!0}},sortingColumn:"",sortDirection:"",accounts:[],sort(a){return this.sortingColumn=a,this.sortDirection=this.sortDirection==="asc"?"desc":"asc",this.loadAccounts(),!1},formatMoney(a,e){return d(a,e)},format(a){return o(a,n.t("config.date_time_fns"))},init(){this.notifications.wait.show=!0,this.notifications.wait.text=n.t("firefly.wait_loading_data"),this.loadAccounts()},loadAccounts(){this.notifications.wait.show=!0,this.notifications.wait.text=n.t("firefly.wait_loading_data"),this.accounts=[];const a=[{column:this.sortingColumn,direction:this.sortDirection}];new f().index({sorting:a,type:h,page:this.page}).then(e=>{for(let i=0;i<e.data.data.length;i++)if(e.data.data.hasOwnProperty(i)){let t=e.data.data[i],u={id:parseInt(t.id),active:t.attributes.active,name:t.attributes.name,type:t.attributes.type,role:t.attributes.account_role,iban:t.attributes.iban===null?"":t.attributes.iban.match(/.{1,4}/g).join(" "),account_number:t.attributes.account_number===null?"":t.attributes.account_number,current_balance:t.attributes.current_balance,currency_code:t.attributes.currency_code,native_current_balance:t.attributes.native_current_balance,native_currency_code:t.attributes.native_currency_code,last_activity:t.attributes.last_activity===null?"":o(new Date(t.attributes.last_activity),"P")};this.accounts.push(u)}this.notifications.wait.show=!1})}}},s={index:b,dates:l};function c(){Object.keys(s).forEach(a=>{console.log(`Loading page component "${a}"`);let e=s[a]();Alpine.data(a,()=>e)}),Alpine.start()}document.addEventListener("firefly-iii-bootstrapped",()=>{console.log("Loaded through event listener."),c()});window.bootstrapped&&(console.log("Loaded through window variable."),c());
|
||||
@@ -1 +0,0 @@
|
||||
import{d as u,f as l}from"./format-money-5a1aa122.js";import{f as d,i as n}from"./vendor-291d7a70.js";/* empty css */import{G as f}from"./get-2d864c96.js";const o=window.location.href.split("/"),h=o[o.length-1];let b=function(){return{notifications:{error:{show:!1,text:"",url:""},success:{show:!1,text:"",url:""},wait:{show:!1,text:""}},totalPages:1,page:1,tableColumns:{name:{enabled:!0}},sortingColumn:"",sortDirection:"",accounts:[],sort(a){return this.sortingColumn=a,this.sortDirection=this.sortDirection==="asc"?"desc":"asc",this.loadAccounts(),!1},formatMoney(a,e){return l(a,e)},format(a){return d(a,n.t("config.date_time_fns"))},init(){this.notifications.wait.show=!0,this.notifications.wait.text=n.t("firefly.wait_loading_data"),this.loadAccounts()},loadAccounts(){this.notifications.wait.show=!0,this.notifications.wait.text=n.t("firefly.wait_loading_data"),this.accounts=[];const a=[{column:this.sortingColumn,direction:this.sortDirection}];new f().index({sorting:a,type:h,page:this.page}).then(e=>{for(let i=0;i<e.data.data.length;i++)if(e.data.data.hasOwnProperty(i)){let t=e.data.data[i],c={id:parseInt(t.id),active:t.attributes.active,name:t.attributes.name,type:t.attributes.type,iban:t.attributes.iban===null?"":t.attributes.iban.match(/.{1,4}/g).join(" "),account_number:t.attributes.account_number===null?"":t.attributes.account_number,current_balance:t.attributes.current_balance,currency_code:t.attributes.currency_code,native_current_balance:t.attributes.native_current_balance,native_currency_code:t.attributes.native_currency_code};this.accounts.push(c)}this.notifications.wait.show=!1})}}},r={index:b,dates:u};function s(){Object.keys(r).forEach(a=>{console.log(`Loading page component "${a}"`);let e=r[a]();Alpine.data(a,()=>e)}),Alpine.start()}document.addEventListener("firefly-iii-bootstrapped",()=>{console.log("Loaded through event listener."),s()});window.bootstrapped&&(console.log("Loaded through window variable."),s());
|
||||
@@ -106,7 +106,7 @@
|
||||
"css": [
|
||||
"assets/grid-ff3-theme-badb0a41.css"
|
||||
],
|
||||
"file": "assets/index-fdc173aa.js",
|
||||
"file": "assets/index-6c8a02f2.js",
|
||||
"imports": [
|
||||
"_format-money-5a1aa122.js",
|
||||
"_vendor-291d7a70.js",
|
||||
|
||||
15
qodana.yaml
15
qodana.yaml
@@ -1,15 +0,0 @@
|
||||
profile:
|
||||
name: qodana.recommended
|
||||
version: "1.0"
|
||||
linter: jetbrains/qodana-php:latest
|
||||
exclude:
|
||||
- name: All
|
||||
paths:
|
||||
- .ci
|
||||
- _ide_helper.php
|
||||
- public/v1/css/jquery-ui
|
||||
- public/v1/fonts
|
||||
- public/v1/lib
|
||||
- public/v1/js/lib
|
||||
- public/v3
|
||||
- public/v3-local
|
||||
@@ -93,13 +93,14 @@ let index = function () {
|
||||
active: current.attributes.active,
|
||||
name: current.attributes.name,
|
||||
type: current.attributes.type,
|
||||
// role: current.attributes.account_role,
|
||||
role: current.attributes.account_role,
|
||||
iban: null === current.attributes.iban ? '' : current.attributes.iban.match(/.{1,4}/g).join(' '),
|
||||
account_number: null === current.attributes.account_number ? '' : current.attributes.account_number,
|
||||
current_balance: current.attributes.current_balance,
|
||||
currency_code: current.attributes.currency_code,
|
||||
native_current_balance: current.attributes.native_current_balance,
|
||||
native_currency_code: current.attributes.native_currency_code,
|
||||
last_activity: null === current.attributes.last_activity ? '' : format(new Date(current.attributes.last_activity),'P'),
|
||||
};
|
||||
this.accounts.push(account);
|
||||
}
|
||||
|
||||
@@ -35,15 +35,15 @@ declare(strict_types=1);
|
||||
|
||||
return [
|
||||
'home' => 'Domů',
|
||||
'budgets' => 'Budgets',
|
||||
'budgets' => 'Rozpočty',
|
||||
'subscriptions' => 'Subscriptions',
|
||||
'transactions' => 'Transactions',
|
||||
'title_expenses' => 'Expenses',
|
||||
'title_withdrawal' => 'Expenses',
|
||||
'transactions' => 'Transakce',
|
||||
'title_expenses' => 'Výdaje',
|
||||
'title_withdrawal' => 'Výdaje',
|
||||
'title_revenue' => 'Revenue / income',
|
||||
'title_deposit' => 'Revenue / income',
|
||||
'title_transfer' => 'Transfers',
|
||||
'title_transfers' => 'Transfers',
|
||||
'title_transfer' => 'Převody',
|
||||
'title_transfers' => 'Převody',
|
||||
'edit_currency' => 'Upravit měnu „:name“',
|
||||
'delete_currency' => 'Odstranit měnu „:name“',
|
||||
'newPiggyBank' => 'Vytvořit novou pokladničku',
|
||||
|
||||
@@ -56,16 +56,16 @@ return [
|
||||
*/
|
||||
|
||||
// invite
|
||||
'invitation_created_subject' => 'An invitation has been created',
|
||||
'invitation_created_body' => 'Admin user ":email" created a user invitation which can be used by whoever is behind email address ":invitee". The invite will be valid for 48hrs.',
|
||||
'invite_user_subject' => 'You\'ve been invited to create a Firefly III account.',
|
||||
'invitation_introduction' => 'You\'ve been invited to create a Firefly III account on **:host**. Firefly III is a personal, self-hosted, private personal finance manager. All the cool kids are using it.',
|
||||
'invitation_invited_by' => 'You\'ve been invited by ":admin" and this invitation was sent to ":invitee". That\'s you, right?',
|
||||
'invitation_url' => 'The invitation is valid for 48 hours and can be redeemed by surfing to [Firefly III](:url). Enjoy!',
|
||||
'invitation_created_subject' => 'Pozvánka byla vytvořena',
|
||||
'invitation_created_body' => 'Admin uživatel ":email" vytvořil uživatelskou pozvánku, kterou může použít kdokoliv, kdo stojí za e-mailovou adresou ":invitee". Pozvánka bude platná 48 hodin.',
|
||||
'invite_user_subject' => 'Byli jste pozváni k vytvoření účtu Firefly III.',
|
||||
'invitation_introduction' => 'Byli jste pozváni k vytvoření účtu Firefly III na **:host**. Firefly III je osobní, vlastní soukromý správce financí.',
|
||||
'invitation_invited_by' => 'Byli jste pozváni ":admin" a tato pozvánka byla odeslána na ":invitee". To jste vy, že?',
|
||||
'invitation_url' => 'Pozvánka je platná 48 hodin a může být využita kliknutím na [Firefly III](:url). Užívejte si ji!',
|
||||
|
||||
// new IP
|
||||
'login_from_new_ip' => 'Nové přihlášení do Firefly III',
|
||||
'slack_login_from_new_ip' => 'New Firefly III login from IP :ip (:host)',
|
||||
'slack_login_from_new_ip' => 'Nové přihlášení Firefly III z IP :ip (:host)',
|
||||
'new_ip_body' => 'Firefly III zjistil nové přihlášení na Vašem účtu z neznámé IP adresy. Pokud jste se nikdy nepřihlásili z IP adresy níže, nebo to bylo před více než šesti měsíci, Firefly III Vás upozorní.',
|
||||
'new_ip_warning' => 'Pokud rozpoznáte tuto IP adresu nebo přihlašovací jméno, můžete tuto zprávu ignorovat. Pokud jste se nepřihlásili, nebo jestli nemáte tušení, o co jde, ověřte zabezpečení hesla, změňte ho a odhlásíte všechny ostatní relace. Chcete-li to provést, jděte na stránku svého profilu. Samozřejmě už máte dvoufaktorové přihlašování povoleno, že? Zůstaňte v bezpečí!',
|
||||
'ip_address' => 'IP adresa',
|
||||
@@ -80,9 +80,9 @@ return [
|
||||
|
||||
// registered
|
||||
'registered_subject' => 'Vítejte ve Firefly III!',
|
||||
'registered_subject_admin' => 'A new user has registered',
|
||||
'admin_new_user_registered' => 'A new user has registered. User **:email** was given user ID #:id.',
|
||||
'registered_welcome' => 'Welcome to [Firefly III](:address). Your registration has made it, and this email is here to confirm it. Yay!',
|
||||
'registered_subject_admin' => 'Nový uživatel se zaregistroval',
|
||||
'admin_new_user_registered' => 'Nový uživatel se zaregistroval. Uživatel **:email** dostal uživateleské ID #:id.',
|
||||
'registered_welcome' => 'Vítejte v [Firefly III](:address). Vaše registrace proběhla a tento e-mail je zde pro potvrzení. Jupí!',
|
||||
'registered_pw' => 'If you have forgotten your password already, please reset it using [the password reset tool](:address/password/reset).',
|
||||
'registered_help' => 'V pravém horním rohu každé stránky je ikona nápovědy. Pokud potřebujete pomoc, klikněte na ní!',
|
||||
'registered_closing' => 'Užívejte!',
|
||||
@@ -102,7 +102,7 @@ return [
|
||||
*/
|
||||
|
||||
// new version
|
||||
'new_version_email_subject' => 'A new Firefly III version is available',
|
||||
'new_version_email_subject' => 'Je dostupná nová verze Firefly III',
|
||||
|
||||
// email change
|
||||
'email_change_subject' => 'Vaše Firefly III e-mailová adresa se změnila',
|
||||
@@ -110,9 +110,9 @@ return [
|
||||
'email_change_body_to_old' => 'You or somebody with access to your Firefly III account has changed your email address. If you did not expect this to happen, you **must** follow the "undo"-link below to protect your account!',
|
||||
'email_change_ignore' => 'Pokud jste iniciovali tuto změnu, můžete tuto zprávu klidně ignorovat.',
|
||||
'email_change_old' => 'Stará e-mailová adresa byla: :email',
|
||||
'email_change_old_strong' => 'The old email address was: **:email**',
|
||||
'email_change_old_strong' => 'Stará e-mailová adresa byla: **:email**',
|
||||
'email_change_new' => 'Nová e-mailová adresa je: :email',
|
||||
'email_change_new_strong' => 'The new email address is: **:email**',
|
||||
'email_change_new_strong' => 'Nová e-mailová adresa je: **:email**',
|
||||
'email_change_instructions' => 'Dokud nepotvrdíte tuto změnu, tak nemůžete používat Firefly III. Postupujte prosím kliknutím na níže uvedený odkaz.',
|
||||
'email_change_undo_link' => 'Změnu vrátíte zpět kliknutím na odkaz:',
|
||||
|
||||
@@ -169,7 +169,7 @@ return [
|
||||
'bill_warning_extension_date' => 'Your bill **":name"** is due to be extended or cancelled on :date. This moment will pass in about **:diff days**.',
|
||||
'bill_warning_end_date_zero' => 'Your bill **":name"** is due to end on :date. This moment will pass **TODAY!**',
|
||||
'bill_warning_extension_date_zero' => 'Your bill **":name"** is due to be extended or cancelled on :date. This moment will pass **TODAY!**',
|
||||
'bill_warning_please_action' => 'Please take the appropriate action.',
|
||||
'bill_warning_please_action' => 'Přijměte prosím odpovídající opatření.',
|
||||
];
|
||||
/*
|
||||
* PLEASE DO NOT EDIT THIS FILE DIRECTLY.
|
||||
|
||||
@@ -44,7 +44,7 @@ return [
|
||||
'be_right_back' => 'Hned jsme zpět!',
|
||||
'check_back' => 'Firefly III is down for some necessary maintenance. Please check back in a second. If you happen to see this message on the demo site, just wait a few minutes. The database is reset every few hours.',
|
||||
'error_occurred' => 'Jejda! Došlo k chybě.',
|
||||
'db_error_occurred' => 'Whoops! A database error occurred.',
|
||||
'db_error_occurred' => 'Jejda! Došlo k chybě databáze.',
|
||||
'error_not_recoverable' => 'Bohužel, tato chyba je neopravitelná :(. Firefly III se pokazil. Chyba je:',
|
||||
'error' => 'Chyba',
|
||||
'error_location' => 'Došlo k chybě v souboru <span style="font-family: monospace;">:file</span> na řádku :line s kódem :code.',
|
||||
@@ -63,7 +63,7 @@ return [
|
||||
*/
|
||||
|
||||
'collect_info' => 'Shromažďujte prosím další informace do adresáře <code>storage/logs</code>, kde najdete chybové záznamy. Pokud používáte Docker, použijte <code>docker logs -f [container]</code>.',
|
||||
'collect_info_more' => 'You can read more about collecting error information in <a href="https://docs.firefly-iii.org/how-to/general/debug/">the FAQ</a>.',
|
||||
'collect_info_more' => 'Více o sběru informací o chybě si můžete přečíst v <a href="https://docs.firefly-iii.org/how-to/general/debug/">FAQ</a>.',
|
||||
'github_help' => 'Získejte nápovědu na GitHub',
|
||||
'github_instructions' => 'Jste více než vítáni při otevření nových hlášení <strong><a href="https://github.com/firefly-iii/firefly-iii/issues">na GitHub</a></strong>.',
|
||||
'use_search' => 'Použijte vyhledávání!',
|
||||
|
||||
@@ -78,7 +78,7 @@ return [
|
||||
'reports_index_intro' => 'Pomocí těchto přehledů získáte podrobné informace o svých financích.',
|
||||
'reports_index_inputReportType' => 'Vyberte typ přehledu. Podívejte se na stránky nápovědy a zjistěte, co vám každý přehled ukazuje.',
|
||||
'reports_index_inputAccountsSelect' => 'Můžete vynechávat nebo zahrnovat majetkové účty, jak potřebujete.',
|
||||
'reports_index_inputDateRange' => 'The selected date range is entirely up to you: from one day to 10 years or more.',
|
||||
'reports_index_inputDateRange' => 'Vybrané období je zcela na vás: od jednoho dne do 10 let a více.',
|
||||
'reports_index_extra-options-box' => 'Podle toho, jaký výkaz jste vybrali, je zde možné vybrat další filtry a volby. Při změně typu výkazu sledujte tuto oblast.',
|
||||
|
||||
// reports (reports)
|
||||
|
||||
@@ -49,10 +49,10 @@ return [
|
||||
'already_has_destination_asset' => 'Tato transakce již má ":name" jako cílový majetkový účet',
|
||||
'already_has_destination' => 'Tato transakce již má ":name" jako cílový účet',
|
||||
'already_has_source' => 'Tato transakce již má ":name" jako zdrojový účet',
|
||||
'already_linked_to_subscription' => 'The transaction is already linked to subscription ":name"',
|
||||
'already_linked_to_subscription' => 'Transakce je již propojena s předplatným ":name"',
|
||||
'already_linked_to_category' => 'Transakce je již propojena s kategorií ":name"',
|
||||
'already_linked_to_budget' => 'Transakce je již propojena s rozpočtem ":name"',
|
||||
'cannot_find_subscription' => 'Firefly III can\'t find subscription ":name"',
|
||||
'cannot_find_subscription' => 'Firefly III nemůže najít předplatné ":name"',
|
||||
'no_notes_to_move' => 'Transakce nemá žádné poznámky k přesunutí do pole popisu',
|
||||
'no_tags_to_remove' => 'Transakce nemá žádné štítky k odstranění',
|
||||
'not_withdrawal' => 'Transakce není výběrem',
|
||||
|
||||
@@ -124,8 +124,10 @@
|
||||
<td>
|
||||
<span x-text="formatMoney(account.current_balance, account.currency_code)"></span>
|
||||
</td>
|
||||
<td>TODO</td>
|
||||
<td>TODO</td>
|
||||
<td>
|
||||
<span x-text="account.last_activity"></span>
|
||||
</td>
|
||||
<td>TODO 2 </td>
|
||||
<td> </td>
|
||||
</tr>
|
||||
</template>
|
||||
|
||||
Reference in New Issue
Block a user