Code cleanup that (hopefully) matches style CI

This commit is contained in:
James Cole
2020-03-17 15:01:00 +01:00
parent bd2f064eeb
commit 2b6c3fd743
110 changed files with 2060 additions and 1660 deletions

View File

@@ -23,7 +23,6 @@ declare(strict_types=1);
namespace FireflyIII\Handlers\Events; namespace FireflyIII\Handlers\Events;
use FireflyIII\Events\UpdatedTransactionGroup; use FireflyIII\Events\UpdatedTransactionGroup;
use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Models\TransactionJournal; use FireflyIII\Models\TransactionJournal;
use FireflyIII\TransactionRules\Engine\RuleEngine; use FireflyIII\TransactionRules\Engine\RuleEngine;

View File

@@ -25,9 +25,7 @@ declare(strict_types=1);
namespace FireflyIII\Handlers\Events; namespace FireflyIII\Handlers\Events;
use Carbon\Carbon;
use FireflyIII\Events\RequestedVersionCheckStatus; use FireflyIII\Events\RequestedVersionCheckStatus;
use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Helpers\Update\UpdateTrait; use FireflyIII\Helpers\Update\UpdateTrait;
use FireflyIII\Models\Configuration; use FireflyIII\Models\Configuration;
use FireflyIII\Repositories\User\UserRepositoryInterface; use FireflyIII\Repositories\User\UserRepositoryInterface;
@@ -56,6 +54,7 @@ class VersionCheckEventHandler
$value = (int) $permission->data; $value = (int) $permission->data;
if (1 !== $value) { if (1 !== $value) {
Log::info('Update check is not enabled.'); Log::info('Update check is not enabled.');
return; return;
} }
@@ -65,6 +64,7 @@ class VersionCheckEventHandler
$user = $event->user; $user = $event->user;
if (!$repository->hasRole($user, 'owner')) { if (!$repository->hasRole($user, 'owner')) {
Log::debug('User is not admin, done.'); Log::debug('User is not admin, done.');
return; return;
} }
@@ -75,6 +75,7 @@ class VersionCheckEventHandler
Log::debug(sprintf('Last check time is %d, current time is %d, difference is %d', $lastCheckTime->data, $now, $diff)); Log::debug(sprintf('Last check time is %d, current time is %d, difference is %d', $lastCheckTime->data, $now, $diff));
if ($diff < 604800) { if ($diff < 604800) {
Log::debug(sprintf('Checked for updates less than a week ago (on %s).', date('Y-m-d H:i:s', $lastCheckTime->data))); Log::debug(sprintf('Checked for updates less than a week ago (on %s).', date('Y-m-d H:i:s', $lastCheckTime->data)));
return; return;
} }
// last check time was more than a week ago. // last check time was more than a week ago.

View File

@@ -26,7 +26,9 @@ use Crypt;
use FireflyIII\Exceptions\FireflyException; use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Models\Attachment; use FireflyIII\Models\Attachment;
use Illuminate\Contracts\Encryption\DecryptException; use Illuminate\Contracts\Encryption\DecryptException;
use Illuminate\Contracts\Encryption\EncryptException;
use Illuminate\Contracts\Filesystem\FileNotFoundException; use Illuminate\Contracts\Filesystem\FileNotFoundException;
use Illuminate\Contracts\Filesystem\Filesystem;
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
use Illuminate\Support\Collection; use Illuminate\Support\Collection;
use Illuminate\Support\Facades\Storage; use Illuminate\Support\Facades\Storage;
@@ -50,12 +52,13 @@ class AttachmentHelper implements AttachmentHelperInterface
/** @var int Max upload size. */ /** @var int Max upload size. */
protected $maxUploadSize = 0; protected $maxUploadSize = 0;
/** @var \Illuminate\Contracts\Filesystem\Filesystem The disk where attachments are stored. */ /** @var Filesystem The disk where attachments are stored. */
protected $uploadDisk; protected $uploadDisk;
/** /**
* AttachmentHelper constructor. * AttachmentHelper constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -104,6 +107,7 @@ class AttachmentHelper implements AttachmentHelperInterface
* Returns the file path relative to upload disk for an attachment, * Returns the file path relative to upload disk for an attachment,
* *
* @param Attachment $attachment * @param Attachment $attachment
*
* @codeCoverageIgnore * @codeCoverageIgnore
* @return string * @return string
*/ */
@@ -114,6 +118,7 @@ class AttachmentHelper implements AttachmentHelperInterface
/** /**
* Get all attachments. * Get all attachments.
*
* @codeCoverageIgnore * @codeCoverageIgnore
* @return Collection * @return Collection
*/ */
@@ -198,8 +203,8 @@ class AttachmentHelper implements AttachmentHelperInterface
* @param object $model * @param object $model
* @param array|null $files * @param array|null $files
* *
* @return bool
* @throws FireflyException * @throws FireflyException
* @return bool
*/ */
public function saveAttachmentsForModel(object $model, ?array $files): bool public function saveAttachmentsForModel(object $model, ?array $files): bool
{ {
@@ -257,9 +262,9 @@ class AttachmentHelper implements AttachmentHelperInterface
* @param UploadedFile $file * @param UploadedFile $file
* @param Model $model * @param Model $model
* *
* @return Attachment|null * @throws EncryptException
* @throws \Illuminate\Contracts\Encryption\EncryptException
* @throws FireflyException * @throws FireflyException
* @return Attachment|null
*/ */
protected function processFile(UploadedFile $file, Model $model): ?Attachment protected function processFile(UploadedFile $file, Model $model): ?Attachment
{ {

View File

@@ -57,13 +57,6 @@ interface GroupCollectorInterface
*/ */
public function amountLess(string $amount): GroupCollectorInterface; public function amountLess(string $amount): GroupCollectorInterface;
/**
* Add basic info on attachments of transactions.
*
* @return GroupCollectorInterface
*/
public function withAttachmentInformation(): GroupCollectorInterface;
/** /**
* Get transactions where the amount is more than. * Get transactions where the amount is more than.
* *
@@ -128,15 +121,6 @@ interface GroupCollectorInterface
*/ */
public function setAccounts(Collection $accounts): GroupCollectorInterface; public function setAccounts(Collection $accounts): GroupCollectorInterface;
/**
* Either account can be set, but NOT both. This effectively excludes internal transfers.
*
* @param Collection $accounts
*
* @return GroupCollectorInterface
*/
public function setXorAccounts(Collection $accounts): GroupCollectorInterface;
/** /**
* Collect transactions after a specific date. * Collect transactions after a specific date.
* *
@@ -146,24 +130,6 @@ interface GroupCollectorInterface
*/ */
public function setAfter(Carbon $date): GroupCollectorInterface; public function setAfter(Carbon $date): GroupCollectorInterface;
/**
* Collect transactions created on a specific date.
*
* @param Carbon $date
*
* @return GroupCollectorInterface
*/
public function setCreatedAt(Carbon $date): GroupCollectorInterface;
/**
* Collect transactions updated on a specific date.
*
* @param Carbon $date
*
* @return GroupCollectorInterface
*/
public function setUpdatedAt(Carbon $date): GroupCollectorInterface;
/** /**
* Collect transactions before a specific date. * Collect transactions before a specific date.
* *
@@ -236,6 +202,14 @@ interface GroupCollectorInterface
*/ */
public function setCategory(Category $category): GroupCollectorInterface; public function setCategory(Category $category): GroupCollectorInterface;
/**
* Collect transactions created on a specific date.
*
* @param Carbon $date
*
* @return GroupCollectorInterface
*/
public function setCreatedAt(Carbon $date): GroupCollectorInterface;
/** /**
* Limit results to a specific currency, either foreign or normal one. * Limit results to a specific currency, either foreign or normal one.
@@ -355,6 +329,15 @@ interface GroupCollectorInterface
*/ */
public function setTypes(array $types): GroupCollectorInterface; public function setTypes(array $types): GroupCollectorInterface;
/**
* Collect transactions updated on a specific date.
*
* @param Carbon $date
*
* @return GroupCollectorInterface
*/
public function setUpdatedAt(Carbon $date): GroupCollectorInterface;
/** /**
* Set the user object and start the query. * Set the user object and start the query.
* *
@@ -364,6 +347,15 @@ interface GroupCollectorInterface
*/ */
public function setUser(User $user): GroupCollectorInterface; public function setUser(User $user): GroupCollectorInterface;
/**
* Either account can be set, but NOT both. This effectively excludes internal transfers.
*
* @param Collection $accounts
*
* @return GroupCollectorInterface
*/
public function setXorAccounts(Collection $accounts): GroupCollectorInterface;
/** /**
* Automatically include all stuff required to make API calls work. * Automatically include all stuff required to make API calls work.
* *
@@ -378,6 +370,13 @@ interface GroupCollectorInterface
*/ */
public function withAccountInformation(): GroupCollectorInterface; public function withAccountInformation(): GroupCollectorInterface;
/**
* Add basic info on attachments of transactions.
*
* @return GroupCollectorInterface
*/
public function withAttachmentInformation(): GroupCollectorInterface;
/** /**
* Include bill name + ID. * Include bill name + ID.
* *

View File

@@ -25,7 +25,6 @@ namespace FireflyIII\Helpers\Report;
use FireflyIII\Models\Account; use FireflyIII\Models\Account;
use FireflyIII\Models\Budget; use FireflyIII\Models\Budget;
use FireflyIII\Models\Category; use FireflyIII\Models\Category;
use Illuminate\Support\Collection;
/** /**
* Interface PopupReportInterface. * Interface PopupReportInterface.

View File

@@ -43,6 +43,7 @@ class ReportHelper implements ReportHelperInterface
/** /**
* ReportHelper constructor. * ReportHelper constructor.
*
* @param BudgetRepositoryInterface $budgetRepository * @param BudgetRepositoryInterface $budgetRepository
*/ */
public function __construct(BudgetRepositoryInterface $budgetRepository) public function __construct(BudgetRepositoryInterface $budgetRepository)

View File

@@ -23,7 +23,6 @@ declare(strict_types=1);
namespace FireflyIII\Helpers\Report; namespace FireflyIII\Helpers\Report;
use Carbon\Carbon; use Carbon\Carbon;
use FireflyIII\Helpers\Collection\Bill as BillCollection;
use Illuminate\Support\Collection; use Illuminate\Support\Collection;
/** /**

View File

@@ -23,13 +23,16 @@ declare(strict_types=1);
namespace FireflyIII\Http\Controllers\Account; namespace FireflyIII\Http\Controllers\Account;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
use FireflyIII\Http\Requests\AccountFormRequest; use FireflyIII\Http\Requests\AccountFormRequest;
use FireflyIII\Models\AccountType; use FireflyIII\Models\AccountType;
use FireflyIII\Repositories\Account\AccountRepositoryInterface; use FireflyIII\Repositories\Account\AccountRepositoryInterface;
use FireflyIII\Support\Http\Controllers\ModelInformation; use FireflyIII\Support\Http\Controllers\ModelInformation;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Routing\Redirector;
use Illuminate\View\View;
use Log; use Log;
/** /**
@@ -44,6 +47,7 @@ class CreateController extends Controller
/** /**
* CreateController constructor. * CreateController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -69,7 +73,7 @@ class CreateController extends Controller
* @param Request $request * @param Request $request
* @param string|null $objectType * @param string|null $objectType
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function create(Request $request, string $objectType = null) public function create(Request $request, string $objectType = null)
{ {
@@ -98,7 +102,8 @@ class CreateController extends Controller
// pre fill some data // pre fill some data
$request->session()->flash( $request->session()->flash(
'preFilled', [ 'preFilled',
[
'currency_id' => $defaultCurrency->id, 'currency_id' => $defaultCurrency->id,
'include_net_worth' => $hasOldInput ? (bool) $request->old('include_net_worth') : true, 'include_net_worth' => $hasOldInput ? (bool) $request->old('include_net_worth') : true,
] ]
@@ -119,7 +124,7 @@ class CreateController extends Controller
* *
* @param AccountFormRequest $request * @param AccountFormRequest $request
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function store(AccountFormRequest $request) public function store(AccountFormRequest $request)
{ {
@@ -147,7 +152,4 @@ class CreateController extends Controller
return $redirect; return $redirect;
} }
} }

View File

@@ -28,7 +28,11 @@ use FireflyIII\Http\Controllers\Controller;
use FireflyIII\Models\Account; use FireflyIII\Models\Account;
use FireflyIII\Repositories\Account\AccountRepositoryInterface; use FireflyIII\Repositories\Account\AccountRepositoryInterface;
use FireflyIII\Support\Http\Controllers\UserNavigation; use FireflyIII\Support\Http\Controllers\UserNavigation;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Routing\Redirector;
use Illuminate\View\View;
/** /**
* Class DeleteController * Class DeleteController
@@ -42,6 +46,7 @@ class DeleteController extends Controller
/** /**
* DeleteController constructor. * DeleteController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -66,7 +71,7 @@ class DeleteController extends Controller
* *
* @param Account $account * @param Account $account
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function delete(Account $account) public function delete(Account $account)
{ {
@@ -92,7 +97,7 @@ class DeleteController extends Controller
* @param Request $request * @param Request $request
* @param Account $account * @param Account $account
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function destroy(Request $request, Account $account) public function destroy(Request $request, Account $account)
{ {

View File

@@ -23,7 +23,6 @@ declare(strict_types=1);
namespace FireflyIII\Http\Controllers\Account; namespace FireflyIII\Http\Controllers\Account;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
use FireflyIII\Http\Requests\AccountFormRequest; use FireflyIII\Http\Requests\AccountFormRequest;
use FireflyIII\Models\Account; use FireflyIII\Models\Account;
@@ -31,7 +30,11 @@ use FireflyIII\Repositories\Account\AccountRepositoryInterface;
use FireflyIII\Repositories\Currency\CurrencyRepositoryInterface; use FireflyIII\Repositories\Currency\CurrencyRepositoryInterface;
use FireflyIII\Support\Http\Controllers\ModelInformation; use FireflyIII\Support\Http\Controllers\ModelInformation;
use FireflyIII\Support\Http\Controllers\UserNavigation; use FireflyIII\Support\Http\Controllers\UserNavigation;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Routing\Redirector;
use Illuminate\View\View;
/** /**
* *
@@ -73,7 +76,7 @@ class EditController extends Controller
* @param Account $account * @param Account $account
* @param AccountRepositoryInterface $repository * @param AccountRepositoryInterface $repository
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
* *
*/ */
public function edit(Request $request, Account $account, AccountRepositoryInterface $repository) public function edit(Request $request, Account $account, AccountRepositoryInterface $repository)
@@ -145,8 +148,18 @@ class EditController extends Controller
$request->session()->flash('preFilled', $preFilled); $request->session()->flash('preFilled', $preFilled);
return view( return view(
'accounts.edit', compact( 'accounts.edit',
'account', 'currency', 'subTitle', 'subTitleIcon', 'locations', 'objectType', 'roles', 'preFilled', 'liabilityTypes', 'interestPeriods' compact(
'account',
'currency',
'subTitle',
'subTitleIcon',
'locations',
'objectType',
'roles',
'preFilled',
'liabilityTypes',
'interestPeriods'
) )
); );
} }
@@ -158,7 +171,7 @@ class EditController extends Controller
* @param AccountFormRequest $request * @param AccountFormRequest $request
* @param Account $account * @param Account $account
* *
* @return $this|\Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return $this|RedirectResponse|Redirector
*/ */
public function update(AccountFormRequest $request, Account $account) public function update(AccountFormRequest $request, Account $account)
{ {
@@ -182,5 +195,4 @@ class EditController extends Controller
return $redirect; return $redirect;
} }
} }

View File

@@ -28,8 +28,10 @@ use FireflyIII\Http\Controllers\Controller;
use FireflyIII\Models\Account; use FireflyIII\Models\Account;
use FireflyIII\Repositories\Account\AccountRepositoryInterface; use FireflyIII\Repositories\Account\AccountRepositoryInterface;
use FireflyIII\Support\Http\Controllers\BasicDataSupport; use FireflyIII\Support\Http\Controllers\BasicDataSupport;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Pagination\LengthAwarePaginator; use Illuminate\Pagination\LengthAwarePaginator;
use Illuminate\View\View;
/** /**
* *
@@ -43,6 +45,7 @@ class IndexController extends Controller
/** /**
* IndexController constructor. * IndexController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -66,7 +69,7 @@ class IndexController extends Controller
* @param Request $request * @param Request $request
* @param string $objectType * @param string $objectType
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function inactive(Request $request, string $objectType) public function inactive(Request $request, string $objectType)
{ {
@@ -118,7 +121,7 @@ class IndexController extends Controller
* @param Request $request * @param Request $request
* @param string $objectType * @param string $objectType
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function index(Request $request, string $objectType) public function index(Request $request, string $objectType)
{ {

View File

@@ -25,6 +25,7 @@ namespace FireflyIII\Http\Controllers\Account;
use Carbon\Carbon; use Carbon\Carbon;
use Exception; use Exception;
use FireflyIII\Exceptions\DuplicateTransactionException;
use FireflyIII\Exceptions\FireflyException; use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Factory\TransactionGroupFactory; use FireflyIII\Factory\TransactionGroupFactory;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
@@ -37,6 +38,10 @@ use FireflyIII\Repositories\Currency\CurrencyRepositoryInterface;
use FireflyIII\Repositories\Journal\JournalRepositoryInterface; use FireflyIII\Repositories\Journal\JournalRepositoryInterface;
use FireflyIII\Support\Http\Controllers\UserNavigation; use FireflyIII\Support\Http\Controllers\UserNavigation;
use FireflyIII\User; use FireflyIII\User;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\RedirectResponse;
use Illuminate\Routing\Redirector;
use Illuminate\View\View;
use Log; use Log;
/** /**
@@ -54,6 +59,7 @@ class ReconcileController extends Controller
/** /**
* ReconcileController constructor. * ReconcileController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -81,8 +87,8 @@ class ReconcileController extends Controller
* @param Carbon|null $start * @param Carbon|null $start
* @param Carbon|null $end * @param Carbon|null $end
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector|\Illuminate\View\View
* @throws Exception * @throws Exception
* @return Factory|RedirectResponse|Redirector|View
*/ */
public function reconcile(Account $account, Carbon $start = null, Carbon $end = null) public function reconcile(Account $account, Carbon $start = null, Carbon $end = null)
{ {
@@ -111,7 +117,6 @@ class ReconcileController extends Controller
$start = clone session('start', app('navigation')->startOfPeriod(new Carbon, $range)); $start = clone session('start', app('navigation')->startOfPeriod(new Carbon, $range));
/** @var Carbon $end */ /** @var Carbon $end */
$end = clone session('end', app('navigation')->endOfPeriod(new Carbon, $range)); $end = clone session('end', app('navigation')->endOfPeriod(new Carbon, $range));
} }
if (null === $end) { if (null === $end) {
/** @var Carbon $end */ /** @var Carbon $end */
@@ -136,10 +141,23 @@ class ReconcileController extends Controller
$indexUri = route('accounts.reconcile', [$account->id, '%start%', '%end%']); $indexUri = route('accounts.reconcile', [$account->id, '%start%', '%end%']);
$objectType = 'asset'; $objectType = 'asset';
return view('accounts.reconcile.index', return view(
compact('account', 'currency', 'objectType', 'accounts.reconcile.index',
'subTitleIcon', 'start', 'end', 'subTitle', 'startBalance', 'endBalance', compact(
'transactionsUri', 'overviewUri', 'indexUri')); 'account',
'currency',
'objectType',
'subTitleIcon',
'start',
'end',
'subTitle',
'startBalance',
'endBalance',
'transactionsUri',
'overviewUri',
'indexUri'
)
);
} }
/** /**
@@ -150,7 +168,7 @@ class ReconcileController extends Controller
* @param Carbon $start * @param Carbon $start
* @param Carbon $end * @param Carbon $end
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function submit(ReconciliationStoreRequest $request, Account $account, Carbon $start, Carbon $end) public function submit(ReconciliationStoreRequest $request, Account $account, Carbon $start, Carbon $end)
{ {
@@ -197,8 +215,8 @@ class ReconcileController extends Controller
* @param Carbon $end * @param Carbon $end
* @param string $difference * @param string $difference
* *
* @throws DuplicateTransactionException
* @return string * @return string
* @throws \FireflyIII\Exceptions\DuplicateTransactionException
*/ */
private function createReconciliation(Account $account, Carbon $start, Carbon $end, string $difference) private function createReconciliation(Account $account, Carbon $start, Carbon $end, string $difference)
{ {
@@ -220,8 +238,10 @@ class ReconcileController extends Controller
} }
// title: // title:
$description = trans('firefly.reconciliation_transaction_title', $description = trans(
['from' => $start->formatLocalized($this->monthAndDayFormat), 'to' => $end->formatLocalized($this->monthAndDayFormat)]); 'firefly.reconciliation_transaction_title',
['from' => $start->formatLocalized($this->monthAndDayFormat), 'to' => $end->formatLocalized($this->monthAndDayFormat)]
);
$submission = [ $submission = [
'user' => auth()->user()->id, 'user' => auth()->user()->id,
'group_title' => null, 'group_title' => null,

View File

@@ -32,7 +32,9 @@ use FireflyIII\Repositories\Account\AccountRepositoryInterface;
use FireflyIII\Repositories\Currency\CurrencyRepositoryInterface; use FireflyIII\Repositories\Currency\CurrencyRepositoryInterface;
use FireflyIII\Support\Http\Controllers\PeriodOverview; use FireflyIII\Support\Http\Controllers\PeriodOverview;
use FireflyIII\Support\Http\Controllers\UserNavigation; use FireflyIII\Support\Http\Controllers\UserNavigation;
use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Routing\Redirector;
use Illuminate\Support\Collection; use Illuminate\Support\Collection;
use View; use View;
@@ -51,6 +53,7 @@ class ShowController extends Controller
/** /**
* ShowController constructor. * ShowController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -82,8 +85,8 @@ class ShowController extends Controller
* @param Carbon|null $start * @param Carbon|null $start
* @param Carbon|null $end * @param Carbon|null $end
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector|View
* @throws Exception * @throws Exception
* @return RedirectResponse|Redirector|View
*/ */
public function show(Request $request, Account $account, Carbon $start = null, Carbon $end = null) public function show(Request $request, Account $account, Carbon $start = null, Carbon $end = null)
{ {
@@ -128,8 +131,20 @@ class ShowController extends Controller
return view( return view(
'accounts.show', 'accounts.show',
compact( compact(
'account', 'showAll', 'objectType', 'currency', 'today', 'periods', 'subTitleIcon', 'groups', 'subTitle', 'start', 'end', 'account',
'chartUri', 'location','balance' 'showAll',
'objectType',
'currency',
'today',
'periods',
'subTitleIcon',
'groups',
'subTitle',
'start',
'end',
'chartUri',
'location',
'balance'
) )
); );
} }
@@ -139,8 +154,9 @@ class ShowController extends Controller
* *
* @param Request $request * @param Request $request
* @param Account $account * @param Account $account
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector|View *
* @throws Exception * @throws Exception
* @return RedirectResponse|Redirector|View
*/ */
public function showAll(Request $request, Account $account) public function showAll(Request $request, Account $account)
{ {
@@ -173,10 +189,22 @@ class ShowController extends Controller
return view( return view(
'accounts.show', 'accounts.show',
compact( compact(
'account', 'showAll', 'location', 'objectType', 'isLiability', 'currency', 'today', 'account',
'chartUri', 'periods', 'subTitleIcon', 'groups', 'subTitle', 'start', 'end', 'balance' 'showAll',
'location',
'objectType',
'isLiability',
'currency',
'today',
'chartUri',
'periods',
'subTitleIcon',
'groups',
'subTitle',
'start',
'end',
'balance'
) )
); );
} }
} }

View File

