mirror of
https://github.com/firefly-iii/firefly-iii.git
synced 2025-11-09 11:18:10 +00:00
Compare commits
23 Commits
develop-20
...
develop
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c43162727f | ||
|
|
db0c7e4d9a | ||
|
|
57ea24e73d | ||
|
|
e7fe6fdd3a | ||
|
|
a498169148 | ||
|
|
68183a0a0e | ||
|
|
d2610be790 | ||
|
|
38691d6fdf | ||
|
|
e7432d791e | ||
|
|
3a26ed5cfa | ||
|
|
119bc96669 | ||
|
|
93238e3993 | ||
|
|
eed5f1ca92 | ||
|
|
ae2ab86e88 | ||
|
|
4c4e7e4125 | ||
|
|
37d6319fb1 | ||
|
|
444c038d9f | ||
|
|
4cd9d543eb | ||
|
|
3963648bb7 | ||
|
|
aee5f5cdf8 | ||
|
|
2c44bbb009 | ||
|
|
57d8d37ac7 | ||
|
|
732d6c807c |
@@ -57,26 +57,26 @@ return RectorConfig::configure()
|
|||||||
// uncomment to reach your current PHP version
|
// uncomment to reach your current PHP version
|
||||||
->withPhpSets()
|
->withPhpSets()
|
||||||
->withPreparedSets(
|
->withPreparedSets(
|
||||||
|
deadCode: true,
|
||||||
|
codeQuality: true,
|
||||||
codingStyle: false, // leave false
|
codingStyle: false, // leave false
|
||||||
|
typeDeclarations: true,
|
||||||
|
typeDeclarationDocblocks: false,
|
||||||
privatization: false, // leave false.
|
privatization: false, // leave false.
|
||||||
naming: false, // leave false
|
naming: false, // leave false
|
||||||
instanceOf: true,
|
instanceOf: true,
|
||||||
earlyReturn: true,
|
earlyReturn: true,
|
||||||
strictBooleans: true,
|
// strictBooleans: true, // has a new thingie.
|
||||||
carbon: true,
|
carbon: true,
|
||||||
rectorPreset: true,
|
rectorPreset: true,
|
||||||
phpunitCodeQuality: true,
|
phpunitCodeQuality: true,
|
||||||
doctrineCodeQuality: true,
|
doctrineCodeQuality: true,
|
||||||
symfonyCodeQuality: true,
|
symfonyCodeQuality: true,
|
||||||
symfonyConfigs: true
|
symfonyConfigs: true,
|
||||||
|
|
||||||
)
|
)
|
||||||
->withComposerBased(
|
->withComposerBased(
|
||||||
twig: true,
|
twig: true,
|
||||||
doctrine: true,
|
doctrine: true,
|
||||||
phpunit: true,
|
phpunit: true,
|
||||||
symfony: true)
|
symfony: true)
|
||||||
->withTypeCoverageLevel(0)
|
|
||||||
->withDeadCodeLevel(0)
|
|
||||||
->withCodeQualityLevel(0)
|
|
||||||
->withImportNames(removeUnusedImports: true);// import statements instead of full classes.
|
->withImportNames(removeUnusedImports: true);// import statements instead of full classes.
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Controllers\Autocomplete;
|
namespace FireflyIII\Api\V1\Controllers\Autocomplete;
|
||||||
|
|
||||||
|
use Illuminate\Http\Request;
|
||||||
use FireflyIII\Api\V1\Controllers\Controller;
|
use FireflyIII\Api\V1\Controllers\Controller;
|
||||||
use FireflyIII\Api\V1\Requests\Autocomplete\AutocompleteApiRequest;
|
use FireflyIII\Api\V1\Requests\Autocomplete\AutocompleteApiRequest;
|
||||||
use FireflyIII\Enums\AccountTypeEnum;
|
use FireflyIII\Enums\AccountTypeEnum;
|
||||||
@@ -60,7 +61,7 @@ class AccountController extends Controller
|
|||||||
{
|
{
|
||||||
parent::__construct();
|
parent::__construct();
|
||||||
$this->middleware(
|
$this->middleware(
|
||||||
function ($request, $next) {
|
function (Request $request, $next) {
|
||||||
$this->validateUserGroup($request);
|
$this->validateUserGroup($request);
|
||||||
$this->repository = app(AccountRepositoryInterface::class);
|
$this->repository = app(AccountRepositoryInterface::class);
|
||||||
$this->repository->setUser($this->user);
|
$this->repository->setUser($this->user);
|
||||||
@@ -138,7 +139,7 @@ class AccountController extends Controller
|
|||||||
// custom order.
|
// custom order.
|
||||||
usort(
|
usort(
|
||||||
$return,
|
$return,
|
||||||
static function (array $left, array $right) {
|
static function (array $left, array $right): int {
|
||||||
$order = [AccountTypeEnum::ASSET->value, AccountTypeEnum::REVENUE->value, AccountTypeEnum::EXPENSE->value];
|
$order = [AccountTypeEnum::ASSET->value, AccountTypeEnum::REVENUE->value, AccountTypeEnum::EXPENSE->value];
|
||||||
$posA = (int)array_search($left['type'], $order, true);
|
$posA = (int)array_search($left['type'], $order, true);
|
||||||
$posB = (int)array_search($right['type'], $order, true);
|
$posB = (int)array_search($right['type'], $order, true);
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Controllers\Autocomplete;
|
namespace FireflyIII\Api\V1\Controllers\Autocomplete;
|
||||||
|
|
||||||
|
use Illuminate\Http\Request;
|
||||||
use FireflyIII\Api\V1\Controllers\Controller;
|
use FireflyIII\Api\V1\Controllers\Controller;
|
||||||
use FireflyIII\Api\V1\Requests\Autocomplete\AutocompleteApiRequest;
|
use FireflyIII\Api\V1\Requests\Autocomplete\AutocompleteApiRequest;
|
||||||
use FireflyIII\Enums\UserRoleEnum;
|
use FireflyIII\Enums\UserRoleEnum;
|
||||||
@@ -46,7 +47,7 @@ class BillController extends Controller
|
|||||||
{
|
{
|
||||||
parent::__construct();
|
parent::__construct();
|
||||||
$this->middleware(
|
$this->middleware(
|
||||||
function ($request, $next) {
|
function (Request $request, $next) {
|
||||||
$this->validateUserGroup($request);
|
$this->validateUserGroup($request);
|
||||||
$this->repository = app(BillRepositoryInterface::class);
|
$this->repository = app(BillRepositoryInterface::class);
|
||||||
$this->repository->setUser($this->user);
|
$this->repository->setUser($this->user);
|
||||||
@@ -65,7 +66,7 @@ class BillController extends Controller
|
|||||||
{
|
{
|
||||||
$result = $this->repository->searchBill($request->attributes->get('query'), $request->attributes->get('limit'));
|
$result = $this->repository->searchBill($request->attributes->get('query'), $request->attributes->get('limit'));
|
||||||
$filtered = $result->map(
|
$filtered = $result->map(
|
||||||
static fn (Bill $item) => [
|
static fn (Bill $item): array => [
|
||||||
'id' => (string) $item->id,
|
'id' => (string) $item->id,
|
||||||
'name' => $item->name,
|
'name' => $item->name,
|
||||||
'active' => $item->active,
|
'active' => $item->active,
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Controllers\Autocomplete;
|
namespace FireflyIII\Api\V1\Controllers\Autocomplete;
|
||||||
|
|
||||||
|
use Illuminate\Http\Request;
|
||||||
use FireflyIII\Api\V1\Controllers\Controller;
|
use FireflyIII\Api\V1\Controllers\Controller;
|
||||||
use FireflyIII\Api\V1\Requests\Autocomplete\AutocompleteApiRequest;
|
use FireflyIII\Api\V1\Requests\Autocomplete\AutocompleteApiRequest;
|
||||||
use FireflyIII\Enums\UserRoleEnum;
|
use FireflyIII\Enums\UserRoleEnum;
|
||||||
@@ -46,7 +47,7 @@ class BudgetController extends Controller
|
|||||||
{
|
{
|
||||||
parent::__construct();
|
parent::__construct();
|
||||||
$this->middleware(
|
$this->middleware(
|
||||||
function ($request, $next) {
|
function (Request $request, $next) {
|
||||||
$this->validateUserGroup($request);
|
$this->validateUserGroup($request);
|
||||||
$this->repository = app(BudgetRepositoryInterface::class);
|
$this->repository = app(BudgetRepositoryInterface::class);
|
||||||
$this->repository->setUser($this->user);
|
$this->repository->setUser($this->user);
|
||||||
@@ -65,7 +66,7 @@ class BudgetController extends Controller
|
|||||||
{
|
{
|
||||||
$result = $this->repository->searchBudget($request->attributes->get('query'), $request->attributes->get('limit'));
|
$result = $this->repository->searchBudget($request->attributes->get('query'), $request->attributes->get('limit'));
|
||||||
$filtered = $result->map(
|
$filtered = $result->map(
|
||||||
static fn (Budget $item) => [
|
static fn (Budget $item): array => [
|
||||||
'id' => (string) $item->id,
|
'id' => (string) $item->id,
|
||||||
'name' => $item->name,
|
'name' => $item->name,
|
||||||
'active' => $item->active,
|
'active' => $item->active,
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Controllers\Autocomplete;
|
namespace FireflyIII\Api\V1\Controllers\Autocomplete;
|
||||||
|
|
||||||
|
use Illuminate\Http\Request;
|
||||||
use FireflyIII\Api\V1\Controllers\Controller;
|
use FireflyIII\Api\V1\Controllers\Controller;
|
||||||
use FireflyIII\Api\V1\Requests\Autocomplete\AutocompleteApiRequest;
|
use FireflyIII\Api\V1\Requests\Autocomplete\AutocompleteApiRequest;
|
||||||
use FireflyIII\Enums\UserRoleEnum;
|
use FireflyIII\Enums\UserRoleEnum;
|
||||||
@@ -46,7 +47,7 @@ class CategoryController extends Controller
|
|||||||
{
|
{
|
||||||
parent::__construct();
|
parent::__construct();
|
||||||
$this->middleware(
|
$this->middleware(
|
||||||
function ($request, $next) {
|
function (Request $request, $next) {
|
||||||
$this->validateUserGroup($request);
|
$this->validateUserGroup($request);
|
||||||
$this->repository = app(CategoryRepositoryInterface::class);
|
$this->repository = app(CategoryRepositoryInterface::class);
|
||||||
$this->repository->setUser($this->user);
|
$this->repository->setUser($this->user);
|
||||||
@@ -65,7 +66,7 @@ class CategoryController extends Controller
|
|||||||
{
|
{
|
||||||
$result = $this->repository->searchCategory($request->attributes->get('query'), $request->attributes->get('limit'));
|
$result = $this->repository->searchCategory($request->attributes->get('query'), $request->attributes->get('limit'));
|
||||||
$filtered = $result->map(
|
$filtered = $result->map(
|
||||||
static fn (Category $item) => [
|
static fn (Category $item): array => [
|
||||||
'id' => (string) $item->id,
|
'id' => (string) $item->id,
|
||||||
'name' => $item->name,
|
'name' => $item->name,
|
||||||
]
|
]
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Controllers\Autocomplete;
|
namespace FireflyIII\Api\V1\Controllers\Autocomplete;
|
||||||
|
|
||||||
|
use Illuminate\Http\Request;
|
||||||
use Deprecated;
|
use Deprecated;
|
||||||
use FireflyIII\Api\V1\Controllers\Controller;
|
use FireflyIII\Api\V1\Controllers\Controller;
|
||||||
use FireflyIII\Api\V1\Requests\Autocomplete\AutocompleteApiRequest;
|
use FireflyIII\Api\V1\Requests\Autocomplete\AutocompleteApiRequest;
|
||||||
@@ -48,7 +49,7 @@ class CurrencyController extends Controller
|
|||||||
{
|
{
|
||||||
parent::__construct();
|
parent::__construct();
|
||||||
$this->middleware(
|
$this->middleware(
|
||||||
function ($request, $next) {
|
function (Request $request, $next) {
|
||||||
$this->validateUserGroup($request);
|
$this->validateUserGroup($request);
|
||||||
$this->repository = app(CurrencyRepositoryInterface::class);
|
$this->repository = app(CurrencyRepositoryInterface::class);
|
||||||
$this->repository->setUser($this->user);
|
$this->repository->setUser($this->user);
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Controllers\Autocomplete;
|
namespace FireflyIII\Api\V1\Controllers\Autocomplete;
|
||||||
|
|
||||||
|
use Illuminate\Http\Request;
|
||||||
use FireflyIII\Api\V1\Controllers\Controller;
|
use FireflyIII\Api\V1\Controllers\Controller;
|
||||||
use FireflyIII\Api\V1\Requests\Autocomplete\AutocompleteApiRequest;
|
use FireflyIII\Api\V1\Requests\Autocomplete\AutocompleteApiRequest;
|
||||||
use FireflyIII\Enums\UserRoleEnum;
|
use FireflyIII\Enums\UserRoleEnum;
|
||||||
@@ -46,7 +47,7 @@ class ObjectGroupController extends Controller
|
|||||||
{
|
{
|
||||||
parent::__construct();
|
parent::__construct();
|
||||||
$this->middleware(
|
$this->middleware(
|
||||||
function ($request, $next) {
|
function (Request $request, $next) {
|
||||||
$this->validateUserGroup($request);
|
$this->validateUserGroup($request);
|
||||||
$this->repository = app(ObjectGroupRepositoryInterface::class);
|
$this->repository = app(ObjectGroupRepositoryInterface::class);
|
||||||
$this->repository->setUser($this->user);
|
$this->repository->setUser($this->user);
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Controllers\Autocomplete;
|
namespace FireflyIII\Api\V1\Controllers\Autocomplete;
|
||||||
|
|
||||||
|
use Illuminate\Http\Request;
|
||||||
use FireflyIII\Api\V1\Controllers\Controller;
|
use FireflyIII\Api\V1\Controllers\Controller;
|
||||||
use FireflyIII\Api\V1\Requests\Autocomplete\AutocompleteApiRequest;
|
use FireflyIII\Api\V1\Requests\Autocomplete\AutocompleteApiRequest;
|
||||||
use FireflyIII\Enums\UserRoleEnum;
|
use FireflyIII\Enums\UserRoleEnum;
|
||||||
@@ -50,7 +51,7 @@ class PiggyBankController extends Controller
|
|||||||
{
|
{
|
||||||
parent::__construct();
|
parent::__construct();
|
||||||
$this->middleware(
|
$this->middleware(
|
||||||
function ($request, $next) {
|
function (Request $request, $next) {
|
||||||
$this->validateUserGroup($request);
|
$this->validateUserGroup($request);
|
||||||
$this->piggyRepository = app(PiggyBankRepositoryInterface::class);
|
$this->piggyRepository = app(PiggyBankRepositoryInterface::class);
|
||||||
$this->accountRepository = app(AccountRepositoryInterface::class);
|
$this->accountRepository = app(AccountRepositoryInterface::class);
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Controllers\Autocomplete;
|
namespace FireflyIII\Api\V1\Controllers\Autocomplete;
|
||||||
|
|
||||||
|
use Illuminate\Http\Request;
|
||||||
use FireflyIII\Api\V1\Controllers\Controller;
|
use FireflyIII\Api\V1\Controllers\Controller;
|
||||||
use FireflyIII\Api\V1\Requests\Autocomplete\AutocompleteApiRequest;
|
use FireflyIII\Api\V1\Requests\Autocomplete\AutocompleteApiRequest;
|
||||||
use FireflyIII\Enums\UserRoleEnum;
|
use FireflyIII\Enums\UserRoleEnum;
|
||||||
@@ -46,7 +47,7 @@ class RecurrenceController extends Controller
|
|||||||
{
|
{
|
||||||
parent::__construct();
|
parent::__construct();
|
||||||
$this->middleware(
|
$this->middleware(
|
||||||
function ($request, $next) {
|
function (Request $request, $next) {
|
||||||
$this->validateUserGroup($request);
|
$this->validateUserGroup($request);
|
||||||
$this->repository = app(RecurringRepositoryInterface::class);
|
$this->repository = app(RecurringRepositoryInterface::class);
|
||||||
$this->repository->setUser($this->user);
|
$this->repository->setUser($this->user);
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Controllers\Autocomplete;
|
namespace FireflyIII\Api\V1\Controllers\Autocomplete;
|
||||||
|
|
||||||
|
use Illuminate\Http\Request;
|
||||||
use FireflyIII\Api\V1\Controllers\Controller;
|
use FireflyIII\Api\V1\Controllers\Controller;
|
||||||
use FireflyIII\Api\V1\Requests\Autocomplete\AutocompleteApiRequest;
|
use FireflyIII\Api\V1\Requests\Autocomplete\AutocompleteApiRequest;
|
||||||
use FireflyIII\Enums\UserRoleEnum;
|
use FireflyIII\Enums\UserRoleEnum;
|
||||||
@@ -46,7 +47,7 @@ class RuleController extends Controller
|
|||||||
{
|
{
|
||||||
parent::__construct();
|
parent::__construct();
|
||||||
$this->middleware(
|
$this->middleware(
|
||||||
function ($request, $next) {
|
function (Request $request, $next) {
|
||||||
$this->validateUserGroup($request);
|
$this->validateUserGroup($request);
|
||||||
$this->repository = app(RuleRepositoryInterface::class);
|
$this->repository = app(RuleRepositoryInterface::class);
|
||||||
$this->repository->setUser($this->user);
|
$this->repository->setUser($this->user);
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Controllers\Autocomplete;
|
namespace FireflyIII\Api\V1\Controllers\Autocomplete;
|
||||||
|
|
||||||
|
use Illuminate\Http\Request;
|
||||||
use FireflyIII\Api\V1\Controllers\Controller;
|
use FireflyIII\Api\V1\Controllers\Controller;
|
||||||
use FireflyIII\Api\V1\Requests\Autocomplete\AutocompleteApiRequest;
|
use FireflyIII\Api\V1\Requests\Autocomplete\AutocompleteApiRequest;
|
||||||
use FireflyIII\Enums\UserRoleEnum;
|
use FireflyIII\Enums\UserRoleEnum;
|
||||||
@@ -46,7 +47,7 @@ class RuleGroupController extends Controller
|
|||||||
{
|
{
|
||||||
parent::__construct();
|
parent::__construct();
|
||||||
$this->middleware(
|
$this->middleware(
|
||||||
function ($request, $next) {
|
function (Request $request, $next) {
|
||||||
$this->validateUserGroup($request);
|
$this->validateUserGroup($request);
|
||||||
$this->repository = app(RuleGroupRepositoryInterface::class);
|
$this->repository = app(RuleGroupRepositoryInterface::class);
|
||||||
$this->repository->setUser($this->user);
|
$this->repository->setUser($this->user);
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Controllers\Autocomplete;
|
namespace FireflyIII\Api\V1\Controllers\Autocomplete;
|
||||||
|
|
||||||
|
use Illuminate\Http\Request;
|
||||||
use FireflyIII\Api\V1\Controllers\Controller;
|
use FireflyIII\Api\V1\Controllers\Controller;
|
||||||
use FireflyIII\Api\V1\Requests\Autocomplete\AutocompleteApiRequest;
|
use FireflyIII\Api\V1\Requests\Autocomplete\AutocompleteApiRequest;
|
||||||
use FireflyIII\Enums\UserRoleEnum;
|
use FireflyIII\Enums\UserRoleEnum;
|
||||||
@@ -46,7 +47,7 @@ class TagController extends Controller
|
|||||||
{
|
{
|
||||||
parent::__construct();
|
parent::__construct();
|
||||||
$this->middleware(
|
$this->middleware(
|
||||||
function ($request, $next) {
|
function (Request $request, $next) {
|
||||||
$this->validateUserGroup($request);
|
$this->validateUserGroup($request);
|
||||||
$this->repository = app(TagRepositoryInterface::class);
|
$this->repository = app(TagRepositoryInterface::class);
|
||||||
$this->repository->setUser($this->user);
|
$this->repository->setUser($this->user);
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Controllers\Autocomplete;
|
namespace FireflyIII\Api\V1\Controllers\Autocomplete;
|
||||||
|
|
||||||
|
use Illuminate\Http\Request;
|
||||||
use FireflyIII\Api\V1\Controllers\Controller;
|
use FireflyIII\Api\V1\Controllers\Controller;
|
||||||
use FireflyIII\Api\V1\Requests\Autocomplete\AutocompleteApiRequest;
|
use FireflyIII\Api\V1\Requests\Autocomplete\AutocompleteApiRequest;
|
||||||
use FireflyIII\Api\V1\Requests\Autocomplete\AutocompleteTransactionApiRequest;
|
use FireflyIII\Api\V1\Requests\Autocomplete\AutocompleteTransactionApiRequest;
|
||||||
@@ -51,7 +52,7 @@ class TransactionController extends Controller
|
|||||||
{
|
{
|
||||||
parent::__construct();
|
parent::__construct();
|
||||||
$this->middleware(
|
$this->middleware(
|
||||||
function ($request, $next) {
|
function (Request $request, $next) {
|
||||||
$this->validateUserGroup($request);
|
$this->validateUserGroup($request);
|
||||||
$this->repository = app(JournalRepositoryInterface::class);
|
$this->repository = app(JournalRepositoryInterface::class);
|
||||||
$this->groupRepository = app(TransactionGroupRepositoryInterface::class);
|
$this->groupRepository = app(TransactionGroupRepositoryInterface::class);
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Controllers\Autocomplete;
|
namespace FireflyIII\Api\V1\Controllers\Autocomplete;
|
||||||
|
|
||||||
|
use Illuminate\Http\Request;
|
||||||
use FireflyIII\Api\V1\Controllers\Controller;
|
use FireflyIII\Api\V1\Controllers\Controller;
|
||||||
use FireflyIII\Api\V1\Requests\Autocomplete\AutocompleteApiRequest;
|
use FireflyIII\Api\V1\Requests\Autocomplete\AutocompleteApiRequest;
|
||||||
use FireflyIII\Enums\UserRoleEnum;
|
use FireflyIII\Enums\UserRoleEnum;
|
||||||
@@ -46,7 +47,7 @@ class TransactionTypeController extends Controller
|
|||||||
{
|
{
|
||||||
parent::__construct();
|
parent::__construct();
|
||||||
$this->middleware(
|
$this->middleware(
|
||||||
function ($request, $next) {
|
function (Request $request, $next) {
|
||||||
$this->validateUserGroup($request);
|
$this->validateUserGroup($request);
|
||||||
$this->repository = app(TransactionTypeRepositoryInterface::class);
|
$this->repository = app(TransactionTypeRepositoryInterface::class);
|
||||||
|
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Controllers\Chart;
|
namespace FireflyIII\Api\V1\Controllers\Chart;
|
||||||
|
|
||||||
|
use Illuminate\Http\Request;
|
||||||
use FireflyIII\Api\V1\Controllers\Controller;
|
use FireflyIII\Api\V1\Controllers\Controller;
|
||||||
use FireflyIII\Api\V1\Requests\Chart\ChartRequest;
|
use FireflyIII\Api\V1\Requests\Chart\ChartRequest;
|
||||||
use FireflyIII\Enums\UserRoleEnum;
|
use FireflyIII\Enums\UserRoleEnum;
|
||||||
@@ -59,7 +60,7 @@ class AccountController extends Controller
|
|||||||
{
|
{
|
||||||
parent::__construct();
|
parent::__construct();
|
||||||
$this->middleware(
|
$this->middleware(
|
||||||
function ($request, $next) {
|
function (Request $request, $next) {
|
||||||
$this->repository = app(AccountRepositoryInterface::class);
|
$this->repository = app(AccountRepositoryInterface::class);
|
||||||
$this->validateUserGroup($request);
|
$this->validateUserGroup($request);
|
||||||
$this->repository->setUserGroup($this->userGroup);
|
$this->repository->setUserGroup($this->userGroup);
|
||||||
|
|||||||
@@ -25,6 +25,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Controllers\Chart;
|
namespace FireflyIII\Api\V1\Controllers\Chart;
|
||||||
|
|
||||||
|
use Illuminate\Http\Request;
|
||||||
use FireflyIII\Api\V1\Controllers\Controller;
|
use FireflyIII\Api\V1\Controllers\Controller;
|
||||||
use FireflyIII\Api\V1\Requests\Chart\ChartRequest;
|
use FireflyIII\Api\V1\Requests\Chart\ChartRequest;
|
||||||
use FireflyIII\Enums\TransactionTypeEnum;
|
use FireflyIII\Enums\TransactionTypeEnum;
|
||||||
@@ -56,7 +57,7 @@ class BalanceController extends Controller
|
|||||||
{
|
{
|
||||||
parent::__construct();
|
parent::__construct();
|
||||||
$this->middleware(
|
$this->middleware(
|
||||||
function ($request, $next) {
|
function (Request $request, $next) {
|
||||||
$this->validateUserGroup($request);
|
$this->validateUserGroup($request);
|
||||||
$this->repository = app(AccountRepositoryInterface::class);
|
$this->repository = app(AccountRepositoryInterface::class);
|
||||||
$this->collector = app(GroupCollectorInterface::class);
|
$this->collector = app(GroupCollectorInterface::class);
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Controllers\Chart;
|
namespace FireflyIII\Api\V1\Controllers\Chart;
|
||||||
|
|
||||||
|
use Illuminate\Http\Request;
|
||||||
use Carbon\Carbon;
|
use Carbon\Carbon;
|
||||||
use FireflyIII\Api\V1\Controllers\Controller;
|
use FireflyIII\Api\V1\Controllers\Controller;
|
||||||
use FireflyIII\Api\V1\Requests\DateRangeRequest;
|
use FireflyIII\Api\V1\Requests\DateRangeRequest;
|
||||||
@@ -61,7 +62,7 @@ class BudgetController extends Controller
|
|||||||
{
|
{
|
||||||
parent::__construct();
|
parent::__construct();
|
||||||
$this->middleware(
|
$this->middleware(
|
||||||
function ($request, $next) {
|
function (Request $request, $next) {
|
||||||
$this->validateUserGroup($request);
|
$this->validateUserGroup($request);
|
||||||
$this->repository = app(BudgetRepositoryInterface::class);
|
$this->repository = app(BudgetRepositoryInterface::class);
|
||||||
$this->blRepository = app(BudgetLimitRepositoryInterface::class);
|
$this->blRepository = app(BudgetLimitRepositoryInterface::class);
|
||||||
@@ -140,14 +141,14 @@ class BudgetController extends Controller
|
|||||||
}
|
}
|
||||||
|
|
||||||
// convert data if necessary.
|
// convert data if necessary.
|
||||||
if (true === $this->convertToPrimary && $currencyId !== $this->primaryCurrency->id) {
|
if ($this->convertToPrimary && $currencyId !== $this->primaryCurrency->id) {
|
||||||
$currencies[$currencyId] ??= Amount::getTransactionCurrencyById($currencyId);
|
$currencies[$currencyId] ??= Amount::getTransactionCurrencyById($currencyId);
|
||||||
$row['pc_budgeted'] = $converter->convert($currencies[$currencyId], $this->primaryCurrency, $start, $row['budgeted']);
|
$row['pc_budgeted'] = $converter->convert($currencies[$currencyId], $this->primaryCurrency, $start, $row['budgeted']);
|
||||||
$row['pc_spent'] = $converter->convert($currencies[$currencyId], $this->primaryCurrency, $start, $row['spent']);
|
$row['pc_spent'] = $converter->convert($currencies[$currencyId], $this->primaryCurrency, $start, $row['spent']);
|
||||||
$row['pc_left'] = $converter->convert($currencies[$currencyId], $this->primaryCurrency, $start, $row['left']);
|
$row['pc_left'] = $converter->convert($currencies[$currencyId], $this->primaryCurrency, $start, $row['left']);
|
||||||
$row['pc_overspent'] = $converter->convert($currencies[$currencyId], $this->primaryCurrency, $start, $row['overspent']);
|
$row['pc_overspent'] = $converter->convert($currencies[$currencyId], $this->primaryCurrency, $start, $row['overspent']);
|
||||||
}
|
}
|
||||||
if (true === $this->convertToPrimary && $currencyId === $this->primaryCurrency->id) {
|
if ($this->convertToPrimary && $currencyId === $this->primaryCurrency->id) {
|
||||||
$row['pc_budgeted'] = $row['budgeted'];
|
$row['pc_budgeted'] = $row['budgeted'];
|
||||||
$row['pc_spent'] = $row['spent'];
|
$row['pc_spent'] = $row['spent'];
|
||||||
$row['pc_left'] = $row['left'];
|
$row['pc_left'] = $row['left'];
|
||||||
@@ -265,7 +266,7 @@ class BudgetController extends Controller
|
|||||||
|
|
||||||
/** @var BudgetLimit $current */
|
/** @var BudgetLimit $current */
|
||||||
foreach ($limits as $current) {
|
foreach ($limits as $current) {
|
||||||
if (true === $this->convertToPrimary) {
|
if ($this->convertToPrimary) {
|
||||||
if ($current->transaction_currency_id === $this->primaryCurrency->id) {
|
if ($current->transaction_currency_id === $this->primaryCurrency->id) {
|
||||||
// simply add it.
|
// simply add it.
|
||||||
$amount = bcadd($amount, (string)$current->amount);
|
$amount = bcadd($amount, (string)$current->amount);
|
||||||
@@ -283,7 +284,7 @@ class BudgetController extends Controller
|
|||||||
$limit = $current;
|
$limit = $current;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (null !== $limit && true === $this->convertToPrimary) {
|
if (null !== $limit && $this->convertToPrimary) {
|
||||||
// convert and add all amounts.
|
// convert and add all amounts.
|
||||||
$limit->amount = app('steam')->positive($amount);
|
$limit->amount = app('steam')->positive($amount);
|
||||||
Log::debug(sprintf('Final amount in limit with converted amount %s', $limit->amount));
|
Log::debug(sprintf('Final amount in limit with converted amount %s', $limit->amount));
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Controllers\Chart;
|
namespace FireflyIII\Api\V1\Controllers\Chart;
|
||||||
|
|
||||||
|
use Illuminate\Http\Request;
|
||||||
use Carbon\Carbon;
|
use Carbon\Carbon;
|
||||||
use FireflyIII\Api\V1\Controllers\Controller;
|
use FireflyIII\Api\V1\Controllers\Controller;
|
||||||
use FireflyIII\Api\V1\Requests\DateRangeRequest;
|
use FireflyIII\Api\V1\Requests\DateRangeRequest;
|
||||||
@@ -58,7 +59,7 @@ class CategoryController extends Controller
|
|||||||
{
|
{
|
||||||
parent::__construct();
|
parent::__construct();
|
||||||
$this->middleware(
|
$this->middleware(
|
||||||
function ($request, $next) {
|
function (Request $request, $next) {
|
||||||
$this->validateUserGroup($request);
|
$this->validateUserGroup($request);
|
||||||
$this->accountRepos = app(AccountRepositoryInterface::class);
|
$this->accountRepos = app(AccountRepositoryInterface::class);
|
||||||
$this->currencyRepos = app(CurrencyRepositoryInterface::class);
|
$this->currencyRepos = app(CurrencyRepositoryInterface::class);
|
||||||
@@ -181,7 +182,7 @@ class CategoryController extends Controller
|
|||||||
$return = array_values($return);
|
$return = array_values($return);
|
||||||
|
|
||||||
// order by amount
|
// order by amount
|
||||||
usort($return, static fn (array $a, array $b) => ((float)$a['entries']['spent'] + (float)$a['entries']['earned']) < ((float)$b['entries']['spent'] + (float)$b['entries']['earned']) ? 1 : -1);
|
usort($return, static fn (array $a, array $b): int => ((float)$a['entries']['spent'] + (float)$a['entries']['earned']) < ((float)$b['entries']['spent'] + (float)$b['entries']['earned']) ? 1 : -1);
|
||||||
|
|
||||||
return response()->json($this->clean($return));
|
return response()->json($this->clean($return));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Controllers;
|
namespace FireflyIII\Api\V1\Controllers;
|
||||||
|
|
||||||
|
use Deprecated;
|
||||||
use Carbon\Carbon;
|
use Carbon\Carbon;
|
||||||
use Carbon\Exceptions\InvalidFormatException;
|
use Carbon\Exceptions\InvalidFormatException;
|
||||||
use FireflyIII\Exceptions\BadHttpHeaderException;
|
use FireflyIII\Exceptions\BadHttpHeaderException;
|
||||||
@@ -100,10 +101,10 @@ abstract class Controller extends BaseController
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
#[Deprecated(message: <<<'TXT'
|
||||||
* @deprecated use Request classes
|
use Request classes
|
||||||
* Method to grab all parameters from the URL
|
Method to grab all parameters from the URL
|
||||||
*/
|
TXT)]
|
||||||
private function getParameters(): ParameterBag
|
private function getParameters(): ParameterBag
|
||||||
{
|
{
|
||||||
$bag = new ParameterBag();
|
$bag = new ParameterBag();
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Controllers\Data\Bulk;
|
namespace FireflyIII\Api\V1\Controllers\Data\Bulk;
|
||||||
|
|
||||||
|
use Illuminate\Http\Request;
|
||||||
use FireflyIII\Api\V1\Controllers\Controller;
|
use FireflyIII\Api\V1\Controllers\Controller;
|
||||||
use FireflyIII\Api\V1\Requests\Data\Bulk\TransactionRequest;
|
use FireflyIII\Api\V1\Requests\Data\Bulk\TransactionRequest;
|
||||||
use FireflyIII\Enums\UserRoleEnum;
|
use FireflyIII\Enums\UserRoleEnum;
|
||||||
@@ -51,7 +52,7 @@ class TransactionController extends Controller
|
|||||||
{
|
{
|
||||||
parent::__construct();
|
parent::__construct();
|
||||||
$this->middleware(
|
$this->middleware(
|
||||||
function ($request, $next) {
|
function (Request $request, $next) {
|
||||||
$this->validateUserGroup($request);
|
$this->validateUserGroup($request);
|
||||||
$this->repository = app(AccountRepositoryInterface::class);
|
$this->repository = app(AccountRepositoryInterface::class);
|
||||||
$this->repository->setUserGroup($this->userGroup);
|
$this->repository->setUserGroup($this->userGroup);
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Controllers\Data;
|
namespace FireflyIII\Api\V1\Controllers\Data;
|
||||||
|
|
||||||
|
use Illuminate\Http\Request;
|
||||||
use FireflyIII\Api\V1\Controllers\Controller;
|
use FireflyIII\Api\V1\Controllers\Controller;
|
||||||
use FireflyIII\Api\V1\Requests\Data\DestroyRequest;
|
use FireflyIII\Api\V1\Requests\Data\DestroyRequest;
|
||||||
use FireflyIII\Enums\AccountTypeEnum;
|
use FireflyIII\Enums\AccountTypeEnum;
|
||||||
@@ -63,7 +64,7 @@ class DestroyController extends Controller
|
|||||||
{
|
{
|
||||||
parent::__construct();
|
parent::__construct();
|
||||||
$this->middleware(
|
$this->middleware(
|
||||||
function ($request, $next) {
|
function (Request $request, $next) {
|
||||||
$this->validateUserGroup($request);
|
$this->validateUserGroup($request);
|
||||||
|
|
||||||
return $next($request);
|
return $next($request);
|
||||||
@@ -185,7 +186,7 @@ class DestroyController extends Controller
|
|||||||
/** @var Account $account */
|
/** @var Account $account */
|
||||||
foreach ($collection as $account) {
|
foreach ($collection as $account) {
|
||||||
$count = $account->transactions()->count();
|
$count = $account->transactions()->count();
|
||||||
if (true === $this->unused && 0 === $count) {
|
if ($this->unused && 0 === $count) {
|
||||||
Log::info(sprintf('Deleted unused account #%d "%s"', $account->id, $account->name));
|
Log::info(sprintf('Deleted unused account #%d "%s"', $account->id, $account->name));
|
||||||
Log::channel('audit')->info(sprintf('Deleted unused account #%d "%s"', $account->id, $account->name));
|
Log::channel('audit')->info(sprintf('Deleted unused account #%d "%s"', $account->id, $account->name));
|
||||||
$service->destroy($account, null);
|
$service->destroy($account, null);
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Controllers\Data\Export;
|
namespace FireflyIII\Api\V1\Controllers\Data\Export;
|
||||||
|
|
||||||
|
use Illuminate\Http\Request;
|
||||||
use FireflyIII\Api\V1\Controllers\Controller;
|
use FireflyIII\Api\V1\Controllers\Controller;
|
||||||
use FireflyIII\Api\V1\Requests\Data\Export\ExportRequest;
|
use FireflyIII\Api\V1\Requests\Data\Export\ExportRequest;
|
||||||
use FireflyIII\Enums\UserRoleEnum;
|
use FireflyIII\Enums\UserRoleEnum;
|
||||||
@@ -49,7 +50,7 @@ class ExportController extends Controller
|
|||||||
{
|
{
|
||||||
parent::__construct();
|
parent::__construct();
|
||||||
$this->middleware(
|
$this->middleware(
|
||||||
function ($request, $next) {
|
function (Request $request, $next) {
|
||||||
$this->validateUserGroup($request);
|
$this->validateUserGroup($request);
|
||||||
$this->exporter = app(ExportDataGenerator::class);
|
$this->exporter = app(ExportDataGenerator::class);
|
||||||
$this->exporter->setUserGroup($this->userGroup);
|
$this->exporter->setUserGroup($this->userGroup);
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Controllers\Data;
|
namespace FireflyIII\Api\V1\Controllers\Data;
|
||||||
|
|
||||||
|
use Illuminate\Http\Request;
|
||||||
use FireflyIII\Api\V1\Controllers\Controller;
|
use FireflyIII\Api\V1\Controllers\Controller;
|
||||||
use FireflyIII\Enums\UserRoleEnum;
|
use FireflyIII\Enums\UserRoleEnum;
|
||||||
use FireflyIII\Models\Account;
|
use FireflyIII\Models\Account;
|
||||||
@@ -51,7 +52,7 @@ class PurgeController extends Controller
|
|||||||
{
|
{
|
||||||
parent::__construct();
|
parent::__construct();
|
||||||
$this->middleware(
|
$this->middleware(
|
||||||
function ($request, $next) {
|
function (Request $request, $next) {
|
||||||
$this->validateUserGroup($request);
|
$this->validateUserGroup($request);
|
||||||
|
|
||||||
return $next($request);
|
return $next($request);
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Controllers\Models\CurrencyExchangeRate;
|
namespace FireflyIII\Api\V1\Controllers\Models\CurrencyExchangeRate;
|
||||||
|
|
||||||
|
use Illuminate\Http\Request;
|
||||||
use Carbon\Carbon;
|
use Carbon\Carbon;
|
||||||
use FireflyIII\Api\V1\Controllers\Controller;
|
use FireflyIII\Api\V1\Controllers\Controller;
|
||||||
use FireflyIII\Api\V1\Requests\Models\CurrencyExchangeRate\DestroyRequest;
|
use FireflyIII\Api\V1\Requests\Models\CurrencyExchangeRate\DestroyRequest;
|
||||||
@@ -47,7 +48,7 @@ class DestroyController extends Controller
|
|||||||
{
|
{
|
||||||
parent::__construct();
|
parent::__construct();
|
||||||
$this->middleware(
|
$this->middleware(
|
||||||
function ($request, $next) {
|
function (Request $request, $next) {
|
||||||
$this->repository = app(ExchangeRateRepositoryInterface::class);
|
$this->repository = app(ExchangeRateRepositoryInterface::class);
|
||||||
$this->repository->setUserGroup($this->validateUserGroup($request));
|
$this->repository->setUserGroup($this->validateUserGroup($request));
|
||||||
|
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Controllers\Models\CurrencyExchangeRate;
|
namespace FireflyIII\Api\V1\Controllers\Models\CurrencyExchangeRate;
|
||||||
|
|
||||||
|
use Illuminate\Http\Request;
|
||||||
use FireflyIII\Api\V1\Controllers\Controller;
|
use FireflyIII\Api\V1\Controllers\Controller;
|
||||||
use FireflyIII\Enums\UserRoleEnum;
|
use FireflyIII\Enums\UserRoleEnum;
|
||||||
use FireflyIII\Repositories\ExchangeRate\ExchangeRateRepositoryInterface;
|
use FireflyIII\Repositories\ExchangeRate\ExchangeRateRepositoryInterface;
|
||||||
@@ -47,7 +48,7 @@ class IndexController extends Controller
|
|||||||
{
|
{
|
||||||
parent::__construct();
|
parent::__construct();
|
||||||
$this->middleware(
|
$this->middleware(
|
||||||
function ($request, $next) {
|
function (Request $request, $next) {
|
||||||
$this->repository = app(ExchangeRateRepositoryInterface::class);
|
$this->repository = app(ExchangeRateRepositoryInterface::class);
|
||||||
$this->repository->setUserGroup($this->validateUserGroup($request));
|
$this->repository->setUserGroup($this->validateUserGroup($request));
|
||||||
|
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Controllers\Models\CurrencyExchangeRate;
|
namespace FireflyIII\Api\V1\Controllers\Models\CurrencyExchangeRate;
|
||||||
|
|
||||||
|
use Illuminate\Http\Request;
|
||||||
use Carbon\Carbon;
|
use Carbon\Carbon;
|
||||||
use FireflyIII\Api\V1\Controllers\Controller;
|
use FireflyIII\Api\V1\Controllers\Controller;
|
||||||
use FireflyIII\Enums\UserRoleEnum;
|
use FireflyIII\Enums\UserRoleEnum;
|
||||||
@@ -51,7 +52,7 @@ class ShowController extends Controller
|
|||||||
{
|
{
|
||||||
parent::__construct();
|
parent::__construct();
|
||||||
$this->middleware(
|
$this->middleware(
|
||||||
function ($request, $next) {
|
function (Request $request, $next) {
|
||||||
$this->repository = app(ExchangeRateRepositoryInterface::class);
|
$this->repository = app(ExchangeRateRepositoryInterface::class);
|
||||||
$this->repository->setUserGroup($this->validateUserGroup($request));
|
$this->repository->setUserGroup($this->validateUserGroup($request));
|
||||||
|
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Controllers\Models\CurrencyExchangeRate;
|
namespace FireflyIII\Api\V1\Controllers\Models\CurrencyExchangeRate;
|
||||||
|
|
||||||
|
use Illuminate\Http\Request;
|
||||||
use Carbon\Carbon;
|
use Carbon\Carbon;
|
||||||
use FireflyIII\Api\V1\Controllers\Controller;
|
use FireflyIII\Api\V1\Controllers\Controller;
|
||||||
use FireflyIII\Api\V1\Requests\Models\CurrencyExchangeRate\StoreByCurrenciesRequest;
|
use FireflyIII\Api\V1\Requests\Models\CurrencyExchangeRate\StoreByCurrenciesRequest;
|
||||||
@@ -52,7 +53,7 @@ class StoreController extends Controller
|
|||||||
{
|
{
|
||||||
parent::__construct();
|
parent::__construct();
|
||||||
$this->middleware(
|
$this->middleware(
|
||||||
function ($request, $next) {
|
function (Request $request, $next) {
|
||||||
$this->repository = app(ExchangeRateRepositoryInterface::class);
|
$this->repository = app(ExchangeRateRepositoryInterface::class);
|
||||||
$this->repository->setUserGroup($this->validateUserGroup($request));
|
$this->repository->setUserGroup($this->validateUserGroup($request));
|
||||||
|
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Controllers\Models\CurrencyExchangeRate;
|
namespace FireflyIII\Api\V1\Controllers\Models\CurrencyExchangeRate;
|
||||||
|
|
||||||
|
use Illuminate\Http\Request;
|
||||||
use Carbon\Carbon;
|
use Carbon\Carbon;
|
||||||
use FireflyIII\Api\V1\Controllers\Controller;
|
use FireflyIII\Api\V1\Controllers\Controller;
|
||||||
use FireflyIII\Api\V1\Requests\Models\CurrencyExchangeRate\UpdateRequest;
|
use FireflyIII\Api\V1\Requests\Models\CurrencyExchangeRate\UpdateRequest;
|
||||||
@@ -48,7 +49,7 @@ class UpdateController extends Controller
|
|||||||
{
|
{
|
||||||
parent::__construct();
|
parent::__construct();
|
||||||
$this->middleware(
|
$this->middleware(
|
||||||
function ($request, $next) {
|
function (Request $request, $next) {
|
||||||
$this->repository = app(ExchangeRateRepositoryInterface::class);
|
$this->repository = app(ExchangeRateRepositoryInterface::class);
|
||||||
$this->repository->setUserGroup($this->validateUserGroup($request));
|
$this->repository->setUserGroup($this->validateUserGroup($request));
|
||||||
|
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Controllers\Models\Transaction;
|
namespace FireflyIII\Api\V1\Controllers\Models\Transaction;
|
||||||
|
|
||||||
|
use Illuminate\Http\Request;
|
||||||
use FireflyIII\Api\V1\Controllers\Controller;
|
use FireflyIII\Api\V1\Controllers\Controller;
|
||||||
use FireflyIII\Api\V1\Requests\Models\Transaction\StoreRequest;
|
use FireflyIII\Api\V1\Requests\Models\Transaction\StoreRequest;
|
||||||
use FireflyIII\Enums\UserRoleEnum;
|
use FireflyIII\Enums\UserRoleEnum;
|
||||||
@@ -61,7 +62,7 @@ class StoreController extends Controller
|
|||||||
{
|
{
|
||||||
parent::__construct();
|
parent::__construct();
|
||||||
$this->middleware(
|
$this->middleware(
|
||||||
function ($request, $next) {
|
function (Request $request, $next) {
|
||||||
/** @var User $admin */
|
/** @var User $admin */
|
||||||
$admin = auth()->user();
|
$admin = auth()->user();
|
||||||
$userGroup = $this->validateUserGroup($request);
|
$userGroup = $this->validateUserGroup($request);
|
||||||
|
|||||||
@@ -90,7 +90,7 @@ class ListController extends Controller
|
|||||||
|
|
||||||
// filter list on currency preference:
|
// filter list on currency preference:
|
||||||
$collection = $unfiltered->filter(
|
$collection = $unfiltered->filter(
|
||||||
static function (Account $account) use ($currency, $accountRepository) {
|
static function (Account $account) use ($currency, $accountRepository): bool {
|
||||||
$currencyId = (int) $accountRepository->getMetaValue($account, 'currency_id');
|
$currencyId = (int) $accountRepository->getMetaValue($account, 'currency_id');
|
||||||
|
|
||||||
return $currencyId === $currency->id;
|
return $currencyId === $currency->id;
|
||||||
@@ -178,7 +178,7 @@ class ListController extends Controller
|
|||||||
|
|
||||||
// filter and paginate list:
|
// filter and paginate list:
|
||||||
$collection = $unfiltered->filter(
|
$collection = $unfiltered->filter(
|
||||||
static fn (Bill $bill) => $bill->transaction_currency_id === $currency->id
|
static fn (Bill $bill): bool => $bill->transaction_currency_id === $currency->id
|
||||||
);
|
);
|
||||||
$count = $collection->count();
|
$count = $collection->count();
|
||||||
$bills = $collection->slice(($this->parameters->get('page') - 1) * $pageSize, $pageSize);
|
$bills = $collection->slice(($this->parameters->get('page') - 1) * $pageSize, $pageSize);
|
||||||
@@ -261,8 +261,8 @@ class ListController extends Controller
|
|||||||
|
|
||||||
// filter selection
|
// filter selection
|
||||||
$collection = $unfiltered->filter(
|
$collection = $unfiltered->filter(
|
||||||
static function (Recurrence $recurrence) use ($currency) { // @phpstan-ignore-line
|
static function (Recurrence $recurrence) use ($currency): ?Recurrence { // @phpstan-ignore-line
|
||||||
if (array_any($recurrence->recurrenceTransactions, fn ($transaction) => $transaction->transaction_currency_id === $currency->id || $transaction->foreign_currency_id === $currency->id)) {
|
if (array_any($recurrence->recurrenceTransactions, fn ($transaction): bool => $transaction->transaction_currency_id === $currency->id || $transaction->foreign_currency_id === $currency->id)) {
|
||||||
return $recurrence;
|
return $recurrence;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -310,8 +310,8 @@ class ListController extends Controller
|
|||||||
$unfiltered = $ruleRepos->getAll();
|
$unfiltered = $ruleRepos->getAll();
|
||||||
|
|
||||||
$collection = $unfiltered->filter(
|
$collection = $unfiltered->filter(
|
||||||
static function (Rule $rule) use ($currency) { // @phpstan-ignore-line
|
static function (Rule $rule) use ($currency): ?Rule { // @phpstan-ignore-line
|
||||||
if (array_any($rule->ruleTriggers, fn ($trigger) => 'currency_is' === $trigger->trigger_type && $currency->name === $trigger->trigger_value)) {
|
if (array_any($rule->ruleTriggers, fn ($trigger): bool => 'currency_is' === $trigger->trigger_type && $currency->name === $trigger->trigger_value)) {
|
||||||
return $rule;
|
return $rule;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -45,18 +45,17 @@ class AccountController extends Controller
|
|||||||
{
|
{
|
||||||
use AccountFilter;
|
use AccountFilter;
|
||||||
|
|
||||||
private array $validFields;
|
private array $validFields = [
|
||||||
|
AccountSearch::SEARCH_ALL,
|
||||||
|
AccountSearch::SEARCH_ID,
|
||||||
|
AccountSearch::SEARCH_NAME,
|
||||||
|
AccountSearch::SEARCH_IBAN,
|
||||||
|
AccountSearch::SEARCH_NUMBER,
|
||||||
|
];
|
||||||
|
|
||||||
public function __construct()
|
public function __construct()
|
||||||
{
|
{
|
||||||
parent::__construct();
|
parent::__construct();
|
||||||
$this->validFields = [
|
|
||||||
AccountSearch::SEARCH_ALL,
|
|
||||||
AccountSearch::SEARCH_ID,
|
|
||||||
AccountSearch::SEARCH_NAME,
|
|
||||||
AccountSearch::SEARCH_IBAN,
|
|
||||||
AccountSearch::SEARCH_NUMBER,
|
|
||||||
];
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -591,7 +591,7 @@ class BasicController extends Controller
|
|||||||
|
|
||||||
// filter list on preference of being included.
|
// filter list on preference of being included.
|
||||||
$filtered = $allAccounts->filter(
|
$filtered = $allAccounts->filter(
|
||||||
function (Account $account) {
|
function (Account $account): bool {
|
||||||
$includeNetWorth = $this->accountRepository->getMetaValue($account, 'include_net_worth');
|
$includeNetWorth = $this->accountRepository->getMetaValue($account, 'include_net_worth');
|
||||||
|
|
||||||
return null === $includeNetWorth || '1' === $includeNetWorth;
|
return null === $includeNetWorth || '1' === $includeNetWorth;
|
||||||
@@ -651,11 +651,8 @@ class BasicController extends Controller
|
|||||||
if ($start->greaterThanOrEqualTo($date) && $end->greaterThanOrEqualTo($date)) {
|
if ($start->greaterThanOrEqualTo($date) && $end->greaterThanOrEqualTo($date)) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
// start and end in the past? use $end
|
|
||||||
if ($start->lessThanOrEqualTo($date) && $end->lessThanOrEqualTo($date)) {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
return false;
|
// start and end in the past? use $end
|
||||||
|
return $start->lessThanOrEqualTo($date) && $end->lessThanOrEqualTo($date);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -23,10 +23,11 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Requests;
|
namespace FireflyIII\Api\V1\Requests;
|
||||||
|
|
||||||
|
use Override;
|
||||||
|
use Illuminate\Contracts\Validation\Validator;
|
||||||
use Illuminate\Foundation\Http\FormRequest;
|
use Illuminate\Foundation\Http\FormRequest;
|
||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
use Illuminate\Support\Facades\Log;
|
use Illuminate\Support\Facades\Log;
|
||||||
use Illuminate\Validation\Validator;
|
|
||||||
use RuntimeException;
|
use RuntimeException;
|
||||||
|
|
||||||
abstract class AggregateFormRequest extends ApiRequest
|
abstract class AggregateFormRequest extends ApiRequest
|
||||||
@@ -39,6 +40,7 @@ abstract class AggregateFormRequest extends ApiRequest
|
|||||||
/** @return array<array|string> */
|
/** @return array<array|string> */
|
||||||
abstract protected function getRequests(): array;
|
abstract protected function getRequests(): array;
|
||||||
|
|
||||||
|
#[Override]
|
||||||
public function initialize(array $query = [], array $request = [], array $attributes = [], array $cookies = [], array $files = [], array $server = [], $content = null): void
|
public function initialize(array $query = [], array $request = [], array $attributes = [], array $cookies = [], array $files = [], array $server = [], $content = null): void
|
||||||
{
|
{
|
||||||
parent::initialize($query, $request, $attributes, $cookies, $files, $server, $content);
|
parent::initialize($query, $request, $attributes, $cookies, $files, $server, $content);
|
||||||
@@ -76,7 +78,7 @@ abstract class AggregateFormRequest extends ApiRequest
|
|||||||
// check all subrequests for rules and combine them
|
// check all subrequests for rules and combine them
|
||||||
return array_reduce(
|
return array_reduce(
|
||||||
$this->requests,
|
$this->requests,
|
||||||
static fn (array $rules, FormRequest $request) => $rules
|
static fn (array $rules, FormRequest $request): array => $rules
|
||||||
+ (
|
+ (
|
||||||
method_exists($request, 'rules')
|
method_exists($request, 'rules')
|
||||||
? $request->rules()
|
? $request->rules()
|
||||||
@@ -91,7 +93,7 @@ abstract class AggregateFormRequest extends ApiRequest
|
|||||||
// register all subrequests' validators
|
// register all subrequests' validators
|
||||||
foreach ($this->requests as $request) {
|
foreach ($this->requests as $request) {
|
||||||
if (method_exists($request, 'withValidator')) {
|
if (method_exists($request, 'withValidator')) {
|
||||||
Log::debug(sprintf('Process withValidator from class %s', get_class($request)));
|
Log::debug(sprintf('Process withValidator from class %s', $request::class));
|
||||||
$request->withValidator($validator);
|
$request->withValidator($validator);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -24,13 +24,13 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Requests\Chart;
|
namespace FireflyIII\Api\V1\Requests\Chart;
|
||||||
|
|
||||||
|
use Illuminate\Contracts\Validation\Validator;
|
||||||
use FireflyIII\Enums\UserRoleEnum;
|
use FireflyIII\Enums\UserRoleEnum;
|
||||||
use FireflyIII\Support\Http\Api\ValidatesUserGroupTrait;
|
use FireflyIII\Support\Http\Api\ValidatesUserGroupTrait;
|
||||||
use FireflyIII\Support\Request\ChecksLogin;
|
use FireflyIII\Support\Request\ChecksLogin;
|
||||||
use FireflyIII\Support\Request\ConvertsDataTypes;
|
use FireflyIII\Support\Request\ConvertsDataTypes;
|
||||||
use Illuminate\Foundation\Http\FormRequest;
|
use Illuminate\Foundation\Http\FormRequest;
|
||||||
use Illuminate\Support\Facades\Log;
|
use Illuminate\Support\Facades\Log;
|
||||||
use Illuminate\Validation\Validator;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class ChartRequest
|
* Class ChartRequest
|
||||||
|
|||||||
@@ -24,12 +24,12 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Requests\Data\Bulk;
|
namespace FireflyIII\Api\V1\Requests\Data\Bulk;
|
||||||
|
|
||||||
|
use Illuminate\Contracts\Validation\Validator;
|
||||||
use FireflyIII\Repositories\Account\AccountRepositoryInterface;
|
use FireflyIII\Repositories\Account\AccountRepositoryInterface;
|
||||||
use FireflyIII\Support\Request\ChecksLogin;
|
use FireflyIII\Support\Request\ChecksLogin;
|
||||||
use FireflyIII\Support\Request\ConvertsDataTypes;
|
use FireflyIII\Support\Request\ConvertsDataTypes;
|
||||||
use Illuminate\Foundation\Http\FormRequest;
|
use Illuminate\Foundation\Http\FormRequest;
|
||||||
use Illuminate\Support\Facades\Log;
|
use Illuminate\Support\Facades\Log;
|
||||||
use Illuminate\Validation\Validator;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class MoveTransactionsRequest
|
* Class MoveTransactionsRequest
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Requests\Data\Bulk;
|
namespace FireflyIII\Api\V1\Requests\Data\Bulk;
|
||||||
|
|
||||||
|
use Illuminate\Contracts\Validation\Validator;
|
||||||
use FireflyIII\Enums\ClauseType;
|
use FireflyIII\Enums\ClauseType;
|
||||||
use FireflyIII\Rules\IsValidBulkClause;
|
use FireflyIII\Rules\IsValidBulkClause;
|
||||||
use FireflyIII\Support\Request\ChecksLogin;
|
use FireflyIII\Support\Request\ChecksLogin;
|
||||||
@@ -31,7 +32,6 @@ use FireflyIII\Support\Request\ConvertsDataTypes;
|
|||||||
use FireflyIII\Validation\Api\Data\Bulk\ValidatesBulkTransactionQuery;
|
use FireflyIII\Validation\Api\Data\Bulk\ValidatesBulkTransactionQuery;
|
||||||
use Illuminate\Foundation\Http\FormRequest;
|
use Illuminate\Foundation\Http\FormRequest;
|
||||||
use Illuminate\Support\Facades\Log;
|
use Illuminate\Support\Facades\Log;
|
||||||
use Illuminate\Validation\Validator;
|
|
||||||
use JsonException;
|
use JsonException;
|
||||||
|
|
||||||
use function Safe\json_decode;
|
use function Safe\json_decode;
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Requests;
|
namespace FireflyIII\Api\V1\Requests;
|
||||||
|
|
||||||
use Illuminate\Validation\Validator;
|
use Illuminate\Contracts\Validation\Validator;
|
||||||
|
|
||||||
class DateRangeRequest extends ApiRequest
|
class DateRangeRequest extends ApiRequest
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -23,8 +23,8 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Requests;
|
namespace FireflyIII\Api\V1\Requests;
|
||||||
|
|
||||||
|
use Illuminate\Contracts\Validation\Validator;
|
||||||
use Carbon\Carbon;
|
use Carbon\Carbon;
|
||||||
use Illuminate\Validation\Validator;
|
|
||||||
|
|
||||||
class DateRequest extends ApiRequest
|
class DateRequest extends ApiRequest
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -23,6 +23,8 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Requests\Generic;
|
namespace FireflyIII\Api\V1\Requests\Generic;
|
||||||
|
|
||||||
|
use Override;
|
||||||
|
use Illuminate\Contracts\Validation\Validator;
|
||||||
use FireflyIII\Api\V1\Requests\ApiRequest;
|
use FireflyIII\Api\V1\Requests\ApiRequest;
|
||||||
use FireflyIII\Models\Account;
|
use FireflyIII\Models\Account;
|
||||||
use FireflyIII\Models\Transaction;
|
use FireflyIII\Models\Transaction;
|
||||||
@@ -30,7 +32,6 @@ use FireflyIII\Rules\Account\IsValidAccountTypeList;
|
|||||||
use FireflyIII\Rules\TransactionType\IsValidTransactionTypeList;
|
use FireflyIII\Rules\TransactionType\IsValidTransactionTypeList;
|
||||||
use FireflyIII\Support\Http\Api\AccountFilter;
|
use FireflyIII\Support\Http\Api\AccountFilter;
|
||||||
use FireflyIII\Support\Http\Api\TransactionFilter;
|
use FireflyIII\Support\Http\Api\TransactionFilter;
|
||||||
use Illuminate\Validation\Validator;
|
|
||||||
use RuntimeException;
|
use RuntimeException;
|
||||||
|
|
||||||
class ObjectTypeApiRequest extends ApiRequest
|
class ObjectTypeApiRequest extends ApiRequest
|
||||||
@@ -40,6 +41,7 @@ class ObjectTypeApiRequest extends ApiRequest
|
|||||||
|
|
||||||
private ?string $objectType = null;
|
private ?string $objectType = null;
|
||||||
|
|
||||||
|
#[Override]
|
||||||
public function handleConfig(array $config): void
|
public function handleConfig(array $config): void
|
||||||
{
|
{
|
||||||
parent::handleConfig($config);
|
parent::handleConfig($config);
|
||||||
|
|||||||
@@ -23,10 +23,10 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Requests\Generic;
|
namespace FireflyIII\Api\V1\Requests\Generic;
|
||||||
|
|
||||||
|
use Illuminate\Contracts\Validation\Validator;
|
||||||
use FireflyIII\Api\V1\Requests\ApiRequest;
|
use FireflyIII\Api\V1\Requests\ApiRequest;
|
||||||
use FireflyIII\Support\Request\ChecksLogin;
|
use FireflyIII\Support\Request\ChecksLogin;
|
||||||
use FireflyIII\Support\Request\ConvertsDataTypes;
|
use FireflyIII\Support\Request\ConvertsDataTypes;
|
||||||
use Illuminate\Validation\Validator;
|
|
||||||
|
|
||||||
class QueryRequest extends ApiRequest
|
class QueryRequest extends ApiRequest
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -23,9 +23,9 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Requests\Models\Account;
|
namespace FireflyIII\Api\V1\Requests\Models\Account;
|
||||||
|
|
||||||
|
use Illuminate\Contracts\Validation\Validator;
|
||||||
use FireflyIII\Api\V1\Requests\ApiRequest;
|
use FireflyIII\Api\V1\Requests\ApiRequest;
|
||||||
use FireflyIII\Support\Http\Api\AccountFilter;
|
use FireflyIII\Support\Http\Api\AccountFilter;
|
||||||
use Illuminate\Validation\Validator;
|
|
||||||
|
|
||||||
class AccountTypeApiRequest extends ApiRequest
|
class AccountTypeApiRequest extends ApiRequest
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -23,10 +23,10 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Requests\Models\Account;
|
namespace FireflyIII\Api\V1\Requests\Models\Account;
|
||||||
|
|
||||||
|
use Illuminate\Contracts\Validation\Validator;
|
||||||
use FireflyIII\Api\V1\Requests\ApiRequest;
|
use FireflyIII\Api\V1\Requests\ApiRequest;
|
||||||
use FireflyIII\Rules\Account\IsValidAccountTypeList;
|
use FireflyIII\Rules\Account\IsValidAccountTypeList;
|
||||||
use FireflyIII\Support\Http\Api\AccountFilter;
|
use FireflyIII\Support\Http\Api\AccountFilter;
|
||||||
use Illuminate\Validation\Validator;
|
|
||||||
|
|
||||||
class AccountTypesApiRequest extends ApiRequest
|
class AccountTypesApiRequest extends ApiRequest
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -26,7 +26,6 @@ namespace FireflyIII\Api\V1\Requests\Models\Account;
|
|||||||
use FireflyIII\Api\V1\Requests\AggregateFormRequest;
|
use FireflyIII\Api\V1\Requests\AggregateFormRequest;
|
||||||
use FireflyIII\Api\V1\Requests\DateRangeRequest;
|
use FireflyIII\Api\V1\Requests\DateRangeRequest;
|
||||||
use FireflyIII\Api\V1\Requests\DateRequest;
|
use FireflyIII\Api\V1\Requests\DateRequest;
|
||||||
use FireflyIII\Api\V1\Requests\Generic\ObjectTypeApiRequest;
|
|
||||||
use FireflyIII\Api\V1\Requests\PaginationRequest;
|
use FireflyIII\Api\V1\Requests\PaginationRequest;
|
||||||
use FireflyIII\Models\Account;
|
use FireflyIII\Models\Account;
|
||||||
|
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Requests\Models\Account;
|
namespace FireflyIII\Api\V1\Requests\Models\Account;
|
||||||
|
|
||||||
|
use Illuminate\Contracts\Validation\Validator;
|
||||||
use FireflyIII\Models\Account;
|
use FireflyIII\Models\Account;
|
||||||
use FireflyIII\Models\Location;
|
use FireflyIII\Models\Location;
|
||||||
use FireflyIII\Repositories\Account\AccountRepositoryInterface;
|
use FireflyIII\Repositories\Account\AccountRepositoryInterface;
|
||||||
@@ -35,7 +36,6 @@ use FireflyIII\Support\Request\ChecksLogin;
|
|||||||
use FireflyIII\Support\Request\ConvertsDataTypes;
|
use FireflyIII\Support\Request\ConvertsDataTypes;
|
||||||
use Illuminate\Foundation\Http\FormRequest;
|
use Illuminate\Foundation\Http\FormRequest;
|
||||||
use Illuminate\Support\Facades\Log;
|
use Illuminate\Support\Facades\Log;
|
||||||
use Illuminate\Validation\Validator;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class UpdateRequest
|
* Class UpdateRequest
|
||||||
|
|||||||
@@ -58,7 +58,7 @@ class StoreRequest extends FormRequest
|
|||||||
{
|
{
|
||||||
$models = config('firefly.valid_attachment_models');
|
$models = config('firefly.valid_attachment_models');
|
||||||
$models = array_map(
|
$models = array_map(
|
||||||
static fn (string $className) => str_replace('FireflyIII\Models\\', '', $className),
|
static fn (string $className): string => str_replace('FireflyIII\Models\\', '', $className),
|
||||||
$models
|
$models
|
||||||
);
|
);
|
||||||
$models = implode(',', $models);
|
$models = implode(',', $models);
|
||||||
|
|||||||
@@ -60,7 +60,7 @@ class UpdateRequest extends FormRequest
|
|||||||
{
|
{
|
||||||
$models = config('firefly.valid_attachment_models');
|
$models = config('firefly.valid_attachment_models');
|
||||||
$models = array_map(
|
$models = array_map(
|
||||||
static fn (string $className) => str_replace('FireflyIII\Models\\', '', $className),
|
static fn (string $className): string => str_replace('FireflyIII\Models\\', '', $className),
|
||||||
$models
|
$models
|
||||||
);
|
);
|
||||||
$models = implode(',', $models);
|
$models = implode(',', $models);
|
||||||
|
|||||||
@@ -24,13 +24,13 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Requests\Models\AvailableBudget;
|
namespace FireflyIII\Api\V1\Requests\Models\AvailableBudget;
|
||||||
|
|
||||||
|
use Illuminate\Contracts\Validation\Validator;
|
||||||
use Carbon\Carbon;
|
use Carbon\Carbon;
|
||||||
use FireflyIII\Rules\IsValidPositiveAmount;
|
use FireflyIII\Rules\IsValidPositiveAmount;
|
||||||
use FireflyIII\Support\Request\ChecksLogin;
|
use FireflyIII\Support\Request\ChecksLogin;
|
||||||
use FireflyIII\Support\Request\ConvertsDataTypes;
|
use FireflyIII\Support\Request\ConvertsDataTypes;
|
||||||
use Illuminate\Foundation\Http\FormRequest;
|
use Illuminate\Foundation\Http\FormRequest;
|
||||||
use Illuminate\Support\Facades\Log;
|
use Illuminate\Support\Facades\Log;
|
||||||
use Illuminate\Validation\Validator;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class Request
|
* Class Request
|
||||||
|
|||||||
@@ -24,13 +24,13 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Requests\Models\Bill;
|
namespace FireflyIII\Api\V1\Requests\Models\Bill;
|
||||||
|
|
||||||
|
use Illuminate\Contracts\Validation\Validator;
|
||||||
use FireflyIII\Rules\IsBoolean;
|
use FireflyIII\Rules\IsBoolean;
|
||||||
use FireflyIII\Rules\IsValidPositiveAmount;
|
use FireflyIII\Rules\IsValidPositiveAmount;
|
||||||
use FireflyIII\Support\Request\ChecksLogin;
|
use FireflyIII\Support\Request\ChecksLogin;
|
||||||
use FireflyIII\Support\Request\ConvertsDataTypes;
|
use FireflyIII\Support\Request\ConvertsDataTypes;
|
||||||
use Illuminate\Foundation\Http\FormRequest;
|
use Illuminate\Foundation\Http\FormRequest;
|
||||||
use Illuminate\Support\Facades\Log;
|
use Illuminate\Support\Facades\Log;
|
||||||
use Illuminate\Validation\Validator;
|
|
||||||
use TypeError;
|
use TypeError;
|
||||||
use ValueError;
|
use ValueError;
|
||||||
|
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Requests\Models\Bill;
|
namespace FireflyIII\Api\V1\Requests\Models\Bill;
|
||||||
|
|
||||||
|
use Illuminate\Contracts\Validation\Validator;
|
||||||
use FireflyIII\Models\Bill;
|
use FireflyIII\Models\Bill;
|
||||||
use FireflyIII\Rules\IsBoolean;
|
use FireflyIII\Rules\IsBoolean;
|
||||||
use FireflyIII\Rules\IsValidPositiveAmount;
|
use FireflyIII\Rules\IsValidPositiveAmount;
|
||||||
@@ -31,7 +32,6 @@ use FireflyIII\Support\Request\ChecksLogin;
|
|||||||
use FireflyIII\Support\Request\ConvertsDataTypes;
|
use FireflyIII\Support\Request\ConvertsDataTypes;
|
||||||
use Illuminate\Foundation\Http\FormRequest;
|
use Illuminate\Foundation\Http\FormRequest;
|
||||||
use Illuminate\Support\Facades\Log;
|
use Illuminate\Support\Facades\Log;
|
||||||
use Illuminate\Validation\Validator;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class UpdateRequest
|
* Class UpdateRequest
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Requests\Models\Budget;
|
namespace FireflyIII\Api\V1\Requests\Models\Budget;
|
||||||
|
|
||||||
|
use Illuminate\Contracts\Validation\Validator;
|
||||||
use FireflyIII\Rules\IsBoolean;
|
use FireflyIII\Rules\IsBoolean;
|
||||||
use FireflyIII\Rules\IsValidPositiveAmount;
|
use FireflyIII\Rules\IsValidPositiveAmount;
|
||||||
use FireflyIII\Support\Request\ChecksLogin;
|
use FireflyIII\Support\Request\ChecksLogin;
|
||||||
@@ -31,7 +32,6 @@ use FireflyIII\Support\Request\ConvertsDataTypes;
|
|||||||
use FireflyIII\Validation\AutoBudget\ValidatesAutoBudgetRequest;
|
use FireflyIII\Validation\AutoBudget\ValidatesAutoBudgetRequest;
|
||||||
use Illuminate\Foundation\Http\FormRequest;
|
use Illuminate\Foundation\Http\FormRequest;
|
||||||
use Illuminate\Support\Facades\Log;
|
use Illuminate\Support\Facades\Log;
|
||||||
use Illuminate\Validation\Validator;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class StoreRequest
|
* Class StoreRequest
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Requests\Models\Budget;
|
namespace FireflyIII\Api\V1\Requests\Models\Budget;
|
||||||
|
|
||||||
|
use Illuminate\Contracts\Validation\Validator;
|
||||||
use FireflyIII\Models\Budget;
|
use FireflyIII\Models\Budget;
|
||||||
use FireflyIII\Rules\IsBoolean;
|
use FireflyIII\Rules\IsBoolean;
|
||||||
use FireflyIII\Rules\IsValidPositiveAmount;
|
use FireflyIII\Rules\IsValidPositiveAmount;
|
||||||
@@ -32,7 +33,6 @@ use FireflyIII\Support\Request\ConvertsDataTypes;
|
|||||||
use FireflyIII\Validation\AutoBudget\ValidatesAutoBudgetRequest;
|
use FireflyIII\Validation\AutoBudget\ValidatesAutoBudgetRequest;
|
||||||
use Illuminate\Foundation\Http\FormRequest;
|
use Illuminate\Foundation\Http\FormRequest;
|
||||||
use Illuminate\Support\Facades\Log;
|
use Illuminate\Support\Facades\Log;
|
||||||
use Illuminate\Validation\Validator;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class UpdateRequest
|
* Class UpdateRequest
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Requests\Models\BudgetLimit;
|
namespace FireflyIII\Api\V1\Requests\Models\BudgetLimit;
|
||||||
|
|
||||||
|
use Illuminate\Contracts\Validation\Validator;
|
||||||
use Carbon\Carbon;
|
use Carbon\Carbon;
|
||||||
use FireflyIII\Factory\TransactionCurrencyFactory;
|
use FireflyIII\Factory\TransactionCurrencyFactory;
|
||||||
use FireflyIII\Rules\IsBoolean;
|
use FireflyIII\Rules\IsBoolean;
|
||||||
@@ -33,7 +34,6 @@ use FireflyIII\Support\Request\ChecksLogin;
|
|||||||
use FireflyIII\Support\Request\ConvertsDataTypes;
|
use FireflyIII\Support\Request\ConvertsDataTypes;
|
||||||
use Illuminate\Foundation\Http\FormRequest;
|
use Illuminate\Foundation\Http\FormRequest;
|
||||||
use Illuminate\Support\Facades\Log;
|
use Illuminate\Support\Facades\Log;
|
||||||
use Illuminate\Validation\Validator;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class StoreRequest
|
* Class StoreRequest
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Requests\Models\BudgetLimit;
|
namespace FireflyIII\Api\V1\Requests\Models\BudgetLimit;
|
||||||
|
|
||||||
|
use Illuminate\Contracts\Validation\Validator;
|
||||||
use Carbon\Carbon;
|
use Carbon\Carbon;
|
||||||
use FireflyIII\Rules\IsBoolean;
|
use FireflyIII\Rules\IsBoolean;
|
||||||
use FireflyIII\Rules\IsValidPositiveAmount;
|
use FireflyIII\Rules\IsValidPositiveAmount;
|
||||||
@@ -31,7 +32,6 @@ use FireflyIII\Support\Request\ChecksLogin;
|
|||||||
use FireflyIII\Support\Request\ConvertsDataTypes;
|
use FireflyIII\Support\Request\ConvertsDataTypes;
|
||||||
use Illuminate\Foundation\Http\FormRequest;
|
use Illuminate\Foundation\Http\FormRequest;
|
||||||
use Illuminate\Support\Facades\Log;
|
use Illuminate\Support\Facades\Log;
|
||||||
use Illuminate\Validation\Validator;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class UpdateRequest
|
* Class UpdateRequest
|
||||||
|
|||||||
@@ -24,12 +24,12 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Requests\Models\CurrencyExchangeRate;
|
namespace FireflyIII\Api\V1\Requests\Models\CurrencyExchangeRate;
|
||||||
|
|
||||||
|
use Illuminate\Contracts\Validation\Validator;
|
||||||
use Carbon\Carbon;
|
use Carbon\Carbon;
|
||||||
use Carbon\Exceptions\InvalidFormatException;
|
use Carbon\Exceptions\InvalidFormatException;
|
||||||
use FireflyIII\Support\Request\ChecksLogin;
|
use FireflyIII\Support\Request\ChecksLogin;
|
||||||
use FireflyIII\Support\Request\ConvertsDataTypes;
|
use FireflyIII\Support\Request\ConvertsDataTypes;
|
||||||
use Illuminate\Foundation\Http\FormRequest;
|
use Illuminate\Foundation\Http\FormRequest;
|
||||||
use Illuminate\Validation\Validator;
|
|
||||||
|
|
||||||
class StoreByCurrenciesRequest extends FormRequest
|
class StoreByCurrenciesRequest extends FormRequest
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -24,13 +24,13 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Requests\Models\CurrencyExchangeRate;
|
namespace FireflyIII\Api\V1\Requests\Models\CurrencyExchangeRate;
|
||||||
|
|
||||||
|
use Illuminate\Contracts\Validation\Validator;
|
||||||
use FireflyIII\Exceptions\FireflyException;
|
use FireflyIII\Exceptions\FireflyException;
|
||||||
use FireflyIII\Models\TransactionCurrency;
|
use FireflyIII\Models\TransactionCurrency;
|
||||||
use FireflyIII\Support\Facades\Amount;
|
use FireflyIII\Support\Facades\Amount;
|
||||||
use FireflyIII\Support\Request\ChecksLogin;
|
use FireflyIII\Support\Request\ChecksLogin;
|
||||||
use FireflyIII\Support\Request\ConvertsDataTypes;
|
use FireflyIII\Support\Request\ConvertsDataTypes;
|
||||||
use Illuminate\Foundation\Http\FormRequest;
|
use Illuminate\Foundation\Http\FormRequest;
|
||||||
use Illuminate\Validation\Validator;
|
|
||||||
|
|
||||||
class StoreByDateRequest extends FormRequest
|
class StoreByDateRequest extends FormRequest
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Requests\Models\PiggyBank;
|
namespace FireflyIII\Api\V1\Requests\Models\PiggyBank;
|
||||||
|
|
||||||
|
use Illuminate\Contracts\Validation\Validator;
|
||||||
use FireflyIII\Models\TransactionCurrency;
|
use FireflyIII\Models\TransactionCurrency;
|
||||||
use FireflyIII\Repositories\Account\AccountRepositoryInterface;
|
use FireflyIII\Repositories\Account\AccountRepositoryInterface;
|
||||||
use FireflyIII\Rules\IsValidZeroOrMoreAmount;
|
use FireflyIII\Rules\IsValidZeroOrMoreAmount;
|
||||||
@@ -32,7 +33,6 @@ use FireflyIII\Support\Request\ChecksLogin;
|
|||||||
use FireflyIII\Support\Request\ConvertsDataTypes;
|
use FireflyIII\Support\Request\ConvertsDataTypes;
|
||||||
use Illuminate\Foundation\Http\FormRequest;
|
use Illuminate\Foundation\Http\FormRequest;
|
||||||
use Illuminate\Support\Facades\Log;
|
use Illuminate\Support\Facades\Log;
|
||||||
use Illuminate\Validation\Validator;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class StoreRequest
|
* Class StoreRequest
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Requests\Models\Recurrence;
|
namespace FireflyIII\Api\V1\Requests\Models\Recurrence;
|
||||||
|
|
||||||
|
use Illuminate\Contracts\Validation\Validator;
|
||||||
use FireflyIII\Rules\BelongsUser;
|
use FireflyIII\Rules\BelongsUser;
|
||||||
use FireflyIII\Rules\IsBoolean;
|
use FireflyIII\Rules\IsBoolean;
|
||||||
use FireflyIII\Rules\IsValidPositiveAmount;
|
use FireflyIII\Rules\IsValidPositiveAmount;
|
||||||
@@ -35,7 +36,6 @@ use FireflyIII\Validation\RecurrenceValidation;
|
|||||||
use FireflyIII\Validation\TransactionValidation;
|
use FireflyIII\Validation\TransactionValidation;
|
||||||
use Illuminate\Foundation\Http\FormRequest;
|
use Illuminate\Foundation\Http\FormRequest;
|
||||||
use Illuminate\Support\Facades\Log;
|
use Illuminate\Support\Facades\Log;
|
||||||
use Illuminate\Validation\Validator;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class StoreRequest
|
* Class StoreRequest
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Requests\Models\Recurrence;
|
namespace FireflyIII\Api\V1\Requests\Models\Recurrence;
|
||||||
|
|
||||||
|
use Illuminate\Contracts\Validation\Validator;
|
||||||
use FireflyIII\Models\Recurrence;
|
use FireflyIII\Models\Recurrence;
|
||||||
use FireflyIII\Rules\BelongsUser;
|
use FireflyIII\Rules\BelongsUser;
|
||||||
use FireflyIII\Rules\IsBoolean;
|
use FireflyIII\Rules\IsBoolean;
|
||||||
@@ -36,7 +37,6 @@ use FireflyIII\Validation\RecurrenceValidation;
|
|||||||
use FireflyIII\Validation\TransactionValidation;
|
use FireflyIII\Validation\TransactionValidation;
|
||||||
use Illuminate\Foundation\Http\FormRequest;
|
use Illuminate\Foundation\Http\FormRequest;
|
||||||
use Illuminate\Support\Facades\Log;
|
use Illuminate\Support\Facades\Log;
|
||||||
use Illuminate\Validation\Validator;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class UpdateRequest
|
* Class UpdateRequest
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Requests\Models\Rule;
|
namespace FireflyIII\Api\V1\Requests\Models\Rule;
|
||||||
|
|
||||||
|
use Illuminate\Contracts\Validation\Validator;
|
||||||
use FireflyIII\Rules\IsBoolean;
|
use FireflyIII\Rules\IsBoolean;
|
||||||
use FireflyIII\Rules\IsValidActionExpression;
|
use FireflyIII\Rules\IsValidActionExpression;
|
||||||
use FireflyIII\Support\Request\ChecksLogin;
|
use FireflyIII\Support\Request\ChecksLogin;
|
||||||
@@ -31,7 +32,6 @@ use FireflyIII\Support\Request\ConvertsDataTypes;
|
|||||||
use FireflyIII\Support\Request\GetRuleConfiguration;
|
use FireflyIII\Support\Request\GetRuleConfiguration;
|
||||||
use Illuminate\Foundation\Http\FormRequest;
|
use Illuminate\Foundation\Http\FormRequest;
|
||||||
use Illuminate\Support\Facades\Log;
|
use Illuminate\Support\Facades\Log;
|
||||||
use Illuminate\Validation\Validator;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class StoreRequest
|
* Class StoreRequest
|
||||||
@@ -202,7 +202,7 @@ class StoreRequest extends FormRequest
|
|||||||
$inactiveIndex = $index;
|
$inactiveIndex = $index;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (true === $allInactive) {
|
if ($allInactive) {
|
||||||
$validator->errors()->add(sprintf('triggers.%d.active', $inactiveIndex), (string) trans('validation.at_least_one_active_trigger'));
|
$validator->errors()->add(sprintf('triggers.%d.active', $inactiveIndex), (string) trans('validation.at_least_one_active_trigger'));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -231,7 +231,7 @@ class StoreRequest extends FormRequest
|
|||||||
$inactiveIndex = $index;
|
$inactiveIndex = $index;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (true === $allInactive) {
|
if ($allInactive) {
|
||||||
$validator->errors()->add(sprintf('actions.%d.active', $inactiveIndex), (string) trans('validation.at_least_one_active_action'));
|
$validator->errors()->add(sprintf('actions.%d.active', $inactiveIndex), (string) trans('validation.at_least_one_active_action'));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Requests\Models\Rule;
|
namespace FireflyIII\Api\V1\Requests\Models\Rule;
|
||||||
|
|
||||||
|
use Illuminate\Contracts\Validation\Validator;
|
||||||
use FireflyIII\Models\Rule;
|
use FireflyIII\Models\Rule;
|
||||||
use FireflyIII\Rules\IsBoolean;
|
use FireflyIII\Rules\IsBoolean;
|
||||||
use FireflyIII\Rules\IsValidActionExpression;
|
use FireflyIII\Rules\IsValidActionExpression;
|
||||||
@@ -32,7 +33,6 @@ use FireflyIII\Support\Request\ConvertsDataTypes;
|
|||||||
use FireflyIII\Support\Request\GetRuleConfiguration;
|
use FireflyIII\Support\Request\GetRuleConfiguration;
|
||||||
use Illuminate\Foundation\Http\FormRequest;
|
use Illuminate\Foundation\Http\FormRequest;
|
||||||
use Illuminate\Support\Facades\Log;
|
use Illuminate\Support\Facades\Log;
|
||||||
use Illuminate\Validation\Validator;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class UpdateRequest
|
* Class UpdateRequest
|
||||||
@@ -207,7 +207,7 @@ class UpdateRequest extends FormRequest
|
|||||||
$inactiveIndex = $index;
|
$inactiveIndex = $index;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (true === $allInactive) {
|
if ($allInactive) {
|
||||||
$validator->errors()->add(sprintf('triggers.%d.active', $inactiveIndex), (string) trans('validation.at_least_one_active_trigger'));
|
$validator->errors()->add(sprintf('triggers.%d.active', $inactiveIndex), (string) trans('validation.at_least_one_active_trigger'));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -248,7 +248,7 @@ class UpdateRequest extends FormRequest
|
|||||||
$inactiveIndex = $index;
|
$inactiveIndex = $index;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (true === $allInactive) {
|
if ($allInactive) {
|
||||||
$validator->errors()->add(sprintf('actions.%d.active', $inactiveIndex), (string) trans('validation.at_least_one_active_action'));
|
$validator->errors()->add(sprintf('actions.%d.active', $inactiveIndex), (string) trans('validation.at_least_one_active_action'));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Requests\Models\Transaction;
|
namespace FireflyIII\Api\V1\Requests\Models\Transaction;
|
||||||
|
|
||||||
|
use Illuminate\Contracts\Validation\Validator;
|
||||||
use FireflyIII\Models\Location;
|
use FireflyIII\Models\Location;
|
||||||
use FireflyIII\Rules\BelongsUser;
|
use FireflyIII\Rules\BelongsUser;
|
||||||
use FireflyIII\Rules\IsBoolean;
|
use FireflyIII\Rules\IsBoolean;
|
||||||
@@ -39,7 +40,6 @@ use FireflyIII\Validation\GroupValidation;
|
|||||||
use FireflyIII\Validation\TransactionValidation;
|
use FireflyIII\Validation\TransactionValidation;
|
||||||
use Illuminate\Foundation\Http\FormRequest;
|
use Illuminate\Foundation\Http\FormRequest;
|
||||||
use Illuminate\Support\Facades\Log;
|
use Illuminate\Support\Facades\Log;
|
||||||
use Illuminate\Validation\Validator;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class StoreRequest
|
* Class StoreRequest
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Requests\Models\Transaction;
|
namespace FireflyIII\Api\V1\Requests\Models\Transaction;
|
||||||
|
|
||||||
|
use Illuminate\Contracts\Validation\Validator;
|
||||||
use FireflyIII\Exceptions\FireflyException;
|
use FireflyIII\Exceptions\FireflyException;
|
||||||
use FireflyIII\Models\TransactionGroup;
|
use FireflyIII\Models\TransactionGroup;
|
||||||
use FireflyIII\Rules\BelongsUser;
|
use FireflyIII\Rules\BelongsUser;
|
||||||
@@ -37,7 +38,6 @@ use FireflyIII\Validation\GroupValidation;
|
|||||||
use FireflyIII\Validation\TransactionValidation;
|
use FireflyIII\Validation\TransactionValidation;
|
||||||
use Illuminate\Foundation\Http\FormRequest;
|
use Illuminate\Foundation\Http\FormRequest;
|
||||||
use Illuminate\Support\Facades\Log;
|
use Illuminate\Support\Facades\Log;
|
||||||
use Illuminate\Validation\Validator;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class UpdateRequest
|
* Class UpdateRequest
|
||||||
|
|||||||
@@ -23,8 +23,8 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Requests\Models\TransactionCurrency;
|
namespace FireflyIII\Api\V1\Requests\Models\TransactionCurrency;
|
||||||
|
|
||||||
|
use Illuminate\Contracts\Validation\Validator;
|
||||||
use FireflyIII\Api\V1\Requests\ApiRequest;
|
use FireflyIII\Api\V1\Requests\ApiRequest;
|
||||||
use Illuminate\Validation\Validator;
|
|
||||||
|
|
||||||
class CurrencyCodeRequest extends ApiRequest
|
class CurrencyCodeRequest extends ApiRequest
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Requests\Models\TransactionLink;
|
namespace FireflyIII\Api\V1\Requests\Models\TransactionLink;
|
||||||
|
|
||||||
|
use Illuminate\Contracts\Validation\Validator;
|
||||||
use FireflyIII\Repositories\Journal\JournalRepositoryInterface;
|
use FireflyIII\Repositories\Journal\JournalRepositoryInterface;
|
||||||
use FireflyIII\Repositories\LinkType\LinkTypeRepositoryInterface;
|
use FireflyIII\Repositories\LinkType\LinkTypeRepositoryInterface;
|
||||||
use FireflyIII\Support\Request\ChecksLogin;
|
use FireflyIII\Support\Request\ChecksLogin;
|
||||||
@@ -31,7 +32,6 @@ use FireflyIII\Support\Request\ConvertsDataTypes;
|
|||||||
use FireflyIII\User;
|
use FireflyIII\User;
|
||||||
use Illuminate\Foundation\Http\FormRequest;
|
use Illuminate\Foundation\Http\FormRequest;
|
||||||
use Illuminate\Support\Facades\Log;
|
use Illuminate\Support\Facades\Log;
|
||||||
use Illuminate\Validation\Validator;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class StoreRequest
|
* Class StoreRequest
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Requests\Models\TransactionLink;
|
namespace FireflyIII\Api\V1\Requests\Models\TransactionLink;
|
||||||
|
|
||||||
|
use Illuminate\Contracts\Validation\Validator;
|
||||||
use FireflyIII\Models\TransactionJournalLink;
|
use FireflyIII\Models\TransactionJournalLink;
|
||||||
use FireflyIII\Repositories\Journal\JournalRepositoryInterface;
|
use FireflyIII\Repositories\Journal\JournalRepositoryInterface;
|
||||||
use FireflyIII\Repositories\LinkType\LinkTypeRepositoryInterface;
|
use FireflyIII\Repositories\LinkType\LinkTypeRepositoryInterface;
|
||||||
@@ -31,7 +32,6 @@ use FireflyIII\Support\Request\ChecksLogin;
|
|||||||
use FireflyIII\Support\Request\ConvertsDataTypes;
|
use FireflyIII\Support\Request\ConvertsDataTypes;
|
||||||
use Illuminate\Foundation\Http\FormRequest;
|
use Illuminate\Foundation\Http\FormRequest;
|
||||||
use Illuminate\Support\Facades\Log;
|
use Illuminate\Support\Facades\Log;
|
||||||
use Illuminate\Validation\Validator;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class UpdateRequest
|
* Class UpdateRequest
|
||||||
|
|||||||
@@ -52,7 +52,7 @@ class CreateRequest extends FormRequest
|
|||||||
$responses = $this->get('responses', []);
|
$responses = $this->get('responses', []);
|
||||||
$deliveries = $this->get('deliveries', []);
|
$deliveries = $this->get('deliveries', []);
|
||||||
|
|
||||||
if (0 === count($triggers) || 0 === count($responses) || 0 === count($deliveries)) {
|
if (in_array(0, [count($triggers), count($responses), count($deliveries)], true)) {
|
||||||
throw new FireflyException('Unexpectedly got no responses, triggers or deliveries.');
|
throw new FireflyException('Unexpectedly got no responses, triggers or deliveries.');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -53,7 +53,7 @@ class UpdateRequest extends FormRequest
|
|||||||
$responses = $this->get('responses', []);
|
$responses = $this->get('responses', []);
|
||||||
$deliveries = $this->get('deliveries', []);
|
$deliveries = $this->get('deliveries', []);
|
||||||
|
|
||||||
if (0 === count($triggers) || 0 === count($responses) || 0 === count($deliveries)) {
|
if (in_array(0, [count($triggers), count($responses), count($deliveries)], true)) {
|
||||||
throw new FireflyException('Unexpectedly got no responses, triggers or deliveries.');
|
throw new FireflyException('Unexpectedly got no responses, triggers or deliveries.');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -23,16 +23,18 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Requests;
|
namespace FireflyIII\Api\V1\Requests;
|
||||||
|
|
||||||
|
use Override;
|
||||||
|
use Illuminate\Contracts\Validation\Validator;
|
||||||
use FireflyIII\Rules\IsValidSortInstruction;
|
use FireflyIII\Rules\IsValidSortInstruction;
|
||||||
use FireflyIII\Support\Facades\Preferences;
|
use FireflyIII\Support\Facades\Preferences;
|
||||||
use FireflyIII\User;
|
use FireflyIII\User;
|
||||||
use Illuminate\Validation\Validator;
|
|
||||||
use RuntimeException;
|
use RuntimeException;
|
||||||
|
|
||||||
class PaginationRequest extends ApiRequest
|
class PaginationRequest extends ApiRequest
|
||||||
{
|
{
|
||||||
private ?string $sortClass = null;
|
private ?string $sortClass = null;
|
||||||
|
|
||||||
|
#[Override]
|
||||||
public function handleConfig(array $config): void
|
public function handleConfig(array $config): void
|
||||||
{
|
{
|
||||||
parent::handleConfig($config);
|
parent::handleConfig($config);
|
||||||
|
|||||||
@@ -24,13 +24,13 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Api\V1\Requests\System;
|
namespace FireflyIII\Api\V1\Requests\System;
|
||||||
|
|
||||||
|
use Illuminate\Contracts\Validation\Validator;
|
||||||
use FireflyIII\Rules\IsBoolean;
|
use FireflyIII\Rules\IsBoolean;
|
||||||
use FireflyIII\Support\Request\ChecksLogin;
|
use FireflyIII\Support\Request\ChecksLogin;
|
||||||
use FireflyIII\Support\Request\ConvertsDataTypes;
|
use FireflyIII\Support\Request\ConvertsDataTypes;
|
||||||
use FireflyIII\User;
|
use FireflyIII\User;
|
||||||
use Illuminate\Foundation\Http\FormRequest;
|
use Illuminate\Foundation\Http\FormRequest;
|
||||||
use Illuminate\Support\Facades\Log;
|
use Illuminate\Support\Facades\Log;
|
||||||
use Illuminate\Validation\Validator;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class UserUpdateRequest
|
* Class UserUpdateRequest
|
||||||
|
|||||||
@@ -220,7 +220,7 @@ class CorrectsAmounts extends Command
|
|||||||
/** @var RuleTrigger $item */
|
/** @var RuleTrigger $item */
|
||||||
foreach ($set as $item) {
|
foreach ($set as $item) {
|
||||||
$result = $this->fixRuleTrigger($item);
|
$result = $this->fixRuleTrigger($item);
|
||||||
if (true === $result) {
|
if ($result) {
|
||||||
++$fixed;
|
++$fixed;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -115,7 +115,7 @@ class CorrectsCurrencies extends Command
|
|||||||
$found = array_values(
|
$found = array_values(
|
||||||
array_filter(
|
array_filter(
|
||||||
$found,
|
$found,
|
||||||
static fn (int $currencyId) => 0 !== $currencyId
|
static fn (int $currencyId): bool => 0 !== $currencyId
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
@@ -55,10 +55,8 @@ class CorrectsGroupInformation extends Command
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Execute the console command.
|
* Execute the console command.
|
||||||
*
|
|
||||||
* @return int
|
|
||||||
*/
|
*/
|
||||||
public function handle()
|
public function handle(): int
|
||||||
{
|
{
|
||||||
// objects: accounts, attachments, available budgets, bills, budgets, categories, currency_exchange_rates
|
// objects: accounts, attachments, available budgets, bills, budgets, categories, currency_exchange_rates
|
||||||
// recurrences, rule groups, rules, tags, transaction groups, transaction journals, webhooks
|
// recurrences, rule groups, rules, tags, transaction groups, transaction journals, webhooks
|
||||||
|
|||||||
@@ -93,25 +93,20 @@ class CorrectsIbans extends Command
|
|||||||
if (in_array($type, [AccountTypeEnum::LOAN->value, AccountTypeEnum::DEBT->value, AccountTypeEnum::MORTGAGE->value], true)) {
|
if (in_array($type, [AccountTypeEnum::LOAN->value, AccountTypeEnum::DEBT->value, AccountTypeEnum::MORTGAGE->value], true)) {
|
||||||
$type = 'liabilities';
|
$type = 'liabilities';
|
||||||
}
|
}
|
||||||
if (array_key_exists($iban, $set[$userId])) {
|
// iban already in use! two exceptions exist:
|
||||||
// iban already in use! two exceptions exist:
|
if (array_key_exists($iban, $set[$userId]) && (!AccountTypeEnum::EXPENSE->value === $set[$userId][$iban] && AccountTypeEnum::REVENUE->value === $type && !(AccountTypeEnum::REVENUE->value === $set[$userId][$iban] && AccountTypeEnum::EXPENSE->value === $type))) {
|
||||||
if (
|
$this->friendlyWarning(
|
||||||
!(AccountTypeEnum::EXPENSE->value === $set[$userId][$iban] && AccountTypeEnum::REVENUE->value === $type) // allowed combination
|
sprintf(
|
||||||
&& !(AccountTypeEnum::REVENUE->value === $set[$userId][$iban] && AccountTypeEnum::EXPENSE->value === $type) // also allowed combination.
|
'IBAN "%s" is used more than once and will be removed from %s #%d ("%s")',
|
||||||
) {
|
$iban,
|
||||||
$this->friendlyWarning(
|
$account->accountType->type,
|
||||||
sprintf(
|
$account->id,
|
||||||
'IBAN "%s" is used more than once and will be removed from %s #%d ("%s")',
|
$account->name
|
||||||
$iban,
|
)
|
||||||
$account->accountType->type,
|
);
|
||||||
$account->id,
|
$account->iban = null;
|
||||||
$account->name
|
$account->save();
|
||||||
)
|
++$this->count;
|
||||||
);
|
|
||||||
$account->iban = null;
|
|
||||||
$account->save();
|
|
||||||
++$this->count;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!array_key_exists($iban, $set[$userId])) {
|
if (!array_key_exists($iban, $set[$userId])) {
|
||||||
|
|||||||
@@ -130,7 +130,7 @@ class CorrectsPrimaryCurrencyAmounts extends Command
|
|||||||
$repository->setUserGroup($userGroup);
|
$repository->setUserGroup($userGroup);
|
||||||
$set = $repository->getPiggyBanks();
|
$set = $repository->getPiggyBanks();
|
||||||
$set = $set->filter(
|
$set = $set->filter(
|
||||||
static fn (PiggyBank $piggyBank) => $currency->id !== $piggyBank->transaction_currency_id
|
static fn (PiggyBank $piggyBank): bool => $currency->id !== $piggyBank->transaction_currency_id
|
||||||
);
|
);
|
||||||
foreach ($set as $piggyBank) {
|
foreach ($set as $piggyBank) {
|
||||||
$piggyBank->encrypted = false;
|
$piggyBank->encrypted = false;
|
||||||
|
|||||||
@@ -53,7 +53,7 @@ class CorrectsTransactionTypes extends Command
|
|||||||
/** @var TransactionJournal $journal */
|
/** @var TransactionJournal $journal */
|
||||||
foreach ($journals as $journal) {
|
foreach ($journals as $journal) {
|
||||||
$fixed = $this->fixJournal($journal);
|
$fixed = $this->fixJournal($journal);
|
||||||
if (true === $fixed) {
|
if ($fixed) {
|
||||||
++$count;
|
++$count;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -115,7 +115,7 @@ class CorrectsTransactionTypes extends Command
|
|||||||
private function getSourceAccount(TransactionJournal $journal): Account
|
private function getSourceAccount(TransactionJournal $journal): Account
|
||||||
{
|
{
|
||||||
$collection = $journal->transactions->filter(
|
$collection = $journal->transactions->filter(
|
||||||
static fn (Transaction $transaction) => $transaction->amount < 0
|
static fn (Transaction $transaction): bool => $transaction->amount < 0
|
||||||
);
|
);
|
||||||
if (0 === $collection->count()) {
|
if (0 === $collection->count()) {
|
||||||
throw new FireflyException(sprintf('300001: Journal #%d has no source transaction.', $journal->id));
|
throw new FireflyException(sprintf('300001: Journal #%d has no source transaction.', $journal->id));
|
||||||
@@ -142,7 +142,7 @@ class CorrectsTransactionTypes extends Command
|
|||||||
private function getDestinationAccount(TransactionJournal $journal): Account
|
private function getDestinationAccount(TransactionJournal $journal): Account
|
||||||
{
|
{
|
||||||
$collection = $journal->transactions->filter(
|
$collection = $journal->transactions->filter(
|
||||||
static fn (Transaction $transaction) => $transaction->amount > 0
|
static fn (Transaction $transaction): bool => $transaction->amount > 0
|
||||||
);
|
);
|
||||||
if (0 === $collection->count()) {
|
if (0 === $collection->count()) {
|
||||||
throw new FireflyException(sprintf('300004: Journal #%d has no destination transaction.', $journal->id));
|
throw new FireflyException(sprintf('300004: Journal #%d has no destination transaction.', $journal->id));
|
||||||
|
|||||||
@@ -257,21 +257,14 @@ class CorrectsUnevenAmount extends Command
|
|||||||
// source currency = dest foreign currency
|
// source currency = dest foreign currency
|
||||||
// dest amount = source foreign currency
|
// dest amount = source foreign currency
|
||||||
// dest currency = source foreign currency
|
// dest currency = source foreign currency
|
||||||
|
|
||||||
// Log::debug(sprintf('[a] %s', bccomp(app('steam')->positive($source->amount), app('steam')->positive($destination->foreign_amount))));
|
// Log::debug(sprintf('[a] %s', bccomp(app('steam')->positive($source->amount), app('steam')->positive($destination->foreign_amount))));
|
||||||
// Log::debug(sprintf('[b] %s', bccomp(app('steam')->positive($destination->amount), app('steam')->positive($source->foreign_amount))));
|
// Log::debug(sprintf('[b] %s', bccomp(app('steam')->positive($destination->amount), app('steam')->positive($source->foreign_amount))));
|
||||||
// Log::debug(sprintf('[c] %s', var_export($source->transaction_currency_id === $destination->foreign_currency_id,true)));
|
// Log::debug(sprintf('[c] %s', var_export($source->transaction_currency_id === $destination->foreign_currency_id,true)));
|
||||||
// Log::debug(sprintf('[d] %s', var_export((int) $destination->transaction_currency_id ===(int) $source->foreign_currency_id, true)));
|
// Log::debug(sprintf('[d] %s', var_export((int) $destination->transaction_currency_id ===(int) $source->foreign_currency_id, true)));
|
||||||
|
return 0 === bccomp(Steam::positive($source->amount), Steam::positive($destination->foreign_amount))
|
||||||
if (0 === bccomp(Steam::positive($source->amount), Steam::positive($destination->foreign_amount))
|
|
||||||
&& $source->transaction_currency_id === $destination->foreign_currency_id
|
&& $source->transaction_currency_id === $destination->foreign_currency_id
|
||||||
&& 0 === bccomp(Steam::positive($destination->amount), Steam::positive($source->foreign_amount))
|
&& 0 === bccomp(Steam::positive($destination->amount), Steam::positive($source->foreign_amount))
|
||||||
&& (int) $destination->transaction_currency_id === (int) $source->foreign_currency_id
|
&& (int) $destination->transaction_currency_id === (int) $source->foreign_currency_id;
|
||||||
) {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private function matchCurrencies(): void
|
private function matchCurrencies(): void
|
||||||
|
|||||||
@@ -56,7 +56,7 @@ class RestoresOAuthKeys extends Command
|
|||||||
}
|
}
|
||||||
if ($this->keysInDatabase() && !$this->keysOnDrive()) {
|
if ($this->keysInDatabase() && !$this->keysOnDrive()) {
|
||||||
$result = $this->restoreKeysFromDB();
|
$result = $this->restoreKeysFromDB();
|
||||||
if (true === $result) {
|
if ($result) {
|
||||||
$this->friendlyInfo('Restored OAuth keys from database.');
|
$this->friendlyInfo('Restored OAuth keys from database.');
|
||||||
|
|
||||||
return;
|
return;
|
||||||
|
|||||||
@@ -206,7 +206,7 @@ class ExportsData extends Command
|
|||||||
$error = true;
|
$error = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (true === $error && 'start' === $field) {
|
if ($error && 'start' === $field) {
|
||||||
$journal = $this->journalRepository->firstNull();
|
$journal = $this->journalRepository->firstNull();
|
||||||
$date = $journal instanceof TransactionJournal ? $journal->date : today(config('app.timezone'))->subYear();
|
$date = $journal instanceof TransactionJournal ? $journal->date : today(config('app.timezone'))->subYear();
|
||||||
$date->startOfDay();
|
$date->startOfDay();
|
||||||
@@ -214,7 +214,7 @@ class ExportsData extends Command
|
|||||||
return $date;
|
return $date;
|
||||||
}
|
}
|
||||||
// field can only be 'end' at this point, so no need to include it in the check.
|
// field can only be 'end' at this point, so no need to include it in the check.
|
||||||
if (true === $error) {
|
if ($error) {
|
||||||
$date = today(config('app.timezone'));
|
$date = today(config('app.timezone'));
|
||||||
$date->endOfDay();
|
$date->endOfDay();
|
||||||
|
|
||||||
|
|||||||
@@ -86,7 +86,7 @@ class CreatesDatabase extends Command
|
|||||||
$pdo->exec(sprintf('CREATE DATABASE `%s` CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;', env('DB_DATABASE')));
|
$pdo->exec(sprintf('CREATE DATABASE `%s` CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;', env('DB_DATABASE')));
|
||||||
$this->friendlyInfo(sprintf('Created database "%s"', env('DB_DATABASE')));
|
$this->friendlyInfo(sprintf('Created database "%s"', env('DB_DATABASE')));
|
||||||
}
|
}
|
||||||
if (true === $exists) {
|
if ($exists) {
|
||||||
$this->friendlyInfo(sprintf('Database "%s" exists.', env('DB_DATABASE')));
|
$this->friendlyInfo(sprintf('Database "%s" exists.', env('DB_DATABASE')));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -132,11 +132,11 @@ class ForcesDecimalSize extends Command
|
|||||||
{
|
{
|
||||||
// if sqlite, add function?
|
// if sqlite, add function?
|
||||||
if ('sqlite' === (string) config('database.default')) {
|
if ('sqlite' === (string) config('database.default')) {
|
||||||
DB::connection()->getPdo()->sqliteCreateFunction('REGEXP', static function ($pattern, $value) {
|
DB::connection()->getPdo()->sqliteCreateFunction('REGEXP', static function ($pattern, $value): int {
|
||||||
mb_regex_encoding('UTF-8');
|
mb_regex_encoding('UTF-8');
|
||||||
$pattern = trim($pattern, '"');
|
$pattern = trim($pattern, '"');
|
||||||
|
|
||||||
return (false !== mb_ereg($pattern, (string) $value)) ? 1 : 0;
|
return (mb_ereg($pattern, (string) $value)) ? 1 : 0;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -314,7 +314,7 @@ class ApplyRules extends Command
|
|||||||
foreach ($rules as $rule) {
|
foreach ($rules as $rule) {
|
||||||
// if in rule selection, or group in selection or all rules, it's included.
|
// if in rule selection, or group in selection or all rules, it's included.
|
||||||
$test = $this->includeRule($rule, $group);
|
$test = $this->includeRule($rule, $group);
|
||||||
if (true === $test) {
|
if ($test) {
|
||||||
Log::debug(sprintf('Will include rule #%d "%s"', $rule->id, $rule->title));
|
Log::debug(sprintf('Will include rule #%d "%s"', $rule->id, $rule->title));
|
||||||
$rulesToApply->push($rule);
|
$rulesToApply->push($rule);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -136,11 +136,8 @@ class UpgradesLiabilitiesEight extends Command
|
|||||||
if (null === $liabilityJournal) {
|
if (null === $liabilityJournal) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (!$openingJournal->date->isSameDay($liabilityJournal->date)) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
return true;
|
return (bool) $openingJournal->date->isSameDay($liabilityJournal->date);
|
||||||
}
|
}
|
||||||
|
|
||||||
private function deleteCreditTransaction(Account $account): void
|
private function deleteCreditTransaction(Account $account): void
|
||||||
|
|||||||
@@ -77,7 +77,7 @@ class UpgradesTagLocations extends Command
|
|||||||
|
|
||||||
private function hasLocationDetails(Tag $tag): bool
|
private function hasLocationDetails(Tag $tag): bool
|
||||||
{
|
{
|
||||||
return null !== $tag->latitude && null !== $tag->longitude && null !== $tag->zoomLevel;
|
return !in_array(null, [$tag->latitude, $tag->longitude, $tag->zoomLevel], true);
|
||||||
}
|
}
|
||||||
|
|
||||||
private function migrateLocationDetails(Tag $tag): void
|
private function migrateLocationDetails(Tag $tag): void
|
||||||
|
|||||||
@@ -180,7 +180,7 @@ class UpgradesToGroups extends Command
|
|||||||
private function getDestinationTransactions(TransactionJournal $journal): Collection
|
private function getDestinationTransactions(TransactionJournal $journal): Collection
|
||||||
{
|
{
|
||||||
return $journal->transactions->filter(
|
return $journal->transactions->filter(
|
||||||
static fn (Transaction $transaction) => $transaction->amount > 0
|
static fn (Transaction $transaction): bool => $transaction->amount > 0
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -278,7 +278,7 @@ class UpgradesToGroups extends Command
|
|||||||
private function findOpposingTransaction(TransactionJournal $journal, Transaction $transaction): ?Transaction
|
private function findOpposingTransaction(TransactionJournal $journal, Transaction $transaction): ?Transaction
|
||||||
{
|
{
|
||||||
$set = $journal->transactions->filter(
|
$set = $journal->transactions->filter(
|
||||||
static function (Transaction $subject) use ($transaction) {
|
static function (Transaction $subject) use ($transaction): bool {
|
||||||
$amount = (float) $transaction->amount * -1 === (float) $subject->amount; // intentional float
|
$amount = (float) $transaction->amount * -1 === (float) $subject->amount; // intentional float
|
||||||
$identifier = $transaction->identifier === $subject->identifier;
|
$identifier = $transaction->identifier === $subject->identifier;
|
||||||
Log::debug(sprintf('Amount the same? %s', var_export($amount, true)));
|
Log::debug(sprintf('Amount the same? %s', var_export($amount, true)));
|
||||||
|
|||||||
@@ -211,7 +211,6 @@ class UpgradesVariousCurrencyInformation extends Command
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
/** @var null|Transaction */
|
|
||||||
return $lead;
|
return $lead;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -84,7 +84,7 @@ class UpgradesWebhooks extends Command
|
|||||||
$delivery = WebhookDelivery::tryFrom((int)$webhook->delivery);
|
$delivery = WebhookDelivery::tryFrom((int)$webhook->delivery);
|
||||||
$response = WebhookResponse::tryFrom((int)$webhook->response);
|
$response = WebhookResponse::tryFrom((int)$webhook->response);
|
||||||
$trigger = WebhookTrigger::tryFrom((int)$webhook->trigger);
|
$trigger = WebhookTrigger::tryFrom((int)$webhook->trigger);
|
||||||
if (null === $delivery || null === $response || null === $trigger) {
|
if (in_array(null, [$delivery, $response, $trigger], true)) {
|
||||||
$this->friendlyError(sprintf('[a] Webhook #%d has an invalid delivery, response or trigger value. Will not upgrade.', $webhook->id));
|
$this->friendlyError(sprintf('[a] Webhook #%d has an invalid delivery, response or trigger value. Will not upgrade.', $webhook->id));
|
||||||
|
|
||||||
return;
|
return;
|
||||||
@@ -92,7 +92,7 @@ class UpgradesWebhooks extends Command
|
|||||||
$deliveryModel = WebhookDeliveryModel::where('key', $delivery->value)->first();
|
$deliveryModel = WebhookDeliveryModel::where('key', $delivery->value)->first();
|
||||||
$responseModel = WebhookResponseModel::where('key', $response->value)->first();
|
$responseModel = WebhookResponseModel::where('key', $response->value)->first();
|
||||||
$triggerModel = WebhookTriggerModel::where('key', $trigger->value)->first();
|
$triggerModel = WebhookTriggerModel::where('key', $trigger->value)->first();
|
||||||
if (null === $deliveryModel || null === $responseModel || null === $triggerModel) {
|
if (in_array(null, [$deliveryModel, $responseModel, $triggerModel], true)) {
|
||||||
$this->friendlyError(sprintf('[b] Webhook #%d has an invalid delivery, response or trigger model. Will not upgrade.', $webhook->id));
|
$this->friendlyError(sprintf('[b] Webhook #%d has an invalid delivery, response or trigger model. Will not upgrade.', $webhook->id));
|
||||||
|
|
||||||
return;
|
return;
|
||||||
|
|||||||
@@ -50,10 +50,8 @@ class RequestedReportOnJournals
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Get the channels the event should broadcast on.
|
* Get the channels the event should broadcast on.
|
||||||
*
|
|
||||||
* @return PrivateChannel
|
|
||||||
*/
|
*/
|
||||||
public function broadcastOn()
|
public function broadcastOn(): PrivateChannel
|
||||||
{
|
{
|
||||||
return new PrivateChannel('channel-name');
|
return new PrivateChannel('channel-name');
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -194,7 +194,7 @@ class GracefulNotFoundHandler extends ExceptionHandler
|
|||||||
$user = auth()->user();
|
$user = auth()->user();
|
||||||
$route = $request->route();
|
$route = $request->route();
|
||||||
$param = $route->parameter('transactionGroup');
|
$param = $route->parameter('transactionGroup');
|
||||||
$groupId = !is_object($param) ? (int) $param : 0;
|
$groupId = is_object($param) ? 0 : (int) $param;
|
||||||
|
|
||||||
/** @var null|TransactionGroup $group */
|
/** @var null|TransactionGroup $group */
|
||||||
$group = $user->transactionGroups()->withTrashed()->find($groupId);
|
$group = $user->transactionGroups()->withTrashed()->find($groupId);
|
||||||
|
|||||||
@@ -274,7 +274,7 @@ class Handler extends ExceptionHandler
|
|||||||
{
|
{
|
||||||
return null !== Arr::first(
|
return null !== Arr::first(
|
||||||
$this->dontReport,
|
$this->dontReport,
|
||||||
static fn ($type) => $e instanceof $type
|
static fn ($type): bool => $e instanceof $type
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -33,17 +33,15 @@ use Throwable;
|
|||||||
*/
|
*/
|
||||||
final class IntervalException extends Exception
|
final class IntervalException extends Exception
|
||||||
{
|
{
|
||||||
public array $availableIntervals;
|
public array $availableIntervals = [];
|
||||||
public Periodicity $periodicity;
|
public Periodicity $periodicity = Periodicity::Monthly;
|
||||||
|
|
||||||
/** @var mixed */
|
/** @var mixed */
|
||||||
protected $message = 'The periodicity %s is unknown. Choose one of available periodicity: %s';
|
protected $message = 'The periodicity %s is unknown. Choose one of available periodicity: %s';
|
||||||
|
|
||||||
public function __construct(string $message = '', int $code = 0, ?Throwable $previous = null)
|
public function __construct(string $message = '', int $code = 0, ?Throwable $previous = null)
|
||||||
{
|
{
|
||||||
parent::__construct($message, $code, $previous);
|
parent::__construct($message, $code, $previous);
|
||||||
$this->availableIntervals = [];
|
|
||||||
$this->periodicity = Periodicity::Monthly;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static function unavailable(
|
public static function unavailable(
|
||||||
|
|||||||
@@ -130,7 +130,7 @@ class AccountFactory
|
|||||||
protected function getAccountType(array $data): ?AccountType
|
protected function getAccountType(array $data): ?AccountType
|
||||||
{
|
{
|
||||||
$accountTypeId = array_key_exists('account_type_id', $data) ? (int) $data['account_type_id'] : 0;
|
$accountTypeId = array_key_exists('account_type_id', $data) ? (int) $data['account_type_id'] : 0;
|
||||||
$accountTypeName = array_key_exists('account_type_name', $data) ? $data['account_type_name'] : null;
|
$accountTypeName = $data['account_type_name'] ?? null;
|
||||||
$result = null;
|
$result = null;
|
||||||
// find by name or ID
|
// find by name or ID
|
||||||
if ($accountTypeId > 0) {
|
if ($accountTypeId > 0) {
|
||||||
@@ -174,7 +174,7 @@ class AccountFactory
|
|||||||
$this->accountRepository->resetAccountOrder();
|
$this->accountRepository->resetAccountOrder();
|
||||||
|
|
||||||
// create it:
|
// create it:
|
||||||
$virtualBalance = array_key_exists('virtual_balance', $data) ? $data['virtual_balance'] : null;
|
$virtualBalance = $data['virtual_balance'] ?? null;
|
||||||
$active = array_key_exists('active', $data) ? $data['active'] : true;
|
$active = array_key_exists('active', $data) ? $data['active'] : true;
|
||||||
$databaseData = [
|
$databaseData = [
|
||||||
'user_id' => $this->user->id,
|
'user_id' => $this->user->id,
|
||||||
|
|||||||
@@ -44,8 +44,8 @@ class AttachmentFactory
|
|||||||
public function create(array $data): ?Attachment
|
public function create(array $data): ?Attachment
|
||||||
{
|
{
|
||||||
// append if necessary.
|
// append if necessary.
|
||||||
$model = !str_contains((string) $data['attachable_type'], 'FireflyIII') ? sprintf('FireflyIII\Models\%s', $data['attachable_type'])
|
$model = str_contains((string) $data['attachable_type'], 'FireflyIII') ? $data['attachable_type']
|
||||||
: $data['attachable_type'];
|
: sprintf('FireflyIII\Models\%s', $data['attachable_type']);
|
||||||
|
|
||||||
// get journal instead of transaction.
|
// get journal instead of transaction.
|
||||||
if (Transaction::class === $model) {
|
if (Transaction::class === $model) {
|
||||||
|
|||||||
@@ -89,7 +89,7 @@ class TagFactory
|
|||||||
|
|
||||||
/** @var null|Tag $tag */
|
/** @var null|Tag $tag */
|
||||||
$tag = Tag::create($array);
|
$tag = Tag::create($array);
|
||||||
if (null !== $tag && null !== $latitude && null !== $longitude) {
|
if (!in_array(null, [$tag, $latitude, $longitude], true)) {
|
||||||
// create location object.
|
// create location object.
|
||||||
$location = new Location();
|
$location = new Location();
|
||||||
$location->latitude = $latitude;
|
$location->latitude = $latitude;
|
||||||
|
|||||||
@@ -41,20 +41,11 @@ use Illuminate\Support\Facades\Log;
|
|||||||
class TransactionFactory
|
class TransactionFactory
|
||||||
{
|
{
|
||||||
private Account $account;
|
private Account $account;
|
||||||
private array $accountInformation;
|
private array $accountInformation = [];
|
||||||
private TransactionCurrency $currency;
|
private TransactionCurrency $currency;
|
||||||
private ?TransactionCurrency $foreignCurrency = null;
|
private ?TransactionCurrency $foreignCurrency = null;
|
||||||
private TransactionJournal $journal;
|
private TransactionJournal $journal;
|
||||||
private bool $reconciled;
|
private bool $reconciled = false;
|
||||||
|
|
||||||
/**
|
|
||||||
* Constructor.
|
|
||||||
*/
|
|
||||||
public function __construct()
|
|
||||||
{
|
|
||||||
$this->reconciled = false;
|
|
||||||
$this->accountInformation = [];
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Create transaction with negative amount (for source accounts).
|
* Create transaction with negative amount (for source accounts).
|
||||||
|
|||||||
@@ -71,7 +71,7 @@ class TransactionJournalFactory
|
|||||||
private AccountValidator $accountValidator;
|
private AccountValidator $accountValidator;
|
||||||
private BillRepositoryInterface $billRepository;
|
private BillRepositoryInterface $billRepository;
|
||||||
private CurrencyRepositoryInterface $currencyRepository;
|
private CurrencyRepositoryInterface $currencyRepository;
|
||||||
private bool $errorOnHash;
|
private bool $errorOnHash = false;
|
||||||
private array $fields;
|
private array $fields;
|
||||||
private PiggyBankEventFactory $piggyEventFactory;
|
private PiggyBankEventFactory $piggyEventFactory;
|
||||||
private PiggyBankRepositoryInterface $piggyRepository;
|
private PiggyBankRepositoryInterface $piggyRepository;
|
||||||
@@ -86,7 +86,6 @@ class TransactionJournalFactory
|
|||||||
*/
|
*/
|
||||||
public function __construct()
|
public function __construct()
|
||||||
{
|
{
|
||||||
$this->errorOnHash = false;
|
|
||||||
$this->fields = config('firefly.journal_meta_fields');
|
$this->fields = config('firefly.journal_meta_fields');
|
||||||
$this->currencyRepository = app(CurrencyRepositoryInterface::class);
|
$this->currencyRepository = app(CurrencyRepositoryInterface::class);
|
||||||
$this->typeRepository = app(TransactionTypeRepositoryInterface::class);
|
$this->typeRepository = app(TransactionTypeRepositoryInterface::class);
|
||||||
@@ -237,7 +236,7 @@ class TransactionJournalFactory
|
|||||||
Log::debug('Done with getAccount(2x)');
|
Log::debug('Done with getAccount(2x)');
|
||||||
|
|
||||||
// there is a safety catch here. If either account is NULL, they will be replaced with the cash account.
|
// there is a safety catch here. If either account is NULL, they will be replaced with the cash account.
|
||||||
if (null === $destinationAccount) {
|
if (!$destinationAccount instanceof Account) {
|
||||||
Log::warning('Destination account is NULL, will replace with cash account.');
|
Log::warning('Destination account is NULL, will replace with cash account.');
|
||||||
$destinationAccount = $this->accountRepository->getCashAccount();
|
$destinationAccount = $this->accountRepository->getCashAccount();
|
||||||
}
|
}
|
||||||
@@ -615,7 +614,7 @@ class TransactionJournalFactory
|
|||||||
|
|
||||||
private function storeLocation(TransactionJournal $journal, NullArrayObject $data): void
|
private function storeLocation(TransactionJournal $journal, NullArrayObject $data): void
|
||||||
{
|
{
|
||||||
if (null !== $data['longitude'] && null !== $data['latitude'] && null !== $data['zoom_level']) {
|
if (!in_array(null, [$data['longitude'], $data['latitude'], $data['zoom_level']], true)) {
|
||||||
$location = new Location();
|
$location = new Location();
|
||||||
$location->longitude = $data['longitude'];
|
$location->longitude = $data['longitude'];
|
||||||
$location->latitude = $data['latitude'];
|
$location->latitude = $data['latitude'];
|
||||||
@@ -628,7 +627,7 @@ class TransactionJournalFactory
|
|||||||
public function setErrorOnHash(bool $errorOnHash): void
|
public function setErrorOnHash(bool $errorOnHash): void
|
||||||
{
|
{
|
||||||
$this->errorOnHash = $errorOnHash;
|
$this->errorOnHash = $errorOnHash;
|
||||||
if (true === $errorOnHash) {
|
if ($errorOnHash) {
|
||||||
Log::info('Will trigger duplication alert for this journal.');
|
Log::info('Will trigger duplication alert for this journal.');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -53,7 +53,7 @@ class MonthReportGenerator implements ReportGeneratorInterface
|
|||||||
$preferredPeriod = $this->preferredPeriod();
|
$preferredPeriod = $this->preferredPeriod();
|
||||||
|
|
||||||
try {
|
try {
|
||||||
$result = view('reports.double.report', compact('accountIds', 'reportType', 'doubleIds', 'preferredPeriod'))
|
$result = view('reports.double.report', ['accountIds' => $accountIds, 'reportType' => $reportType, 'doubleIds' => $doubleIds, 'preferredPeriod' => $preferredPeriod])
|
||||||
->with('start', $this->start)->with('end', $this->end)
|
->with('start', $this->start)->with('end', $this->end)
|
||||||
->with('doubles', $this->expense)
|
->with('doubles', $this->expense)
|
||||||
->render()
|
->render()
|
||||||
|
|||||||
@@ -100,7 +100,7 @@ class MonthReportGenerator implements ReportGeneratorInterface
|
|||||||
];
|
];
|
||||||
|
|
||||||
try {
|
try {
|
||||||
$result = view('reports.audit.report', compact('reportType', 'accountIds', 'auditData', 'hideable', 'defaultShow'))
|
$result = view('reports.audit.report', ['reportType' => $reportType, 'accountIds' => $accountIds, 'auditData' => $auditData, 'hideable' => $hideable, 'defaultShow' => $defaultShow])
|
||||||
->with('start', $this->start)->with('end', $this->end)->with('accounts', $this->accounts)
|
->with('start', $this->start)->with('end', $this->end)->with('accounts', $this->accounts)
|
||||||
->render()
|
->render()
|
||||||
;
|
;
|
||||||
|
|||||||
@@ -41,17 +41,9 @@ class MonthReportGenerator implements ReportGeneratorInterface
|
|||||||
private Collection $accounts;
|
private Collection $accounts;
|
||||||
private Collection $budgets;
|
private Collection $budgets;
|
||||||
private Carbon $end;
|
private Carbon $end;
|
||||||
private array $expenses;
|
private array $expenses = [];
|
||||||
private Carbon $start;
|
private Carbon $start;
|
||||||
|
|
||||||
/**
|
|
||||||
* MonthReportGenerator constructor.
|
|
||||||
*/
|
|
||||||
public function __construct()
|
|
||||||
{
|
|
||||||
$this->expenses = [];
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Generates the report.
|
* Generates the report.
|
||||||
*
|
*
|
||||||
@@ -65,7 +57,7 @@ class MonthReportGenerator implements ReportGeneratorInterface
|
|||||||
try {
|
try {
|
||||||
$result = view(
|
$result = view(
|
||||||
'reports.budget.month',
|
'reports.budget.month',
|
||||||
compact('accountIds', 'budgetIds')
|
['accountIds' => $accountIds, 'budgetIds' => $budgetIds]
|
||||||
)
|
)
|
||||||
->with('start', $this->start)->with('end', $this->end)
|
->with('start', $this->start)->with('end', $this->end)
|
||||||
->with('budgets', $this->budgets)
|
->with('budgets', $this->budgets)
|
||||||
|
|||||||
@@ -41,19 +41,10 @@ class MonthReportGenerator implements ReportGeneratorInterface
|
|||||||
private Collection $accounts;
|
private Collection $accounts;
|
||||||
private Collection $categories;
|
private Collection $categories;
|
||||||
private Carbon $end;
|
private Carbon $end;
|
||||||
private array $expenses;
|
private array $expenses = [];
|
||||||
private array $income;
|
private array $income = [];
|
||||||
private Carbon $start;
|
private Carbon $start;
|
||||||
|
|
||||||
/**
|
|
||||||
* MonthReportGenerator constructor.
|
|
||||||
*/
|
|
||||||
public function __construct()
|
|
||||||
{
|
|
||||||
$this->income = [];
|
|
||||||
$this->expenses = [];
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Generates the report.
|
* Generates the report.
|
||||||
*
|
*
|
||||||
@@ -67,7 +58,7 @@ class MonthReportGenerator implements ReportGeneratorInterface
|
|||||||
|
|
||||||
// render!
|
// render!
|
||||||
try {
|
try {
|
||||||
return view('reports.category.month', compact('accountIds', 'categoryIds', 'reportType'))
|
return view('reports.category.month', ['accountIds' => $accountIds, 'categoryIds' => $categoryIds, 'reportType' => $reportType])
|
||||||
->with('start', $this->start)->with('end', $this->end)
|
->with('start', $this->start)->with('end', $this->end)
|
||||||
->with('categories', $this->categories)
|
->with('categories', $this->categories)
|
||||||
->with('accounts', $this->accounts)
|
->with('accounts', $this->accounts)
|
||||||
|
|||||||
@@ -36,13 +36,13 @@ use Illuminate\Support\Facades\Log;
|
|||||||
class MonthReportGenerator implements ReportGeneratorInterface
|
class MonthReportGenerator implements ReportGeneratorInterface
|
||||||
{
|
{
|
||||||
/** @var Collection The accounts involved in the report. */
|
/** @var Collection The accounts involved in the report. */
|
||||||
private $accounts;
|
private ?Collection $accounts = null;
|
||||||
|
|
||||||
/** @var Carbon The end date. */
|
/** @var Carbon The end date. */
|
||||||
private $end;
|
private ?Carbon $end = null;
|
||||||
|
|
||||||
/** @var Carbon The start date. */
|
/** @var Carbon The start date. */
|
||||||
private $start;
|
private ?Carbon $start = null;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Generates the report.
|
* Generates the report.
|
||||||
@@ -55,7 +55,7 @@ class MonthReportGenerator implements ReportGeneratorInterface
|
|||||||
$reportType = 'default';
|
$reportType = 'default';
|
||||||
|
|
||||||
try {
|
try {
|
||||||
return view('reports.default.month', compact('accountIds', 'reportType'))->with('start', $this->start)->with('end', $this->end)->render();
|
return view('reports.default.month', ['accountIds' => $accountIds, 'reportType' => $reportType])->with('start', $this->start)->with('end', $this->end)->render();
|
||||||
} catch (Throwable $e) {
|
} catch (Throwable $e) {
|
||||||
Log::error(sprintf('Cannot render reports.default.month: %s', $e->getMessage()));
|
Log::error(sprintf('Cannot render reports.default.month: %s', $e->getMessage()));
|
||||||
Log::error($e->getTraceAsString());
|
Log::error($e->getTraceAsString());
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user