James Cole 2023-12-03 07:44:53 +01:00
parent 3136bccb24
commit 40083bf2b4
No known key found for this signature in database
GPG Key ID: B49A324B7EAD6D80
3 changed files with 22 additions and 6 deletions

View File

@ -116,6 +116,17 @@ class AccountController extends Controller
$accounts = $this->repository->getAccountsById($frontPage->data);
}
// both options are overruled by "preselected"
if('all' === $params['preselected']) {
$accounts = $this->repository->getAccountsByType([AccountType::ASSET, AccountType::DEFAULT, AccountType::LOAN, AccountType::DEBT, AccountType::MORTGAGE]);
}
if('assets' === $params['preselected']) {
$accounts = $this->repository->getAccountsByType([AccountType::ASSET, AccountType::DEFAULT]);
}
if('liabilities' === $params['preselected']) {
$accounts = $this->repository->getAccountsByType([AccountType::LOAN, AccountType::DEBT, AccountType::MORTGAGE]);
}
/** @var Account $account */
foreach ($accounts as $account) {
$currency = $this->repository->getAccountCurrency($account);

View File

@ -30,9 +30,9 @@ use Illuminate\Foundation\Http\FormRequest;
use Illuminate\Validation\Validator;
/**
* Class DashboardChartRequest
* Class DashboardChartRequest
*/
class DashboardChartRequest extends FormRequest
class DashboardChartRequest extends FormRequest
{
use ChecksLogin;
use ConvertsDataTypes;
@ -46,7 +46,8 @@ class DashboardChartRequest extends FormRequest
public function getAll(): array
{
return [
'accounts' => $this->getAccountList(),
'accounts' => $this->getAccountList(),
'preselected' => $this->convertString('preselected'),
];
}
@ -58,9 +59,10 @@ class DashboardChartRequest extends FormRequest
public function rules(): array
{
return [
'start' => 'required|date|after:1900-01-01|before:2099-12-31',
'end' => 'required|date|after_or_equal:start|before:2099-12-31|after:1900-01-01',
'accounts.*' => 'exists:accounts,id',
'start' => 'required|date|after:1900-01-01|before:2099-12-31',
'end' => 'required|date|after_or_equal:start|before:2099-12-31|after:1900-01-01',
'preselected' => sprintf('in:%s', join(',', config('firefly.preselected_accounts'))),
'accounts.*' => 'exists:accounts,id',
];
}

View File

@ -912,4 +912,7 @@ return [
// only used in v1
'allowed_sort_parameters' => ['order', 'name', 'iban'],
// preselected account lists possibilities:
'preselected_accounts' => ['all','assets','liabilities'],
];