@@ -27,7 +27,9 @@ use FireflyIII\Http\Controllers\Controller;
use FireflyIII\Http\Middleware\IsDemoUser; use FireflyIII\Http\Middleware\IsDemoUser;
use FireflyIII\Http\Middleware\IsSandStormUser; use FireflyIII\Http\Middleware\IsSandStormUser;
use FireflyIII\Http\Requests\ConfigurationRequest; use FireflyIII\Http\Requests\ConfigurationRequest;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\RedirectResponse; use Illuminate\Http\RedirectResponse;
use Illuminate\View\View;
use Log; use Log;
/** /**
@@ -37,6 +39,7 @@ class ConfigurationController extends Controller
{ {
/** /**
* ConfigurationController constructor. * ConfigurationController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -58,7 +61,7 @@ class ConfigurationController extends Controller
/** /**
* Show configuration index. * Show configuration index.
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function index() public function index()
{ {

View File

@@ -27,7 +27,11 @@ use FireflyIII\Http\Controllers\Controller;
use FireflyIII\Http\Middleware\IsDemoUser; use FireflyIII\Http\Middleware\IsDemoUser;
use FireflyIII\Http\Middleware\IsSandStormUser; use FireflyIII\Http\Middleware\IsSandStormUser;
use FireflyIII\User; use FireflyIII\User;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Routing\Redirector;
use Illuminate\View\View;
use Log; use Log;
/** /**
@@ -37,6 +41,7 @@ class HomeController extends Controller
{ {
/** /**
* ConfigurationController constructor. * ConfigurationController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -49,7 +54,7 @@ class HomeController extends Controller
/** /**
* Index of the admin. * Index of the admin.
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function index() public function index()
{ {
@@ -66,7 +71,7 @@ class HomeController extends Controller
* *
* @param Request $request * @param Request $request
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function testMessage(Request $request) public function testMessage(Request $request)
{ {

View File

@@ -27,7 +27,10 @@ use FireflyIII\Http\Middleware\IsDemoUser;
use FireflyIII\Http\Requests\LinkTypeFormRequest; use FireflyIII\Http\Requests\LinkTypeFormRequest;
use FireflyIII\Models\LinkType; use FireflyIII\Models\LinkType;
use FireflyIII\Repositories\LinkType\LinkTypeRepositoryInterface; use FireflyIII\Repositories\LinkType\LinkTypeRepositoryInterface;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Routing\Redirector;
use Log; use Log;
use View; use View;
@@ -42,6 +45,7 @@ class LinkController extends Controller
/** /**
* LinkController constructor. * LinkController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -63,7 +67,7 @@ class LinkController extends Controller
/** /**
* Make a new link form. * Make a new link form.
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|\Illuminate\View\View
*/ */
public function create() public function create()
{ {
@@ -86,7 +90,7 @@ class LinkController extends Controller
* @param Request $request * @param Request $request
* @param LinkType $linkType * @param LinkType $linkType
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector|View * @return RedirectResponse|Redirector|View
*/ */
public function delete(Request $request, LinkType $linkType) public function delete(Request $request, LinkType $linkType)
{ {
@@ -122,7 +126,7 @@ class LinkController extends Controller
* @param Request $request * @param Request $request
* @param LinkType $linkType * @param LinkType $linkType
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function destroy(Request $request, LinkType $linkType) public function destroy(Request $request, LinkType $linkType)
{ {
@@ -143,7 +147,7 @@ class LinkController extends Controller
* @param Request $request * @param Request $request
* @param LinkType $linkType * @param LinkType $linkType
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector|\Illuminate\View\View * @return Factory|RedirectResponse|Redirector|\Illuminate\View\View
*/ */
public function edit(Request $request, LinkType $linkType) public function edit(Request $request, LinkType $linkType)
{ {
@@ -169,7 +173,7 @@ class LinkController extends Controller
/** /**
* Show index of all links. * Show index of all links.
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|\Illuminate\View\View
*/ */
public function index() public function index()
{ {
@@ -192,7 +196,7 @@ class LinkController extends Controller
* *
* @param LinkType $linkType * @param LinkType $linkType
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|\Illuminate\View\View
*/ */
public function show(LinkType $linkType) public function show(LinkType $linkType)
{ {
@@ -210,7 +214,7 @@ class LinkController extends Controller
* *
* @param LinkTypeFormRequest $request * @param LinkTypeFormRequest $request
* *
* @return $this|\Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return $this|RedirectResponse|Redirector
*/ */
public function store(LinkTypeFormRequest $request) public function store(LinkTypeFormRequest $request)
{ {
@@ -242,7 +246,7 @@ class LinkController extends Controller
* @param LinkTypeFormRequest $request * @param LinkTypeFormRequest $request
* @param LinkType $linkType * @param LinkType $linkType
* *
* @return $this|\Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return $this|RedirectResponse|Redirector
*/ */
public function update(LinkTypeFormRequest $request, LinkType $linkType) public function update(LinkTypeFormRequest $request, LinkType $linkType)
{ {

View File

@@ -21,8 +21,9 @@
namespace FireflyIII\Http\Controllers\Admin; namespace FireflyIII\Http\Controllers\Admin;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
use Illuminate\Contracts\View\Factory;
use Illuminate\View\View;
/** /**
* Class TelemetryController * Class TelemetryController
@@ -68,11 +69,10 @@ class TelemetryController extends Controller
} }
/** /**
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function view() public function view()
{ {
return view('admin.telemetry.view'); return view('admin.telemetry.view');
} }
} }

View File

@@ -27,8 +27,13 @@ use FireflyIII\Helpers\Update\UpdateTrait;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
use FireflyIII\Http\Middleware\IsDemoUser; use FireflyIII\Http\Middleware\IsDemoUser;
use FireflyIII\Http\Middleware\IsSandStormUser; use FireflyIII\Http\Middleware\IsSandStormUser;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\RedirectResponse; use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Routing\Redirector;
use Illuminate\View\View;
use Psr\Container\ContainerExceptionInterface;
use Psr\Container\NotFoundExceptionInterface;
/** /**
* Class HomeController. * Class HomeController.
@@ -58,9 +63,9 @@ class UpdateController extends Controller
/** /**
* Show page with update options. * Show page with update options.
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @throws NotFoundExceptionInterface
* @throws \Psr\Container\NotFoundExceptionInterface * @throws ContainerExceptionInterface
* @throws \Psr\Container\ContainerExceptionInterface * @return Factory|View
*/ */
public function index() public function index()
{ {
@@ -90,7 +95,7 @@ class UpdateController extends Controller
* *
* @param Request $request * @param Request $request
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function post(Request $request) public function post(Request $request)
{ {

View File

@@ -28,6 +28,8 @@ use FireflyIII\Http\Middleware\IsSandStormUser;
use FireflyIII\Http\Requests\UserFormRequest; use FireflyIII\Http\Requests\UserFormRequest;
use FireflyIII\Repositories\User\UserRepositoryInterface; use FireflyIII\Repositories\User\UserRepositoryInterface;
use FireflyIII\User; use FireflyIII\User;
use Illuminate\Http\RedirectResponse;
use Illuminate\Routing\Redirector;
use Log; use Log;
/** /**
@@ -50,6 +52,7 @@ class UserController extends Controller
app('view')->share('title', (string) trans('firefly.administration')); app('view')->share('title', (string) trans('firefly.administration'));
app('view')->share('mainTitleIcon', 'fa-hand-spock-o'); app('view')->share('mainTitleIcon', 'fa-hand-spock-o');
$this->repository = app(UserRepositoryInterface::class); $this->repository = app(UserRepositoryInterface::class);
return $next($request); return $next($request);
} }
); );
@@ -76,7 +79,7 @@ class UserController extends Controller
* *
* @param User $user * @param User $user
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function destroy(User $user) public function destroy(User $user)
{ {
@@ -151,8 +154,14 @@ class UserController extends Controller
$information = $this->repository->getUserData($user); $information = $this->repository->getUserData($user);
return view( return view(
'admin.users.show', compact( 'admin.users.show',
'title', 'mainTitleIcon', 'subTitle', 'subTitleIcon', 'information', 'user' compact(
'title',
'mainTitleIcon',
'subTitle',
'subTitleIcon',
'information',
'user'
) )
); );
} }
@@ -163,7 +172,7 @@ class UserController extends Controller
* @param UserFormRequest $request * @param UserFormRequest $request
* @param User $user * @param User $user
* *
* @return $this|\Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return $this|RedirectResponse|Redirector
*/ */
public function update(UserFormRequest $request, User $user) public function update(UserFormRequest $request, User $user)
{ {

View File

@@ -41,6 +41,7 @@ class AttachmentController extends Controller
/** /**
* AttachmentController constructor. * AttachmentController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -101,9 +102,9 @@ class AttachmentController extends Controller
* *
* @param Attachment $attachment * @param Attachment $attachment
* *
* @throws FireflyException
* @return mixed * @return mixed
* *
* @throws FireflyException
*/ */
public function download(Attachment $attachment) public function download(Attachment $attachment)
{ {
@@ -209,8 +210,8 @@ class AttachmentController extends Controller
* *
* @param Attachment $attachment * @param Attachment $attachment
* *
* @return LaravelResponse
* @throws FireflyException * @throws FireflyException
* @return LaravelResponse
*/ */
public function view(Request $request, Attachment $attachment): LaravelResponse public function view(Request $request, Attachment $attachment): LaravelResponse
{ {
@@ -231,7 +232,9 @@ class AttachmentController extends Controller
]; ];
return response()->make( return response()->make(
$content, 200, [ $content,
200,
[
'Content-Security-Policy' => implode('; ', $csp), 'Content-Security-Policy' => implode('; ', $csp),
'Content-Type' => $attachment->mime, 'Content-Type' => $attachment->mime,
'Content-Disposition' => 'inline; filename="' . $attachment->filename . '"', 'Content-Disposition' => 'inline; filename="' . $attachment->filename . '"',

View File

@@ -26,13 +26,18 @@ namespace FireflyIII\Http\Controllers\Auth;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
use FireflyIII\Repositories\User\UserRepositoryInterface; use FireflyIII\Repositories\User\UserRepositoryInterface;
use FireflyIII\User; use FireflyIII\User;
use Illuminate\Contracts\View\Factory;
use Illuminate\Foundation\Auth\SendsPasswordResetEmails; use Illuminate\Foundation\Auth\SendsPasswordResetEmails;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Support\Facades\Password; use Illuminate\Support\Facades\Password;
use Illuminate\View\View;
use Log; use Log;
/** /**
* Class ForgotPasswordController * Class ForgotPasswordController
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
class ForgotPasswordController extends Controller class ForgotPasswordController extends Controller
@@ -51,11 +56,11 @@ class ForgotPasswordController extends Controller
/** /**
* Send a reset link to the given user. * Send a reset link to the given user.
* *
* @param \Illuminate\Http\Request $request * @param Request $request
* *
* @param UserRepositoryInterface $repository * @param UserRepositoryInterface $repository
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Http\JsonResponse * @return RedirectResponse|JsonResponse
*/ */
public function sendResetLinkEmail(Request $request, UserRepositoryInterface $repository) public function sendResetLinkEmail(Request $request, UserRepositoryInterface $repository)
{ {
@@ -99,7 +104,7 @@ class ForgotPasswordController extends Controller
* *
* @codeCoverageIgnore * @codeCoverageIgnore
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function showLinkRequestForm() public function showLinkRequestForm()
{ {

View File

@@ -26,10 +26,15 @@ use Adldap;
use DB; use DB;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
use FireflyIII\Providers\RouteServiceProvider; use FireflyIII\Providers\RouteServiceProvider;
use Illuminate\Contracts\View\Factory;
use Illuminate\Foundation\Auth\AuthenticatesUsers; use Illuminate\Foundation\Auth\AuthenticatesUsers;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Validation\ValidationException; use Illuminate\Validation\ValidationException;
use Illuminate\View\View;
use Log; use Log;
use Symfony\Component\HttpFoundation\Response;
/** /**
* Class LoginController * Class LoginController
@@ -66,11 +71,11 @@ class LoginController extends Controller
/** /**
* Handle a login request to the application. * Handle a login request to the application.
* *
* @param \Illuminate\Http\Request $request * @param Request $request
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Http\Response|\Illuminate\Http\JsonResponse * @throws ValidationException
* @return RedirectResponse|\Illuminate\Http\Response|JsonResponse
* *
* @throws \Illuminate\Validation\ValidationException
*/ */
public function login(Request $request) public function login(Request $request)
{ {
@@ -121,7 +126,7 @@ class LoginController extends Controller
/** /**
* Show the application's login form. * Show the application's login form.
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\Http\Response|\Illuminate\View\View * @return Factory|\Illuminate\Http\Response|View
*/ */
public function showLoginForm(Request $request) public function showLoginForm(Request $request)
{ {
@@ -155,11 +160,11 @@ class LoginController extends Controller
/** /**
* Get the failed login response instance. * Get the failed login response instance.
* *
* @param \Illuminate\Http\Request $request * @param Request $request
*
* @return \Symfony\Component\HttpFoundation\Response
* *
* @throws ValidationException * @throws ValidationException
* @return Response
*
*/ */
protected function sendFailedLoginResponse(Request $request) protected function sendFailedLoginResponse(Request $request)
{ {

View File

@@ -28,9 +28,12 @@ use FireflyIII\Http\Controllers\Controller;
use FireflyIII\Support\Http\Controllers\CreateStuff; use FireflyIII\Support\Http\Controllers\CreateStuff;
use FireflyIII\Support\Http\Controllers\RequestInformation; use FireflyIII\Support\Http\Controllers\RequestInformation;
use FireflyIII\User; use FireflyIII\User;
use Illuminate\Auth\Events\Registered; use Illuminate\Contracts\View\Factory;
use Illuminate\Foundation\Auth\RegistersUsers; use Illuminate\Foundation\Auth\RegistersUsers;
use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Routing\Redirector;
use Illuminate\View\View;
use Log; use Log;
/** /**
@@ -67,7 +70,7 @@ class RegisterController extends Controller
* *
* @param Request $request * @param Request $request
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector|\Illuminate\View\View * @return Factory|RedirectResponse|Redirector|View
*/ */
public function register(Request $request) public function register(Request $request)
{ {
@@ -109,7 +112,7 @@ class RegisterController extends Controller
* *
* @param Request $request * @param Request $request
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function showRegistrationForm(Request $request) public function showRegistrationForm(Request $request)
{ {

View File

@@ -25,9 +25,13 @@ namespace FireflyIII\Http\Controllers\Auth;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
use FireflyIII\User; use FireflyIII\User;
use Illuminate\Contracts\View\Factory;
use Illuminate\Foundation\Auth\ResetsPasswords; use Illuminate\Foundation\Auth\ResetsPasswords;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Support\Facades\Password; use Illuminate\Support\Facades\Password;
use Illuminate\View\View;
/** /**
* Class ResetPasswordController * Class ResetPasswordController
@@ -61,10 +65,10 @@ class ResetPasswordController extends Controller
/** /**
* Reset the given user's password. * Reset the given user's password.
* *
* @param \Illuminate\Http\Request $request * @param Request $request
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Http\JsonResponse
* @throws \Illuminate\Validation\ValidationException * @throws \Illuminate\Validation\ValidationException
* @return RedirectResponse|JsonResponse
*/ */
public function reset(Request $request) public function reset(Request $request)
{ {
@@ -87,7 +91,8 @@ class ResetPasswordController extends Controller
// will update the password on an actual user model and persist it to the // will update the password on an actual user model and persist it to the
// database. Otherwise we will parse the error and return the response. // database. Otherwise we will parse the error and return the response.
$response = $this->broker()->reset( $response = $this->broker()->reset(
$this->credentials($request), function ($user, $password) { $this->credentials($request),
function ($user, $password) {
$this->resetPassword($user, $password); $this->resetPassword($user, $password);
} }
); );
@@ -108,7 +113,7 @@ class ResetPasswordController extends Controller
* @param Request $request * @param Request $request
* @param string|null $token * @param string|null $token
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function showResetForm(Request $request, $token = null) public function showResetForm(Request $request, $token = null)
{ {

View File

@@ -24,8 +24,9 @@ namespace FireflyIII\Http\Controllers\Auth;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
use FireflyIII\User; use FireflyIII\User;
use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Log; use Illuminate\Routing\Redirector;
use PragmaRX\Google2FALaravel\Support\Authenticator; use PragmaRX\Google2FALaravel\Support\Authenticator;
use Preferences; use Preferences;
@@ -45,13 +46,14 @@ class TwoFactorController extends Controller
$user = auth()->user(); $user = auth()->user();
$siteOwner = config('firefly.site_owner'); $siteOwner = config('firefly.site_owner');
$title = (string) trans('firefly.two_factor_forgot_title'); $title = (string) trans('firefly.two_factor_forgot_title');
return view('auth.lost-two-factor', compact('user', 'siteOwner', 'title')); return view('auth.lost-two-factor', compact('user', 'siteOwner', 'title'));
} }
/** /**
* @param Request $request * @param Request $request
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function submitMFA(Request $request) public function submitMFA(Request $request)
{ {

View File

@@ -34,14 +34,17 @@ use FireflyIII\Repositories\Bill\BillRepositoryInterface;
use FireflyIII\TransactionRules\TransactionMatcher; use FireflyIII\TransactionRules\TransactionMatcher;
use FireflyIII\Transformers\AttachmentTransformer; use FireflyIII\Transformers\AttachmentTransformer;
use FireflyIII\Transformers\BillTransformer; use FireflyIII\Transformers\BillTransformer;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\RedirectResponse; use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Routing\Redirector;
use Illuminate\Support\Collection; use Illuminate\Support\Collection;
use Illuminate\View\View;
use League\Fractal\Manager; use League\Fractal\Manager;
use League\Fractal\Resource\Item; use League\Fractal\Resource\Item;
use League\Fractal\Serializer\DataArraySerializer; use League\Fractal\Serializer\DataArraySerializer;
use Symfony\Component\HttpFoundation\ParameterBag;
use Log; use Log;
use Symfony\Component\HttpFoundation\ParameterBag;
/** /**
* Class BillController. * Class BillController.
@@ -86,7 +89,7 @@ class BillController extends Controller
* *
* @param Request $request * @param Request $request
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function create(Request $request) public function create(Request $request)
{ {
@@ -113,7 +116,7 @@ class BillController extends Controller
* *
* @param Bill $bill * @param Bill $bill
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function delete(Bill $bill) public function delete(Bill $bill)
{ {
@@ -130,7 +133,7 @@ class BillController extends Controller
* @param Request $request * @param Request $request
* @param Bill $bill * @param Bill $bill
* *
* @return RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function destroy(Request $request, Bill $bill) public function destroy(Request $request, Bill $bill)
{ {
@@ -149,7 +152,7 @@ class BillController extends Controller
* @param Request $request * @param Request $request
* @param Bill $bill * @param Bill $bill
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function edit(Request $request, Bill $bill) public function edit(Request $request, Bill $bill)
{ {
@@ -191,7 +194,7 @@ class BillController extends Controller
/** /**
* Show all bills. * Show all bills.
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function index() public function index()
{ {
@@ -244,8 +247,8 @@ class BillController extends Controller
* @param Request $request * @param Request $request
* @param Bill $bill * @param Bill $bill
* *
* @return RedirectResponse|\Illuminate\Routing\Redirector * @throws FireflyException
* @throws \FireflyIII\Exceptions\FireflyException * @return RedirectResponse|Redirector
*/ */
public function rescan(Request $request, Bill $bill) public function rescan(Request $request, Bill $bill)
{ {
@@ -294,7 +297,7 @@ class BillController extends Controller
* @param Request $request * @param Request $request
* @param Bill $bill * @param Bill $bill
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function show(Request $request, Bill $bill) public function show(Request $request, Bill $bill)
{ {

View File

@@ -23,7 +23,6 @@ declare(strict_types=1);
namespace FireflyIII\Http\Controllers\Budget; namespace FireflyIII\Http\Controllers\Budget;
use Carbon\Carbon; use Carbon\Carbon;
use Carbon\Exceptions\InvalidDateException; use Carbon\Exceptions\InvalidDateException;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
@@ -31,7 +30,11 @@ use FireflyIII\Models\AvailableBudget;
use FireflyIII\Models\TransactionCurrency; use FireflyIII\Models\TransactionCurrency;
use FireflyIII\Repositories\Budget\AvailableBudgetRepositoryInterface; use FireflyIII\Repositories\Budget\AvailableBudgetRepositoryInterface;
use FireflyIII\Repositories\Currency\CurrencyRepositoryInterface; use FireflyIII\Repositories\Currency\CurrencyRepositoryInterface;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Routing\Redirector;
use Illuminate\View\View;
use Log; use Log;
/** /**
@@ -75,7 +78,7 @@ class AvailableBudgetController extends Controller
* @param Carbon $end * @param Carbon $end
* @param TransactionCurrency|null $currency * @param TransactionCurrency|null $currency
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector|\Illuminate\View\View * @return Factory|RedirectResponse|Redirector|View
*/ */
public function create(Request $request, Carbon $start, Carbon $end, ?TransactionCurrency $currency = null) public function create(Request $request, Carbon $start, Carbon $end, ?TransactionCurrency $currency = null)
{ {
@@ -104,7 +107,7 @@ class AvailableBudgetController extends Controller
* @param Carbon $start * @param Carbon $start
* @param Carbon $end * @param Carbon $end
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function createAlternative(Request $request, Carbon $start, Carbon $end) public function createAlternative(Request $request, Carbon $start, Carbon $end)
{ {
@@ -134,7 +137,7 @@ class AvailableBudgetController extends Controller
/** /**
* @param AvailableBudget $availableBudget * @param AvailableBudget $availableBudget
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function delete(AvailableBudget $availableBudget) public function delete(AvailableBudget $availableBudget)
{ {
@@ -150,7 +153,7 @@ class AvailableBudgetController extends Controller
* @param Carbon $start * @param Carbon $start
* @param Carbon $end * @param Carbon $end
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function edit(AvailableBudget $availableBudget, Carbon $start, Carbon $end) public function edit(AvailableBudget $availableBudget, Carbon $start, Carbon $end)
{ {
@@ -160,7 +163,7 @@ class AvailableBudgetController extends Controller
/** /**
* @param Request $request * @param Request $request
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function store(Request $request) public function store(Request $request)
{ {
@@ -209,7 +212,7 @@ class AvailableBudgetController extends Controller
* @param Carbon $start * @param Carbon $start
* @param Carbon $end * @param Carbon $end
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function update(Request $request, AvailableBudget $availableBudget, Carbon $start, Carbon $end) public function update(Request $request, AvailableBudget $availableBudget, Carbon $start, Carbon $end)
{ {
@@ -218,5 +221,4 @@ class AvailableBudgetController extends Controller
return redirect(route('budgets.index', [$start->format('Y-m-d'), $end->format('Y-m-d')])); return redirect(route('budgets.index', [$start->format('Y-m-d'), $end->format('Y-m-d')]));
} }
} }

View File

@@ -23,7 +23,6 @@ declare(strict_types=1);
namespace FireflyIII\Http\Controllers\Budget; namespace FireflyIII\Http\Controllers\Budget;
use Carbon\Carbon; use Carbon\Carbon;
use FireflyIII\Exceptions\FireflyException; use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
@@ -36,9 +35,13 @@ use FireflyIII\Repositories\Budget\BudgetRepositoryInterface;
use FireflyIII\Repositories\Budget\OperationsRepositoryInterface; use FireflyIII\Repositories\Budget\OperationsRepositoryInterface;
use FireflyIII\Repositories\Currency\CurrencyRepositoryInterface; use FireflyIII\Repositories\Currency\CurrencyRepositoryInterface;
use FireflyIII\Support\Http\Controllers\DateCalculation; use FireflyIII\Support\Http\Controllers\DateCalculation;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\JsonResponse; use Illuminate\Http\JsonResponse;
use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Routing\Redirector;
use Illuminate\Support\Collection; use Illuminate\Support\Collection;
use Illuminate\View\View;
use Log; use Log;
/** /**
@@ -83,7 +86,7 @@ class BudgetLimitController extends Controller
* @param Carbon $start * @param Carbon $start
* @param Carbon $end * @param Carbon $end
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function create(Budget $budget, Carbon $start, Carbon $end) public function create(Budget $budget, Carbon $start, Carbon $end)
{ {
@@ -111,7 +114,7 @@ class BudgetLimitController extends Controller
* @param Request $request * @param Request $request
* @param BudgetLimit $budgetLimit * @param BudgetLimit $budgetLimit
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function delete(Request $request, BudgetLimit $budgetLimit) public function delete(Request $request, BudgetLimit $budgetLimit)
{ {
@@ -124,8 +127,8 @@ class BudgetLimitController extends Controller
/** /**
* @param Request $request * @param Request $request
* *
* @return JsonResponse|\Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector
* @throws FireflyException * @throws FireflyException
* @return JsonResponse|RedirectResponse|Redirector
*/ */
public function store(Request $request) public function store(Request $request)
{ {
@@ -196,7 +199,11 @@ class BudgetLimitController extends Controller
$array = $limit->toArray(); $array = $limit->toArray();
$spentArr = $this->opsRepository->sumExpenses( $spentArr = $this->opsRepository->sumExpenses(
$limit->start_date, $limit->end_date, null, new Collection([$budgetLimit->budget]), $budgetLimit->transactionCurrency $limit->start_date,
$limit->end_date,
null,
new Collection([$budgetLimit->budget]),
$budgetLimit->transactionCurrency
); );
$array['spent'] = $spentArr[$budgetLimit->transactionCurrency->id]['sum'] ?? '0'; $array['spent'] = $spentArr[$budgetLimit->transactionCurrency->id]['sum'] ?? '0';
$array['left_formatted'] = app('amount')->formatAnything($limit->transactionCurrency, bcadd($array['spent'], $array['amount'])); $array['left_formatted'] = app('amount')->formatAnything($limit->transactionCurrency, bcadd($array['spent'], $array['amount']));
@@ -210,7 +217,5 @@ class BudgetLimitController extends Controller
$array['left_per_day_formatted'] = app('amount')->formatAnything($limit->transactionCurrency, $array['left_per_day']); $array['left_per_day_formatted'] = app('amount')->formatAnything($limit->transactionCurrency, $array['left_per_day']);
return response()->json($array); return response()->json($array);
} }
} }

View File

@@ -24,12 +24,14 @@ declare(strict_types=1);
namespace FireflyIII\Http\Controllers\Budget; namespace FireflyIII\Http\Controllers\Budget;
use FireflyIII\Models\AutoBudget;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
use FireflyIII\Http\Requests\BudgetFormStoreRequest; use FireflyIII\Http\Requests\BudgetFormStoreRequest;
use FireflyIII\Models\AutoBudget;
use FireflyIII\Repositories\Budget\BudgetRepositoryInterface; use FireflyIII\Repositories\Budget\BudgetRepositoryInterface;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\RedirectResponse; use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\View\View;
/** /**
* Class CreateController * Class CreateController
@@ -41,6 +43,7 @@ class CreateController extends Controller
/** /**
* CreateController constructor. * CreateController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -65,7 +68,7 @@ class CreateController extends Controller
* *
* @param Request $request * @param Request $request
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function create(Request $request) public function create(Request $request)
{ {
@@ -110,7 +113,7 @@ class CreateController extends Controller
* *
* @param BudgetFormStoreRequest $request * @param BudgetFormStoreRequest $request
* *
* @return \Illuminate\Http\RedirectResponse * @return RedirectResponse
*/ */
public function store(BudgetFormStoreRequest $request): RedirectResponse public function store(BudgetFormStoreRequest $request): RedirectResponse
{ {

View File

@@ -27,7 +27,11 @@ namespace FireflyIII\Http\Controllers\Budget;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
use FireflyIII\Models\Budget; use FireflyIII\Models\Budget;
use FireflyIII\Repositories\Budget\BudgetRepositoryInterface; use FireflyIII\Repositories\Budget\BudgetRepositoryInterface;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Routing\Redirector;
use Illuminate\View\View;
/** /**
* *
@@ -40,6 +44,7 @@ class DeleteController extends Controller
/** /**
* DeleteController constructor. * DeleteController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -63,7 +68,7 @@ class DeleteController extends Controller
* *
* @param Budget $budget * @param Budget $budget
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function delete(Budget $budget) public function delete(Budget $budget)
{ {
@@ -81,7 +86,7 @@ class DeleteController extends Controller
* @param Request $request * @param Request $request
* @param Budget $budget * @param Budget $budget
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function destroy(Request $request, Budget $budget) public function destroy(Request $request, Budget $budget)
{ {

View File

@@ -29,8 +29,10 @@ use FireflyIII\Http\Requests\BudgetFormUpdateRequest;
use FireflyIII\Models\AutoBudget; use FireflyIII\Models\AutoBudget;
use FireflyIII\Models\Budget; use FireflyIII\Models\Budget;
use FireflyIII\Repositories\Budget\BudgetRepositoryInterface; use FireflyIII\Repositories\Budget\BudgetRepositoryInterface;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\RedirectResponse; use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\View\View;
/** /**
* *
@@ -43,6 +45,7 @@ class EditController extends Controller
/** /**
* EditController constructor. * EditController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -66,7 +69,7 @@ class EditController extends Controller
* @param Request $request * @param Request $request
* @param Budget $budget * @param Budget $budget
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function edit(Request $request, Budget $budget) public function edit(Request $request, Budget $budget)
{ {
@@ -115,7 +118,7 @@ class EditController extends Controller
* @param BudgetFormUpdateRequest $request * @param BudgetFormUpdateRequest $request
* @param Budget $budget * @param Budget $budget
* *
* @return \Illuminate\Http\RedirectResponse * @return RedirectResponse
*/ */
public function update(BudgetFormUpdateRequest $request, Budget $budget): RedirectResponse public function update(BudgetFormUpdateRequest $request, Budget $budget): RedirectResponse
{ {

View File

@@ -23,7 +23,6 @@ declare(strict_types=1);
namespace FireflyIII\Http\Controllers\Budget; namespace FireflyIII\Http\Controllers\Budget;
use Carbon\Carbon; use Carbon\Carbon;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
use FireflyIII\Models\AvailableBudget; use FireflyIII\Models\AvailableBudget;
@@ -36,9 +35,11 @@ use FireflyIII\Repositories\Budget\BudgetRepositoryInterface;
use FireflyIII\Repositories\Budget\OperationsRepositoryInterface; use FireflyIII\Repositories\Budget\OperationsRepositoryInterface;
use FireflyIII\Repositories\Currency\CurrencyRepositoryInterface; use FireflyIII\Repositories\Currency\CurrencyRepositoryInterface;
use FireflyIII\Support\Http\Controllers\DateCalculation; use FireflyIII\Support\Http\Controllers\DateCalculation;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\JsonResponse; use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Support\Collection; use Illuminate\Support\Collection;
use Illuminate\View\View;
use Log; use Log;
/** /**
@@ -47,7 +48,6 @@ use Log;
*/ */
class IndexController extends Controller class IndexController extends Controller
{ {
use DateCalculation; use DateCalculation;
/** @var AvailableBudgetRepositoryInterface */ /** @var AvailableBudgetRepositoryInterface */
private $abRepository; private $abRepository;
@@ -94,7 +94,7 @@ class IndexController extends Controller
* @param Carbon|null $start * @param Carbon|null $start
* @param Carbon|null $end * @param Carbon|null $end
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function index(Request $request, Carbon $start = null, Carbon $end = null) public function index(Request $request, Carbon $start = null, Carbon $end = null)
{ {
@@ -184,7 +184,6 @@ class IndexController extends Controller
$array['spent'][$currency->id]['currency_id'] = $currency->id; $array['spent'][$currency->id]['currency_id'] = $currency->id;
$array['spent'][$currency->id]['currency_symbol'] = $currency->symbol; $array['spent'][$currency->id]['currency_symbol'] = $currency->symbol;
$array['spent'][$currency->id]['currency_decimal_places'] = $currency->decimal_places; $array['spent'][$currency->id]['currency_decimal_places'] = $currency->decimal_places;
} }
} }
$budgets[] = $array; $budgets[] = $array;
@@ -195,17 +194,24 @@ class IndexController extends Controller
return view( return view(
'budgets.index', compact( 'budgets.index',
compact(
'availableBudgets', 'availableBudgets',
'budgeted', 'spent', 'budgeted',
'prevLoop', 'nextLoop', 'spent',
'prevLoop',
'nextLoop',
'budgets', 'budgets',
'currencies', 'currencies',
'enableAddButton', 'enableAddButton',
'periodTitle', 'periodTitle',
'defaultCurrency', 'defaultCurrency',
'activeDaysPassed', 'activeDaysLeft', 'activeDaysPassed',
'inactive', 'budgets', 'start', 'end' 'activeDaysLeft',
'inactive',
'budgets',
'start',
'end'
) )
); );
} }
@@ -232,6 +238,4 @@ class IndexController extends Controller
return response()->json(['OK']); return response()->json(['OK']);
} }
} }

View File

@@ -34,7 +34,9 @@ use FireflyIII\Models\TransactionType;
use FireflyIII\Repositories\Journal\JournalRepositoryInterface; use FireflyIII\Repositories\Journal\JournalRepositoryInterface;
use FireflyIII\Support\Http\Controllers\AugumentData; use FireflyIII\Support\Http\Controllers\AugumentData;
use FireflyIII\Support\Http\Controllers\PeriodOverview; use FireflyIII\Support\Http\Controllers\PeriodOverview;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\View\View;
/** /**
* *
@@ -73,7 +75,7 @@ class ShowController extends Controller
* @param Carbon|null $start * @param Carbon|null $start
* @param Carbon|null $end * @param Carbon|null $end
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function noBudget(Request $request, Carbon $start = null, Carbon $end = null) public function noBudget(Request $request, Carbon $start = null, Carbon $end = null)
{ {
@@ -110,7 +112,7 @@ class ShowController extends Controller
* *
* @param Request $request * @param Request $request
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function noBudgetAll(Request $request) public function noBudgetAll(Request $request)
{ {
@@ -139,7 +141,7 @@ class ShowController extends Controller
* @param Request $request * @param Request $request
* @param Budget $budget * @param Budget $budget
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function show(Request $request, Budget $budget) public function show(Request $request, Budget $budget)
{ {
@@ -178,8 +180,8 @@ class ShowController extends Controller
* @param Budget $budget * @param Budget $budget
* @param BudgetLimit $budgetLimit * @param BudgetLimit $budgetLimit
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
* @throws FireflyException * @throws FireflyException
* @return Factory|View
*/ */
public function showByBudgetLimit(Request $request, Budget $budget, BudgetLimit $budgetLimit) public function showByBudgetLimit(Request $request, Budget $budget, BudgetLimit $budgetLimit)
{ {

View File

@@ -27,7 +27,11 @@ namespace FireflyIII\Http\Controllers\Category;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
use FireflyIII\Http\Requests\CategoryFormRequest; use FireflyIII\Http\Requests\CategoryFormRequest;
use FireflyIII\Repositories\Category\CategoryRepositoryInterface; use FireflyIII\Repositories\Category\CategoryRepositoryInterface;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Routing\Redirector;
use Illuminate\View\View;
/** /**
* Class CreateController * Class CreateController
@@ -39,6 +43,7 @@ class CreateController extends Controller
/** /**
* CategoryController constructor. * CategoryController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -62,7 +67,7 @@ class CreateController extends Controller
* *
* @param Request $request * @param Request $request
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function create(Request $request) public function create(Request $request)
{ {
@@ -81,7 +86,7 @@ class CreateController extends Controller
* *
* @param CategoryFormRequest $request * @param CategoryFormRequest $request
* *
* @return $this|\Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return $this|RedirectResponse|Redirector
*/ */
public function store(CategoryFormRequest $request) public function store(CategoryFormRequest $request)
{ {

View File

@@ -27,7 +27,11 @@ namespace FireflyIII\Http\Controllers\Category;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
use FireflyIII\Models\Category; use FireflyIII\Models\Category;
use FireflyIII\Repositories\Category\CategoryRepositoryInterface; use FireflyIII\Repositories\Category\CategoryRepositoryInterface;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Routing\Redirector;
use Illuminate\View\View;
/** /**
* Class DeleteController * Class DeleteController
@@ -39,6 +43,7 @@ class DeleteController extends Controller
/** /**
* CategoryController constructor. * CategoryController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -61,7 +66,7 @@ class DeleteController extends Controller
* *
* @param Category $category * @param Category $category
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function delete(Category $category) public function delete(Category $category)
{ {
@@ -79,7 +84,7 @@ class DeleteController extends Controller
* @param Request $request * @param Request $request
* @param Category $category * @param Category $category
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function destroy(Request $request, Category $category) public function destroy(Request $request, Category $category)
{ {

View File

@@ -28,7 +28,11 @@ use FireflyIII\Http\Controllers\Controller;
use FireflyIII\Http\Requests\CategoryFormRequest; use FireflyIII\Http\Requests\CategoryFormRequest;
use FireflyIII\Models\Category; use FireflyIII\Models\Category;
use FireflyIII\Repositories\Category\CategoryRepositoryInterface; use FireflyIII\Repositories\Category\CategoryRepositoryInterface;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Routing\Redirector;
use Illuminate\View\View;
/** /**
* Class EditController * Class EditController
@@ -41,6 +45,7 @@ class EditController extends Controller
/** /**
* CategoryController constructor. * CategoryController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -65,7 +70,7 @@ class EditController extends Controller
* @param Request $request * @param Request $request
* @param Category $category * @param Category $category
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function edit(Request $request, Category $category) public function edit(Request $request, Category $category)
{ {
@@ -86,7 +91,7 @@ class EditController extends Controller
* @param CategoryFormRequest $request * @param CategoryFormRequest $request
* @param Category $category * @param Category $category
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function update(CategoryFormRequest $request, Category $category) public function update(CategoryFormRequest $request, Category $category)
{ {

View File

@@ -27,9 +27,11 @@ namespace FireflyIII\Http\Controllers\Category;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
use FireflyIII\Models\Category; use FireflyIII\Models\Category;
use FireflyIII\Repositories\Category\CategoryRepositoryInterface; use FireflyIII\Repositories\Category\CategoryRepositoryInterface;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Pagination\LengthAwarePaginator; use Illuminate\Pagination\LengthAwarePaginator;
use Illuminate\Support\Collection; use Illuminate\Support\Collection;
use Illuminate\View\View;
/** /**
* Class IndexController * Class IndexController
@@ -41,6 +43,7 @@ class IndexController extends Controller
/** /**
* CategoryController constructor. * CategoryController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -59,13 +62,12 @@ class IndexController extends Controller
} }
/** /**
* Show all categories. * Show all categories.
* *
* @param Request $request * @param Request $request
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function index(Request $request) public function index(Request $request)
{ {

View File

@@ -30,8 +30,10 @@ use FireflyIII\Http\Controllers\Controller;
use FireflyIII\Models\TransactionType; use FireflyIII\Models\TransactionType;
use FireflyIII\Repositories\Journal\JournalRepositoryInterface; use FireflyIII\Repositories\Journal\JournalRepositoryInterface;
use FireflyIII\Support\Http\Controllers\PeriodOverview; use FireflyIII\Support\Http\Controllers\PeriodOverview;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Support\Collection; use Illuminate\Support\Collection;
use Illuminate\View\View;
use Log; use Log;
/** /**
@@ -46,6 +48,7 @@ class NoCategoryController extends Controller
/** /**
* CategoryController constructor. * CategoryController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -71,7 +74,7 @@ class NoCategoryController extends Controller
* @param Carbon|null $start * @param Carbon|null $start
* @param Carbon|null $end * @param Carbon|null $end
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function show(Request $request, Carbon $start = null, Carbon $end = null) public function show(Request $request, Carbon $start = null, Carbon $end = null)
{ {
@@ -109,7 +112,7 @@ class NoCategoryController extends Controller
* *
* @param Request $request * @param Request $request
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function showAll(Request $request) public function showAll(Request $request)
{ {

View File

@@ -29,8 +29,10 @@ use FireflyIII\Http\Controllers\Controller;
use FireflyIII\Models\Category; use FireflyIII\Models\Category;
use FireflyIII\Repositories\Category\CategoryRepositoryInterface; use FireflyIII\Repositories\Category\CategoryRepositoryInterface;
use FireflyIII\Support\Http\Controllers\PeriodOverview; use FireflyIII\Support\Http\Controllers\PeriodOverview;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Support\Collection; use Illuminate\Support\Collection;
use Illuminate\View\View;
/** /**
* *
@@ -45,6 +47,7 @@ class ShowController extends Controller
/** /**
* CategoryController constructor. * CategoryController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -64,7 +67,6 @@ class ShowController extends Controller
} }
/** /**
* Show a single category. * Show a single category.
* *
@@ -73,7 +75,7 @@ class ShowController extends Controller
* @param Carbon|null $start * @param Carbon|null $start
* @param Carbon|null $end * @param Carbon|null $end
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function show(Request $request, Category $category, Carbon $start = null, Carbon $end = null) public function show(Request $request, Category $category, Carbon $start = null, Carbon $end = null)
{ {
@@ -114,7 +116,7 @@ class ShowController extends Controller
* @param Request $request * @param Request $request
* @param Category $category * @param Category $category
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function showAll(Request $request, Category $category) public function showAll(Request $request, Category $category)
{ {

View File

@@ -59,6 +59,7 @@ class AccountController extends Controller
/** /**
* AccountController constructor. * AccountController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -171,22 +172,6 @@ class AccountController extends Controller
return response()->json($data); return response()->json($data);
} }
/**
* Expenses per budget for all time, as shown on account overview.
*
* @param AccountRepositoryInterface $repository
* @param Account $account
*
* @return JsonResponse
*/
public function expenseBudgetAll(AccountRepositoryInterface $repository, Account $account): JsonResponse
{
$start = $repository->oldestJournalDate($account) ?? Carbon::now()->startOfMonth();
$end = Carbon::now();
return $this->expenseBudget($account, $start, $end);
}
/** /**
* Expenses per budget, as shown on account overview. * Expenses per budget, as shown on account overview.
* *
@@ -245,19 +230,19 @@ class AccountController extends Controller
} }
/** /**
* Expenses grouped by category for account. * Expenses per budget for all time, as shown on account overview.
* *
* @param AccountRepositoryInterface $repository * @param AccountRepositoryInterface $repository
* @param Account $account * @param Account $account
* *
* @return JsonResponse * @return JsonResponse
*/ */
public function expenseCategoryAll(AccountRepositoryInterface $repository, Account $account): JsonResponse public function expenseBudgetAll(AccountRepositoryInterface $repository, Account $account): JsonResponse
{ {
$start = $repository->oldestJournalDate($account) ?? Carbon::now()->startOfMonth(); $start = $repository->oldestJournalDate($account) ?? Carbon::now()->startOfMonth();
$end = Carbon::now(); $end = Carbon::now();
return $this->expenseCategory($account, $start, $end); return $this->expenseBudget($account, $start, $end);
} }
/** /**
@@ -315,6 +300,22 @@ class AccountController extends Controller
return response()->json($data); return response()->json($data);
} }
/**
* Expenses grouped by category for account.
*
* @param AccountRepositoryInterface $repository
* @param Account $account
*
* @return JsonResponse
*/
public function expenseCategoryAll(AccountRepositoryInterface $repository, Account $account): JsonResponse
{
$start = $repository->oldestJournalDate($account) ?? Carbon::now()->startOfMonth();
$end = Carbon::now();
return $this->expenseCategory($account, $start, $end);
}
/** /**
* Shows the balances for all the user's frontpage accounts. * Shows the balances for all the user's frontpage accounts.
* *
@@ -341,22 +342,6 @@ class AccountController extends Controller
return response()->json($this->accountBalanceChart($accounts, $start, $end)); return response()->json($this->accountBalanceChart($accounts, $start, $end));
} }
/**
* Shows the income grouped by category for an account, in all time.
*
* @param AccountRepositoryInterface $repository
* @param Account $account
*
* @return JsonResponse
*/
public function incomeCategoryAll(AccountRepositoryInterface $repository, Account $account): JsonResponse
{
$start = $repository->oldestJournalDate($account) ?? Carbon::now()->startOfMonth();
$end = Carbon::now();
return $this->incomeCategory($account, $start, $end);
}
/** /**
* Shows all income per account for each category. * Shows all income per account for each category.
* *
@@ -412,6 +397,22 @@ class AccountController extends Controller
return response()->json($data); return response()->json($data);
} }
/**
* Shows the income grouped by category for an account, in all time.
*
* @param AccountRepositoryInterface $repository
* @param Account $account
*
* @return JsonResponse
*/
public function incomeCategoryAll(AccountRepositoryInterface $repository, Account $account): JsonResponse
{
$start = $repository->oldestJournalDate($account) ?? Carbon::now()->startOfMonth();
$end = Carbon::now();
return $this->incomeCategory($account, $start, $end);
}
/** /**
* Shows overview of account during a single period. * Shows overview of account during a single period.
* *

View File

@@ -42,6 +42,7 @@ class BillController extends Controller
/** /**
* BillController constructor. * BillController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -116,9 +117,12 @@ class BillController extends Controller
$journals = $collector->setBill($bill)->getExtractedJournals(); $journals = $collector->setBill($bill)->getExtractedJournals();
// sort the other way around: // sort the other way around:
usort($journals, static function (array $left, array $right) { usort(
$journals,
static function (array $left, array $right) {
return $left['date']->gte($right['date']) ? 1 : 0; return $left['date']->gte($right['date']) ? 1 : 0;
}); }
);
$chartData = [ $chartData = [
['type' => 'line', 'label' => (string) trans('firefly.max-amount'), 'currency_symbol' => $bill->transactionCurrency->symbol, 'entries' => []], ['type' => 'line', 'label' => (string) trans('firefly.max-amount'), 'currency_symbol' => $bill->transactionCurrency->symbol, 'entries' => []],

View File

@@ -27,9 +27,9 @@ use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Generator\Chart\Basic\GeneratorInterface; use FireflyIII\Generator\Chart\Basic\GeneratorInterface;
use FireflyIII\Helpers\Collector\GroupCollectorInterface; use FireflyIII\Helpers\Collector\GroupCollectorInterface;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
use FireflyIII\Models\TransactionCurrency;
use FireflyIII\Models\Budget; use FireflyIII\Models\Budget;
use FireflyIII\Models\BudgetLimit; use FireflyIII\Models\BudgetLimit;
use FireflyIII\Models\TransactionCurrency;
use FireflyIII\Models\TransactionType; use FireflyIII\Models\TransactionType;
use FireflyIII\Repositories\Budget\BudgetLimitRepositoryInterface; use FireflyIII\Repositories\Budget\BudgetLimitRepositoryInterface;
use FireflyIII\Repositories\Budget\BudgetRepositoryInterface; use FireflyIII\Repositories\Budget\BudgetRepositoryInterface;
@@ -157,9 +157,9 @@ class BudgetController extends Controller
* @param Budget $budget * @param Budget $budget
* @param BudgetLimit $budgetLimit * @param BudgetLimit $budgetLimit
* *
* @throws FireflyException
* @return JsonResponse * @return JsonResponse
* *
* @throws FireflyException
*/ */
public function budgetLimit(Budget $budget, BudgetLimit $budgetLimit): JsonResponse public function budgetLimit(Budget $budget, BudgetLimit $budgetLimit): JsonResponse
{ {
@@ -440,14 +440,20 @@ class BudgetController extends Controller
/** @var BudgetLimit $limit */ /** @var BudgetLimit $limit */
foreach ($limits as $limit) { foreach ($limits as $limit) {
$spent = $this->opsRepository->sumExpenses( $spent = $this->opsRepository->sumExpenses(
$limit->start_date, $limit->end_date, null, new Collection([$budget]), $limit->transactionCurrency $limit->start_date,
$limit->end_date,
null,
new Collection([$budget]),
$limit->transactionCurrency
); );
/** @var array $entry */ /** @var array $entry */
foreach ($spent as $entry) { foreach ($spent as $entry) {
$title = sprintf('%s (%s)', $budget->name, $entry['currency_name']); $title = sprintf('%s (%s)', $budget->name, $entry['currency_name']);
if ($limit->start_date->startOfDay()->ne($start->startOfDay()) || $limit->end_date->startOfDay()->ne($end->startOfDay())) { if ($limit->start_date->startOfDay()->ne($start->startOfDay()) || $limit->end_date->startOfDay()->ne($end->startOfDay())) {
$title = sprintf( $title = sprintf(
'%s (%s) (%s - %s)', $budget->name, $entry['currency_name'], '%s (%s) (%s - %s)',
$budget->name,
$entry['currency_name'],
$limit->start_date->formatLocalized($this->monthAndDayFormat), $limit->start_date->formatLocalized($this->monthAndDayFormat),
$limit->end_date->formatLocalized($this->monthAndDayFormat) $limit->end_date->formatLocalized($this->monthAndDayFormat)
); );
@@ -587,6 +593,4 @@ class BudgetController extends Controller
return response()->json($data); return response()->json($data);
} }
} }

View File

@@ -118,8 +118,6 @@ class BudgetReportController extends Controller
// loop expenses. // loop expenses.
foreach ($spent as $currency) { foreach ($spent as $currency) {
foreach ($currency['budgets'] as $budget) { foreach ($currency['budgets'] as $budget) {
foreach ($budget['transaction_journals'] as $journal) { foreach ($budget['transaction_journals'] as $journal) {
$categoryName = $journal['category_name'] ?? trans('firefly.no_category'); $categoryName = $journal['category_name'] ?? trans('firefly.no_category');
$title = sprintf('%s (%s)', $categoryName, $currency['currency_name']); $title = sprintf('%s (%s)', $categoryName, $currency['currency_name']);
@@ -157,8 +155,6 @@ class BudgetReportController extends Controller
// loop expenses. // loop expenses.
foreach ($spent as $currency) { foreach ($spent as $currency) {
foreach ($currency['budgets'] as $budget) { foreach ($currency['budgets'] as $budget) {
foreach ($budget['transaction_journals'] as $journal) { foreach ($budget['transaction_journals'] as $journal) {
$title = sprintf('%s (%s)', $journal['destination_account_name'], $currency['currency_name']); $title = sprintf('%s (%s)', $journal['destination_account_name'], $currency['currency_name']);
$result[$title] = $result[$title] ?? [ $result[$title] = $result[$title] ?? [
@@ -199,7 +195,9 @@ class BudgetReportController extends Controller
$spentKey = sprintf('%d-spent', $currency['currency_id']); $spentKey = sprintf('%d-spent', $currency['currency_id']);
$chartData[$spentKey] = $chartData[$spentKey] ?? [ $chartData[$spentKey] = $chartData[$spentKey] ?? [
'label' => sprintf( 'label' => sprintf(
'%s (%s)', (string)trans('firefly.spent_in_specific_budget', ['budget' => $budget->name]), $currency['currency_name'] '%s (%s)',
(string) trans('firefly.spent_in_specific_budget', ['budget' => $budget->name]),
$currency['currency_name']
), ),
'type' => 'bar', 'type' => 'bar',
'currency_symbol' => $currency['currency_symbol'], 'currency_symbol' => $currency['currency_symbol'],
@@ -240,8 +238,6 @@ class BudgetReportController extends Controller
// loop expenses. // loop expenses.
foreach ($spent as $currency) { foreach ($spent as $currency) {
foreach ($currency['budgets'] as $budget) { foreach ($currency['budgets'] as $budget) {
foreach ($budget['transaction_journals'] as $journal) { foreach ($budget['transaction_journals'] as $journal) {
$title = sprintf('%s (%s)', $journal['source_account_name'], $currency['currency_name']); $title = sprintf('%s (%s)', $journal['source_account_name'], $currency['currency_name']);
$result[$title] = $result[$title] ?? [ $result[$title] = $result[$title] ?? [
@@ -282,5 +278,4 @@ class BudgetReportController extends Controller
return $return; return $return;
} }
} }

View File

@@ -316,7 +316,9 @@ class CategoryReportController extends Controller
$spentKey = sprintf('%d-spent', $currency['currency_id']); $spentKey = sprintf('%d-spent', $currency['currency_id']);
$chartData[$spentKey] = $chartData[$spentKey] ?? [ $chartData[$spentKey] = $chartData[$spentKey] ?? [
'label' => sprintf( 'label' => sprintf(
'%s (%s)', (string)trans('firefly.spent_in_specific_category', ['category' => $category->name]), $currency['currency_name'] '%s (%s)',
(string) trans('firefly.spent_in_specific_category', ['category' => $category->name]),
$currency['currency_name']
), ),
'type' => 'bar', 'type' => 'bar',
'currency_symbol' => $currency['currency_symbol'], 'currency_symbol' => $currency['currency_symbol'],
@@ -340,7 +342,9 @@ class CategoryReportController extends Controller
$spentKey = sprintf('%d-earned', $currency['currency_id']); $spentKey = sprintf('%d-earned', $currency['currency_id']);
$chartData[$spentKey] = $chartData[$spentKey] ?? [ $chartData[$spentKey] = $chartData[$spentKey] ?? [
'label' => sprintf( 'label' => sprintf(
'%s (%s)', (string)trans('firefly.earned_in_specific_category', ['category' => $category->name]), $currency['currency_name'] '%s (%s)',
(string) trans('firefly.earned_in_specific_category', ['category' => $category->name]),
$currency['currency_name']
), ),
'type' => 'bar', 'type' => 'bar',
'currency_symbol' => $currency['currency_symbol'], 'currency_symbol' => $currency['currency_symbol'],
@@ -457,5 +461,4 @@ class CategoryReportController extends Controller
return $return; return $return;
} }
} }

View File

@@ -23,7 +23,6 @@ declare(strict_types=1);
namespace FireflyIII\Http\Controllers\Chart; namespace FireflyIII\Http\Controllers\Chart;
use Carbon\Carbon; use Carbon\Carbon;
use FireflyIII\Generator\Chart\Basic\GeneratorInterface; use FireflyIII\Generator\Chart\Basic\GeneratorInterface;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
@@ -196,7 +195,9 @@ class DoubleReportController extends Controller
$chartData[$spentKey] = $chartData[$spentKey] ?? [ $chartData[$spentKey] = $chartData[$spentKey] ?? [
'label' => sprintf( 'label' => sprintf(
'%s (%s)', (string)trans('firefly.spent_in_specific_double', ['account' => $name]), $currency['currency_name'] '%s (%s)',
(string) trans('firefly.spent_in_specific_double', ['account' => $name]),
$currency['currency_name']
), ),
'type' => 'bar', 'type' => 'bar',
'currency_symbol' => $currency['currency_symbol'], 'currency_symbol' => $currency['currency_symbol'],
@@ -210,7 +211,6 @@ class DoubleReportController extends Controller
$chartData[$spentKey]['entries'][$key] = $chartData[$spentKey]['entries'][$key] ?? '0'; $chartData[$spentKey]['entries'][$key] = $chartData[$spentKey]['entries'][$key] ?? '0';
$chartData[$spentKey]['entries'][$key] = bcadd($chartData[$spentKey]['entries'][$key], $amount); $chartData[$spentKey]['entries'][$key] = bcadd($chartData[$spentKey]['entries'][$key], $amount);
} }
} }
// loop income. // loop income.
foreach ($earned as $currency) { foreach ($earned as $currency) {
@@ -220,7 +220,9 @@ class DoubleReportController extends Controller
$chartData[$earnedKey] = $chartData[$earnedKey] ?? [ $chartData[$earnedKey] = $chartData[$earnedKey] ?? [
'label' => sprintf( 'label' => sprintf(
'%s (%s)', (string)trans('firefly.earned_in_specific_double', ['account' => $name]), $currency['currency_name'] '%s (%s)',
(string) trans('firefly.earned_in_specific_double', ['account' => $name]),
$currency['currency_name']
), ),
'type' => 'bar', 'type' => 'bar',
'currency_symbol' => $currency['currency_symbol'], 'currency_symbol' => $currency['currency_symbol'],
@@ -242,7 +244,6 @@ class DoubleReportController extends Controller
} }
/** /**
* @param Collection $accounts * @param Collection $accounts
* @param Collection $others * @param Collection $others
@@ -275,7 +276,6 @@ class DoubleReportController extends Controller
]; ];
$amount = app('steam')->positive($journal['amount']); $amount = app('steam')->positive($journal['amount']);
$result[$title]['amount'] = bcadd($result[$title]['amount'], $amount); $result[$title]['amount'] = bcadd($result[$title]['amount'], $amount);
} }
// loop each tag: // loop each tag:
/** @var array $tag */ /** @var array $tag */
@@ -334,7 +334,6 @@ class DoubleReportController extends Controller
]; ];
$amount = app('steam')->positive($journal['amount']); $amount = app('steam')->positive($journal['amount']);
$result[$title]['amount'] = bcadd($result[$title]['amount'], $amount); $result[$title]['amount'] = bcadd($result[$title]['amount'], $amount);
} }
// loop each tag: // loop each tag:
/** @var array $tag */ /** @var array $tag */
@@ -410,6 +409,4 @@ class DoubleReportController extends Controller
return $return; return $return;
} }
} }

View File

@@ -49,6 +49,7 @@ class ExpenseReportController extends Controller
/** /**
* ExpenseReportController constructor. * ExpenseReportController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()

View File

@@ -44,6 +44,7 @@ class PiggyBankController extends Controller
/** /**
* PiggyBankController constructor. * PiggyBankController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()

View File

@@ -138,7 +138,7 @@ class ReportController extends Controller
* @param Carbon $start * @param Carbon $start
* @param Carbon $end * @param Carbon $end
* *
* @return \Illuminate\Http\JsonResponse * @return JsonResponse
*/ */
public function operations(Collection $accounts, Carbon $start, Carbon $end): JsonResponse public function operations(Collection $accounts, Carbon $start, Carbon $end): JsonResponse
{ {

View File

@@ -264,7 +264,9 @@ class TagReportController extends Controller
$spentKey = sprintf('%d-spent', $currency['currency_id']); $spentKey = sprintf('%d-spent', $currency['currency_id']);
$chartData[$spentKey] = $chartData[$spentKey] ?? [ $chartData[$spentKey] = $chartData[$spentKey] ?? [
'label' => sprintf( 'label' => sprintf(
'%s (%s)', (string)trans('firefly.spent_in_specific_tag', ['tag' => $tag->tag]), $currency['currency_name'] '%s (%s)',
(string) trans('firefly.spent_in_specific_tag', ['tag' => $tag->tag]),
$currency['currency_name']
), ),
'type' => 'bar', 'type' => 'bar',
'currency_symbol' => $currency['currency_symbol'], 'currency_symbol' => $currency['currency_symbol'],
@@ -288,7 +290,9 @@ class TagReportController extends Controller
$spentKey = sprintf('%d-earned', $currency['currency_id']); $spentKey = sprintf('%d-earned', $currency['currency_id']);
$chartData[$spentKey] = $chartData[$spentKey] ?? [ $chartData[$spentKey] = $chartData[$spentKey] ?? [
'label' => sprintf( 'label' => sprintf(
'%s (%s)', (string)trans('firefly.earned_in_specific_tag', ['tag' => $tag->tag]), $currency['currency_name'] '%s (%s)',
(string) trans('firefly.earned_in_specific_tag', ['tag' => $tag->tag]),
$currency['currency_name']
), ),
'type' => 'bar', 'type' => 'bar',
'currency_symbol' => $currency['currency_symbol'], 'currency_symbol' => $currency['currency_symbol'],
@@ -475,5 +479,4 @@ class TagReportController extends Controller
return $return; return $return;
} }
} }

View File

@@ -21,7 +21,6 @@
namespace FireflyIII\Http\Controllers\Chart; namespace FireflyIII\Http\Controllers\Chart;
use Carbon\Carbon; use Carbon\Carbon;
use FireflyIII\Exceptions\FireflyException; use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Generator\Chart\Basic\GeneratorInterface; use FireflyIII\Generator\Chart\Basic\GeneratorInterface;
@@ -29,6 +28,7 @@ use FireflyIII\Helpers\Collector\GroupCollectorInterface;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
use FireflyIII\Models\TransactionType; use FireflyIII\Models\TransactionType;
use FireflyIII\Support\CacheProperties; use FireflyIII\Support\CacheProperties;
use Illuminate\Http\JsonResponse;
/** /**
* Class TransactionController * Class TransactionController
@@ -53,8 +53,8 @@ class TransactionController extends Controller
* @param Carbon $start * @param Carbon $start
* @param Carbon $end * @param Carbon $end
* *
* @return \Illuminate\Http\JsonResponse
* @throws FireflyException * @throws FireflyException
* @return JsonResponse
*/ */
public function budgets(Carbon $start, Carbon $end) public function budgets(Carbon $start, Carbon $end)
{ {
@@ -108,8 +108,8 @@ class TransactionController extends Controller
* @param Carbon $start * @param Carbon $start
* @param Carbon $end * @param Carbon $end
* *
* @return \Illuminate\Http\JsonResponse
* @throws FireflyException * @throws FireflyException
* @return JsonResponse
*/ */
public function categories(string $objectType, Carbon $start, Carbon $end) public function categories(string $objectType, Carbon $start, Carbon $end)
{ {
@@ -175,8 +175,8 @@ class TransactionController extends Controller
* @param Carbon $start * @param Carbon $start
* @param Carbon $end * @param Carbon $end
* *
* @return \Illuminate\Http\JsonResponse
* @throws FireflyException * @throws FireflyException
* @return JsonResponse
*/ */
public function destinationAccounts(string $objectType, Carbon $start, Carbon $end) public function destinationAccounts(string $objectType, Carbon $start, Carbon $end)
{ {
@@ -241,8 +241,8 @@ class TransactionController extends Controller
* @param Carbon $start * @param Carbon $start
* @param Carbon $end * @param Carbon $end
* *
* @return \Illuminate\Http\JsonResponse
* @throws FireflyException * @throws FireflyException
* @return JsonResponse
*/ */
public function sourceAccounts(string $objectType, Carbon $start, Carbon $end) public function sourceAccounts(string $objectType, Carbon $start, Carbon $end)
{ {
@@ -301,5 +301,4 @@ class TransactionController extends Controller
return response()->json($chart); return response()->json($chart);
} }
} }

View File

@@ -97,5 +97,4 @@ class Controller extends BaseController
} }
); );
} }
} }

View File

@@ -29,8 +29,11 @@ use FireflyIII\Models\TransactionCurrency;
use FireflyIII\Repositories\Currency\CurrencyRepositoryInterface; use FireflyIII\Repositories\Currency\CurrencyRepositoryInterface;
use FireflyIII\Repositories\User\UserRepositoryInterface; use FireflyIII\Repositories\User\UserRepositoryInterface;
use FireflyIII\User; use FireflyIII\User;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Pagination\LengthAwarePaginator; use Illuminate\Pagination\LengthAwarePaginator;
use Illuminate\Routing\Redirector;
use Log; use Log;
use View; use View;
@@ -47,6 +50,7 @@ class CurrencyController extends Controller
/** /**
* CurrencyController constructor. * CurrencyController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -71,7 +75,7 @@ class CurrencyController extends Controller
* *
* @param Request $request * @param Request $request
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector|View * @return RedirectResponse|Redirector|View
*/ */
public function create(Request $request) public function create(Request $request)
{ {
@@ -103,7 +107,7 @@ class CurrencyController extends Controller
* @param Request $request * @param Request $request
* @param TransactionCurrency $currency * @param TransactionCurrency $currency
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function defaultCurrency(Request $request, TransactionCurrency $currency) public function defaultCurrency(Request $request, TransactionCurrency $currency)
{ {
@@ -124,7 +128,7 @@ class CurrencyController extends Controller
* @param Request $request * @param Request $request
* @param TransactionCurrency $currency * @param TransactionCurrency $currency
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector|View * @return RedirectResponse|Redirector|View
*/ */
public function delete(Request $request, TransactionCurrency $currency) public function delete(Request $request, TransactionCurrency $currency)
{ {
@@ -162,7 +166,7 @@ class CurrencyController extends Controller
* @param Request $request * @param Request $request
* @param TransactionCurrency $currency * @param TransactionCurrency $currency
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function destroy(Request $request, TransactionCurrency $currency) public function destroy(Request $request, TransactionCurrency $currency)
{ {
@@ -203,8 +207,8 @@ class CurrencyController extends Controller
* @param Request $request * @param Request $request
* @param TransactionCurrency $currency * @param TransactionCurrency $currency
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector
* @throws FireflyException * @throws FireflyException
* @return RedirectResponse|Redirector
*/ */
public function disableCurrency(Request $request, TransactionCurrency $currency) public function disableCurrency(Request $request, TransactionCurrency $currency)
{ {
@@ -262,7 +266,7 @@ class CurrencyController extends Controller
* @param Request $request * @param Request $request
* @param TransactionCurrency $currency * @param TransactionCurrency $currency
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector|View * @return RedirectResponse|Redirector|View
*/ */
public function edit(Request $request, TransactionCurrency $currency) public function edit(Request $request, TransactionCurrency $currency)
{ {
@@ -302,7 +306,7 @@ class CurrencyController extends Controller
/** /**
* @param TransactionCurrency $currency * @param TransactionCurrency $currency
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function enableCurrency(TransactionCurrency $currency) public function enableCurrency(TransactionCurrency $currency)
{ {
@@ -320,7 +324,7 @@ class CurrencyController extends Controller
* *
* @param Request $request * @param Request $request
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|\Illuminate\View\View
*/ */
public function index(Request $request) public function index(Request $request)
{ {
@@ -350,7 +354,7 @@ class CurrencyController extends Controller
* *
* @param CurrencyFormRequest $request * @param CurrencyFormRequest $request
* *
* @return $this|\Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return $this|RedirectResponse|Redirector
*/ */
public function store(CurrencyFormRequest $request) public function store(CurrencyFormRequest $request)
{ {
@@ -399,7 +403,7 @@ class CurrencyController extends Controller
* @param CurrencyFormRequest $request * @param CurrencyFormRequest $request
* @param TransactionCurrency $currency * @param TransactionCurrency $currency
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function update(CurrencyFormRequest $request, TransactionCurrency $currency) public function update(CurrencyFormRequest $request, TransactionCurrency $currency)
{ {

View File

@@ -30,7 +30,9 @@ use Exception;
use FireflyIII\Exceptions\FireflyException; use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Http\Middleware\IsDemoUser; use FireflyIII\Http\Middleware\IsDemoUser;
use FireflyIII\Support\Http\Controllers\GetConfigurationData; use FireflyIII\Support\Http\Controllers\GetConfigurationData;
use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Routing\Redirector;
use Illuminate\Routing\Route; use Illuminate\Routing\Route;
use Log; use Log;
use Monolog\Handler\RotatingFileHandler; use Monolog\Handler\RotatingFileHandler;
@@ -46,6 +48,7 @@ class DebugController extends Controller
/** /**
* DebugController constructor. * DebugController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -77,7 +80,7 @@ class DebugController extends Controller
* *
* @param Request $request * @param Request $request
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function flush(Request $request) public function flush(Request $request)
{ {
@@ -172,10 +175,28 @@ class DebugController extends Controller
} }
return view( return view(
'debug', compact( 'debug',
'phpVersion', 'extensions', 'localeAttempts', 'appEnv', 'appDebug', 'logChannel', 'appLogLevel', 'now', 'drivers', 'currentDriver', compact(
'phpVersion',
'extensions',
'localeAttempts',
'appEnv',
'appDebug',
'logChannel',
'appLogLevel',
'now',
'drivers',
'currentDriver',
'loginProvider', 'loginProvider',
'userAgent', 'displayErrors', 'installationId', 'errorReporting', 'phpOs', 'interface', 'logContent', 'cacheDriver', 'trustedProxies' 'userAgent',
'displayErrors',
'installationId',
'errorReporting',
'phpOs',
'interface',
'logContent',
'cacheDriver',
'trustedProxies'
) )
); );
} }
@@ -226,7 +247,7 @@ class DebugController extends Controller
* *
* @param Request $request * @param Request $request
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function testFlash(Request $request) public function testFlash(Request $request)
{ {
@@ -237,6 +258,4 @@ class DebugController extends Controller
return redirect(route('home')); return redirect(route('home'));
} }
} }

View File

@@ -27,7 +27,10 @@ use FireflyIII\Http\Controllers\Controller;
use FireflyIII\Http\Middleware\IsDemoUser; use FireflyIII\Http\Middleware\IsDemoUser;
use FireflyIII\Repositories\Journal\JournalRepositoryInterface; use FireflyIII\Repositories\Journal\JournalRepositoryInterface;
use FireflyIII\Support\Export\ExportDataGenerator; use FireflyIII\Support\Export\ExportDataGenerator;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\Response as LaravelResponse; use Illuminate\Http\Response as LaravelResponse;
use Illuminate\View\View;
use League\Csv\CannotInsertRecord;
/** /**
* Class IndexController * Class IndexController
@@ -61,8 +64,8 @@ class IndexController extends Controller
} }
/** /**
* @throws CannotInsertRecord
* @return LaravelResponse * @return LaravelResponse
* @throws \League\Csv\CannotInsertRecord
*/ */
public function export(): LaravelResponse public function export(): LaravelResponse
{ {
@@ -97,12 +100,13 @@ class IndexController extends Controller
->header('Cache-Control', 'must-revalidate, post-check=0, pre-check=0') ->header('Cache-Control', 'must-revalidate, post-check=0, pre-check=0')
->header('Pragma', 'public') ->header('Pragma', 'public')
->header('Content-Length', strlen($result['transactions'])); ->header('Content-Length', strlen($result['transactions']));
// return CSV file made from 'transactions' array. // return CSV file made from 'transactions' array.
return $response; return $response;
} }
/** /**
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function index() public function index()
{ {

View File

@@ -31,9 +31,13 @@ use FireflyIII\Models\AccountType;
use FireflyIII\Repositories\Account\AccountRepositoryInterface; use FireflyIII\Repositories\Account\AccountRepositoryInterface;
use FireflyIII\Repositories\Bill\BillRepositoryInterface; use FireflyIII\Repositories\Bill\BillRepositoryInterface;
use FireflyIII\User; use FireflyIII\User;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\JsonResponse; use Illuminate\Http\JsonResponse;
use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Routing\Redirector;
use Illuminate\Support\Collection; use Illuminate\Support\Collection;
use Illuminate\View\View;
use Log; use Log;
/** /**
@@ -59,8 +63,8 @@ class HomeController extends Controller
* *
* @param Request $request * @param Request $request
* *
* @return JsonResponse
* @throws Exception * @throws Exception
* @return JsonResponse
*/ */
public function dateRange(Request $request): JsonResponse public function dateRange(Request $request): JsonResponse
{ {
@@ -101,8 +105,8 @@ class HomeController extends Controller
* *
* @param AccountRepositoryInterface $repository * @param AccountRepositoryInterface $repository
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector|\Illuminate\View\View
* @throws Exception * @throws Exception
* @return Factory|RedirectResponse|Redirector|View
*/ */
public function index(AccountRepositoryInterface $repository) public function index(AccountRepositoryInterface $repository)
{ {
@@ -116,7 +120,8 @@ class HomeController extends Controller
$subTitle = (string) trans('firefly.welcomeBack'); $subTitle = (string) trans('firefly.welcomeBack');
$transactions = []; $transactions = [];
$frontPage = app('preferences')->get( $frontPage = app('preferences')->get(
'frontPageAccounts', $repository->getAccountsByType([AccountType::DEFAULT, AccountType::ASSET])->pluck('id')->toArray() 'frontPageAccounts',
$repository->getAccountsByType([AccountType::DEFAULT, AccountType::ASSET])->pluck('id')->toArray()
); );
/** @var Carbon $start */ /** @var Carbon $start */
$start = session('start', Carbon::now()->startOfMonth()); $start = session('start', Carbon::now()->startOfMonth());
@@ -145,5 +150,4 @@ class HomeController extends Controller
return view('index', compact('count', 'subTitle', 'transactions', 'billCount', 'start', 'end', 'today')); return view('index', compact('count', 'subTitle', 'transactions', 'billCount', 'start', 'end', 'today'));
} }
} }

View File

@@ -26,11 +26,16 @@ namespace FireflyIII\Http\Controllers\Import;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
use FireflyIII\Repositories\ImportJob\ImportJobRepositoryInterface; use FireflyIII\Repositories\ImportJob\ImportJobRepositoryInterface;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Routing\Redirector;
use Illuminate\View\View;
use Log; use Log;
/** /**
* Class CallbackController * Class CallbackController
*
* @deprecated * @deprecated
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
@@ -44,7 +49,7 @@ class CallbackController extends Controller
* *
* @param ImportJobRepositoryInterface $repository * @param ImportJobRepositoryInterface $repository
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector|\Illuminate\View\View * @return Factory|RedirectResponse|Redirector|View
*/ */
public function ynab(Request $request, ImportJobRepositoryInterface $repository) public function ynab(Request $request, ImportJobRepositoryInterface $repository)
{ {

View File

@@ -28,12 +28,17 @@ use FireflyIII\Models\ImportJob;
use FireflyIII\Repositories\ImportJob\ImportJobRepositoryInterface; use FireflyIII\Repositories\ImportJob\ImportJobRepositoryInterface;
use FireflyIII\Repositories\User\UserRepositoryInterface; use FireflyIII\Repositories\User\UserRepositoryInterface;
use FireflyIII\Support\Binder\ImportProvider; use FireflyIII\Support\Binder\ImportProvider;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Response as LaravelResponse; use Illuminate\Http\Response as LaravelResponse;
use Illuminate\Routing\Redirector;
use Illuminate\View\View;
use Log; use Log;
/** /**
* *
* Class IndexController * Class IndexController
*
* @deprecated * @deprecated
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
@@ -71,7 +76,7 @@ class IndexController extends Controller
* *
* @param string $importProvider * @param string $importProvider
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
* *
*/ */
public function create(string $importProvider) public function create(string $importProvider)
@@ -179,7 +184,7 @@ class IndexController extends Controller
/** /**
* General import index. * General import index.
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function index() public function index()
{ {

View File

@@ -27,13 +27,18 @@ use FireflyIII\Http\Controllers\Controller;
use FireflyIII\Models\ImportJob; use FireflyIII\Models\ImportJob;
use FireflyIII\Repositories\ImportJob\ImportJobRepositoryInterface; use FireflyIII\Repositories\ImportJob\ImportJobRepositoryInterface;
use FireflyIII\Support\Http\Controllers\CreateStuff; use FireflyIII\Support\Http\Controllers\CreateStuff;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Http\UploadedFile; use Illuminate\Http\UploadedFile;
use Illuminate\Routing\Redirector;
use Illuminate\Support\MessageBag; use Illuminate\Support\MessageBag;
use Illuminate\View\View;
use Log; use Log;
/** /**
* Class JobConfigurationController * Class JobConfigurationController
*
* @deprecated * @deprecated
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
@@ -66,10 +71,10 @@ class JobConfigurationController extends Controller
* *
* @param ImportJob $importJob * @param ImportJob $importJob
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector|\Illuminate\View\View
*
* @throws FireflyException * @throws FireflyException
* *
* @return Factory|RedirectResponse|Redirector|View
*
*/ */
public function index(ImportJob $importJob) public function index(ImportJob $importJob)
{ {
@@ -116,9 +121,9 @@ class JobConfigurationController extends Controller
* @param Request $request * @param Request $request
* @param ImportJob $importJob * @param ImportJob $importJob
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector
*
* @throws FireflyException * @throws FireflyException
* @return RedirectResponse|Redirector
*
*/ */
public function post(Request $request, ImportJob $importJob) public function post(Request $request, ImportJob $importJob)
{ {

View File

@@ -34,6 +34,7 @@ use Log;
/** /**
* Class JobStatusController * Class JobStatusController
*
* @deprecated * @deprecated
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
@@ -115,7 +116,8 @@ class JobStatusController extends Controller
} }
if (1 === $count && null !== $importJob->tag_id) { if (1 === $count && null !== $importJob->tag_id) {
$json['report_txt'] = trans( $json['report_txt'] = trans(
'import.result_one_transaction', ['route' => route('tags.show', [$importJob->tag_id, 'all']), 'tag' => $importJob->tag->tag] 'import.result_one_transaction',
['route' => route('tags.show', [$importJob->tag_id, 'all']), 'tag' => $importJob->tag->tag]
); );
} }
if ($count > 1 && null !== $importJob->tag_id) { if ($count > 1 && null !== $importJob->tag_id) {
@@ -235,6 +237,4 @@ class JobStatusController extends Controller
// expect nothing from routine, just return OK to user. // expect nothing from routine, just return OK to user.
return response()->json(['status' => 'OK', 'message' => 'storage_finished']); return response()->json(['status' => 'OK', 'message' => 'storage_finished']);
} }
} }

View File

@@ -27,11 +27,16 @@ use FireflyIII\Import\Prerequisites\PrerequisitesInterface;
use FireflyIII\Models\ImportJob; use FireflyIII\Models\ImportJob;
use FireflyIII\Repositories\ImportJob\ImportJobRepositoryInterface; use FireflyIII\Repositories\ImportJob\ImportJobRepositoryInterface;
use FireflyIII\User; use FireflyIII\User;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Routing\Redirector;
use Illuminate\View\View;
use Log; use Log;
/** /**
* Class PrerequisitesController * Class PrerequisitesController
*
* @deprecated * @deprecated
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
@@ -68,7 +73,7 @@ class PrerequisitesController extends Controller
* @param string $importProvider * @param string $importProvider
* @param ImportJob $importJob * @param ImportJob $importJob
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function index(string $importProvider, ImportJob $importJob = null) public function index(string $importProvider, ImportJob $importJob = null)
{ {
@@ -115,7 +120,7 @@ class PrerequisitesController extends Controller
* @param string $importProvider * @param string $importProvider
* @param ImportJob $importJob * @param ImportJob $importJob
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
* @see PrerequisitesInterface::storePrerequisites * @see PrerequisitesInterface::storePrerequisites
* *
*/ */

View File

@@ -44,7 +44,7 @@ class JavascriptController extends Controller
* @param AccountRepositoryInterface $repository * @param AccountRepositoryInterface $repository
* @param CurrencyRepositoryInterface $currencyRepository * @param CurrencyRepositoryInterface $currencyRepository
* *
* @return \Illuminate\Http\Response * @return Response
*/ */
public function accounts(AccountRepositoryInterface $repository, CurrencyRepositoryInterface $currencyRepository): Response public function accounts(AccountRepositoryInterface $repository, CurrencyRepositoryInterface $currencyRepository): Response
{ {
@@ -102,7 +102,7 @@ class JavascriptController extends Controller
* @param AccountRepositoryInterface $repository * @param AccountRepositoryInterface $repository
* @param CurrencyRepositoryInterface $currencyRepository * @param CurrencyRepositoryInterface $currencyRepository
* *
* @return \Illuminate\Http\Response * @return Response
*/ */
public function variables(Request $request, AccountRepositoryInterface $repository, CurrencyRepositoryInterface $currencyRepository): Response public function variables(Request $request, AccountRepositoryInterface $repository, CurrencyRepositoryInterface $currencyRepository): Response
{ {

View File

@@ -22,6 +22,7 @@ declare(strict_types=1);
namespace FireflyIII\Http\Controllers\Json; namespace FireflyIII\Http\Controllers\Json;
use Amount;
use Carbon\Carbon; use Carbon\Carbon;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
use FireflyIII\Models\Account; use FireflyIII\Models\Account;
@@ -132,7 +133,8 @@ class AutoCompleteController extends Controller
$journal['name'] = $journal['description']; $journal['name'] = $journal['description'];
return $journal; return $journal;
}, $array },
$array
); );
return response()->json(array_values($array)); return response()->json(array_values($array));
@@ -353,7 +355,7 @@ class AutoCompleteController extends Controller
$accountRepos = app(AccountRepositoryInterface::class); $accountRepos = app(AccountRepositoryInterface::class);
$piggies = $repository->getPiggyBanks(); $piggies = $repository->getPiggyBanks();
$defaultCurrency = \Amount::getDefaultCurrency(); $defaultCurrency = Amount::getDefaultCurrency();
$response = []; $response = [];
/** @var PiggyBank $piggy */ /** @var PiggyBank $piggy */
foreach ($piggies as $piggy) { foreach ($piggies as $piggy) {
@@ -444,5 +446,4 @@ class AutoCompleteController extends Controller
return response()->json($array); return response()->json($array);
} }
} }

View File

@@ -34,7 +34,6 @@ use FireflyIII\Models\TransactionType;
use FireflyIII\Repositories\Account\AccountRepositoryInterface; use FireflyIII\Repositories\Account\AccountRepositoryInterface;
use FireflyIII\Repositories\Bill\BillRepositoryInterface; use FireflyIII\Repositories\Bill\BillRepositoryInterface;
use FireflyIII\Repositories\Budget\AvailableBudgetRepositoryInterface; use FireflyIII\Repositories\Budget\AvailableBudgetRepositoryInterface;
use FireflyIII\Repositories\Budget\BudgetRepositoryInterface;
use FireflyIII\Repositories\Budget\OperationsRepositoryInterface; use FireflyIII\Repositories\Budget\OperationsRepositoryInterface;
use FireflyIII\Repositories\Currency\CurrencyRepositoryInterface; use FireflyIII\Repositories\Currency\CurrencyRepositoryInterface;
use FireflyIII\Support\CacheProperties; use FireflyIII\Support\CacheProperties;

View File

@@ -23,7 +23,6 @@ declare(strict_types=1);
namespace FireflyIII\Http\Controllers\Json; namespace FireflyIII\Http\Controllers\Json;
use Carbon\Carbon; use Carbon\Carbon;
use FireflyIII\Helpers\Collector\GroupCollectorInterface; use FireflyIII\Helpers\Collector\GroupCollectorInterface;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
@@ -56,6 +55,7 @@ class ReconcileController extends Controller
/** /**
* ReconcileController constructor. * ReconcileController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -141,10 +141,21 @@ class ReconcileController extends Controller
try { try {
$view = view( $view = view(
'accounts.reconcile.overview', compact( 'accounts.reconcile.overview',
'account', 'start', 'diffCompare', 'difference', 'end', 'clearedAmount', compact(
'startBalance', 'endBalance', 'amount', 'account',
'route', 'countCleared', 'reconSum', 'selectedIds' 'start',
'diffCompare',
'difference',
'end',
'clearedAmount',
'startBalance',
'endBalance',
'amount',
'route',
'countCleared',
'reconSum',
'selectedIds'
) )
)->render(); )->render();
// @codeCoverageIgnoreStart // @codeCoverageIgnoreStart
@@ -231,8 +242,10 @@ class ReconcileController extends Controller
} }
try { try {
$html = view('accounts.reconcile.transactions', $html = view(
compact('account', 'journals', 'currency', 'start', 'end', 'selectionStart', 'selectionEnd'))->render(); 'accounts.reconcile.transactions',
compact('account', 'journals', 'currency', 'start', 'end', 'selectionStart', 'selectionEnd')
)->render();
// @codeCoverageIgnoreStart // @codeCoverageIgnoreStart
} catch (Throwable $e) { } catch (Throwable $e) {
Log::debug(sprintf('Could not render: %s', $e->getMessage())); Log::debug(sprintf('Could not render: %s', $e->getMessage()));
@@ -249,6 +262,7 @@ class ReconcileController extends Controller
* @param TransactionCurrency $currency * @param TransactionCurrency $currency
* @param array $journal * @param array $journal
* @param string $amount * @param string $amount
*
* @return string * @return string
*/ */
private function processJournal(Account $account, TransactionCurrency $currency, array $journal, string $amount): string private function processJournal(Account $account, TransactionCurrency $currency, array $journal, string $amount): string

View File

@@ -23,7 +23,6 @@ declare(strict_types=1);
namespace FireflyIII\Http\Controllers\Json; namespace FireflyIII\Http\Controllers\Json;
use Carbon\Carbon; use Carbon\Carbon;
use FireflyIII\Exceptions\FireflyException; use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
@@ -65,9 +64,9 @@ class RecurrenceController extends Controller
* *
* @param Request $request * @param Request $request
* *
* @throws FireflyException
* @return JsonResponse * @return JsonResponse
* *
* @throws FireflyException
*/ */
public function events(Request $request): JsonResponse public function events(Request $request): JsonResponse
{ {
@@ -150,7 +149,7 @@ class RecurrenceController extends Controller
{ {
$string = $request->get('date') ?? date('Y-m-d'); $string = $request->get('date') ?? date('Y-m-d');
$today = Carbon::now()->startOfDay(); $today = Carbon::now()->startOfDay();
$date = Carbon::createFromFormat('Y-m-d', $string)->startOfDay();; $date = Carbon::createFromFormat('Y-m-d', $string)->startOfDay();
$preSelected = (string) $request->get('pre_select'); $preSelected = (string) $request->get('pre_select');
Log::debug(sprintf('date = %s, today = %s. date > today? %s', $date->toAtomString(), $today->toAtomString(), var_export($date > $today, true))); Log::debug(sprintf('date = %s, today = %s. date > today? %s', $date->toAtomString(), $today->toAtomString(), var_export($date > $today, true)));
@@ -173,7 +172,8 @@ class RecurrenceController extends Controller
'selected' => 0 === strpos($preSelected, 'monthly')], 'selected' => 0 === strpos($preSelected, 'monthly')],
$ndom => ['label' => (string) trans('firefly.recurring_ndom', ['weekday' => $dayOfWeek, 'dayOfMonth' => $date->weekOfMonth]), $ndom => ['label' => (string) trans('firefly.recurring_ndom', ['weekday' => $dayOfWeek, 'dayOfMonth' => $date->weekOfMonth]),
'selected' => 0 === strpos($preSelected, 'ndom')], 'selected' => 0 === strpos($preSelected, 'ndom')],
$yearly => ['label' => (string)trans('firefly.recurring_yearly', ['date' => $yearlyDate]), 'selected' => 0 === strpos($preSelected, 'yearly')], $yearly => ['label' => (string) trans('firefly.recurring_yearly', ['date' => $yearlyDate]),
'selected' => 0 === strpos($preSelected, 'yearly')],
]; ];
} }
Log::debug('Dropdown is', $result); Log::debug('Dropdown is', $result);
@@ -181,5 +181,4 @@ class RecurrenceController extends Controller
return response()->json($result); return response()->json($result);
} }
} }

View File

@@ -26,6 +26,8 @@ use FireflyIII\Http\Requests\NewUserFormRequest;
use FireflyIII\Repositories\Account\AccountRepositoryInterface; use FireflyIII\Repositories\Account\AccountRepositoryInterface;
use FireflyIII\Repositories\Currency\CurrencyRepositoryInterface; use FireflyIII\Repositories\Currency\CurrencyRepositoryInterface;
use FireflyIII\Support\Http\Controllers\CreateStuff; use FireflyIII\Support\Http\Controllers\CreateStuff;
use Illuminate\Http\RedirectResponse;
use Illuminate\Routing\Redirector;
use View; use View;
/** /**
@@ -56,7 +58,7 @@ class NewUserController extends Controller
/** /**
* Form the user gets when he has no data in the system. * Form the user gets when he has no data in the system.
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector|View * @return RedirectResponse|Redirector|View
*/ */
public function index() public function index()
{ {
@@ -81,7 +83,7 @@ class NewUserController extends Controller
* @param NewUserFormRequest $request * @param NewUserFormRequest $request
* @param CurrencyRepositoryInterface $currencyRepository * @param CurrencyRepositoryInterface $currencyRepository
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function submit(NewUserFormRequest $request, CurrencyRepositoryInterface $currencyRepository) public function submit(NewUserFormRequest $request, CurrencyRepositoryInterface $currencyRepository)
{ {

View File

@@ -30,11 +30,14 @@ use FireflyIII\Repositories\Currency\CurrencyRepositoryInterface;
use FireflyIII\Repositories\PiggyBank\PiggyBankRepositoryInterface; use FireflyIII\Repositories\PiggyBank\PiggyBankRepositoryInterface;
use FireflyIII\Transformers\AccountTransformer; use FireflyIII\Transformers\AccountTransformer;
use FireflyIII\Transformers\PiggyBankTransformer; use FireflyIII\Transformers\PiggyBankTransformer;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\JsonResponse; use Illuminate\Http\JsonResponse;
use Illuminate\Http\RedirectResponse; use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Pagination\LengthAwarePaginator; use Illuminate\Pagination\LengthAwarePaginator;
use Illuminate\Routing\Redirector;
use Illuminate\Support\Collection; use Illuminate\Support\Collection;
use Illuminate\View\View;
use Log; use Log;
use Symfony\Component\HttpFoundation\ParameterBag; use Symfony\Component\HttpFoundation\ParameterBag;
@@ -54,6 +57,7 @@ class PiggyBankController extends Controller
/** /**
* PiggyBankController constructor. * PiggyBankController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -79,7 +83,7 @@ class PiggyBankController extends Controller
* *
* @param PiggyBank $piggyBank * @param PiggyBank $piggyBank
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function add(PiggyBank $piggyBank) public function add(PiggyBank $piggyBank)
{ {
@@ -99,7 +103,7 @@ class PiggyBankController extends Controller
* *
* @param PiggyBank $piggyBank * @param PiggyBank $piggyBank
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function addMobile(PiggyBank $piggyBank) public function addMobile(PiggyBank $piggyBank)
{ {
@@ -117,7 +121,7 @@ class PiggyBankController extends Controller
/** /**
* Create a piggy bank. * Create a piggy bank.
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function create() public function create()
{ {
@@ -138,7 +142,7 @@ class PiggyBankController extends Controller
* *
* @param PiggyBank $piggyBank * @param PiggyBank $piggyBank
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function delete(PiggyBank $piggyBank) public function delete(PiggyBank $piggyBank)
{ {
@@ -171,7 +175,7 @@ class PiggyBankController extends Controller
* *
* @param PiggyBank $piggyBank * @param PiggyBank $piggyBank
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function edit(PiggyBank $piggyBank) public function edit(PiggyBank $piggyBank)
{ {
@@ -211,7 +215,7 @@ class PiggyBankController extends Controller
* *
* @param Request $request * @param Request $request
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function index(Request $request) public function index(Request $request)
{ {
@@ -358,7 +362,7 @@ class PiggyBankController extends Controller
* *
* @param PiggyBank $piggyBank * @param PiggyBank $piggyBank
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function remove(PiggyBank $piggyBank) public function remove(PiggyBank $piggyBank)
{ {
@@ -373,7 +377,7 @@ class PiggyBankController extends Controller
* *
* @param PiggyBank $piggyBank * @param PiggyBank $piggyBank
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function removeMobile(PiggyBank $piggyBank) public function removeMobile(PiggyBank $piggyBank)
{ {
@@ -404,7 +408,7 @@ class PiggyBankController extends Controller
* *
* @param PiggyBank $piggyBank * @param PiggyBank $piggyBank
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function show(PiggyBank $piggyBank) public function show(PiggyBank $piggyBank)
{ {
@@ -429,7 +433,7 @@ class PiggyBankController extends Controller
* *
* @param PiggyBankFormRequest $request * @param PiggyBankFormRequest $request
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function store(PiggyBankFormRequest $request) public function store(PiggyBankFormRequest $request)
{ {
@@ -461,7 +465,7 @@ class PiggyBankController extends Controller
* @param PiggyBankFormRequest $request * @param PiggyBankFormRequest $request
* @param PiggyBank $piggyBank * @param PiggyBank $piggyBank
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function update(PiggyBankFormRequest $request, PiggyBank $piggyBank) public function update(PiggyBankFormRequest $request, PiggyBank $piggyBank)
{ {

View File

@@ -26,7 +26,11 @@ use FireflyIII\Models\Account;
use FireflyIII\Models\AccountType; use FireflyIII\Models\AccountType;
use FireflyIII\Models\Preference; use FireflyIII\Models\Preference;
use FireflyIII\Repositories\Account\AccountRepositoryInterface; use FireflyIII\Repositories\Account\AccountRepositoryInterface;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Routing\Redirector;
use Illuminate\View\View;
/** /**
* Class PreferencesController. * Class PreferencesController.
@@ -35,6 +39,7 @@ class PreferencesController extends Controller
{ {
/** /**
* PreferencesController constructor. * PreferencesController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -56,7 +61,7 @@ class PreferencesController extends Controller
* *
* @param AccountRepositoryInterface $repository * @param AccountRepositoryInterface $repository
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function index(AccountRepositoryInterface $repository) public function index(AccountRepositoryInterface $repository)
{ {
@@ -122,7 +127,7 @@ class PreferencesController extends Controller
* *
* @param Request $request * @param Request $request
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
* *
*/ */
public function postIndex(Request $request) public function postIndex(Request $request)

View File

@@ -21,7 +21,6 @@
namespace FireflyIII\Http\Controllers\Profile; namespace FireflyIII\Http\Controllers\Profile;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
use FireflyIII\Repositories\Budget\AvailableBudgetRepositoryInterface; use FireflyIII\Repositories\Budget\AvailableBudgetRepositoryInterface;
use FireflyIII\Repositories\Budget\BudgetLimitRepositoryInterface; use FireflyIII\Repositories\Budget\BudgetLimitRepositoryInterface;

View File

@@ -41,8 +41,12 @@ use FireflyIII\User;
use Google2FA; use Google2FA;
use Hash; use Hash;
use Illuminate\Contracts\Auth\Guard; use Illuminate\Contracts\Auth\Guard;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Routing\Redirector;
use Illuminate\Support\Collection; use Illuminate\Support\Collection;
use Illuminate\View\View;
use Laravel\Passport\ClientRepository; use Laravel\Passport\ClientRepository;
use Log; use Log;
use PragmaRX\Recovery\Recovery; use PragmaRX\Recovery\Recovery;
@@ -59,6 +63,7 @@ class ProfileController extends Controller
/** /**
* ProfileController constructor. * ProfileController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -83,7 +88,7 @@ class ProfileController extends Controller
* *
* @param Request $request * @param Request $request
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function changeEmail(Request $request) public function changeEmail(Request $request)
{ {
@@ -109,7 +114,7 @@ class ProfileController extends Controller
* *
* @param Request $request * @param Request $request
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function changePassword(Request $request) public function changePassword(Request $request)
{ {
@@ -132,7 +137,7 @@ class ProfileController extends Controller
/** /**
* View that generates a 2FA code for the user. * View that generates a 2FA code for the user.
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function code() public function code()
{ {
@@ -181,9 +186,9 @@ class ProfileController extends Controller
* @param UserRepositoryInterface $repository * @param UserRepositoryInterface $repository
* @param string $token * @param string $token
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector
*
* @throws FireflyException * @throws FireflyException
* @return RedirectResponse|Redirector
*
*/ */
public function confirmEmailChange(UserRepositoryInterface $repository, string $token) public function confirmEmailChange(UserRepositoryInterface $repository, string $token)
{ {
@@ -224,7 +229,7 @@ class ProfileController extends Controller
* *
* @param Request $request * @param Request $request
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function deleteAccount(Request $request) public function deleteAccount(Request $request)
{ {
@@ -244,7 +249,7 @@ class ProfileController extends Controller
/** /**
* Delete 2FA routine. * Delete 2FA routine.
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function deleteCode() public function deleteCode()
{ {
@@ -264,7 +269,7 @@ class ProfileController extends Controller
/** /**
* Enable 2FA screen. * Enable 2FA screen.
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function enable2FA() public function enable2FA()
{ {
@@ -287,7 +292,7 @@ class ProfileController extends Controller
/** /**
* Index for profile. * Index for profile.
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function index() public function index()
{ {
@@ -320,7 +325,7 @@ class ProfileController extends Controller
} }
/** /**
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function newBackupCodes() public function newBackupCodes()
{ {
@@ -335,6 +340,7 @@ class ProfileController extends Controller
app('preferences')->set('mfa_recovery', $recoveryCodes); app('preferences')->set('mfa_recovery', $recoveryCodes);
app('preferences')->mark(); app('preferences')->mark();
return view('profile.new-backup-codes', compact('codes')); return view('profile.new-backup-codes', compact('codes'));
} }
@@ -344,7 +350,7 @@ class ProfileController extends Controller
* @param EmailFormRequest $request * @param EmailFormRequest $request
* @param UserRepositoryInterface $repository * @param UserRepositoryInterface $repository
* *
* @return $this|\Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return $this|RedirectResponse|Redirector
*/ */
public function postChangeEmail(EmailFormRequest $request, UserRepositoryInterface $repository) public function postChangeEmail(EmailFormRequest $request, UserRepositoryInterface $repository)
{ {
@@ -398,7 +404,7 @@ class ProfileController extends Controller
* @param ProfileFormRequest $request * @param ProfileFormRequest $request
* @param UserRepositoryInterface $repository * @param UserRepositoryInterface $repository
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function postChangePassword(ProfileFormRequest $request, UserRepositoryInterface $repository) public function postChangePassword(ProfileFormRequest $request, UserRepositoryInterface $repository)
{ {
@@ -436,7 +442,7 @@ class ProfileController extends Controller
* *
* @param TokenFormRequest $request * @param TokenFormRequest $request
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function postCode(TokenFormRequest $request) public function postCode(TokenFormRequest $request)
{ {
@@ -475,7 +481,7 @@ class ProfileController extends Controller
* @param UserRepositoryInterface $repository * @param UserRepositoryInterface $repository
* @param DeleteAccountFormRequest $request * @param DeleteAccountFormRequest $request
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function postDeleteAccount(UserRepositoryInterface $repository, DeleteAccountFormRequest $request) public function postDeleteAccount(UserRepositoryInterface $repository, DeleteAccountFormRequest $request)
{ {
@@ -498,7 +504,7 @@ class ProfileController extends Controller
/** /**
* Regenerate access token. * Regenerate access token.
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function regenerate() public function regenerate()
{ {
@@ -518,9 +524,9 @@ class ProfileController extends Controller
* @param string $token * @param string $token
* @param string $hash * @param string $hash
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector
*
* @throws FireflyException * @throws FireflyException
* @return RedirectResponse|Redirector
*
*/ */
public function undoEmailChange(UserRepositoryInterface $repository, string $token, string $hash) public function undoEmailChange(UserRepositoryInterface $repository, string $token, string $hash)
{ {

View File

@@ -23,7 +23,6 @@ declare(strict_types=1);
namespace FireflyIII\Http\Controllers\Recurring; namespace FireflyIII\Http\Controllers\Recurring;
use Carbon\Carbon; use Carbon\Carbon;
use FireflyIII\Exceptions\FireflyException; use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
@@ -31,7 +30,11 @@ use FireflyIII\Http\Requests\RecurrenceFormRequest;
use FireflyIII\Models\RecurrenceRepetition; use FireflyIII\Models\RecurrenceRepetition;
use FireflyIII\Repositories\Budget\BudgetRepositoryInterface; use FireflyIII\Repositories\Budget\BudgetRepositoryInterface;
use FireflyIII\Repositories\Recurring\RecurringRepositoryInterface; use FireflyIII\Repositories\Recurring\RecurringRepositoryInterface;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Routing\Redirector;
use Illuminate\View\View;
/** /**
* *
@@ -46,6 +49,7 @@ class CreateController extends Controller
/** /**
* CreateController constructor. * CreateController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -72,7 +76,7 @@ class CreateController extends Controller
* *
* @param Request $request * @param Request $request
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function create(Request $request) public function create(Request $request)
{ {
@@ -110,7 +114,8 @@ class CreateController extends Controller
$request->session()->flash('preFilled', $preFilled); $request->session()->flash('preFilled', $preFilled);
return view( return view(
'recurring.create', compact('tomorrow', 'oldRepetitionType', 'weekendResponses', 'preFilled', 'repetitionEnds', 'defaultCurrency', 'budgets') 'recurring.create',
compact('tomorrow', 'oldRepetitionType', 'weekendResponses', 'preFilled', 'repetitionEnds', 'defaultCurrency', 'budgets')
); );
} }
@@ -120,7 +125,7 @@ class CreateController extends Controller
* *
* @param RecurrenceFormRequest $request * @param RecurrenceFormRequest $request
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function store(RecurrenceFormRequest $request) public function store(RecurrenceFormRequest $request)
{ {
@@ -129,6 +134,7 @@ class CreateController extends Controller
$recurrence = $this->recurring->store($data); $recurrence = $this->recurring->store($data);
} catch (FireflyException $e) { } catch (FireflyException $e) {
session()->flash('error', $e->getMessage()); session()->flash('error', $e->getMessage());
return redirect(route('recurring.create'))->withInput(); return redirect(route('recurring.create'))->withInput();
} }
@@ -144,7 +150,5 @@ class CreateController extends Controller
// redirect to previous URL. // redirect to previous URL.
return $redirect; return $redirect;
} }
} }

View File

@@ -27,7 +27,11 @@ namespace FireflyIII\Http\Controllers\Recurring;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
use FireflyIII\Models\Recurrence; use FireflyIII\Models\Recurrence;
use FireflyIII\Repositories\Recurring\RecurringRepositoryInterface; use FireflyIII\Repositories\Recurring\RecurringRepositoryInterface;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Routing\Redirector;
use Illuminate\View\View;
/** /**
* Class DeleteController * Class DeleteController
@@ -39,6 +43,7 @@ class DeleteController extends Controller
/** /**
* DeleteController constructor. * DeleteController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -63,7 +68,7 @@ class DeleteController extends Controller
* *
* @param Recurrence $recurrence * @param Recurrence $recurrence
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function delete(Recurrence $recurrence) public function delete(Recurrence $recurrence)
{ {
@@ -83,7 +88,7 @@ class DeleteController extends Controller
* @param Request $request * @param Request $request
* @param Recurrence $recurrence * @param Recurrence $recurrence
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function destroy(RecurringRepositoryInterface $repository, Request $request, Recurrence $recurrence) public function destroy(RecurringRepositoryInterface $repository, Request $request, Recurrence $recurrence)
{ {

View File

@@ -24,6 +24,7 @@ declare(strict_types=1);
namespace FireflyIII\Http\Controllers\Recurring; namespace FireflyIII\Http\Controllers\Recurring;
use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
use FireflyIII\Http\Requests\RecurrenceFormRequest; use FireflyIII\Http\Requests\RecurrenceFormRequest;
use FireflyIII\Models\Recurrence; use FireflyIII\Models\Recurrence;
@@ -31,7 +32,11 @@ use FireflyIII\Models\RecurrenceRepetition;
use FireflyIII\Repositories\Budget\BudgetRepositoryInterface; use FireflyIII\Repositories\Budget\BudgetRepositoryInterface;
use FireflyIII\Repositories\Recurring\RecurringRepositoryInterface; use FireflyIII\Repositories\Recurring\RecurringRepositoryInterface;
use FireflyIII\Transformers\RecurrenceTransformer; use FireflyIII\Transformers\RecurrenceTransformer;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Routing\Redirector;
use Illuminate\View\View;
use Symfony\Component\HttpFoundation\ParameterBag; use Symfony\Component\HttpFoundation\ParameterBag;
/** /**
@@ -47,6 +52,7 @@ class EditController extends Controller
/** /**
* EditController constructor. * EditController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -74,9 +80,9 @@ class EditController extends Controller
* @param Request $request * @param Request $request
* @param Recurrence $recurrence * @param Recurrence $recurrence
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @throws FireflyException
* @throws \FireflyIII\Exceptions\FireflyException
* *
* @return Factory|View
*/ */
public function edit(Request $request, Recurrence $recurrence) public function edit(Request $request, Recurrence $recurrence)
{ {
@@ -143,8 +149,8 @@ class EditController extends Controller
* @param RecurrenceFormRequest $request * @param RecurrenceFormRequest $request
* @param Recurrence $recurrence * @param Recurrence $recurrence
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @throws FireflyException
* @throws \FireflyIII\Exceptions\FireflyException * @return RedirectResponse|Redirector
*/ */
public function update(RecurrenceFormRequest $request, Recurrence $recurrence) public function update(RecurrenceFormRequest $request, Recurrence $recurrence)
{ {

View File

@@ -25,14 +25,17 @@ namespace FireflyIII\Http\Controllers\Recurring;
use Carbon\Carbon; use Carbon\Carbon;
use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
use FireflyIII\Models\Recurrence; use FireflyIII\Models\Recurrence;
use FireflyIII\Repositories\Recurring\RecurringRepositoryInterface; use FireflyIII\Repositories\Recurring\RecurringRepositoryInterface;
use FireflyIII\Support\Http\Controllers\GetConfigurationData; use FireflyIII\Support\Http\Controllers\GetConfigurationData;
use FireflyIII\Transformers\RecurrenceTransformer; use FireflyIII\Transformers\RecurrenceTransformer;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Pagination\LengthAwarePaginator; use Illuminate\Pagination\LengthAwarePaginator;
use Illuminate\Support\Collection; use Illuminate\Support\Collection;
use Illuminate\View\View;
use Symfony\Component\HttpFoundation\ParameterBag; use Symfony\Component\HttpFoundation\ParameterBag;
/** /**
@@ -73,9 +76,9 @@ class IndexController extends Controller
* *
* @param Request $request * @param Request $request
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @throws FireflyException
* @throws \FireflyIII\Exceptions\FireflyException
* *
* @return Factory|View
*/ */
public function index(Request $request) public function index(Request $request)
{ {

View File

@@ -23,7 +23,6 @@ declare(strict_types=1);
namespace FireflyIII\Http\Controllers\Recurring; namespace FireflyIII\Http\Controllers\Recurring;
use Carbon\Carbon; use Carbon\Carbon;
use FireflyIII\Exceptions\FireflyException; use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
@@ -31,6 +30,8 @@ use FireflyIII\Models\Recurrence;
use FireflyIII\Repositories\Recurring\RecurringRepositoryInterface; use FireflyIII\Repositories\Recurring\RecurringRepositoryInterface;
use FireflyIII\Support\Http\Controllers\GetConfigurationData; use FireflyIII\Support\Http\Controllers\GetConfigurationData;
use FireflyIII\Transformers\RecurrenceTransformer; use FireflyIII\Transformers\RecurrenceTransformer;
use Illuminate\Contracts\View\Factory;
use Illuminate\View\View;
use Symfony\Component\HttpFoundation\ParameterBag; use Symfony\Component\HttpFoundation\ParameterBag;
/** /**
@@ -45,6 +46,7 @@ class ShowController extends Controller
/** /**
* IndexController constructor. * IndexController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -71,8 +73,8 @@ class ShowController extends Controller
* *
* @param Recurrence $recurrence * @param Recurrence $recurrence
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
* @throws FireflyException * @throws FireflyException
* @return Factory|View
*/ */
public function show(Recurrence $recurrence) public function show(Recurrence $recurrence)
{ {

View File

@@ -118,7 +118,8 @@ class BudgetController extends Controller
= $report[$sourceAccountId]['currencies'][$currencyId]['budgets'][$budget['id']] = $report[$sourceAccountId]['currencies'][$currencyId]['budgets'][$budget['id']]
?? '0'; ?? '0';
$report[$sourceAccountId]['currencies'][$currencyId]['budgets'][$budget['id']] = bcadd( $report[$sourceAccountId]['currencies'][$currencyId]['budgets'][$budget['id']] = bcadd(
$report[$sourceAccountId]['currencies'][$currencyId]['budgets'][$budget['id']], $journal['amount'] $report[$sourceAccountId]['currencies'][$currencyId]['budgets'][$budget['id']],
$journal['amount']
); );
} }
} }
@@ -172,7 +173,8 @@ class BudgetController extends Controller
'sum' => '0', 'sum' => '0',
]; ];
$report[$sourceAccountId]['currencies'][$currencyId]['sum'] = bcadd( $report[$sourceAccountId]['currencies'][$currencyId]['sum'] = bcadd(
$report[$sourceAccountId]['currencies'][$currencyId]['sum'], $journal['amount'] $report[$sourceAccountId]['currencies'][$currencyId]['sum'],
$journal['amount']
); );
$sums[$currencyId]['sum'] = bcadd($sums[$currencyId]['sum'], $journal['amount']); $sums[$currencyId]['sum'] = bcadd($sums[$currencyId]['sum'], $journal['amount']);
} }
@@ -295,11 +297,11 @@ class BudgetController extends Controller
$pct = '0'; $pct = '0';
if (0 !== bccomp($sum, '0') && 0 !== bccomp($total, '9')) { if (0 !== bccomp($sum, '0') && 0 !== bccomp($total, '9')) {
$pct = round(bcmul(bcdiv($sum, $total), '100')); $pct = round(bcmul(bcdiv($sum, $total), '100'));
} }
$report[$budgetId]['currencies'][$currencyId]['sum_pct'] = $pct; $report[$budgetId]['currencies'][$currencyId]['sum_pct'] = $pct;
} }
} }
return view('reports.budget.partials.budgets', compact('sums', 'report')); return view('reports.budget.partials.budgets', compact('sums', 'report'));
} }
@@ -426,7 +428,6 @@ class BudgetController extends Controller
$report['sums'][$nbCurrencyId]['overspent'] = $report['sums'][$nbCurrencyId]['overspent'] ?? '0'; $report['sums'][$nbCurrencyId]['overspent'] = $report['sums'][$nbCurrencyId]['overspent'] ?? '0';
$report['sums'][$nbCurrencyId]['left'] = $report['sums'][$nbCurrencyId]['left'] ?? '0'; $report['sums'][$nbCurrencyId]['left'] = $report['sums'][$nbCurrencyId]['left'] ?? '0';
$report['sums'][$nbCurrencyId]['budgeted'] = $report['sums'][$nbCurrencyId]['budgeted'] ?? '0'; $report['sums'][$nbCurrencyId]['budgeted'] = $report['sums'][$nbCurrencyId]['budgeted'] ?? '0';
} }
// make percentages based on total amount. // make percentages based on total amount.
foreach ($report['budgets'] as $budgetId => $data) { foreach ($report['budgets'] as $budgetId => $data) {
@@ -571,5 +572,4 @@ class BudgetController extends Controller
return $result; return $result;
} }
} }

View File

@@ -114,10 +114,12 @@ class CategoryController extends Controller
'sum' => '0', 'sum' => '0',
]; ];
$report[$sourceAccountId]['currencies'][$currencyId]['categories'][$category['id']]['spent'] = bcadd( $report[$sourceAccountId]['currencies'][$currencyId]['categories'][$category['id']]['spent'] = bcadd(
$report[$sourceAccountId]['currencies'][$currencyId]['categories'][$category['id']]['spent'], $journal['amount'] $report[$sourceAccountId]['currencies'][$currencyId]['categories'][$category['id']]['spent'],
$journal['amount']
); );
$report[$sourceAccountId]['currencies'][$currencyId]['categories'][$category['id']]['sum'] = bcadd( $report[$sourceAccountId]['currencies'][$currencyId]['categories'][$category['id']]['sum'] = bcadd(
$report[$sourceAccountId]['currencies'][$currencyId]['categories'][$category['id']]['sum'], $journal['amount'] $report[$sourceAccountId]['currencies'][$currencyId]['categories'][$category['id']]['sum'],
$journal['amount']
); );
} }
} }
@@ -152,10 +154,12 @@ class CategoryController extends Controller
'sum' => '0', 'sum' => '0',
]; ];
$report[$destinationId]['currencies'][$currencyId]['categories'][$category['id']]['earned'] = bcadd( $report[$destinationId]['currencies'][$currencyId]['categories'][$category['id']]['earned'] = bcadd(
$report[$destinationId]['currencies'][$currencyId]['categories'][$category['id']]['earned'], $journal['amount'] $report[$destinationId]['currencies'][$currencyId]['categories'][$category['id']]['earned'],
$journal['amount']
); );
$report[$destinationId]['currencies'][$currencyId]['categories'][$category['id']]['sum'] = bcadd( $report[$destinationId]['currencies'][$currencyId]['categories'][$category['id']]['sum'] = bcadd(
$report[$destinationId]['currencies'][$currencyId]['categories'][$category['id']]['sum'], $journal['amount'] $report[$destinationId]['currencies'][$currencyId]['categories'][$category['id']]['sum'],
$journal['amount']
); );
} }
} }
@@ -214,10 +218,12 @@ class CategoryController extends Controller
'sum' => '0', 'sum' => '0',
]; ];
$report[$sourceAccountId]['currencies'][$currencyId]['spent'] = bcadd( $report[$sourceAccountId]['currencies'][$currencyId]['spent'] = bcadd(
$report[$sourceAccountId]['currencies'][$currencyId]['spent'], $journal['amount'] $report[$sourceAccountId]['currencies'][$currencyId]['spent'],
$journal['amount']
); );
$report[$sourceAccountId]['currencies'][$currencyId]['sum'] = bcadd( $report[$sourceAccountId]['currencies'][$currencyId]['sum'] = bcadd(
$report[$sourceAccountId]['currencies'][$currencyId]['sum'], $journal['amount'] $report[$sourceAccountId]['currencies'][$currencyId]['sum'],
$journal['amount']
); );
$sums[$currencyId]['spent_sum'] = bcadd($sums[$currencyId]['spent_sum'], $journal['amount']); $sums[$currencyId]['spent_sum'] = bcadd($sums[$currencyId]['spent_sum'], $journal['amount']);
$sums[$currencyId]['total_sum'] = bcadd($sums[$currencyId]['total_sum'], $journal['amount']); $sums[$currencyId]['total_sum'] = bcadd($sums[$currencyId]['total_sum'], $journal['amount']);
@@ -250,10 +256,12 @@ class CategoryController extends Controller
'sum' => '0', 'sum' => '0',
]; ];
$report[$destinationAccountId]['currencies'][$currencyId]['earned'] = bcadd( $report[$destinationAccountId]['currencies'][$currencyId]['earned'] = bcadd(
$report[$destinationAccountId]['currencies'][$currencyId]['earned'], $journal['amount'] $report[$destinationAccountId]['currencies'][$currencyId]['earned'],
$journal['amount']
); );
$report[$destinationAccountId]['currencies'][$currencyId]['sum'] = bcadd( $report[$destinationAccountId]['currencies'][$currencyId]['sum'] = bcadd(
$report[$destinationAccountId]['currencies'][$currencyId]['sum'], $journal['amount'] $report[$destinationAccountId]['currencies'][$currencyId]['sum'],
$journal['amount']
); );
$sums[$currencyId]['earned_sum'] = bcadd($sums[$currencyId]['earned_sum'], $journal['amount']); $sums[$currencyId]['earned_sum'] = bcadd($sums[$currencyId]['earned_sum'], $journal['amount']);
$sums[$currencyId]['total_sum'] = bcadd($sums[$currencyId]['total_sum'], $journal['amount']); $sums[$currencyId]['total_sum'] = bcadd($sums[$currencyId]['total_sum'], $journal['amount']);
@@ -420,10 +428,12 @@ class CategoryController extends Controller
'currency_decimal_places' => $currency['currency_decimal_places'], 'currency_decimal_places' => $currency['currency_decimal_places'],
]; ];
$report[$categoryId]['currencies'][$currencyId]['spent'] = bcadd( $report[$categoryId]['currencies'][$currencyId]['spent'] = bcadd(
$report[$categoryId]['currencies'][$currencyId]['spent'], $journal['amount'] $report[$categoryId]['currencies'][$currencyId]['spent'],
$journal['amount']
); );
$report[$categoryId]['currencies'][$currencyId]['sum'] = bcadd( $report[$categoryId]['currencies'][$currencyId]['sum'] = bcadd(
$report[$categoryId]['currencies'][$currencyId]['sum'], $journal['amount'] $report[$categoryId]['currencies'][$currencyId]['sum'],
$journal['amount']
); );
$sums[$currencyId]['spent_sum'] = bcadd($sums[$currencyId]['spent_sum'], $journal['amount']); $sums[$currencyId]['spent_sum'] = bcadd($sums[$currencyId]['spent_sum'], $journal['amount']);
@@ -459,10 +469,12 @@ class CategoryController extends Controller
'currency_decimal_places' => $currency['currency_decimal_places'], 'currency_decimal_places' => $currency['currency_decimal_places'],
]; ];
$report[$categoryId]['currencies'][$currencyId]['earned'] = bcadd( $report[$categoryId]['currencies'][$currencyId]['earned'] = bcadd(
$report[$categoryId]['currencies'][$currencyId]['earned'], $journal['amount'] $report[$categoryId]['currencies'][$currencyId]['earned'],
$journal['amount']
); );
$report[$categoryId]['currencies'][$currencyId]['sum'] = bcadd( $report[$categoryId]['currencies'][$currencyId]['sum'] = bcadd(
$report[$categoryId]['currencies'][$currencyId]['sum'], $journal['amount'] $report[$categoryId]['currencies'][$currencyId]['sum'],
$journal['amount']
); );
$sums[$currencyId]['earned_sum'] = bcadd($sums[$currencyId]['earned_sum'], $journal['amount']); $sums[$currencyId]['earned_sum'] = bcadd($sums[$currencyId]['earned_sum'], $journal['amount']);
@@ -722,22 +734,26 @@ class CategoryController extends Controller
$report['sums'][$currencyId]['sum'] = bcadd($report['sums'][$currencyId]['sum'], $journal['amount']); $report['sums'][$currencyId]['sum'] = bcadd($report['sums'][$currencyId]['sum'], $journal['amount']);
// sum of spent: // sum of spent:
$report['sums'][$currencyId]['spent'] = -1 === bccomp($journal['amount'], '0') ? bcadd( $report['sums'][$currencyId]['spent'] = -1 === bccomp($journal['amount'], '0') ? bcadd(
$report['sums'][$currencyId]['spent'], $journal['amount'] $report['sums'][$currencyId]['spent'],
$journal['amount']
) : $report['sums'][$currencyId]['spent']; ) : $report['sums'][$currencyId]['spent'];
// sum of earned // sum of earned
$report['sums'][$currencyId]['earned'] = 1 === bccomp($journal['amount'], '0') ? bcadd( $report['sums'][$currencyId]['earned'] = 1 === bccomp($journal['amount'], '0') ? bcadd(
$report['sums'][$currencyId]['earned'], $journal['amount'] $report['sums'][$currencyId]['earned'],
$journal['amount']
) : $report['sums'][$currencyId]['earned']; ) : $report['sums'][$currencyId]['earned'];
// sum of category // sum of category
$report['categories'][$key]['sum'] = bcadd($report['categories'][$key]['sum'], $journal['amount']); $report['categories'][$key]['sum'] = bcadd($report['categories'][$key]['sum'], $journal['amount']);
// total spent in category // total spent in category
$report['categories'][$key]['spent'] = -1 === bccomp($journal['amount'], '0') ? bcadd( $report['categories'][$key]['spent'] = -1 === bccomp($journal['amount'], '0') ? bcadd(
$report['categories'][$key]['spent'], $journal['amount'] $report['categories'][$key]['spent'],
$journal['amount']
) : $report['categories'][$key]['spent']; ) : $report['categories'][$key]['spent'];
// total earned in category // total earned in category
$report['categories'][$key]['earned'] = 1 === bccomp($journal['amount'], '0') ? bcadd( $report['categories'][$key]['earned'] = 1 === bccomp($journal['amount'], '0') ? bcadd(
$report['categories'][$key]['earned'], $journal['amount'] $report['categories'][$key]['earned'],
$journal['amount']
) : $report['categories'][$key]['earned']; ) : $report['categories'][$key]['earned'];
} }
} }
@@ -871,6 +887,4 @@ class CategoryController extends Controller
return false; return false;
} }
} }

View File

@@ -23,7 +23,6 @@ declare(strict_types=1);
namespace FireflyIII\Http\Controllers\Report; namespace FireflyIII\Http\Controllers\Report;
use Carbon\Carbon; use Carbon\Carbon;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
use FireflyIII\Models\Account; use FireflyIII\Models\Account;
@@ -112,10 +111,12 @@ class TagController extends Controller
'sum' => '0', 'sum' => '0',
]; ];
$report[$sourceAccountId]['currencies'][$currencyId]['tags'][$tag['id']]['spent'] = bcadd( $report[$sourceAccountId]['currencies'][$currencyId]['tags'][$tag['id']]['spent'] = bcadd(
$report[$sourceAccountId]['currencies'][$currencyId]['tags'][$tag['id']]['spent'], $journal['amount'] $report[$sourceAccountId]['currencies'][$currencyId]['tags'][$tag['id']]['spent'],
$journal['amount']
); );
$report[$sourceAccountId]['currencies'][$currencyId]['tags'][$tag['id']]['sum'] = bcadd( $report[$sourceAccountId]['currencies'][$currencyId]['tags'][$tag['id']]['sum'] = bcadd(
$report[$sourceAccountId]['currencies'][$currencyId]['tags'][$tag['id']]['sum'], $journal['amount'] $report[$sourceAccountId]['currencies'][$currencyId]['tags'][$tag['id']]['sum'],
$journal['amount']
); );
} }
} }
@@ -150,10 +151,12 @@ class TagController extends Controller
'sum' => '0', 'sum' => '0',
]; ];
$report[$destinationId]['currencies'][$currencyId]['tags'][$tag['id']]['earned'] = bcadd( $report[$destinationId]['currencies'][$currencyId]['tags'][$tag['id']]['earned'] = bcadd(
$report[$destinationId]['currencies'][$currencyId]['tags'][$tag['id']]['earned'], $journal['amount'] $report[$destinationId]['currencies'][$currencyId]['tags'][$tag['id']]['earned'],
$journal['amount']
); );
$report[$destinationId]['currencies'][$currencyId]['tags'][$tag['id']]['sum'] = bcadd( $report[$destinationId]['currencies'][$currencyId]['tags'][$tag['id']]['sum'] = bcadd(
$report[$destinationId]['currencies'][$currencyId]['tags'][$tag['id']]['sum'], $journal['amount'] $report[$destinationId]['currencies'][$currencyId]['tags'][$tag['id']]['sum'],
$journal['amount']
); );
} }
} }
@@ -212,10 +215,12 @@ class TagController extends Controller
'sum' => '0', 'sum' => '0',
]; ];
$report[$sourceAccountId]['currencies'][$currencyId]['spent'] = bcadd( $report[$sourceAccountId]['currencies'][$currencyId]['spent'] = bcadd(
$report[$sourceAccountId]['currencies'][$currencyId]['spent'], $journal['amount'] $report[$sourceAccountId]['currencies'][$currencyId]['spent'],
$journal['amount']
); );
$report[$sourceAccountId]['currencies'][$currencyId]['sum'] = bcadd( $report[$sourceAccountId]['currencies'][$currencyId]['sum'] = bcadd(
$report[$sourceAccountId]['currencies'][$currencyId]['sum'], $journal['amount'] $report[$sourceAccountId]['currencies'][$currencyId]['sum'],
$journal['amount']
); );
$sums[$currencyId]['spent_sum'] = bcadd($sums[$currencyId]['spent_sum'], $journal['amount']); $sums[$currencyId]['spent_sum'] = bcadd($sums[$currencyId]['spent_sum'], $journal['amount']);
$sums[$currencyId]['total_sum'] = bcadd($sums[$currencyId]['total_sum'], $journal['amount']); $sums[$currencyId]['total_sum'] = bcadd($sums[$currencyId]['total_sum'], $journal['amount']);
@@ -248,10 +253,12 @@ class TagController extends Controller
'sum' => '0', 'sum' => '0',
]; ];
$report[$destinationAccountId]['currencies'][$currencyId]['earned'] = bcadd( $report[$destinationAccountId]['currencies'][$currencyId]['earned'] = bcadd(
$report[$destinationAccountId]['currencies'][$currencyId]['earned'], $journal['amount'] $report[$destinationAccountId]['currencies'][$currencyId]['earned'],
$journal['amount']
); );
$report[$destinationAccountId]['currencies'][$currencyId]['sum'] = bcadd( $report[$destinationAccountId]['currencies'][$currencyId]['sum'] = bcadd(
$report[$destinationAccountId]['currencies'][$currencyId]['sum'], $journal['amount'] $report[$destinationAccountId]['currencies'][$currencyId]['sum'],
$journal['amount']
); );
$sums[$currencyId]['earned_sum'] = bcadd($sums[$currencyId]['earned_sum'], $journal['amount']); $sums[$currencyId]['earned_sum'] = bcadd($sums[$currencyId]['earned_sum'], $journal['amount']);
$sums[$currencyId]['total_sum'] = bcadd($sums[$currencyId]['total_sum'], $journal['amount']); $sums[$currencyId]['total_sum'] = bcadd($sums[$currencyId]['total_sum'], $journal['amount']);
@@ -418,10 +425,12 @@ class TagController extends Controller
'currency_decimal_places' => $currency['currency_decimal_places'], 'currency_decimal_places' => $currency['currency_decimal_places'],
]; ];
$report[$tagId]['currencies'][$currencyId]['spent'] = bcadd( $report[$tagId]['currencies'][$currencyId]['spent'] = bcadd(
$report[$tagId]['currencies'][$currencyId]['spent'], $journal['amount'] $report[$tagId]['currencies'][$currencyId]['spent'],
$journal['amount']
); );
$report[$tagId]['currencies'][$currencyId]['sum'] = bcadd( $report[$tagId]['currencies'][$currencyId]['sum'] = bcadd(
$report[$tagId]['currencies'][$currencyId]['sum'], $journal['amount'] $report[$tagId]['currencies'][$currencyId]['sum'],
$journal['amount']
); );
$sums[$currencyId]['spent_sum'] = bcadd($sums[$currencyId]['spent_sum'], $journal['amount']); $sums[$currencyId]['spent_sum'] = bcadd($sums[$currencyId]['spent_sum'], $journal['amount']);
@@ -457,10 +466,12 @@ class TagController extends Controller
'currency_decimal_places' => $currency['currency_decimal_places'], 'currency_decimal_places' => $currency['currency_decimal_places'],
]; ];
$report[$tagId]['currencies'][$currencyId]['earned'] = bcadd( $report[$tagId]['currencies'][$currencyId]['earned'] = bcadd(
$report[$tagId]['currencies'][$currencyId]['earned'], $journal['amount'] $report[$tagId]['currencies'][$currencyId]['earned'],
$journal['amount']
); );
$report[$tagId]['currencies'][$currencyId]['sum'] = bcadd( $report[$tagId]['currencies'][$currencyId]['sum'] = bcadd(
$report[$tagId]['currencies'][$currencyId]['sum'], $journal['amount'] $report[$tagId]['currencies'][$currencyId]['sum'],
$journal['amount']
); );
$sums[$currencyId]['earned_sum'] = bcadd($sums[$currencyId]['earned_sum'], $journal['amount']); $sums[$currencyId]['earned_sum'] = bcadd($sums[$currencyId]['earned_sum'], $journal['amount']);
@@ -571,5 +582,4 @@ class TagController extends Controller
return $result; return $result;
} }
} }

View File

@@ -24,6 +24,7 @@ declare(strict_types=1);
namespace FireflyIII\Http\Controllers; namespace FireflyIII\Http\Controllers;
use Carbon\Carbon; use Carbon\Carbon;
use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Generator\Report\ReportGeneratorFactory; use FireflyIII\Generator\Report\ReportGeneratorFactory;
use FireflyIII\Helpers\Report\ReportHelperInterface; use FireflyIII\Helpers\Report\ReportHelperInterface;
use FireflyIII\Http\Requests\ReportFormRequest; use FireflyIII\Http\Requests\ReportFormRequest;
@@ -32,8 +33,11 @@ use FireflyIII\Models\AccountType;
use FireflyIII\Repositories\Account\AccountRepositoryInterface; use FireflyIII\Repositories\Account\AccountRepositoryInterface;
use FireflyIII\Repositories\Budget\BudgetRepositoryInterface; use FireflyIII\Repositories\Budget\BudgetRepositoryInterface;
use FireflyIII\Support\Http\Controllers\RenderPartialViews; use FireflyIII\Support\Http\Controllers\RenderPartialViews;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\RedirectResponse; use Illuminate\Http\RedirectResponse;
use Illuminate\Routing\Redirector;
use Illuminate\Support\Collection; use Illuminate\Support\Collection;
use Illuminate\View\View;
use Log; use Log;
/** /**
@@ -70,39 +74,6 @@ class ReportController extends Controller
); );
} }
/**
* Show account report.
*
* @param Collection $accounts
* @param Collection $expense
* @param Carbon $start
* @param Carbon $end
*
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View|string
* @throws \FireflyIII\Exceptions\FireflyException
*/
public function doubleReport(Collection $accounts, Collection $expense, Carbon $start, Carbon $end)
{
if ($end < $start) {
[$start, $end] = [$end, $start];
}
$this->repository->cleanupBudgets();
app('view')->share(
'subTitle', trans(
'firefly.report_double',
['start' => $start->formatLocalized($this->monthAndDayFormat), 'end' => $end->formatLocalized($this->monthAndDayFormat)]
)
);
$generator = ReportGeneratorFactory::reportGenerator('Account', $start, $end);
$generator->setAccounts($accounts);
$generator->setExpense($expense);
return $generator->generate();
}
/** /**
* Show audit report. * Show audit report.
* *
@@ -110,9 +81,9 @@ class ReportController extends Controller
* @param Carbon $start * @param Carbon $start
* @param Carbon $end * @param Carbon $end
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View|string * @throws FireflyException
* @return Factory|View|string
* *
* @throws \FireflyIII\Exceptions\FireflyException
*/ */
public function auditReport(Collection $accounts, Carbon $start, Carbon $end) public function auditReport(Collection $accounts, Carbon $start, Carbon $end)
{ {
@@ -138,7 +109,6 @@ class ReportController extends Controller
return $generator->generate(); return $generator->generate();
} }
/** /**
* Show budget report. * Show budget report.
* *
@@ -147,9 +117,9 @@ class ReportController extends Controller
* @param Carbon $start * @param Carbon $start
* @param Carbon $end * @param Carbon $end
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View|string * @throws FireflyException
* @return Factory|View|string
* *
* @throws \FireflyIII\Exceptions\FireflyException
*/ */
public function budgetReport(Collection $accounts, Collection $budgets, Carbon $start, Carbon $end) public function budgetReport(Collection $accounts, Collection $budgets, Carbon $start, Carbon $end)
{ {
@@ -176,7 +146,6 @@ class ReportController extends Controller
return $generator->generate(); return $generator->generate();
} }
/** /**
* Show category report. * Show category report.
* *
@@ -185,9 +154,9 @@ class ReportController extends Controller
* @param Carbon $start * @param Carbon $start
* @param Carbon $end * @param Carbon $end
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View|string * @throws FireflyException
* @return Factory|View|string
* *
* @throws \FireflyIII\Exceptions\FireflyException
*/ */
public function categoryReport(Collection $accounts, Collection $categories, Carbon $start, Carbon $end) public function categoryReport(Collection $accounts, Collection $categories, Carbon $start, Carbon $end)
{ {
@@ -221,9 +190,9 @@ class ReportController extends Controller
* @param Carbon $start * @param Carbon $start
* @param Carbon $end * @param Carbon $end
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View|string * @throws FireflyException
* @return Factory|View|string
* *
* @throws \FireflyIII\Exceptions\FireflyException
*/ */
public function defaultReport(Collection $accounts, Carbon $start, Carbon $end) public function defaultReport(Collection $accounts, Carbon $start, Carbon $end)
{ {
@@ -250,12 +219,46 @@ class ReportController extends Controller
return $generator->generate(); return $generator->generate();
} }
/**
* Show account report.
*
* @param Collection $accounts
* @param Collection $expense
* @param Carbon $start
* @param Carbon $end
*
* @throws FireflyException
* @return Factory|View|string
*/
public function doubleReport(Collection $accounts, Collection $expense, Carbon $start, Carbon $end)
{
if ($end < $start) {
[$start, $end] = [$end, $start];
}
$this->repository->cleanupBudgets();
app('view')->share(
'subTitle',
trans(
'firefly.report_double',
['start' => $start->formatLocalized($this->monthAndDayFormat), 'end' => $end->formatLocalized($this->monthAndDayFormat)]
)
);
$generator = ReportGeneratorFactory::reportGenerator('Account', $start, $end);
$generator->setAccounts($accounts);
$generator->setExpense($expense);
return $generator->generate();
}
/** /**
* Show index. * Show index.
* *
* @param AccountRepositoryInterface $repository * @param AccountRepositoryInterface $repository
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function index(AccountRepositoryInterface $repository) public function index(AccountRepositoryInterface $repository)
{ {
@@ -327,9 +330,9 @@ class ReportController extends Controller
* *
* @param ReportFormRequest $request * @param ReportFormRequest $request
* *
* @return RedirectResponse|\Illuminate\Routing\Redirector * @throws FireflyException
* *
* @throws \FireflyIII\Exceptions\FireflyException * @return RedirectResponse|Redirector
* *
*/ */
public function postIndex(ReportFormRequest $request) public function postIndex(ReportFormRequest $request)
@@ -413,8 +416,8 @@ class ReportController extends Controller
* @param Carbon $start * @param Carbon $start
* @param Carbon $end * @param Carbon $end
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View|string * @throws FireflyException
* @throws \FireflyIII\Exceptions\FireflyException * @return Factory|View|string
*/ */
public function tagReport(Collection $accounts, Collection $tags, Carbon $start, Carbon $end) public function tagReport(Collection $accounts, Collection $tags, Carbon $start, Carbon $end)
{ {
@@ -440,6 +443,4 @@ class ReportController extends Controller
return $generator->generate(); return $generator->generate();
} }
} }

View File

@@ -23,7 +23,6 @@ declare(strict_types=1);
namespace FireflyIII\Http\Controllers\Rule; namespace FireflyIII\Http\Controllers\Rule;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
use FireflyIII\Http\Requests\RuleFormRequest; use FireflyIII\Http\Requests\RuleFormRequest;
use FireflyIII\Models\Bill; use FireflyIII\Models\Bill;
@@ -33,8 +32,11 @@ use FireflyIII\Models\TransactionJournal;
use FireflyIII\Repositories\Rule\RuleRepositoryInterface; use FireflyIII\Repositories\Rule\RuleRepositoryInterface;
use FireflyIII\Support\Http\Controllers\ModelInformation; use FireflyIII\Support\Http\Controllers\ModelInformation;
use FireflyIII\Support\Http\Controllers\RuleManagement; use FireflyIII\Support\Http\Controllers\RuleManagement;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\RedirectResponse; use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Routing\Redirector;
use Illuminate\View\View;
/** /**
* Class CreateController * Class CreateController
@@ -72,7 +74,7 @@ class CreateController extends Controller
* @param Request $request * @param Request $request
* @param RuleGroup $ruleGroup * @param RuleGroup $ruleGroup
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function create(Request $request, RuleGroup $ruleGroup = null) public function create(Request $request, RuleGroup $ruleGroup = null)
{ {
@@ -110,32 +112,18 @@ class CreateController extends Controller
session()->forget('rules.create.fromStore'); session()->forget('rules.create.fromStore');
return view( return view(
'rules.rule.create', compact('subTitleIcon', 'oldTriggers', 'preFilled', 'oldActions', 'triggerCount', 'actionCount', 'ruleGroup', 'subTitle') 'rules.rule.create',
compact('subTitleIcon', 'oldTriggers', 'preFilled', 'oldActions', 'triggerCount', 'actionCount', 'ruleGroup', 'subTitle')
); );
} }
/**
* @param Rule $rule
*
* @return RedirectResponse
*/
public function duplicate(Rule $rule): RedirectResponse
{
/** @var Rule $newRule */
$newRule = $this->ruleRepos->duplicate($rule);
session()->flash('success', trans('firefly.duplicated_rule', ['title' => $rule->title,'newTitle' => $newRule->title]));
return redirect(route('rules.index'));
}
/** /**
* Create a new rule. It will be stored under the given $ruleGroup. * Create a new rule. It will be stored under the given $ruleGroup.
* *
* @param Request $request * @param Request $request
* @param Bill $bill * @param Bill $bill
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function createFromBill(Request $request, Bill $bill) public function createFromBill(Request $request, Bill $bill)
{ {
@@ -172,7 +160,8 @@ class CreateController extends Controller
session()->forget('rules.create.fromStore'); session()->forget('rules.create.fromStore');
return view( return view(
'rules.rule.create', compact('subTitleIcon', 'oldTriggers', 'preFilled', 'oldActions', 'triggerCount', 'actionCount', 'subTitle') 'rules.rule.create',
compact('subTitleIcon', 'oldTriggers', 'preFilled', 'oldActions', 'triggerCount', 'actionCount', 'subTitle')
); );
} }
@@ -213,9 +202,24 @@ class CreateController extends Controller
session()->forget('rules.create.fromStore'); session()->forget('rules.create.fromStore');
return view( return view(
'rules.rule.create', compact('subTitleIcon', 'oldTriggers', 'preFilled', 'oldActions', 'triggerCount', 'actionCount', 'subTitle') 'rules.rule.create',
compact('subTitleIcon', 'oldTriggers', 'preFilled', 'oldActions', 'triggerCount', 'actionCount', 'subTitle')
); );
}
/**
* @param Rule $rule
*
* @return RedirectResponse
*/
public function duplicate(Rule $rule): RedirectResponse
{
/** @var Rule $newRule */
$newRule = $this->ruleRepos->duplicate($rule);
session()->flash('success', trans('firefly.duplicated_rule', ['title' => $rule->title, 'newTitle' => $newRule->title]));
return redirect(route('rules.index'));
} }
/** /**
@@ -223,7 +227,7 @@ class CreateController extends Controller
* *
* @param RuleFormRequest $request * @param RuleFormRequest $request
* *
* @return RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
* *
*/ */
public function store(RuleFormRequest $request) public function store(RuleFormRequest $request)
@@ -254,5 +258,4 @@ class CreateController extends Controller
return $redirect; return $redirect;
} }
} }

View File

@@ -27,7 +27,9 @@ namespace FireflyIII\Http\Controllers\Rule;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
use FireflyIII\Models\Rule; use FireflyIII\Models\Rule;
use FireflyIII\Repositories\Rule\RuleRepositoryInterface; use FireflyIII\Repositories\Rule\RuleRepositoryInterface;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\RedirectResponse; use Illuminate\Http\RedirectResponse;
use Illuminate\View\View;
/** /**
* Class DeleteController * Class DeleteController
@@ -39,6 +41,7 @@ class DeleteController extends Controller
/** /**
* RuleController constructor. * RuleController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -62,7 +65,7 @@ class DeleteController extends Controller
* *
* @param Rule $rule * @param Rule $rule
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function delete(Rule $rule) public function delete(Rule $rule)
{ {

View File

@@ -30,8 +30,11 @@ use FireflyIII\Models\Rule;
use FireflyIII\Repositories\Rule\RuleRepositoryInterface; use FireflyIII\Repositories\Rule\RuleRepositoryInterface;
use FireflyIII\Support\Http\Controllers\RenderPartialViews; use FireflyIII\Support\Http\Controllers\RenderPartialViews;
use FireflyIII\Support\Http\Controllers\RuleManagement; use FireflyIII\Support\Http\Controllers\RuleManagement;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\RedirectResponse; use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Routing\Redirector;
use Illuminate\View\View;
/** /**
* Class EditController * Class EditController
@@ -45,6 +48,7 @@ class EditController extends Controller
/** /**
* RuleController constructor. * RuleController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -69,7 +73,7 @@ class EditController extends Controller
* @param Request $request * @param Request $request
* @param Rule $rule * @param Rule $rule
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function edit(Request $request, Rule $rule) public function edit(Request $request, Rule $rule)
{ {
@@ -122,7 +126,7 @@ class EditController extends Controller
* @param RuleFormRequest $request * @param RuleFormRequest $request
* @param Rule $rule * @param Rule $rule
* *
* @return RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function update(RuleFormRequest $request, Rule $rule) public function update(RuleFormRequest $request, Rule $rule)
{ {

View File

@@ -28,9 +28,12 @@ use FireflyIII\Repositories\Rule\RuleRepositoryInterface;
use FireflyIII\Repositories\RuleGroup\RuleGroupRepositoryInterface; use FireflyIII\Repositories\RuleGroup\RuleGroupRepositoryInterface;
use FireflyIII\Support\Http\Controllers\RuleManagement; use FireflyIII\Support\Http\Controllers\RuleManagement;
use FireflyIII\User; use FireflyIII\User;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\JsonResponse; use Illuminate\Http\JsonResponse;
use Illuminate\Http\RedirectResponse; use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Routing\Redirector;
use Illuminate\View\View;
/** /**
* Class IndexController * Class IndexController
@@ -45,6 +48,7 @@ class IndexController extends Controller
/** /**
* RuleController constructor. * RuleController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -67,7 +71,7 @@ class IndexController extends Controller
* *
* @param Rule $rule * @param Rule $rule
* *
* @return RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function down(Rule $rule) public function down(Rule $rule)
{ {
@@ -79,7 +83,7 @@ class IndexController extends Controller
/** /**
* Index of all rules and groups. * Index of all rules and groups.
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function index() public function index()
{ {
@@ -134,7 +138,7 @@ class IndexController extends Controller
* *
* @param Rule $rule * @param Rule $rule
* *
* @return RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function up(Rule $rule) public function up(Rule $rule)
{ {

View File

@@ -38,9 +38,11 @@ use FireflyIII\Support\Http\Controllers\RuleManagement;
use FireflyIII\TransactionRules\Engine\RuleEngine; use FireflyIII\TransactionRules\Engine\RuleEngine;
use FireflyIII\TransactionRules\TransactionMatcher; use FireflyIII\TransactionRules\TransactionMatcher;
use FireflyIII\User; use FireflyIII\User;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\JsonResponse; use Illuminate\Http\JsonResponse;
use Illuminate\Http\RedirectResponse; use Illuminate\Http\RedirectResponse;
use Illuminate\Support\Collection; use Illuminate\Support\Collection;
use Illuminate\View\View;
use Log; use Log;
use Throwable; use Throwable;
@@ -122,7 +124,7 @@ class SelectController extends Controller
* *
* @param Rule $rule * @param Rule $rule
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function selectTransactions(Rule $rule) public function selectTransactions(Rule $rule)
{ {

View File

@@ -27,6 +27,10 @@ namespace FireflyIII\Http\Controllers\RuleGroup;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
use FireflyIII\Http\Requests\RuleGroupFormRequest; use FireflyIII\Http\Requests\RuleGroupFormRequest;
use FireflyIII\Repositories\RuleGroup\RuleGroupRepositoryInterface; use FireflyIII\Repositories\RuleGroup\RuleGroupRepositoryInterface;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\RedirectResponse;
use Illuminate\Routing\Redirector;
use Illuminate\View\View;
/** /**
* Class CreateController * Class CreateController
@@ -38,6 +42,7 @@ class CreateController extends Controller
/** /**
* CreateController constructor. * CreateController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -59,7 +64,7 @@ class CreateController extends Controller
/** /**
* Create a new rule group. * Create a new rule group.
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function create() public function create()
{ {
@@ -80,7 +85,7 @@ class CreateController extends Controller
* *
* @param RuleGroupFormRequest $request * @param RuleGroupFormRequest $request
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function store(RuleGroupFormRequest $request) public function store(RuleGroupFormRequest $request)
{ {

View File

@@ -27,7 +27,11 @@ namespace FireflyIII\Http\Controllers\RuleGroup;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
use FireflyIII\Models\RuleGroup; use FireflyIII\Models\RuleGroup;
use FireflyIII\Repositories\RuleGroup\RuleGroupRepositoryInterface; use FireflyIII\Repositories\RuleGroup\RuleGroupRepositoryInterface;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Routing\Redirector;
use Illuminate\View\View;
/** /**
* Class DeleteController * Class DeleteController
@@ -39,6 +43,7 @@ class DeleteController extends Controller
/** /**
* DeleteController constructor. * DeleteController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -63,7 +68,7 @@ class DeleteController extends Controller
* *
* @param RuleGroup $ruleGroup * @param RuleGroup $ruleGroup
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function delete(RuleGroup $ruleGroup) public function delete(RuleGroup $ruleGroup)
{ {
@@ -81,7 +86,7 @@ class DeleteController extends Controller
* @param Request $request * @param Request $request
* @param RuleGroup $ruleGroup * @param RuleGroup $ruleGroup
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function destroy(Request $request, RuleGroup $ruleGroup) public function destroy(Request $request, RuleGroup $ruleGroup)
{ {

View File

@@ -27,7 +27,11 @@ use FireflyIII\Http\Controllers\Controller;
use FireflyIII\Http\Requests\RuleGroupFormRequest; use FireflyIII\Http\Requests\RuleGroupFormRequest;
use FireflyIII\Models\RuleGroup; use FireflyIII\Models\RuleGroup;
use FireflyIII\Repositories\RuleGroup\RuleGroupRepositoryInterface; use FireflyIII\Repositories\RuleGroup\RuleGroupRepositoryInterface;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Routing\Redirector;
use Illuminate\View\View;
/** /**
* Class EditController * Class EditController
@@ -39,6 +43,7 @@ class EditController extends Controller
/** /**
* EditController constructor. * EditController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -62,7 +67,7 @@ class EditController extends Controller
* *
* @param RuleGroup $ruleGroup * @param RuleGroup $ruleGroup
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function down(RuleGroup $ruleGroup) public function down(RuleGroup $ruleGroup)
{ {
@@ -78,7 +83,7 @@ class EditController extends Controller
* @param Request $request * @param Request $request
* @param RuleGroup $ruleGroup * @param RuleGroup $ruleGroup
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function edit(Request $request, RuleGroup $ruleGroup) public function edit(Request $request, RuleGroup $ruleGroup)
{ {
@@ -105,7 +110,7 @@ class EditController extends Controller
* *
* @param RuleGroup $ruleGroup * @param RuleGroup $ruleGroup
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
* *
*/ */
public function up(RuleGroup $ruleGroup) public function up(RuleGroup $ruleGroup)
@@ -121,7 +126,7 @@ class EditController extends Controller
* @param RuleGroupFormRequest $request * @param RuleGroupFormRequest $request
* @param RuleGroup $ruleGroup * @param RuleGroup $ruleGroup
* *
* @return $this|\Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return $this|RedirectResponse|Redirector
*/ */
public function update(RuleGroupFormRequest $request, RuleGroup $ruleGroup) public function update(RuleGroupFormRequest $request, RuleGroup $ruleGroup)
{ {

View File

@@ -25,6 +25,7 @@ namespace FireflyIII\Http\Controllers\RuleGroup;
use Carbon\Carbon; use Carbon\Carbon;
use Exception;
use FireflyIII\Helpers\Collector\GroupCollectorInterface; use FireflyIII\Helpers\Collector\GroupCollectorInterface;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
use FireflyIII\Http\Requests\SelectTransactionsRequest; use FireflyIII\Http\Requests\SelectTransactionsRequest;
@@ -33,7 +34,9 @@ use FireflyIII\Models\RuleGroup;
use FireflyIII\Repositories\Account\AccountRepositoryInterface; use FireflyIII\Repositories\Account\AccountRepositoryInterface;
use FireflyIII\Repositories\RuleGroup\RuleGroupRepositoryInterface; use FireflyIII\Repositories\RuleGroup\RuleGroupRepositoryInterface;
use FireflyIII\TransactionRules\Engine\RuleEngine; use FireflyIII\TransactionRules\Engine\RuleEngine;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\RedirectResponse; use Illuminate\Http\RedirectResponse;
use Illuminate\View\View;
use Log; use Log;
/** /**
@@ -49,6 +52,7 @@ class ExecutionController extends Controller
/** /**
* ExecutionController constructor. * ExecutionController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -75,8 +79,8 @@ class ExecutionController extends Controller
* @param SelectTransactionsRequest $request * @param SelectTransactionsRequest $request
* @param RuleGroup $ruleGroup * @param RuleGroup $ruleGroup
* *
* @throws Exception
* @return RedirectResponse * @return RedirectResponse
* @throws \Exception
*/ */
public function execute(SelectTransactionsRequest $request, RuleGroup $ruleGroup): RedirectResponse public function execute(SelectTransactionsRequest $request, RuleGroup $ruleGroup): RedirectResponse
{ {
@@ -123,7 +127,7 @@ class ExecutionController extends Controller
* *
* @param RuleGroup $ruleGroup * @param RuleGroup $ruleGroup
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function selectTransactions(RuleGroup $ruleGroup) public function selectTransactions(RuleGroup $ruleGroup)
{ {

View File

@@ -23,8 +23,10 @@ declare(strict_types=1);
namespace FireflyIII\Http\Controllers; namespace FireflyIII\Http\Controllers;
use FireflyIII\Support\Search\SearchInterface; use FireflyIII\Support\Search\SearchInterface;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\JsonResponse; use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\View\View;
use Log; use Log;
use Throwable; use Throwable;
@@ -56,7 +58,7 @@ class SearchController extends Controller
* @param Request $request * @param Request $request
* @param SearchInterface $searcher * @param SearchInterface $searcher
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function index(Request $request, SearchInterface $searcher) public function index(Request $request, SearchInterface $searcher)
{ {
@@ -77,7 +79,7 @@ class SearchController extends Controller
* @param Request $request * @param Request $request
* @param SearchInterface $searcher * @param SearchInterface $searcher
* *
* @return \Illuminate\Http\JsonResponse * @return JsonResponse
*/ */
public function search(Request $request, SearchInterface $searcher): JsonResponse public function search(Request $request, SearchInterface $searcher): JsonResponse
{ {

View File

@@ -31,7 +31,9 @@ use FireflyIII\Http\Controllers\Controller;
use FireflyIII\Support\Facades\Preferences; use FireflyIII\Support\Facades\Preferences;
use FireflyIII\Support\Http\Controllers\GetConfigurationData; use FireflyIII\Support\Http\Controllers\GetConfigurationData;
use Illuminate\Http\JsonResponse; use Illuminate\Http\JsonResponse;
use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Routing\Redirector;
use Illuminate\Support\Arr; use Illuminate\Support\Arr;
use Laravel\Passport\Passport; use Laravel\Passport\Passport;
use Log; use Log;
@@ -113,7 +115,7 @@ class InstallController extends Controller
/** /**
* Show index. * Show index.
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function index() public function index()
{ {

View File

@@ -29,8 +29,10 @@ use FireflyIII\Http\Requests\TagFormRequest;
use FireflyIII\Models\Tag; use FireflyIII\Models\Tag;
use FireflyIII\Repositories\Tag\TagRepositoryInterface; use FireflyIII\Repositories\Tag\TagRepositoryInterface;
use FireflyIII\Support\Http\Controllers\PeriodOverview; use FireflyIII\Support\Http\Controllers\PeriodOverview;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\RedirectResponse; use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\View\View;
use Log; use Log;
/** /**
@@ -62,35 +64,10 @@ class TagController extends Controller
); );
} }
/**
*
*/
public function massDestroy(Request $request)
{
$tags = $request->get('tags');
if (null === $tags || !is_array($tags)) {
session()->flash('info', (string)trans('firefly.select_tags_to_delete'));
return redirect(route('tags.index'));
}
$count = 0;
foreach ($tags as $tagId) {
$tagId = (int)$tagId;
$tag = $this->repository->findNull($tagId);
if (null !== $tag) {
$this->repository->destroy($tag);
$count++;
}
}
session()->flash('success', (string)trans('firefly.deleted_x_tags', ['count' => $count]));
return redirect(route('tags.index'));
}
/** /**
* Create a new tag. * Create a new tag.
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function create(Request $request) public function create(Request $request)
{ {
@@ -122,7 +99,7 @@ class TagController extends Controller
* *
* @param Tag $tag * @param Tag $tag
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function delete(Tag $tag) public function delete(Tag $tag)
{ {
@@ -157,7 +134,7 @@ class TagController extends Controller
* *
* @param Tag $tag * @param Tag $tag
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function edit(Tag $tag) public function edit(Tag $tag)
{ {
@@ -192,7 +169,7 @@ class TagController extends Controller
* *
* @param TagRepositoryInterface $repository * @param TagRepositoryInterface $repository
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function index(TagRepositoryInterface $repository) public function index(TagRepositoryInterface $repository)
{ {
@@ -214,6 +191,31 @@ class TagController extends Controller
return view('tags.index', compact('tags', 'count')); return view('tags.index', compact('tags', 'count'));
} }
/**
*
*/
public function massDestroy(Request $request)
{
$tags = $request->get('tags');
if (null === $tags || !is_array($tags)) {
session()->flash('info', (string) trans('firefly.select_tags_to_delete'));
return redirect(route('tags.index'));
}
$count = 0;
foreach ($tags as $tagId) {
$tagId = (int) $tagId;
$tag = $this->repository->findNull($tagId);
if (null !== $tag) {
$this->repository->destroy($tag);
$count++;
}
}
session()->flash('success', (string) trans('firefly.deleted_x_tags', ['count' => $count]));
return redirect(route('tags.index'));
}
/** /**
* Show a single tag. * Show a single tag.
* *
@@ -222,7 +224,7 @@ class TagController extends Controller
* @param Carbon|null $start * @param Carbon|null $start
* @param Carbon|null $end * @param Carbon|null $end
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
* *
*/ */
public function show(Request $request, Tag $tag, Carbon $start = null, Carbon $end = null) public function show(Request $request, Tag $tag, Carbon $start = null, Carbon $end = null)
@@ -235,7 +237,8 @@ class TagController extends Controller
$end = $end ?? session('end'); $end = $end ?? session('end');
$location = $this->repository->getLocation($tag); $location = $this->repository->getLocation($tag);
$subTitle = trans( $subTitle = trans(
'firefly.journals_in_period_for_tag', ['tag' => $tag->tag, 'start' => $start->formatLocalized($this->monthAndDayFormat), 'firefly.journals_in_period_for_tag',
['tag' => $tag->tag, 'start' => $start->formatLocalized($this->monthAndDayFormat),
'end' => $end->formatLocalized($this->monthAndDayFormat),] 'end' => $end->formatLocalized($this->monthAndDayFormat),]
); );
@@ -263,7 +266,7 @@ class TagController extends Controller
* @param Request $request * @param Request $request
* @param Tag $tag * @param Tag $tag
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
* *
*/ */
public function showAll(Request $request, Tag $tag) public function showAll(Request $request, Tag $tag)
@@ -317,7 +320,6 @@ class TagController extends Controller
} }
return $redirect; return $redirect;
} }
/** /**
@@ -348,6 +350,4 @@ class TagController extends Controller
// redirect to previous URL. // redirect to previous URL.
return $redirect; return $redirect;
} }
} }

View File

@@ -29,7 +29,9 @@ use FireflyIII\Http\Requests\BulkEditJournalRequest;
use FireflyIII\Models\TransactionJournal; use FireflyIII\Models\TransactionJournal;
use FireflyIII\Repositories\Budget\BudgetRepositoryInterface; use FireflyIII\Repositories\Budget\BudgetRepositoryInterface;
use FireflyIII\Repositories\Journal\JournalRepositoryInterface; use FireflyIII\Repositories\Journal\JournalRepositoryInterface;
use Illuminate\Contracts\View\Factory;
use Illuminate\Support\Collection; use Illuminate\Support\Collection;
use Illuminate\View\View;
use Log; use Log;
/** /**
@@ -43,6 +45,7 @@ class BulkController extends Controller
/** /**
* BulkController constructor. * BulkController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -67,7 +70,7 @@ class BulkController extends Controller
* *
* @param Collection $journals * @param Collection $journals
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function edit(array $journals) public function edit(array $journals)
{ {
@@ -124,17 +127,17 @@ class BulkController extends Controller
/** /**
* @param TransactionJournal $journal * @param TransactionJournal $journal
* @param bool $ignoreUpdate * @param bool $ignoreUpdate
* @param array $tags * @param int $budgetId
*
* @return bool * @return bool
*/ */
private function updateJournalTags(TransactionJournal $journal, bool $ignoreUpdate, array $tags): bool private function updateJournalBudget(TransactionJournal $journal, bool $ignoreUpdate, int $budgetId): bool
{ {
if (true === $ignoreUpdate) { if (true === $ignoreUpdate) {
return false; return false;
} }
Log::debug(sprintf('Set tags to %s', implode(',', $tags))); Log::debug(sprintf('Set budget to %d', $budgetId));
$this->repository->updateTags($journal, $tags); $this->repository->updateBudget($journal, $budgetId);
return true; return true;
} }
@@ -143,6 +146,7 @@ class BulkController extends Controller
* @param TransactionJournal $journal * @param TransactionJournal $journal
* @param bool $ignoreUpdate * @param bool $ignoreUpdate
* @param string $category * @param string $category
*
* @return bool * @return bool
*/ */
private function updateJournalCategory(TransactionJournal $journal, bool $ignoreUpdate, string $category): bool private function updateJournalCategory(TransactionJournal $journal, bool $ignoreUpdate, string $category): bool
@@ -159,16 +163,18 @@ class BulkController extends Controller
/** /**
* @param TransactionJournal $journal * @param TransactionJournal $journal
* @param bool $ignoreUpdate * @param bool $ignoreUpdate
* @param int $budgetId * @param array $tags
*
* @return bool * @return bool
*/ */
private function updateJournalBudget(TransactionJournal $journal, bool $ignoreUpdate, int $budgetId): bool private function updateJournalTags(TransactionJournal $journal, bool $ignoreUpdate, array $tags): bool
{ {
if (true === $ignoreUpdate) { if (true === $ignoreUpdate) {
return false; return false;
} }
Log::debug(sprintf('Set budget to %d', $budgetId)); Log::debug(sprintf('Set tags to %s', implode(',', $tags)));
$this->repository->updateBudget($journal, $budgetId); $this->repository->updateTags($journal, $tags);
return true; return true;
} }

View File

@@ -23,6 +23,7 @@ declare(strict_types=1);
namespace FireflyIII\Http\Controllers\Transaction; namespace FireflyIII\Http\Controllers\Transaction;
use Carbon\Carbon; use Carbon\Carbon;
use Exception;
use FireflyIII\Events\UpdatedTransactionGroup; use FireflyIII\Events\UpdatedTransactionGroup;
use FireflyIII\Exceptions\FireflyException; use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
@@ -38,11 +39,12 @@ use FireflyIII\Support\Http\Controllers\ModelInformation;
use FireflyIII\Support\Http\Controllers\UserNavigation; use FireflyIII\Support\Http\Controllers\UserNavigation;
use FireflyIII\Transformers\TransactionGroupTransformer; use FireflyIII\Transformers\TransactionGroupTransformer;
use FireflyIII\Validation\AccountValidator; use FireflyIII\Validation\AccountValidator;
use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Routing\Redirector;
use Log; use Log;
use View; use View;
/** /**
* Class ConvertController. * Class ConvertController.
* *
@@ -57,6 +59,7 @@ class ConvertController extends Controller
/** /**
* ConvertController constructor. * ConvertController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -83,8 +86,8 @@ class ConvertController extends Controller
* @param TransactionType $destinationType * @param TransactionType $destinationType
* @param TransactionGroup $group * @param TransactionGroup $group
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector|View * @throws Exception
* @throws \Exception * @return RedirectResponse|Redirector|View
*/ */
public function index(TransactionType $destinationType, TransactionGroup $group) public function index(TransactionType $destinationType, TransactionGroup $group)
{ {
@@ -123,11 +126,20 @@ class ConvertController extends Controller
} }
return view( return view(
'transactions.convert', compact( 'transactions.convert',
'sourceType', 'destinationType', compact(
'group', 'groupTitle', 'groupArray', 'assets', 'validDepositSources', 'liabilities', 'sourceType',
'validWithdrawalDests', 'preFilled', 'destinationType',
'subTitle', 'subTitleIcon' 'group',
'groupTitle',
'groupArray',
'assets',
'validDepositSources',
'liabilities',
'validWithdrawalDests',
'preFilled',
'subTitle',
'subTitleIcon'
) )
); );
} }
@@ -139,9 +151,9 @@ class ConvertController extends Controller
* @param TransactionType $destinationType * @param TransactionType $destinationType
* @param TransactionGroup $group * @param TransactionGroup $group
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector
*
* @throws FireflyException * @throws FireflyException
* @return RedirectResponse|Redirector
*
*/ */
public function postIndex(Request $request, TransactionType $destinationType, TransactionGroup $group) public function postIndex(Request $request, TransactionType $destinationType, TransactionGroup $group)
{ {
@@ -172,8 +184,67 @@ class ConvertController extends Controller
} }
/** /**
* @param TransactionJournal $journal
* @param TransactionType $transactionType
* @param array $data
*
* @throws FireflyException
* @return TransactionJournal
*/
private function convertJournal(TransactionJournal $journal, TransactionType $transactionType, array $data): TransactionJournal
{
/** @var AccountValidator $validator */
$validator = app(AccountValidator::class);
$validator->setUser(auth()->user());
$validator->setTransactionType($transactionType->type);
$sourceId = $data['source_id'][$journal->id] ?? null;
$sourceName = $data['source_name'][$journal->id] ?? null;
$destinationId = $data['destination_id'][$journal->id] ?? null;
$destinationName = $data['destination_name'][$journal->id] ?? null;
// double check its not an empty string.
$sourceId = '' === $sourceId || null === $sourceId ? null : (int) $sourceId;
$sourceName = '' === $sourceName ? null : $sourceName;
$destinationId = '' === $destinationId || null === $destinationId ? null : (int) $destinationId;
$destinationName = '' === $destinationName ? null : $destinationName;
$validSource = $validator->validateSource($sourceId, $sourceName);
$validDestination = $validator->validateDestination($destinationId, $destinationName);
if (false === $validSource) {
throw new FireflyException(sprintf(trans('firefly.convert_invalid_source'), $journal->id));
}
if (false === $validDestination) {
throw new FireflyException(sprintf(trans('firefly.convert_invalid_destination'), $journal->id));
}
$update = [
'source_id' => $sourceId,
'source_name' => $sourceName,
'destination_id' => $destinationId,
'destination_name' => $destinationName,
'type' => $transactionType->type,
];
/** @var JournalUpdateService $service */
$service = app(JournalUpdateService::class);
$service->setTransactionJournal($journal);
$service->setData($update);
$service->update();
$journal->refresh();
return $journal;
}
/**
* @param TransactionGroup $group
*/
private function correctTransfer(TransactionGroup $group): void
{
}
/**
* @throws Exception
* @return array * @return array
* @throws \Exception
*/ */
private function getAssetAccounts(): array private function getAssetAccounts(): array
{ {
@@ -201,8 +272,8 @@ class ConvertController extends Controller
} }
/** /**
* @throws Exception
* @return array * @return array
* @throws \Exception
*/ */
private function getLiabilities(): array private function getLiabilities(): array
{ {
@@ -308,62 +379,4 @@ class ConvertController extends Controller
return $grouped; return $grouped;
} }
/**
* @param TransactionJournal $journal
* @param TransactionType $transactionType
* @param array $data
* @return TransactionJournal
* @throws FireflyException
*/
private function convertJournal(TransactionJournal $journal, TransactionType $transactionType, array $data): TransactionJournal
{
/** @var AccountValidator $validator */
$validator = app(AccountValidator::class);
$validator->setUser(auth()->user());
$validator->setTransactionType($transactionType->type);
$sourceId = $data['source_id'][$journal->id] ?? null;
$sourceName = $data['source_name'][$journal->id] ?? null;
$destinationId = $data['destination_id'][$journal->id] ?? null;
$destinationName = $data['destination_name'][$journal->id] ?? null;
// double check its not an empty string.
$sourceId = '' === $sourceId || null === $sourceId ? null : (int)$sourceId;
$sourceName = '' === $sourceName ? null : $sourceName;
$destinationId = '' === $destinationId || null === $destinationId ? null : (int)$destinationId;
$destinationName = '' === $destinationName ? null : $destinationName;
$validSource = $validator->validateSource($sourceId, $sourceName);
$validDestination = $validator->validateDestination($destinationId, $destinationName);
if (false === $validSource) {
throw new FireflyException(sprintf(trans('firefly.convert_invalid_source'), $journal->id));
}
if (false === $validDestination) {
throw new FireflyException(sprintf(trans('firefly.convert_invalid_destination'), $journal->id));
}
$update = [
'source_id' => $sourceId,
'source_name' => $sourceName,
'destination_id' => $destinationId,
'destination_name' => $destinationName,
'type' => $transactionType->type,
];
/** @var JournalUpdateService $service */
$service = app(JournalUpdateService::class);
$service->setTransactionJournal($journal);
$service->setData($update);
$service->update();
$journal->refresh();
return $journal;
}
/**
* @param TransactionGroup $group
*/
private function correctTransfer(TransactionGroup $group): void
{
}
} }

View File

@@ -23,11 +23,14 @@ declare(strict_types=1);
namespace FireflyIII\Http\Controllers\Transaction; namespace FireflyIII\Http\Controllers\Transaction;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
use FireflyIII\Models\TransactionGroup; use FireflyIII\Models\TransactionGroup;
use FireflyIII\Repositories\Account\AccountRepositoryInterface; use FireflyIII\Repositories\Account\AccountRepositoryInterface;
use FireflyIII\Services\Internal\Update\GroupCloneService; use FireflyIII\Services\Internal\Update\GroupCloneService;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\RedirectResponse;
use Illuminate\Routing\Redirector;
use Illuminate\View\View;
/** /**
* Class CreateController * Class CreateController
@@ -49,7 +52,6 @@ class CreateController extends Controller
app('view')->share('uploadSize', $uploadSize); app('view')->share('uploadSize', $uploadSize);
$this->middleware( $this->middleware(
static function ($request, $next) { static function ($request, $next) {
app('view')->share('title', (string) trans('firefly.transactions')); app('view')->share('title', (string) trans('firefly.transactions'));
app('view')->share('mainTitleIcon', 'fa-repeat'); app('view')->share('mainTitleIcon', 'fa-repeat');
@@ -61,7 +63,7 @@ class CreateController extends Controller
/** /**
* @param TransactionGroup $group * @param TransactionGroup $group
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function cloneGroup(TransactionGroup $group) public function cloneGroup(TransactionGroup $group)
{ {
@@ -84,7 +86,7 @@ class CreateController extends Controller
* *
* @param string|null objectType * @param string|null objectType
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @return Factory|View
*/ */
public function create(?string $objectType) public function create(?string $objectType)
{ {
@@ -112,10 +114,20 @@ class CreateController extends Controller
return view( return view(
'transactions.create', compact( 'transactions.create',
'subTitleIcon', 'cash', 'objectType', 'subTitle', 'defaultCurrency', 'previousUri', 'optionalFields', 'preFilled', compact(
'subTitleIcon',
'cash',
'objectType',
'subTitle',
'defaultCurrency',
'previousUri',
'optionalFields',
'preFilled',
'allowedOpposingTypes', 'allowedOpposingTypes',
'accountToTypes','sourceId','destinationId' 'accountToTypes',
'sourceId',
'destinationId'
) )
); );
} }

View File

@@ -26,10 +26,10 @@ namespace FireflyIII\Http\Controllers\Transaction;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
use FireflyIII\Models\TransactionGroup; use FireflyIII\Models\TransactionGroup;
use FireflyIII\Repositories\Journal\JournalRepositoryInterface;
use FireflyIII\Repositories\TransactionGroup\TransactionGroupRepositoryInterface; use FireflyIII\Repositories\TransactionGroup\TransactionGroupRepositoryInterface;
use FireflyIII\Support\Http\Controllers\UserNavigation; use FireflyIII\Support\Http\Controllers\UserNavigation;
use Illuminate\Http\RedirectResponse; use Illuminate\Http\RedirectResponse;
use Illuminate\Routing\Redirector;
use Log; use Log;
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException; use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
use URL; use URL;
@@ -45,6 +45,7 @@ class DeleteController extends Controller
/** /**
* IndexController constructor. * IndexController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -69,7 +70,7 @@ class DeleteController extends Controller
* *
* @param TransactionGroup $group * @param TransactionGroup $group
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector|View * @return RedirectResponse|Redirector|View
*/ */
public function delete(TransactionGroup $group) public function delete(TransactionGroup $group)
{ {

View File

@@ -28,6 +28,8 @@ use FireflyIII\Http\Controllers\Controller;
use FireflyIII\Models\TransactionGroup; use FireflyIII\Models\TransactionGroup;
use FireflyIII\Repositories\Account\AccountRepositoryInterface; use FireflyIII\Repositories\Account\AccountRepositoryInterface;
use FireflyIII\Support\Http\Controllers\UserNavigation; use FireflyIII\Support\Http\Controllers\UserNavigation;
use Illuminate\Contracts\View\Factory;
use Illuminate\View\View;
/** /**
* Class EditController * Class EditController
@@ -35,8 +37,10 @@ use FireflyIII\Support\Http\Controllers\UserNavigation;
class EditController extends Controller class EditController extends Controller
{ {
use UserNavigation; use UserNavigation;
/** /**
* EditController constructor. * EditController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -65,7 +69,8 @@ class EditController extends Controller
/** /**
* @param TransactionGroup $transactionGroup * @param TransactionGroup $transactionGroup
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View *
* @return Factory|View
*/ */
public function edit(TransactionGroup $transactionGroup) public function edit(TransactionGroup $transactionGroup)
{ {

View File

@@ -25,11 +25,14 @@ namespace FireflyIII\Http\Controllers\Transaction;
use Carbon\Carbon; use Carbon\Carbon;
use Exception;
use FireflyIII\Helpers\Collector\GroupCollectorInterface; use FireflyIII\Helpers\Collector\GroupCollectorInterface;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
use FireflyIII\Repositories\Journal\JournalRepositoryInterface; use FireflyIII\Repositories\Journal\JournalRepositoryInterface;
use FireflyIII\Support\Http\Controllers\PeriodOverview; use FireflyIII\Support\Http\Controllers\PeriodOverview;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\View\View;
/** /**
* Class IndexController * Class IndexController
@@ -43,6 +46,7 @@ class IndexController extends Controller
/** /**
* IndexController constructor. * IndexController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -70,8 +74,8 @@ class IndexController extends Controller
* @param Carbon|null $start * @param Carbon|null $start
* @param Carbon|null $end * @param Carbon|null $end
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View * @throws Exception
* @throws \Exception * @return Factory|View
*/ */
public function index(Request $request, string $objectType, Carbon $start = null, Carbon $end = null) public function index(Request $request, string $objectType, Carbon $start = null, Carbon $end = null)
{ {
@@ -120,8 +124,9 @@ class IndexController extends Controller
* *
* @param Request $request * @param Request $request
* @param string $objectType * @param string $objectType
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View *
* @throws \Exception * @throws Exception
* @return Factory|View
*/ */
public function indexAll(Request $request, string $objectType) public function indexAll(Request $request, string $objectType)
{ {

View File

@@ -29,6 +29,8 @@ use FireflyIII\Models\TransactionJournalLink;
use FireflyIII\Repositories\Journal\JournalRepositoryInterface; use FireflyIII\Repositories\Journal\JournalRepositoryInterface;
use FireflyIII\Repositories\LinkType\LinkTypeRepositoryInterface; use FireflyIII\Repositories\LinkType\LinkTypeRepositoryInterface;
use Illuminate\Contracts\View\Factory; use Illuminate\Contracts\View\Factory;
use Illuminate\Http\RedirectResponse;
use Illuminate\Routing\Redirector;
use Illuminate\View\View; use Illuminate\View\View;
use Log; use Log;
use URL; use URL;
@@ -45,6 +47,7 @@ class LinkController extends Controller
/** /**
* LinkController constructor. * LinkController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -64,17 +67,6 @@ class LinkController extends Controller
); );
} }
/**
* @param TransactionJournal $journal
* @return Factory|View
*/
public function modal(TransactionJournal $journal)
{
$linkTypes = $this->repository->get();
return view('transactions.links.modal', compact('journal', 'linkTypes'));
}
/** /**
* Delete a link. * Delete a link.
* *
@@ -96,7 +88,7 @@ class LinkController extends Controller
* *
* @param TransactionJournalLink $link * @param TransactionJournalLink $link
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function destroy(TransactionJournalLink $link) public function destroy(TransactionJournalLink $link)
{ {
@@ -108,13 +100,25 @@ class LinkController extends Controller
return redirect((string) session('journal_links.delete.uri')); return redirect((string) session('journal_links.delete.uri'));
} }
/**
* @param TransactionJournal $journal
*
* @return Factory|View
*/
public function modal(TransactionJournal $journal)
{
$linkTypes = $this->repository->get();
return view('transactions.links.modal', compact('journal', 'linkTypes'));
}
/** /**
* Store a new link. * Store a new link.
* *
* @param JournalLinkRequest $request * @param JournalLinkRequest $request
* @param TransactionJournal $journal * @param TransactionJournal $journal
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function store(JournalLinkRequest $request, TransactionJournal $journal) public function store(JournalLinkRequest $request, TransactionJournal $journal)
{ {
@@ -153,7 +157,7 @@ class LinkController extends Controller
* *
* @param TransactionJournalLink $link * @param TransactionJournalLink $link
* *
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @return RedirectResponse|Redirector
*/ */
public function switchLink(TransactionJournalLink $link) public function switchLink(TransactionJournalLink $link)
{ {

View File

@@ -35,6 +35,8 @@ use FireflyIII\Repositories\Account\AccountRepositoryInterface;
use FireflyIII\Repositories\Budget\BudgetRepositoryInterface; use FireflyIII\Repositories\Budget\BudgetRepositoryInterface;
use FireflyIII\Repositories\Journal\JournalRepositoryInterface; use FireflyIII\Repositories\Journal\JournalRepositoryInterface;
use FireflyIII\Services\Internal\Update\JournalUpdateService; use FireflyIII\Services\Internal\Update\JournalUpdateService;
use Illuminate\Http\RedirectResponse;
use Illuminate\Routing\Redirector;
use Illuminate\View\View as IlluminateView; use Illuminate\View\View as IlluminateView;
use InvalidArgumentException; use InvalidArgumentException;
use Log; use Log;
@@ -50,6 +52,7 @@ class MassController extends Controller
/** /**
* MassController constructor. * MassController constructor.
*
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */
public function __construct() public function __construct()
@@ -61,6 +64,7 @@ class MassController extends Controller
app('view')->share('title', (string) trans('firefly.transactions')); app('view')->share('title', (string) trans('firefly.transactions'));
app('view')->share('mainTitleIcon', 'fa-repeat'); app('view')->share('mainTitleIcon', 'fa-repeat');
$this->repository = app(JournalRepositoryInterface::class); $this->repository = app(JournalRepositoryInterface::class);
return $next($request); return $next($request);
} }
); );
@@ -158,8 +162,9 @@ class MassController extends Controller
* Mass update of journals. * Mass update of journals.
* *
* @param MassEditJournalRequest $request * @param MassEditJournalRequest $request
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector *
* @throws FireflyException * @throws FireflyException
* @return RedirectResponse|Redirector
*/ */
public function update(MassEditJournalRequest $request) public function update(MassEditJournalRequest $request)
{ {
@@ -189,9 +194,80 @@ class MassController extends Controller
return redirect($this->getPreviousUri('transactions.mass-edit.uri')); return redirect($this->getPreviousUri('transactions.mass-edit.uri'));
} }
/**
* @param MassEditJournalRequest $request
* @param int $journalId
* @param string $string
*
* @return Carbon|null
* @codeCoverageIgnore
*/
private function getDateFromRequest(MassEditJournalRequest $request, int $journalId, string $string): ?Carbon
{
$value = $request->get($string);
if (!is_array($value)) {
return null;
}
if (!isset($value[$journalId])) {
return null;
}
try {
$carbon = Carbon::parse($value[$journalId]);
} catch (InvalidArgumentException $e) {
$e->getMessage();
return null;
}
return $carbon;
}
/**
* @param MassEditJournalRequest $request
* @param int $journalId
* @param string $string
*
* @return int|null
* @codeCoverageIgnore
*/
private function getIntFromRequest(MassEditJournalRequest $request, int $journalId, string $string): ?int
{
$value = $request->get($string);
if (!is_array($value)) {
return null;
}
if (!isset($value[$journalId])) {
return null;
}
return (int) $value[$journalId];
}
/**
* @param MassEditJournalRequest $request
* @param int $journalId
* @param string $string
*
* @return string|null
* @codeCoverageIgnore
*/
private function getStringFromRequest(MassEditJournalRequest $request, int $journalId, string $string): ?string
{
$value = $request->get($string);
if (!is_array($value)) {
return null;
}
if (!isset($value[$journalId])) {
return null;
}
return (string) $value[$journalId];
}
/** /**
* @param int $journalId * @param int $journalId
* @param MassEditJournalRequest $request * @param MassEditJournalRequest $request
*
* @throws FireflyException * @throws FireflyException
*/ */
private function updateJournal(int $journalId, MassEditJournalRequest $request): void private function updateJournal(int $journalId, MassEditJournalRequest $request): void
@@ -224,71 +300,4 @@ class MassController extends Controller
// trigger rules // trigger rules
event(new UpdatedTransactionGroup($journal->transactionGroup)); event(new UpdatedTransactionGroup($journal->transactionGroup));
} }
/**
* @param MassEditJournalRequest $request
* @param int $journalId
* @param string $string
* @return int|null
* @codeCoverageIgnore
*/
private function getIntFromRequest(MassEditJournalRequest $request, int $journalId, string $string): ?int
{
$value = $request->get($string);
if (!is_array($value)) {
return null;
}
if (!isset($value[$journalId])) {
return null;
}
return (int)$value[$journalId];
}
/**
* @param MassEditJournalRequest $request
* @param int $journalId
* @param string $string
* @return string|null
* @codeCoverageIgnore
*/
private function getStringFromRequest(MassEditJournalRequest $request, int $journalId, string $string): ?string
{
$value = $request->get($string);
if (!is_array($value)) {
return null;
}
if (!isset($value[$journalId])) {
return null;
}
return (string)$value[$journalId];
}
/**
* @param MassEditJournalRequest $request
* @param int $journalId
* @param string $string
* @return Carbon|null
* @codeCoverageIgnore
*/
private function getDateFromRequest(MassEditJournalRequest $request, int $journalId, string $string): ?Carbon
{
$value = $request->get($string);
if (!is_array($value)) {
return null;
}
if (!isset($value[$journalId])) {
return null;
}
try {
$carbon = Carbon::parse($value[$journalId]);
} catch (InvalidArgumentException $e) {
$e->getMessage();
return null;
}
return $carbon;
}
} }

View File

@@ -29,8 +29,11 @@ use FireflyIII\Models\TransactionGroup;
use FireflyIII\Models\TransactionJournal; use FireflyIII\Models\TransactionJournal;
use FireflyIII\Repositories\TransactionGroup\TransactionGroupRepositoryInterface; use FireflyIII\Repositories\TransactionGroup\TransactionGroupRepositoryInterface;
use FireflyIII\Transformers\TransactionGroupTransformer; use FireflyIII\Transformers\TransactionGroupTransformer;
use Illuminate\Contracts\View\Factory;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Support\Str; use Illuminate\Support\Str;
use Illuminate\View\View;
use Symfony\Component\HttpFoundation\ParameterBag; use Symfony\Component\HttpFoundation\ParameterBag;
/** /**
@@ -64,7 +67,7 @@ class ShowController extends Controller
/** /**
* @param TransactionGroup $transactionGroup * @param TransactionGroup $transactionGroup
* *
* @return \Illuminate\Http\JsonResponse * @return JsonResponse
*/ */
public function debugShow(TransactionGroup $transactionGroup) public function debugShow(TransactionGroup $transactionGroup)
{ {
@@ -74,8 +77,8 @@ class ShowController extends Controller
/** /**
* @param TransactionGroup $transactionGroup * @param TransactionGroup $transactionGroup
* *
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
* @throws FireflyException * @throws FireflyException
* @return Factory|View
*/ */
public function show(Request $request, TransactionGroup $transactionGroup) public function show(Request $request, TransactionGroup $transactionGroup)
{ {

Some files were not shown because too many files have changed in this diff Show More