diff --git a/app/Http/Controllers/Account/ReconcileController.php b/app/Http/Controllers/Account/ReconcileController.php
index 8cbdbc97d2..fc0f55d0d1 100644
--- a/app/Http/Controllers/Account/ReconcileController.php
+++ b/app/Http/Controllers/Account/ReconcileController.php
@@ -18,6 +18,7 @@
* You should have received a copy of the GNU General Public License
* along with Firefly III. If not, see .
*/
+/** @noinspection CallableParameterUseCaseInTypeContextInspection */
declare(strict_types=1);
namespace FireflyIII\Http\Controllers\Account;
@@ -44,8 +45,6 @@ use Preferences;
/**
* Class ReconcileController.
- *
- * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
*/
class ReconcileController extends Controller
{
@@ -113,6 +112,7 @@ class ReconcileController extends Controller
)->with('data', $preFilled);
}
+ /** @noinspection MoreThanThreeArgumentsInspection */
/**
* @param Request $request
* @param Account $account
@@ -246,9 +246,9 @@ class ReconcileController extends Controller
return view('accounts.reconcile.show', compact('journal', 'subTitle', 'transaction', 'account'));
}
+ /** @noinspection MoreThanThreeArgumentsInspection */
/**
* @param ReconciliationStoreRequest $request
- * @param JournalRepositoryInterface $repository
* @param Account $account
* @param Carbon $start
* @param Carbon $end
@@ -256,14 +256,14 @@ class ReconcileController extends Controller
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector
* @throws FireflyException
*/
- public function submit(ReconciliationStoreRequest $request, JournalRepositoryInterface $repository, Account $account, Carbon $start, Carbon $end)
+ public function submit(ReconciliationStoreRequest $request, Account $account, Carbon $start, Carbon $end)
{
Log::debug('In ReconcileController::submit()');
$data = $request->getAll();
/** @var Transaction $transaction */
foreach ($data['transactions'] as $transactionId) {
- $repository->reconcileById((int)$transactionId);
+ $this->repository->reconcileById((int)$transactionId);
}
Log::debug('Reconciled all transactions.');
@@ -322,11 +322,11 @@ class ReconcileController extends Controller
'notes' => implode(', ', $data['transactions']),
];
- $repository->store($journalData);
+ $this->repository->store($journalData);
}
Log::debug('End of routine.');
- Preferences::mark();
+ app('preferences')->mark();
session()->flash('success', trans('firefly.reconciliation_stored'));
diff --git a/app/Http/Controllers/AccountController.php b/app/Http/Controllers/AccountController.php
index 225e52b89a..bbf7a1429b 100644
--- a/app/Http/Controllers/AccountController.php
+++ b/app/Http/Controllers/AccountController.php
@@ -18,6 +18,7 @@
* You should have received a copy of the GNU General Public License
* along with Firefly III. If not, see .
*/
+/** @noinspection CallableParameterUseCaseInTypeContextInspection */
declare(strict_types=1);
namespace FireflyIII\Http\Controllers;
@@ -45,7 +46,6 @@ use View;
/**
* Class AccountController.
*
- * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
*/
class AccountController extends Controller
{
@@ -76,13 +76,14 @@ class AccountController extends Controller
}
/**
- * @param Request $request
- * @param string $what
+ * @param Request $request
+ * @param string|null $what
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
- public function create(Request $request, string $what = 'asset')
+ public function create(Request $request, string $what = null)
{
+ $what = $what ?? 'asset';
$defaultCurrency = app('amount')->getDefaultCurrency();
$subTitleIcon = config('firefly.subIconsByIdentifier.' . $what);
$subTitle = trans('firefly.make_new_' . $what . '_account');
@@ -106,7 +107,7 @@ class AccountController extends Controller
/**
* @param Account $account
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function delete(Account $account)
{
@@ -137,25 +138,17 @@ class AccountController extends Controller
$this->repository->destroy($account, $moveTo);
$request->session()->flash('success', (string)trans('firefly.' . $typeName . '_deleted', ['name' => $name]));
- Preferences::mark();
+ app('preferences')->mark();
return redirect($this->getPreviousUri('accounts.delete.uri'));
}
/**
- * Edit an account.
- *
* @param Request $request
* @param Account $account
- *
* @param AccountRepositoryInterface $repository
*
- * @return View
- *
- * @SuppressWarnings(PHPMD.CyclomaticComplexity) // long and complex but not that excessively so.
- * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
- *
-
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function edit(Request $request, Account $account, AccountRepositoryInterface $repository)
{
@@ -214,7 +207,7 @@ class AccountController extends Controller
* @param Request $request
* @param string $what
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function index(Request $request, string $what)
{
@@ -255,6 +248,8 @@ class AccountController extends Controller
return view('accounts.index', compact('what', 'subTitleIcon', 'subTitle', 'page', 'accounts'));
}
+
+ /** @noinspection MoreThanThreeArgumentsInspection */
/**
* Show an account.
*
@@ -312,6 +307,7 @@ class AccountController extends Controller
);
}
+
/**
* Show an account.
*
@@ -364,7 +360,7 @@ class AccountController extends Controller
$data = $request->getAccountData();
$account = $this->repository->store($data);
$request->session()->flash('success', (string)trans('firefly.stored_new_account', ['name' => $account->name]));
- Preferences::mark();
+ app('preferences')->mark();
// update preferences if necessary:
$frontPage = Preferences::get('frontPageAccounts', [])->data;
@@ -374,16 +370,16 @@ class AccountController extends Controller
Preferences::set('frontPageAccounts', $frontPage);
// @codeCoverageIgnoreEnd
}
-
+ // redirect to previous URL.
+ $redirect = redirect($this->getPreviousUri('accounts.create.uri'));
if (1 === (int)$request->get('create_another')) {
// set value so create routine will not overwrite URL:
$request->session()->put('accounts.create.fromStore', true);
- return redirect(route('accounts.create', [$request->input('what')]))->withInput();
+ $redirect = redirect(route('accounts.create', [$request->input('what')]))->withInput();
}
- // redirect to previous URL.
- return redirect($this->getPreviousUri('accounts.create.uri'));
+ return $redirect;
}
/**
@@ -398,17 +394,17 @@ class AccountController extends Controller
$this->repository->update($account, $data);
$request->session()->flash('success', (string)trans('firefly.updated_account', ['name' => $account->name]));
- Preferences::mark();
+ app('preferences')->mark();
+ $redirect = redirect($this->getPreviousUri('accounts.edit.uri'));
if (1 === (int)$request->get('return_to_edit')) {
// set value so edit routine will not overwrite URL:
$request->session()->put('accounts.edit.fromUpdate', true);
- return redirect(route('accounts.edit', [$account->id]))->withInput(['return_to_edit' => 1]);
+ $redirect = redirect(route('accounts.edit', [$account->id]))->withInput(['return_to_edit' => 1]);
}
- // redirect to previous URL.
- return redirect($this->getPreviousUri('accounts.edit.uri'));
+ return $redirect;
}
/**
@@ -419,13 +415,15 @@ class AccountController extends Controller
*/
protected function isInArray(array $array, int $entryId)
{
+ $result = '0';
if (isset($array[$entryId])) {
- return $array[$entryId];
+ $result = $array[$entryId];
}
- return '0';
+ return $result;
}
+
/**
* This method returns "period entries", so nov-2015, dec-2015, etc etc (this depends on the users session range)
* and for each period, the amount of money spent and earned. This is a complex operation which is cached for
@@ -437,7 +435,6 @@ class AccountController extends Controller
*
* @return Collection
*
- * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
*/
private function getPeriodOverview(Account $account, ?Carbon $date): Collection
{
diff --git a/app/Http/Controllers/Admin/ConfigurationController.php b/app/Http/Controllers/Admin/ConfigurationController.php
index 2e0bd3aa87..c7c9375e74 100644
--- a/app/Http/Controllers/Admin/ConfigurationController.php
+++ b/app/Http/Controllers/Admin/ConfigurationController.php
@@ -28,9 +28,7 @@ use FireflyIII\Http\Middleware\IsDemoUser;
use FireflyIII\Http\Middleware\IsSandStormUser;
use FireflyIII\Http\Requests\ConfigurationRequest;
use FireflyIII\Support\Facades\FireflyConfig;
-use Preferences;
use Redirect;
-use View;
/**
* Class ConfigurationController.
@@ -57,7 +55,7 @@ class ConfigurationController extends Controller
}
/**
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function index()
{
@@ -92,7 +90,7 @@ class ConfigurationController extends Controller
// flash message
session()->flash('success', (string)trans('firefly.configuration_updated'));
- Preferences::mark();
+ app('preferences')->mark();
return Redirect::route('admin.configuration.index');
}
diff --git a/app/Http/Controllers/Admin/LinkController.php b/app/Http/Controllers/Admin/LinkController.php
index 5884596fa0..1515260fd4 100644
--- a/app/Http/Controllers/Admin/LinkController.php
+++ b/app/Http/Controllers/Admin/LinkController.php
@@ -28,7 +28,6 @@ use FireflyIII\Http\Requests\LinkTypeFormRequest;
use FireflyIII\Models\LinkType;
use FireflyIII\Repositories\LinkType\LinkTypeRepositoryInterface;
use Illuminate\Http\Request;
-use Preferences;
use View;
/**
@@ -116,7 +115,7 @@ class LinkController extends Controller
$repository->destroy($linkType, $moveTo);
$request->session()->flash('success', (string)trans('firefly.deleted_link_type', ['name' => $name]));
- Preferences::mark();
+ app('preferences')->mark();
return redirect($this->getPreviousUri('link_types.delete.uri'));
}
@@ -194,16 +193,16 @@ class LinkController extends Controller
];
$linkType = $repository->store($data);
$request->session()->flash('success', (string)trans('firefly.stored_new_link_type', ['name' => $linkType->name]));
-
+ $redirect = redirect($this->getPreviousUri('link_types.create.uri'));
if (1 === (int)$request->get('create_another')) {
// set value so create routine will not overwrite URL:
$request->session()->put('link_types.create.fromStore', true);
- return redirect(route('admin.links.create'))->withInput();
+ $redirect = redirect(route('admin.links.create'))->withInput();
}
// redirect to previous URL.
- return redirect($this->getPreviousUri('link_types.create.uri'));
+ return $redirect;
}
/**
@@ -229,16 +228,16 @@ class LinkController extends Controller
$repository->update($linkType, $data);
$request->session()->flash('success', (string)trans('firefly.updated_link_type', ['name' => $linkType->name]));
- Preferences::mark();
-
+ app('preferences')->mark();
+ $redirect = redirect($this->getPreviousUri('link_types.edit.uri'));
if (1 === (int)$request->get('return_to_edit')) {
// set value so edit routine will not overwrite URL:
$request->session()->put('link_types.edit.fromUpdate', true);
- return redirect(route('admin.links.edit', [$linkType->id]))->withInput(['return_to_edit' => 1]);
+ $redirect = redirect(route('admin.links.edit', [$linkType->id]))->withInput(['return_to_edit' => 1]);
}
// redirect to previous URL.
- return redirect($this->getPreviousUri('link_types.edit.uri'));
+ return $redirect;
}
}
diff --git a/app/Http/Controllers/Admin/UserController.php b/app/Http/Controllers/Admin/UserController.php
index 1399312fd0..4510b3d8fb 100644
--- a/app/Http/Controllers/Admin/UserController.php
+++ b/app/Http/Controllers/Admin/UserController.php
@@ -30,7 +30,6 @@ use FireflyIII\Repositories\User\UserRepositoryInterface;
use FireflyIII\User;
use Log;
use Preferences;
-use View;
/**
* Class UserController.
@@ -85,7 +84,7 @@ class UserController extends Controller
/**
* @param User $user
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function edit(User $user)
{
@@ -110,7 +109,7 @@ class UserController extends Controller
/**
* @param UserRepositoryInterface $repository
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function index(UserRepositoryInterface $repository)
{
@@ -182,17 +181,17 @@ class UserController extends Controller
$repository->updateEmail($user, $data['email']);
session()->flash('success', (string)trans('firefly.updated_user', ['email' => $user->email]));
- Preferences::mark();
-
+ app('preferences')->mark();
+ $redirect = redirect($this->getPreviousUri('users.edit.uri'));
if (1 === (int)$request->get('return_to_edit')) {
// @codeCoverageIgnoreStart
session()->put('users.edit.fromUpdate', true);
- return redirect(route('admin.users.edit', [$user->id]))->withInput(['return_to_edit' => 1]);
+ $redirect = redirect(route('admin.users.edit', [$user->id]))->withInput(['return_to_edit' => 1]);
// @codeCoverageIgnoreEnd
}
// redirect to previous URL.
- return redirect($this->getPreviousUri('users.edit.uri'));
+ return $redirect;
}
}
diff --git a/app/Http/Controllers/AttachmentController.php b/app/Http/Controllers/AttachmentController.php
index d698f4d732..0e9fc5f01c 100644
--- a/app/Http/Controllers/AttachmentController.php
+++ b/app/Http/Controllers/AttachmentController.php
@@ -26,15 +26,13 @@ use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Http\Requests\AttachmentFormRequest;
use FireflyIII\Models\Attachment;
use FireflyIII\Repositories\Attachment\AttachmentRepositoryInterface;
+use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request;
use Illuminate\Http\Response as LaravelResponse;
-use Preferences;
-use View;
/**
* Class AttachmentController.
*
- * @SuppressWarnings(PHPMD.CouplingBetweenObjects) // it's 13.
*/
class AttachmentController extends Controller
{
@@ -63,7 +61,7 @@ class AttachmentController extends Controller
/**
* @param Attachment $attachment
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function delete(Attachment $attachment)
{
@@ -88,7 +86,7 @@ class AttachmentController extends Controller
$this->repository->destroy($attachment);
$request->session()->flash('success', (string)trans('firefly.attachment_deleted', ['name' => $name]));
- Preferences::mark();
+ app('preferences')->mark();
return redirect($this->getPreviousUri('attachments.delete.uri'));
}
@@ -128,7 +126,7 @@ class AttachmentController extends Controller
* @param Request $request
* @param Attachment $attachment
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function edit(Request $request, Attachment $attachment)
{
@@ -169,35 +167,36 @@ class AttachmentController extends Controller
* @param AttachmentFormRequest $request
* @param Attachment $attachment
*
- * @return \Illuminate\Http\RedirectResponse
+ * @return RedirectResponse
*/
- public function update(AttachmentFormRequest $request, Attachment $attachment)
+ public function update(AttachmentFormRequest $request, Attachment $attachment): RedirectResponse
{
$data = $request->getAttachmentData();
$this->repository->update($attachment, $data);
$request->session()->flash('success', (string)trans('firefly.attachment_updated', ['name' => $attachment->filename]));
- Preferences::mark();
+ app('preferences')->mark();
+ $redirect = redirect($this->getPreviousUri('attachments.edit.uri'));
if (1 === (int)$request->get('return_to_edit')) {
// @codeCoverageIgnoreStart
$request->session()->put('attachments.edit.fromUpdate', true);
- return redirect(route('attachments.edit', [$attachment->id]))->withInput(['return_to_edit' => 1]);
+ $redirect = redirect(route('attachments.edit', [$attachment->id]))->withInput(['return_to_edit' => 1]);
// @codeCoverageIgnoreEnd
}
// redirect to previous URL.
- return redirect($this->getPreviousUri('attachments.edit.uri'));
+ return $redirect;
}
/**
* @param Attachment $attachment
*
- * @return \Illuminate\Http\Response
+ * @return LaravelResponse
* @throws FireflyException
*/
- public function view(Attachment $attachment)
+ public function view(Attachment $attachment): LaravelResponse
{
if ($this->repository->exists($attachment)) {
$content = $this->repository->getContent($attachment);
diff --git a/app/Http/Controllers/Auth/TwoFactorController.php b/app/Http/Controllers/Auth/TwoFactorController.php
index 1ad9b126bd..a666e5a507 100644
--- a/app/Http/Controllers/Auth/TwoFactorController.php
+++ b/app/Http/Controllers/Auth/TwoFactorController.php
@@ -42,7 +42,6 @@ class TwoFactorController extends Controller
*
* @throws FireflyException
*
- * @SuppressWarnings(PHPMD.CyclomaticComplexity)
*/
public function index(Request $request)
{
@@ -90,7 +89,6 @@ class TwoFactorController extends Controller
* @param CookieJar $cookieJar
*
* @return mixed
- * @SuppressWarnings(PHPMD.UnusedFormalParameter) // it's unused but the class does some validation.
*/
public function postIndex(TokenFormRequest $request, CookieJar $cookieJar)
{
diff --git a/app/Http/Controllers/BillController.php b/app/Http/Controllers/BillController.php
index 3d33c9a5f9..142979daa9 100644
--- a/app/Http/Controllers/BillController.php
+++ b/app/Http/Controllers/BillController.php
@@ -80,7 +80,7 @@ class BillController extends Controller
/**
* @param Request $request
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function create(Request $request)
{
@@ -105,7 +105,7 @@ class BillController extends Controller
/**
* @param Bill $bill
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function delete(Bill $bill)
{
@@ -128,7 +128,7 @@ class BillController extends Controller
$this->billRepository->destroy($bill);
$request->session()->flash('success', (string)trans('firefly.deleted_bill', ['name' => $name]));
- Preferences::mark();
+ app('preferences')->mark();
return redirect($this->getPreviousUri('bills.delete.uri'));
}
@@ -137,7 +137,7 @@ class BillController extends Controller
* @param Request $request
* @param Bill $bill
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function edit(Request $request, Bill $bill)
{
@@ -177,7 +177,7 @@ class BillController extends Controller
}
/**
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function index()
{
@@ -225,29 +225,29 @@ class BillController extends Controller
*/
public function rescan(Request $request, Bill $bill)
{
- if (0 === (int)$bill->active) {
+ if (false === $bill->active) {
$request->session()->flash('warning', (string)trans('firefly.cannot_scan_inactive_bill'));
-
- return redirect(URL::previous());
}
- $set = $this->billRepository->getRulesForBill($bill);
- $total = 0;
- foreach ($set as $rule) {
- // simply fire off all rules?
- /** @var TransactionMatcher $matcher */
- $matcher = app(TransactionMatcher::class);
- $matcher->setLimit(100000); // large upper limit
- $matcher->setRange(100000); // large upper limit
- $matcher->setRule($rule);
- $matchingTransactions = $matcher->findTransactionsByRule();
- $total += $matchingTransactions->count();
- $this->billRepository->linkCollectionToBill($bill, $matchingTransactions);
+ if (true === $bill->active) {
+ $set = $this->billRepository->getRulesForBill($bill);
+ $total = 0;
+ foreach ($set as $rule) {
+ // simply fire off all rules?
+ /** @var TransactionMatcher $matcher */
+ $matcher = app(TransactionMatcher::class);
+ $matcher->setLimit(100000); // large upper limit
+ $matcher->setRange(100000); // large upper limit
+ $matcher->setRule($rule);
+ $matchingTransactions = $matcher->findTransactionsByRule();
+ $total += $matchingTransactions->count();
+ $this->billRepository->linkCollectionToBill($bill, $matchingTransactions);
+ }
+
+
+ $request->session()->flash('success', (string)trans('firefly.rescanned_bill', ['total' => $total]));
+ app('preferences')->mark();
}
-
- $request->session()->flash('success', (string)trans('firefly.rescanned_bill', ['total' => $total]));
- Preferences::mark();
-
return redirect(URL::previous());
}
@@ -255,7 +255,7 @@ class BillController extends Controller
* @param Request $request
* @param Bill $bill
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function show(Request $request, Bill $bill)
{
@@ -292,6 +292,7 @@ class BillController extends Controller
return view('bills.show', compact('transactions', 'rules', 'yearAverage', 'overallAverage', 'year', 'object', 'bill', 'subTitle'));
}
+
/**
* @param BillFormRequest $request
*
@@ -307,7 +308,7 @@ class BillController extends Controller
return redirect(route('bills.create'))->withInput();
}
$request->session()->flash('success', (string)trans('firefly.stored_new_bill', ['name' => $bill->name]));
- Preferences::mark();
+ app('preferences')->mark();
/** @var array $files */
$files = $request->hasFile('attachments') ? $request->file('attachments') : null;
@@ -355,7 +356,7 @@ class BillController extends Controller
$bill = $this->billRepository->update($bill, $billData);
$request->session()->flash('success', (string)trans('firefly.updated_bill', ['name' => $bill->name]));
- Preferences::mark();
+ app('preferences')->mark();
/** @var array $files */
$files = $request->hasFile('attachments') ? $request->file('attachments') : null;
@@ -365,15 +366,16 @@ class BillController extends Controller
if (\count($this->attachments->getMessages()->get('attachments')) > 0) {
$request->session()->flash('info', $this->attachments->getMessages()->get('attachments')); // @codeCoverageIgnore
}
+ $redirect = redirect($this->getPreviousUri('bills.edit.uri'));
if (1 === (int)$request->get('return_to_edit')) {
// @codeCoverageIgnoreStart
$request->session()->put('bills.edit.fromUpdate', true);
- return redirect(route('bills.edit', [$bill->id]))->withInput(['return_to_edit' => 1]);
+ $redirect = redirect(route('bills.edit', [$bill->id]))->withInput(['return_to_edit' => 1]);
// @codeCoverageIgnoreEnd
}
- return redirect($this->getPreviousUri('bills.edit.uri'));
+ return $redirect;
}
}
diff --git a/app/Http/Controllers/BudgetController.php b/app/Http/Controllers/BudgetController.php
index b62589e9b9..9528910896 100644
--- a/app/Http/Controllers/BudgetController.php
+++ b/app/Http/Controllers/BudgetController.php
@@ -44,8 +44,6 @@ use View;
/**
* Class BudgetController.
*
- * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
- * @SuppressWarnings(PHPMD.TooManyPublicMethods)
*/
class BudgetController extends Controller
{
@@ -139,7 +137,7 @@ class BudgetController extends Controller
);
}
- Preferences::mark();
+ app('preferences')->mark();
return response()->json(
[
@@ -161,7 +159,7 @@ class BudgetController extends Controller
/**
* @param Request $request
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function create(Request $request)
{
@@ -178,7 +176,7 @@ class BudgetController extends Controller
/**
* @param Budget $budget
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function delete(Budget $budget)
{
@@ -201,7 +199,7 @@ class BudgetController extends Controller
$name = $budget->name;
$this->repository->destroy($budget);
$request->session()->flash('success', (string)trans('firefly.deleted_budget', ['name' => $name]));
- Preferences::mark();
+ app('preferences')->mark();
return redirect($this->getPreviousUri('budgets.delete.uri'));
}
@@ -210,7 +208,7 @@ class BudgetController extends Controller
* @param Request $request
* @param Budget $budget
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function edit(Request $request, Budget $budget)
{
@@ -236,10 +234,7 @@ class BudgetController extends Controller
* @param Request $request
* @param string|null $moment
*
- * @return View
- *
- * @SuppressWarnings(PHPMD.CyclomaticComplexity) complex because of while loop
- * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function index(Request $request, string $moment = null)
{
@@ -339,10 +334,10 @@ class BudgetController extends Controller
);
}
+
/**
* @param Carbon $start
* @param Carbon $end
- * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
*
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
@@ -420,16 +415,14 @@ class BudgetController extends Controller
/**
* @param Request $request
* @param JournalRepositoryInterface $repository
- * @param string $moment
+ * @param string|null $moment
*
- * @return View
- *
- * @SuppressWarnings(PHPMD.CyclomaticComplexity)
- * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
- public function noBudget(Request $request, JournalRepositoryInterface $repository, string $moment = '')
+ public function noBudget(Request $request, JournalRepositoryInterface $repository, string $moment = null)
{
// default values:
+ $moment = $moment ?? '';
$range = Preferences::get('viewRange', '1M')->data;
$start = null;
$end = null;
@@ -492,7 +485,7 @@ class BudgetController extends Controller
$page = 0 === $request->integer('page') ? 1 : $request->integer('page');
$this->repository->cleanupBudgets();
$this->repository->setAvailableBudget($defaultCurrency, $start, $end, $amount);
- Preferences::mark();
+ app('preferences')->mark();
return redirect(route('budgets.index', [$start->format('Y-m-d')]) . '?page=' . $page);
}
@@ -501,7 +494,7 @@ class BudgetController extends Controller
* @param Request $request
* @param Budget $budget
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function show(Request $request, Budget $budget)
{
@@ -530,8 +523,7 @@ class BudgetController extends Controller
* @param Budget $budget
* @param BudgetLimit $budgetLimit
*
- * @return View
- *
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
* @throws FireflyException
*/
public function showByBudgetLimit(Request $request, Budget $budget, BudgetLimit $budgetLimit)
@@ -576,19 +568,22 @@ class BudgetController extends Controller
$budget = $this->repository->store($data);
$this->repository->cleanupBudgets();
$request->session()->flash('success', (string)trans('firefly.stored_new_budget', ['name' => $budget->name]));
- Preferences::mark();
+ app('preferences')->mark();
+
+ $redirect = redirect($this->getPreviousUri('budgets.create.uri'));
if (1 === (int)$request->get('create_another')) {
// @codeCoverageIgnoreStart
$request->session()->put('budgets.create.fromStore', true);
- return redirect(route('budgets.create'))->withInput();
+ $redirect = redirect(route('budgets.create'))->withInput();
// @codeCoverageIgnoreEnd
}
- return redirect($this->getPreviousUri('budgets.create.uri'));
+ return $redirect;
}
+
/**
* @param BudgetFormRequest $request
* @param Budget $budget
@@ -602,17 +597,19 @@ class BudgetController extends Controller
$request->session()->flash('success', (string)trans('firefly.updated_budget', ['name' => $budget->name]));
$this->repository->cleanupBudgets();
- Preferences::mark();
+ app('preferences')->mark();
+
+ $redirect = redirect($this->getPreviousUri('budgets.edit.uri'));
if (1 === (int)$request->get('return_to_edit')) {
// @codeCoverageIgnoreStart
$request->session()->put('budgets.edit.fromUpdate', true);
- return redirect(route('budgets.edit', [$budget->id]))->withInput(['return_to_edit' => 1]);
+ $redirect = redirect(route('budgets.edit', [$budget->id]))->withInput(['return_to_edit' => 1]);
// @codeCoverageIgnoreEnd
}
- return redirect($this->getPreviousUri('budgets.edit.uri'));
+ return $redirect;
}
/**
@@ -632,6 +629,7 @@ class BudgetController extends Controller
return view('budgets.income', compact('available', 'start', 'end', 'page'));
}
+
/**
* @param Budget $budget
* @param Carbon $start
@@ -665,6 +663,7 @@ class BudgetController extends Controller
return $set;
}
+
/**
* @return Collection
*/
diff --git a/app/Http/Controllers/CategoryController.php b/app/Http/Controllers/CategoryController.php
index 3f5452b0b5..2530c4fdbf 100644
--- a/app/Http/Controllers/CategoryController.php
+++ b/app/Http/Controllers/CategoryController.php
@@ -39,7 +39,6 @@ use Illuminate\Support\Collection;
use Log;
use Preferences;
use Steam;
-use View;
/**
* Class CategoryController.
@@ -54,7 +53,7 @@ class CategoryController extends Controller
private $repository;
/**
- *
+ * CategoryController constructor.
*/
public function __construct()
{
@@ -76,7 +75,7 @@ class CategoryController extends Controller
/**
* @param Request $request
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function create(Request $request)
{
@@ -92,7 +91,7 @@ class CategoryController extends Controller
/**
* @param Category $category
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function delete(Category $category)
{
@@ -116,7 +115,7 @@ class CategoryController extends Controller
$this->repository->destroy($category);
$request->session()->flash('success', (string)trans('firefly.deleted_category', ['name' => $name]));
- Preferences::mark();
+ app('preferences')->mark();
return redirect($this->getPreviousUri('categories.delete.uri'));
}
@@ -125,7 +124,7 @@ class CategoryController extends Controller
* @param Request $request
* @param Category $category
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function edit(Request $request, Category $category)
{
@@ -167,14 +166,15 @@ class CategoryController extends Controller
}
/**
- * @param Request $request
- * @param string $moment
+ * @param Request $request
+ * @param string|null $moment
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
- public function noCategory(Request $request, string $moment = '')
+ public function noCategory(Request $request, string $moment = null)
{
// default values:
+ $moment = $moment ?? '';
$range = Preferences::get('viewRange', '1M')->data;
$start = null;
$end = null;
@@ -224,16 +224,16 @@ class CategoryController extends Controller
}
/**
- * @param Request $request
- * @param CategoryRepositoryInterface $repository
- * @param Category $category
- * @param string $moment
+ * @param Request $request
+ * @param Category $category
+ * @param string|null $moment
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
- public function show(Request $request, CategoryRepositoryInterface $repository, Category $category, string $moment = '')
+ public function show(Request $request, Category $category, string $moment = null)
{
// default values:
+ $moment = $moment ?? '';
$subTitle = $category->name;
$subTitleIcon = 'fa-bar-chart';
$page = (int)$request->get('page');
@@ -247,7 +247,7 @@ class CategoryController extends Controller
// prep for "all" view.
if ('all' === $moment) {
$subTitle = trans('firefly.all_journals_for_category', ['name' => $category->name]);
- $first = $repository->firstUseDate($category);
+ $first = $this->repository->firstUseDate($category);
/** @var Carbon $start */
$start = $first ?? new Carbon;
$end = new Carbon;
@@ -255,7 +255,7 @@ class CategoryController extends Controller
}
// prep for "specific date" view.
- if (\strlen($moment) > 0 && 'all' !== $moment) {
+ if ('all' !== $moment && \strlen($moment) > 0) {
$start = app('navigation')->startOfPeriod(new Carbon($moment), $range);
$end = app('navigation')->endOfPeriod($start, $range);
$subTitle = trans(
@@ -304,19 +304,21 @@ class CategoryController extends Controller
$category = $repository->store($data);
$request->session()->flash('success', (string)trans('firefly.stored_category', ['name' => $category->name]));
- Preferences::mark();
+ app('preferences')->mark();
+ $redirect = redirect(route('categories.index'));
if (1 === (int)$request->get('create_another')) {
// @codeCoverageIgnoreStart
$request->session()->put('categories.create.fromStore', true);
- return redirect(route('categories.create'))->withInput();
+ $redirect = redirect(route('categories.create'))->withInput();
// @codeCoverageIgnoreEnd
}
- return redirect(route('categories.index'));
+ return $redirect;
}
+
/**
* @param CategoryFormRequest $request
* @param CategoryRepositoryInterface $repository
@@ -330,19 +332,22 @@ class CategoryController extends Controller
$repository->update($category, $data);
$request->session()->flash('success', (string)trans('firefly.updated_category', ['name' => $category->name]));
- Preferences::mark();
+ app('preferences')->mark();
+
+ $redirect = redirect($this->getPreviousUri('categories.edit.uri'));
if (1 === (int)$request->get('return_to_edit')) {
// @codeCoverageIgnoreStart
$request->session()->put('categories.edit.fromUpdate', true);
- return redirect(route('categories.edit', [$category->id]));
+ $redirect = redirect(route('categories.edit', [$category->id]));
// @codeCoverageIgnoreEnd
}
- return redirect($this->getPreviousUri('categories.edit.uri'));
+ return $redirect;
}
+
/**
* @param Carbon $theDate
*
@@ -421,6 +426,7 @@ class CategoryController extends Controller
return $entries;
}
+
/**
* @param Category $category
*
diff --git a/app/Http/Controllers/Chart/AccountController.php b/app/Http/Controllers/Chart/AccountController.php
index e0e18773b8..345f0a6295 100644
--- a/app/Http/Controllers/Chart/AccountController.php
+++ b/app/Http/Controllers/Chart/AccountController.php
@@ -35,6 +35,7 @@ use FireflyIII\Repositories\Budget\BudgetRepositoryInterface;
use FireflyIII\Repositories\Category\CategoryRepositoryInterface;
use FireflyIII\Repositories\Currency\CurrencyRepositoryInterface;
use FireflyIII\Support\CacheProperties;
+use Illuminate\Http\JsonResponse;
use Illuminate\Support\Collection;
use Log;
use Preferences;
@@ -62,9 +63,9 @@ class AccountController extends Controller
*
* @param AccountRepositoryInterface $repository
*
- * @return \Illuminate\Http\JsonResponse
+ * @return JsonResponse
*/
- public function expenseAccounts(AccountRepositoryInterface $repository)
+ public function expenseAccounts(AccountRepositoryInterface $repository): JsonResponse
{
$start = clone session('start', Carbon::now()->startOfMonth());
$end = clone session('end', Carbon::now()->endOfMonth());
@@ -99,14 +100,15 @@ class AccountController extends Controller
return response()->json($data);
}
+
/**
* @param Account $account
* @param Carbon $start
* @param Carbon $end
*
- * @return \Illuminate\Http\JsonResponse
+ * @return JsonResponse
*/
- public function expenseBudget(Account $account, Carbon $start, Carbon $end)
+ public function expenseBudget(Account $account, Carbon $start, Carbon $end): JsonResponse
{
$cache = new CacheProperties;
$cache->addProperty($account->id);
@@ -146,9 +148,9 @@ class AccountController extends Controller
* @param AccountRepositoryInterface $repository
* @param Account $account
*
- * @return \Illuminate\Http\JsonResponse
+ * @return JsonResponse
*/
- public function expenseBudgetAll(AccountRepositoryInterface $repository, Account $account)
+ public function expenseBudgetAll(AccountRepositoryInterface $repository, Account $account): JsonResponse
{
$start = $repository->oldestJournalDate($account);
$end = Carbon::now();
@@ -156,14 +158,15 @@ class AccountController extends Controller
return $this->expenseBudget($account, $start, $end);
}
+
/**
* @param Account $account
* @param Carbon $start
* @param Carbon $end
*
- * @return \Illuminate\Http\JsonResponse
+ * @return JsonResponse
*/
- public function expenseCategory(Account $account, Carbon $start, Carbon $end)
+ public function expenseCategory(Account $account, Carbon $start, Carbon $end): JsonResponse
{
$cache = new CacheProperties;
$cache->addProperty($account->id);
@@ -203,9 +206,9 @@ class AccountController extends Controller
* @param AccountRepositoryInterface $repository
* @param Account $account
*
- * @return \Illuminate\Http\JsonResponse
+ * @return JsonResponse
*/
- public function expenseCategoryAll(AccountRepositoryInterface $repository, Account $account)
+ public function expenseCategoryAll(AccountRepositoryInterface $repository, Account $account): JsonResponse
{
$start = $repository->oldestJournalDate($account);
$end = Carbon::now();
@@ -218,9 +221,9 @@ class AccountController extends Controller
*
* @param AccountRepositoryInterface $repository
*
- * @return \Illuminate\Http\JsonResponse
+ * @return JsonResponse
*/
- public function frontpage(AccountRepositoryInterface $repository)
+ public function frontpage(AccountRepositoryInterface $repository): JsonResponse
{
$start = clone session('start', Carbon::now()->startOfMonth());
$end = clone session('end', Carbon::now()->endOfMonth());
@@ -238,14 +241,15 @@ class AccountController extends Controller
return response()->json($this->accountBalanceChart($accounts, $start, $end));
}
+
/**
* @param Account $account
* @param Carbon $start
* @param Carbon $end
*
- * @return \Illuminate\Http\JsonResponse
+ * @return JsonResponse
*/
- public function incomeCategory(Account $account, Carbon $start, Carbon $end)
+ public function incomeCategory(Account $account, Carbon $start, Carbon $end): JsonResponse
{
$cache = new CacheProperties;
$cache->addProperty($account->id);
@@ -285,9 +289,9 @@ class AccountController extends Controller
* @param AccountRepositoryInterface $repository
* @param Account $account
*
- * @return \Illuminate\Http\JsonResponse
+ * @return JsonResponse
*/
- public function incomeCategoryAll(AccountRepositoryInterface $repository, Account $account)
+ public function incomeCategoryAll(AccountRepositoryInterface $repository, Account $account): JsonResponse
{
$start = $repository->oldestJournalDate($account);
$end = Carbon::now();
@@ -295,15 +299,16 @@ class AccountController extends Controller
return $this->incomeCategory($account, $start, $end);
}
+
/**
* @param Account $account
* @param Carbon $start
*
* @param Carbon $end
*
- * @return \Illuminate\Http\JsonResponse
+ * @return JsonResponse
*/
- public function period(Account $account, Carbon $start, Carbon $end)
+ public function period(Account $account, Carbon $start, Carbon $end): JsonResponse
{
$cache = new CacheProperties;
$cache->addProperty('chart.account.period');
@@ -367,21 +372,22 @@ class AccountController extends Controller
* @param Carbon $end
* @param Collection $accounts
*
- * @return \Illuminate\Http\JsonResponse
+ * @return JsonResponse
*/
- public function report(Collection $accounts, Carbon $start, Carbon $end)
+ public function report(Collection $accounts, Carbon $start, Carbon $end): JsonResponse
{
return response()->json($this->accountBalanceChart($accounts, $start, $end));
}
+
/**
* Shows the balances for all the user's revenue accounts.
*
* @param AccountRepositoryInterface $repository
*
- * @return \Illuminate\Http\JsonResponse
+ * @return JsonResponse
*/
- public function revenueAccounts(AccountRepositoryInterface $repository)
+ public function revenueAccounts(AccountRepositoryInterface $repository): JsonResponse
{
$start = clone session('start', Carbon::now()->startOfMonth());
$end = clone session('end', Carbon::now()->endOfMonth());
@@ -417,6 +423,7 @@ class AccountController extends Controller
return response()->json($data);
}
+
/**
* @param Collection $accounts
* @param Carbon $start
diff --git a/app/Http/Controllers/Chart/BillController.php b/app/Http/Controllers/Chart/BillController.php
index b145249092..ef4f696550 100644
--- a/app/Http/Controllers/Chart/BillController.php
+++ b/app/Http/Controllers/Chart/BillController.php
@@ -49,6 +49,7 @@ class BillController extends Controller
$this->generator = app(GeneratorInterface::class);
}
+
/**
* Shows all bills and whether or not they've been paid this month (pie chart).
*
@@ -81,6 +82,7 @@ class BillController extends Controller
return response()->json($data);
}
+
/**
* @param JournalCollectorInterface $collector
* @param Bill $bill
diff --git a/app/Http/Controllers/Chart/BudgetController.php b/app/Http/Controllers/Chart/BudgetController.php
index 1da549de38..0e2079c960 100644
--- a/app/Http/Controllers/Chart/BudgetController.php
+++ b/app/Http/Controllers/Chart/BudgetController.php
@@ -42,7 +42,6 @@ use Steam;
/**
* Class BudgetController.
*
- * @SuppressWarnings(PHPMD.CouplingBetweenObjects) // can't realy be helped.
*/
class BudgetController extends Controller
{
@@ -69,6 +68,7 @@ class BudgetController extends Controller
);
}
+
/**
* @param Budget $budget
*
@@ -124,10 +124,10 @@ class BudgetController extends Controller
return response()->json($data);
}
+
/**
* Shows the amount left in a specific budget limit.
*
- * @SuppressWarnings(PHPMD.CyclomaticComplexity) // it's exactly five.
*
* @param Budget $budget
* @param BudgetLimit $budgetLimit
@@ -172,6 +172,7 @@ class BudgetController extends Controller
return response()->json($data);
}
+
/**
* @param Budget $budget
* @param BudgetLimit|null $budgetLimit
@@ -216,6 +217,7 @@ class BudgetController extends Controller
return response()->json($data);
}
+
/**
* @param Budget $budget
* @param BudgetLimit|null $budgetLimit
@@ -262,6 +264,7 @@ class BudgetController extends Controller
return response()->json($data);
}
+
/**
* @param Budget $budget
* @param BudgetLimit|null $budgetLimit
@@ -307,12 +310,10 @@ class BudgetController extends Controller
return response()->json($data);
}
+
/**
* Shows a budget list with spent/left/overspent.
*
- * @SuppressWarnings(PHPMD.CyclomaticComplexity) // it's exactly five.
- * @SuppressWarnings(PHPMD.ExcessiveMethodLength) // 46 lines, I'm fine with this.
- *
* @return \Symfony\Component\HttpFoundation\Response
*/
public function frontpage()
@@ -361,8 +362,8 @@ class BudgetController extends Controller
return response()->json($data);
}
+ /** @noinspection MoreThanThreeArgumentsInspection */
/**
- * @SuppressWarnings(PHPMD.CyclomaticComplexity) // it's exactly five.
*
* @param Budget $budget
* @param Carbon $start
@@ -406,6 +407,7 @@ class BudgetController extends Controller
return response()->json($data);
}
+
/**
* @param Collection $accounts
* @param Carbon $start
@@ -514,8 +516,8 @@ class BudgetController extends Controller
return $return;
}
+ /** @noinspection MoreThanThreeArgumentsInspection */
/**
- * @SuppressWarnings(PHPMD.CyclomaticComplexity) // it's 6 but ok.
*
* @param Collection $limits
* @param Budget $budget
@@ -550,7 +552,6 @@ class BudgetController extends Controller
}
/**
- * @SuppressWarnings(PHPMD.CyclomaticComplexity) // it's exactly five.
*
* Returns an array with the following values:
* 0 =>
diff --git a/app/Http/Controllers/Chart/BudgetReportController.php b/app/Http/Controllers/Chart/BudgetReportController.php
index 6f433c0ad2..d769bb5c4a 100644
--- a/app/Http/Controllers/Chart/BudgetReportController.php
+++ b/app/Http/Controllers/Chart/BudgetReportController.php
@@ -66,6 +66,7 @@ class BudgetReportController extends Controller
);
}
+ /** @noinspection MoreThanThreeArgumentsInspection */
/**
* @param Collection $accounts
* @param Collection $budgets
@@ -90,6 +91,7 @@ class BudgetReportController extends Controller
return response()->json($data);
}
+ /** @noinspection MoreThanThreeArgumentsInspection */
/**
* @param Collection $accounts
* @param Collection $budgets
@@ -114,6 +116,7 @@ class BudgetReportController extends Controller
return response()->json($data);
}
+ /** @noinspection MoreThanThreeArgumentsInspection */
/**
* @param Collection $accounts
* @param Collection $budgets
@@ -197,6 +200,7 @@ class BudgetReportController extends Controller
return response()->json($data);
}
+ /** @noinspection MoreThanThreeArgumentsInspection */
/**
* Returns the budget limits belonging to the given budget and valid on the given day.
*
@@ -225,6 +229,7 @@ class BudgetReportController extends Controller
return $set;
}
+ /** @noinspection MoreThanThreeArgumentsInspection */
/**
* @param Collection $accounts
* @param Collection $budgets
diff --git a/app/Http/Controllers/Chart/CategoryController.php b/app/Http/Controllers/Chart/CategoryController.php
index 130c482aea..d7f5cfb2c9 100644
--- a/app/Http/Controllers/Chart/CategoryController.php
+++ b/app/Http/Controllers/Chart/CategoryController.php
@@ -51,6 +51,7 @@ class CategoryController extends Controller
$this->generator = app(GeneratorInterface::class);
}
+
/**
* Show an overview for a category for all time, per month/week/year.
*
@@ -116,6 +117,7 @@ class CategoryController extends Controller
return response()->json($data);
}
+
/**
* @param CategoryRepositoryInterface $repository
* @param AccountRepositoryInterface $accountRepository
@@ -156,16 +158,17 @@ class CategoryController extends Controller
return response()->json($data);
}
+
+ /** @noinspection MoreThanThreeArgumentsInspection */
/**
- * @param CategoryRepositoryInterface $repository
- * @param Category $category
- * @param Collection $accounts
- * @param Carbon $start
- * @param Carbon $end
+ * @param Category $category
+ * @param Collection $accounts
+ * @param Carbon $start
+ * @param Carbon $end
*
* @return \Illuminate\Http\JsonResponse|mixed
*/
- public function reportPeriod(CategoryRepositoryInterface $repository, Category $category, Collection $accounts, Carbon $start, Carbon $end)
+ public function reportPeriod(Category $category, Collection $accounts, Carbon $start, Carbon $end)
{
$cache = new CacheProperties;
$cache->addProperty($start);
@@ -176,10 +179,11 @@ class CategoryController extends Controller
if ($cache->has()) {
return $cache->get(); // @codeCoverageIgnore
}
- $expenses = $repository->periodExpenses(new Collection([$category]), $accounts, $start, $end);
- $income = $repository->periodIncome(new Collection([$category]), $accounts, $start, $end);
- $periods = app('navigation')->listOfPeriods($start, $end);
- $chartData = [
+ $repository = app(CategoryRepositoryInterface::class);
+ $expenses = $repository->periodExpenses(new Collection([$category]), $accounts, $start, $end);
+ $income = $repository->periodIncome(new Collection([$category]), $accounts, $start, $end);
+ $periods = app('navigation')->listOfPeriods($start, $end);
+ $chartData = [
[
'label' => (string)trans('firefly.spent'),
'entries' => [],
@@ -214,15 +218,15 @@ class CategoryController extends Controller
return response()->json($data);
}
+
/**
- * @param CategoryRepositoryInterface $repository
- * @param Collection $accounts
- * @param Carbon $start
- * @param Carbon $end
+ * @param Collection $accounts
+ * @param Carbon $start
+ * @param Carbon $end
*
* @return \Illuminate\Http\JsonResponse|mixed
*/
- public function reportPeriodNoCategory(CategoryRepositoryInterface $repository, Collection $accounts, Carbon $start, Carbon $end)
+ public function reportPeriodNoCategory(Collection $accounts, Carbon $start, Carbon $end)
{
$cache = new CacheProperties;
$cache->addProperty($start);
@@ -232,10 +236,11 @@ class CategoryController extends Controller
if ($cache->has()) {
return $cache->get(); // @codeCoverageIgnore
}
- $expenses = $repository->periodExpensesNoCategory($accounts, $start, $end);
- $income = $repository->periodIncomeNoCategory($accounts, $start, $end);
- $periods = app('navigation')->listOfPeriods($start, $end);
- $chartData = [
+ $repository = app(CategoryRepositoryInterface::class);
+ $expenses = $repository->periodExpensesNoCategory($accounts, $start, $end);
+ $income = $repository->periodIncomeNoCategory($accounts, $start, $end);
+ $periods = app('navigation')->listOfPeriods($start, $end);
+ $chartData = [
[
'label' => (string)trans('firefly.spent'),
'entries' => [],
@@ -270,31 +275,30 @@ class CategoryController extends Controller
}
/**
- * @param CategoryRepositoryInterface $repository
* @param Category $category
* @param $date
*
* @return \Symfony\Component\HttpFoundation\Response
*/
- public function specificPeriod(CategoryRepositoryInterface $repository, Category $category, Carbon $date)
+ public function specificPeriod(Category $category, Carbon $date)
{
$range = Preferences::get('viewRange', '1M')->data;
$start = app('navigation')->startOfPeriod($date, $range);
$end = app('navigation')->endOfPeriod($date, $range);
- $data = $this->makePeriodChart($repository, $category, $start, $end);
+ $data = $this->makePeriodChart($category, $start, $end);
return response()->json($data);
}
+
/**
- * @param CategoryRepositoryInterface $repository
- * @param Category $category
- * @param Carbon $start
- * @param Carbon $end
+ * @param Category $category
+ * @param Carbon $start
+ * @param Carbon $end
*
* @return array
*/
- private function makePeriodChart(CategoryRepositoryInterface $repository, Category $category, Carbon $start, Carbon $end)
+ private function makePeriodChart(Category $category, Carbon $start, Carbon $end)
{
$cache = new CacheProperties;
$cache->addProperty($start);
@@ -302,14 +306,16 @@ class CategoryController extends Controller
$cache->addProperty($category->id);
$cache->addProperty('chart.category.period-chart');
- /** @var AccountRepositoryInterface $accountRepository */
- $accountRepository = app(AccountRepositoryInterface::class);
- $accounts = $accountRepository->getAccountsByType([AccountType::DEFAULT, AccountType::ASSET]);
if ($cache->has()) {
return $cache->get(); // @codeCoverageIgnore
}
+ /** @var AccountRepositoryInterface $accountRepository */
+ $accountRepository = app(AccountRepositoryInterface::class);
+ $accounts = $accountRepository->getAccountsByType([AccountType::DEFAULT, AccountType::ASSET]);
+ $repository = app(CategoryRepositoryInterface::class);
+
// chart data
$chartData = [
[
diff --git a/app/Http/Controllers/Chart/CategoryReportController.php b/app/Http/Controllers/Chart/CategoryReportController.php
index 116fdce7d2..03b4180ad9 100644
--- a/app/Http/Controllers/Chart/CategoryReportController.php
+++ b/app/Http/Controllers/Chart/CategoryReportController.php
@@ -62,6 +62,7 @@ class CategoryReportController extends Controller
);
}
+ /** @noinspection MoreThanThreeArgumentsInspection */
/**
* @param Collection $accounts
* @param Collection $categories
@@ -83,6 +84,7 @@ class CategoryReportController extends Controller
return response()->json($data);
}
+ /** @noinspection MoreThanThreeArgumentsInspection */
/**
* @param Collection $accounts
* @param Collection $categories
@@ -107,6 +109,7 @@ class CategoryReportController extends Controller
return response()->json($data);
}
+ /** @noinspection MoreThanThreeArgumentsInspection */
/**
* @param Collection $accounts
* @param Collection $categories
@@ -131,6 +134,7 @@ class CategoryReportController extends Controller
return response()->json($data);
}
+ /** @noinspection MoreThanThreeArgumentsInspection */
/**
* @param Collection $accounts
* @param Collection $categories
@@ -155,6 +159,8 @@ class CategoryReportController extends Controller
return response()->json($data);
}
+
+ /** @noinspection MoreThanThreeArgumentsInspection */
/**
* @param Collection $accounts
* @param Collection $categories
@@ -260,6 +266,7 @@ class CategoryReportController extends Controller
return response()->json($data);
}
+ /** @noinspection MoreThanThreeArgumentsInspection */
/**
* @param Collection $accounts
* @param Collection $categories
@@ -282,6 +289,7 @@ class CategoryReportController extends Controller
return $collector->getJournals();
}
+ /** @noinspection MoreThanThreeArgumentsInspection */
/**
* @param Collection $accounts
* @param Collection $categories
diff --git a/app/Http/Controllers/Chart/ExpenseReportController.php b/app/Http/Controllers/Chart/ExpenseReportController.php
index 3848afe95f..7b44de228c 100644
--- a/app/Http/Controllers/Chart/ExpenseReportController.php
+++ b/app/Http/Controllers/Chart/ExpenseReportController.php
@@ -18,6 +18,7 @@
* You should have received a copy of the GNU General Public License
* along with Firefly III. If not, see .
*/
+/** @noinspection MoreThanThreeArgumentsInspection */
declare(strict_types=1);
namespace FireflyIII\Http\Controllers\Chart;
diff --git a/app/Http/Controllers/Chart/TagReportController.php b/app/Http/Controllers/Chart/TagReportController.php
index 552aa239a1..9fc5406a03 100644
--- a/app/Http/Controllers/Chart/TagReportController.php
+++ b/app/Http/Controllers/Chart/TagReportController.php
@@ -18,6 +18,7 @@
* You should have received a copy of the GNU General Public License
* along with Firefly III. If not, see .
*/
+/** @noinspection MoreThanThreeArgumentsInspection */
declare(strict_types=1);
namespace FireflyIII\Http\Controllers\Chart;
diff --git a/app/Http/Controllers/Controller.php b/app/Http/Controllers/Controller.php
index 0ecaf69901..3a9eaf8d48 100644
--- a/app/Http/Controllers/Controller.php
+++ b/app/Http/Controllers/Controller.php
@@ -145,6 +145,7 @@ class Controller extends BaseController
return TransactionType::OPENING_BALANCE === $journal->transactionType->type;
}
+
/**
* @param TransactionJournal $journal
*
@@ -157,7 +158,7 @@ class Controller extends BaseController
/** @var Transaction $transaction */
foreach ($transactions as $transaction) {
$account = $transaction->account;
- if (in_array($account->accountType->type, $valid, true)) {
+ if (\in_array($account->accountType->type, $valid, true)) {
return redirect(route('accounts.show', [$account->id]));
}
}
diff --git a/app/Http/Controllers/CurrencyController.php b/app/Http/Controllers/CurrencyController.php
index 67d62ea22f..7600f44082 100644
--- a/app/Http/Controllers/CurrencyController.php
+++ b/app/Http/Controllers/CurrencyController.php
@@ -63,6 +63,7 @@ class CurrencyController extends Controller
);
}
+
/**
* @param Request $request
*
@@ -97,7 +98,7 @@ class CurrencyController extends Controller
public function defaultCurrency(Request $request, TransactionCurrency $currency)
{
Preferences::set('currencyPreference', $currency->code);
- Preferences::mark();
+ app('preferences')->mark();
$request->session()->flash('success', trans('firefly.new_default_currency', ['name' => $currency->name]));
Cache::forget('FFCURRENCYSYMBOL');
@@ -106,6 +107,7 @@ class CurrencyController extends Controller
return redirect(route('currencies.index'));
}
+
/**
* @param Request $request
* @param TransactionCurrency $currency
@@ -135,6 +137,7 @@ class CurrencyController extends Controller
return view('currencies.delete', compact('currency', 'subTitle'));
}
+
/**
* @param Request $request
* @param TransactionCurrency $currency
@@ -163,6 +166,7 @@ class CurrencyController extends Controller
return redirect($this->getPreviousUri('currencies.delete.uri'));
}
+
/**
* @param Request $request
* @param TransactionCurrency $currency
@@ -195,7 +199,7 @@ class CurrencyController extends Controller
/**
* @param Request $request
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function index(Request $request)
{
@@ -222,6 +226,7 @@ class CurrencyController extends Controller
return view('currencies.index', compact('currencies', 'defaultCurrency', 'isOwner'));
}
+
/**
* @param CurrencyFormRequest $request
*
@@ -252,6 +257,7 @@ class CurrencyController extends Controller
return redirect($this->getPreviousUri('currencies.create.uri'));
}
+
/**
* @param CurrencyFormRequest $request
* @param TransactionCurrency $currency
@@ -271,7 +277,7 @@ class CurrencyController extends Controller
$data = $request->getCurrencyData();
$currency = $this->repository->update($currency, $data);
$request->session()->flash('success', trans('firefly.updated_currency', ['name' => $currency->name]));
- Preferences::mark();
+ app('preferences')->mark();
if (1 === (int)$request->get('return_to_edit')) {
// @codeCoverageIgnoreStart
diff --git a/app/Http/Controllers/DebugController.php b/app/Http/Controllers/DebugController.php
index 3ec6ee504d..9aca4ef65e 100644
--- a/app/Http/Controllers/DebugController.php
+++ b/app/Http/Controllers/DebugController.php
@@ -33,7 +33,6 @@ use Illuminate\Http\Request;
use Illuminate\Routing\Route;
use Log;
use Monolog\Handler\RotatingFileHandler;
-use Preferences;
use Route as RouteFacade;
/**
@@ -73,7 +72,7 @@ class DebugController extends Controller
*/
public function flush(Request $request)
{
- Preferences::mark();
+ app('preferences')->mark();
$request->session()->forget(['start', 'end', '_previous', 'viewRange', 'range', 'is_custom_range']);
Log::debug('Call cache:clear...');
Artisan::call('cache:clear');
@@ -235,7 +234,7 @@ class DebugController extends Controller
*/
protected function errorReporting(int $value): string
{
- $array = [
+ $array = [
-1 => 'ALL errors',
E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED => 'E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED',
E_ALL => 'E_ALL',
@@ -244,11 +243,12 @@ class DebugController extends Controller
E_ALL & ~E_NOTICE & ~E_STRICT => 'E_ALL & ~E_NOTICE & ~E_STRICT',
E_COMPILE_ERROR | E_RECOVERABLE_ERROR | E_ERROR | E_CORE_ERROR => 'E_COMPILE_ERROR|E_RECOVERABLE_ERROR|E_ERROR|E_CORE_ERROR',
];
+ $result = (string)$value;
if (isset($array[$value])) {
- return $array[$value];
+ $result = $array[$value];
}
- return (string)$value; // @codeCoverageIgnore
+ return $result;
}
/**
diff --git a/app/Http/Controllers/ExportController.php b/app/Http/Controllers/ExportController.php
index a6836ba004..27c3e655a7 100644
--- a/app/Http/Controllers/ExportController.php
+++ b/app/Http/Controllers/ExportController.php
@@ -32,7 +32,6 @@ use FireflyIII\Repositories\Account\AccountRepositoryInterface;
use FireflyIII\Repositories\ExportJob\ExportJobRepositoryInterface;
use Illuminate\Http\Response as LaravelResponse;
use Preferences;
-use View;
/**
* Class ExportController.
@@ -107,7 +106,7 @@ class ExportController extends Controller
/**
* @param ExportJobRepositoryInterface $jobs
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function index(ExportJobRepositoryInterface $jobs)
{
diff --git a/app/Http/Controllers/Import/IndexController.php b/app/Http/Controllers/Import/IndexController.php
index 4853c13e7f..f657afe4e2 100644
--- a/app/Http/Controllers/Import/IndexController.php
+++ b/app/Http/Controllers/Import/IndexController.php
@@ -30,7 +30,6 @@ use FireflyIII\Repositories\ImportJob\ImportJobRepositoryInterface;
use FireflyIII\Repositories\User\UserRepositoryInterface;
use Illuminate\Http\Response as LaravelResponse;
use Log;
-use View;
/**
* Class FileController.
@@ -180,7 +179,7 @@ class IndexController extends Controller
/**
* General import index.
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function index()
{
diff --git a/app/Http/Controllers/Json/AutoCompleteController.php b/app/Http/Controllers/Json/AutoCompleteController.php
index 87a8204244..caad1fdf63 100644
--- a/app/Http/Controllers/Json/AutoCompleteController.php
+++ b/app/Http/Controllers/Json/AutoCompleteController.php
@@ -160,6 +160,7 @@ class AutoCompleteController extends Controller
return response()->json($return);
}
+
/**
* @param JournalCollectorInterface $collector
* @param TransactionJournal $except
diff --git a/app/Http/Controllers/Json/BoxController.php b/app/Http/Controllers/Json/BoxController.php
index 8c8750cefc..0fd31941a4 100644
--- a/app/Http/Controllers/Json/BoxController.php
+++ b/app/Http/Controllers/Json/BoxController.php
@@ -41,6 +41,7 @@ use FireflyIII\Support\CacheProperties;
*/
class BoxController extends Controller
{
+
/**
* @param BudgetRepositoryInterface $repository
*
@@ -92,6 +93,7 @@ class BoxController extends Controller
return response()->json($return);
}
+
/**
* @param CurrencyRepositoryInterface $repository
*
@@ -173,6 +175,7 @@ class BoxController extends Controller
return response()->json($response);
}
+
/**
* @param BillRepositoryInterface $repository
*
@@ -208,6 +211,7 @@ class BoxController extends Controller
return response()->json($return);
}
+
/**
* @param AccountRepositoryInterface $repository
*
diff --git a/app/Http/Controllers/Json/ExchangeController.php b/app/Http/Controllers/Json/ExchangeController.php
index 34b8eeddd6..8e3eb16ac9 100644
--- a/app/Http/Controllers/Json/ExchangeController.php
+++ b/app/Http/Controllers/Json/ExchangeController.php
@@ -35,6 +35,7 @@ use Log;
*/
class ExchangeController extends Controller
{
+ /** @noinspection MoreThanThreeArgumentsInspection */
/**
* @param Request $request
* @param TransactionCurrency $fromCurrency
diff --git a/app/Http/Controllers/Json/IntroController.php b/app/Http/Controllers/Json/IntroController.php
index be974afb74..96a7a14aa7 100644
--- a/app/Http/Controllers/Json/IntroController.php
+++ b/app/Http/Controllers/Json/IntroController.php
@@ -31,16 +31,15 @@ use Log;
class IntroController
{
/**
- * Get the intro steps. There are currently no specific routes with an outro step.
- *
- * @param string $route
- * @param string $specificPage
+ * @param string $route
+ * @param string|null $specificPage
*
* @return \Illuminate\Http\JsonResponse
*/
- public function getIntroSteps(string $route, string $specificPage = '')
+ public function getIntroSteps(string $route, string $specificPage = null)
{
Log::debug(sprintf('getIntroSteps for route "%s" and page "%s"', $route, $specificPage));
+ $specificPage = $specificPage ?? '';
$steps = $this->getBasicSteps($route);
$specificSteps = $this->getSpecificSteps($route, $specificPage);
if (0 === \count($specificSteps)) {
@@ -90,15 +89,16 @@ class IntroController
}
/**
- * @param string $route
- * @param string $specialPage
+ * @param string $route
+ * @param string|null $specialPage
*
* @return \Illuminate\Http\JsonResponse
*/
- public function postEnable(string $route, string $specialPage = '')
+ public function postEnable(string $route, string $specialPage = null)
{
- $route = str_replace('.', '_', $route);
- $key = 'shown_demo_' . $route;
+ $specialPage = $specialPage ?? '';
+ $route = str_replace('.', '_', $route);
+ $key = 'shown_demo_' . $route;
if ('' !== $specialPage) {
$key .= '_' . $specialPage;
}
@@ -109,14 +109,15 @@ class IntroController
}
/**
- * @param string $route
- * @param string $specialPage
+ * @param string $route
+ * @param string|null $specialPage
*
* @return \Illuminate\Http\JsonResponse
*/
- public function postFinished(string $route, string $specialPage = '')
+ public function postFinished(string $route, string $specialPage = null)
{
- $key = 'shown_demo_' . $route;
+ $specialPage = $specialPage ?? '';
+ $key = 'shown_demo_' . $route;
if ('' !== $specialPage) {
$key .= '_' . $specialPage;
}
diff --git a/app/Http/Controllers/NewUserController.php b/app/Http/Controllers/NewUserController.php
index cf3d0223e0..2ef441b1c2 100644
--- a/app/Http/Controllers/NewUserController.php
+++ b/app/Http/Controllers/NewUserController.php
@@ -109,7 +109,7 @@ class NewUserController extends Controller
// store currency preference:
Preferences::set('currencyPreference', $currency->code);
- Preferences::mark();
+ app('preferences')->mark();
// set default optional fields:
$visibleFields = [
@@ -126,7 +126,7 @@ class NewUserController extends Controller
Preferences::set('transaction_journal_optional_fields', $visibleFields);
session()->flash('success', (string)trans('firefly.stored_new_accounts_new_user'));
- Preferences::mark();
+ app('preferences')->mark();
return redirect(route('index'));
}
diff --git a/app/Http/Controllers/PiggyBankController.php b/app/Http/Controllers/PiggyBankController.php
index fbfbf94505..2bfb9230d6 100644
--- a/app/Http/Controllers/PiggyBankController.php
+++ b/app/Http/Controllers/PiggyBankController.php
@@ -37,7 +37,6 @@ use Illuminate\Support\Collection;
use Log;
use Preferences;
use Symfony\Component\HttpFoundation\ParameterBag;
-use View;
/**
* Class PiggyBankController.
@@ -78,7 +77,7 @@ class PiggyBankController extends Controller
*
* @param PiggyBank $piggyBank
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function add(PiggyBank $piggyBank)
{
@@ -104,7 +103,7 @@ class PiggyBankController extends Controller
*
* @param PiggyBank $piggyBank
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function addMobile(PiggyBank $piggyBank)
{
@@ -145,7 +144,7 @@ class PiggyBankController extends Controller
/**
* @param PiggyBank $piggyBank
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function delete(PiggyBank $piggyBank)
{
@@ -165,7 +164,7 @@ class PiggyBankController extends Controller
public function destroy(PiggyBank $piggyBank)
{
session()->flash('success', (string)trans('firefly.deleted_piggy_bank', ['name' => $piggyBank->name]));
- Preferences::mark();
+ app('preferences')->mark();
$this->piggyRepos->destroy($piggyBank);
return redirect($this->getPreviousUri('piggy-banks.delete.uri'));
@@ -174,7 +173,7 @@ class PiggyBankController extends Controller
/**
* @param PiggyBank $piggyBank
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function edit(PiggyBank $piggyBank)
{
@@ -212,7 +211,7 @@ class PiggyBankController extends Controller
/**
* @param Request $request
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function index(Request $request)
{
@@ -286,7 +285,7 @@ class PiggyBankController extends Controller
['amount' => app('amount')->formatAnything($currency, $amount, false), 'name' => $piggyBank->name]
)
);
- Preferences::mark();
+ app('preferences')->mark();
return redirect(route('piggy-banks.index'));
}
@@ -326,7 +325,7 @@ class PiggyBankController extends Controller
['amount' => app('amount')->formatAnything($currency, $amount, false), 'name' => $piggyBank->name]
)
);
- Preferences::mark();
+ app('preferences')->mark();
return redirect(route('piggy-banks.index'));
}
@@ -347,7 +346,7 @@ class PiggyBankController extends Controller
/**
* @param PiggyBank $piggyBank
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function remove(PiggyBank $piggyBank)
{
@@ -367,7 +366,7 @@ class PiggyBankController extends Controller
*
* @param PiggyBank $piggyBank
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function removeMobile(PiggyBank $piggyBank)
{
@@ -400,7 +399,7 @@ class PiggyBankController extends Controller
/**
* @param PiggyBank $piggyBank
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function show(PiggyBank $piggyBank)
{
@@ -431,17 +430,19 @@ class PiggyBankController extends Controller
$piggyBank = $this->piggyRepos->store($data);
session()->flash('success', (string)trans('firefly.stored_piggy_bank', ['name' => $piggyBank->name]));
- Preferences::mark();
+ app('preferences')->mark();
+
+ $redirect = redirect($this->getPreviousUri('piggy-banks.create.uri'));
if (1 === (int)$request->get('create_another')) {
// @codeCoverageIgnoreStart
session()->put('piggy-banks.create.fromStore', true);
- return redirect(route('piggy-banks.create'))->withInput();
+ $redirect = redirect(route('piggy-banks.create'))->withInput();
// @codeCoverageIgnoreEnd
}
- return redirect($this->getPreviousUri('piggy-banks.create.uri'));
+ return $redirect;
}
/**
@@ -456,16 +457,18 @@ class PiggyBankController extends Controller
$piggyBank = $this->piggyRepos->update($piggyBank, $data);
session()->flash('success', (string)trans('firefly.updated_piggy_bank', ['name' => $piggyBank->name]));
- Preferences::mark();
+ app('preferences')->mark();
+
+ $redirect = redirect($this->getPreviousUri('piggy-banks.edit.uri'));
if (1 === (int)$request->get('return_to_edit')) {
// @codeCoverageIgnoreStart
session()->put('piggy-banks.edit.fromUpdate', true);
- return redirect(route('piggy-banks.edit', [$piggyBank->id]));
+ $redirect = redirect(route('piggy-banks.edit', [$piggyBank->id]));
// @codeCoverageIgnoreEnd
}
- return redirect($this->getPreviousUri('piggy-banks.edit.uri'));
+ return $redirect;
}
}
diff --git a/app/Http/Controllers/PreferencesController.php b/app/Http/Controllers/PreferencesController.php
index 734c1d301f..8a3c280ab9 100644
--- a/app/Http/Controllers/PreferencesController.php
+++ b/app/Http/Controllers/PreferencesController.php
@@ -26,7 +26,6 @@ use FireflyIII\Models\AccountType;
use FireflyIII\Repositories\Account\AccountRepositoryInterface;
use Illuminate\Http\Request;
use Preferences;
-use View;
/**
* Class PreferencesController.
@@ -53,7 +52,7 @@ class PreferencesController extends Controller
/**
* @param AccountRepositoryInterface $repository
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function index(AccountRepositoryInterface $repository)
{
@@ -141,7 +140,7 @@ class PreferencesController extends Controller
Preferences::set('transaction_journal_optional_fields', $optionalTj);
session()->flash('success', (string)trans('firefly.saved_preferences'));
- Preferences::mark();
+ app('preferences')->mark();
return redirect(route('preferences.index'));
}
diff --git a/app/Http/Controllers/ProfileController.php b/app/Http/Controllers/ProfileController.php
index e7cbbf9f46..8076bbd8ec 100644
--- a/app/Http/Controllers/ProfileController.php
+++ b/app/Http/Controllers/ProfileController.php
@@ -44,7 +44,6 @@ use Laravel\Passport\Passport;
use Log;
use phpseclib\Crypt\RSA;
use Preferences;
-use View;
/**
* Class ProfileController.
@@ -73,7 +72,7 @@ class ProfileController extends Controller
}
/**
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function changeEmail()
{
@@ -86,7 +85,7 @@ class ProfileController extends Controller
}
/**
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function changePassword()
{
@@ -100,7 +99,7 @@ class ProfileController extends Controller
/**
* View that generates a 2FA code for the user.
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function code()
{
@@ -149,7 +148,7 @@ class ProfileController extends Controller
}
/**
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function deleteAccount()
{
@@ -199,7 +198,7 @@ class ProfileController extends Controller
}
/**
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function index()
{
@@ -302,7 +301,6 @@ class ProfileController extends Controller
* @param TokenFormRequest $request
*
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector
- * @SuppressWarnings(PHPMD.UnusedFormalParameter) // it's unused but the class does some validation.
*/
public function postCode(TokenFormRequest $request)
{
@@ -310,7 +308,7 @@ class ProfileController extends Controller
Preferences::set('twoFactorAuthSecret', session()->get('two-factor-secret'));
session()->flash('success', (string)trans('firefly.saved_preferences'));
- Preferences::mark();
+ app('preferences')->mark();
return redirect(route('profile.index'));
}
diff --git a/app/Http/Controllers/Recurring/CreateController.php b/app/Http/Controllers/Recurring/CreateController.php
index 817f6f73dd..559ad1b444 100644
--- a/app/Http/Controllers/Recurring/CreateController.php
+++ b/app/Http/Controllers/Recurring/CreateController.php
@@ -113,6 +113,7 @@ class CreateController extends Controller
);
}
+
/**
* @param RecurrenceFormRequest $request
*
@@ -126,16 +127,16 @@ class CreateController extends Controller
$request->session()->flash('success', (string)trans('firefly.stored_new_recurrence', ['title' => $recurrence->title]));
app('preferences')->mark();
-
+ $redirect = redirect($this->getPreviousUri('recurring.create.uri'));
if (1 === (int)$request->get('create_another')) {
// set value so create routine will not overwrite URL:
$request->session()->put('recurring.create.fromStore', true);
- return redirect(route('recurring.create'))->withInput();
+ $redirect = redirect(route('recurring.create'))->withInput();
}
// redirect to previous URL.
- return redirect($this->getPreviousUri('recurring.create.uri'));
+ return $redirect;
}
diff --git a/app/Http/Controllers/Recurring/EditController.php b/app/Http/Controllers/Recurring/EditController.php
index e78b8a820f..6438361472 100644
--- a/app/Http/Controllers/Recurring/EditController.php
+++ b/app/Http/Controllers/Recurring/EditController.php
@@ -153,16 +153,16 @@ class EditController extends Controller
$request->session()->flash('success', (string)trans('firefly.updated_recurrence', ['title' => $recurrence->title]));
app('preferences')->mark();
-
+ $redirect = redirect($this->getPreviousUri('recurrences.edit.uri'));
if (1 === (int)$request->get('return_to_edit')) {
// set value so edit routine will not overwrite URL:
$request->session()->put('recurrences.edit.fromUpdate', true);
- return redirect(route('recurring.edit', [$recurrence->id]))->withInput(['return_to_edit' => 1]);
+ $redirect = redirect(route('recurring.edit', [$recurrence->id]))->withInput(['return_to_edit' => 1]);
}
// redirect to previous URL.
- return redirect($this->getPreviousUri('recurrences.edit.uri'));
+ return $redirect;
}
diff --git a/app/Http/Controllers/Report/AccountController.php b/app/Http/Controllers/Report/AccountController.php
index c7c8ff447f..8e29812af5 100644
--- a/app/Http/Controllers/Report/AccountController.php
+++ b/app/Http/Controllers/Report/AccountController.php
@@ -33,6 +33,7 @@ use Illuminate\Support\Collection;
*/
class AccountController extends Controller
{
+
/**
* @param Collection $accounts
* @param Carbon $start
diff --git a/app/Http/Controllers/Report/BalanceController.php b/app/Http/Controllers/Report/BalanceController.php
index 3b31be87de..992845aa09 100644
--- a/app/Http/Controllers/Report/BalanceController.php
+++ b/app/Http/Controllers/Report/BalanceController.php
@@ -33,17 +33,18 @@ use Illuminate\Support\Collection;
*/
class BalanceController extends Controller
{
+
/**
- * @param BalanceReportHelperInterface $helper
- * @param Collection $accounts
- * @param Carbon $start
- * @param Carbon $end
+ * @param Collection $accounts
+ * @param Carbon $start
+ * @param Carbon $end
*
* @return mixed|string
* @throws \Throwable
*/
- public function general(BalanceReportHelperInterface $helper, Collection $accounts, Carbon $start, Carbon $end)
+ public function general(Collection $accounts, Carbon $start, Carbon $end)
{
+
// chart properties for cache:
$cache = new CacheProperties;
$cache->addProperty($start);
@@ -53,7 +54,7 @@ class BalanceController extends Controller
if ($cache->has()) {
return $cache->get(); // @codeCoverageIgnore
}
-
+ $helper = app(BalanceReportHelperInterface::class);
$balance = $helper->getBalanceReport($accounts, $start, $end);
$result = view('reports.partials.balance', compact('balance'))->render();
diff --git a/app/Http/Controllers/Report/BudgetController.php b/app/Http/Controllers/Report/BudgetController.php
index 7a129f3fa7..44ba71d683 100644
--- a/app/Http/Controllers/Report/BudgetController.php
+++ b/app/Http/Controllers/Report/BudgetController.php
@@ -34,16 +34,16 @@ use Illuminate\Support\Collection;
*/
class BudgetController extends Controller
{
+
/**
- * @param BudgetReportHelperInterface $helper
- * @param Collection $accounts
- * @param Carbon $start
- * @param Carbon $end
+ * @param Collection $accounts
+ * @param Carbon $start
+ * @param Carbon $end
*
* @return mixed|string
* @throws \Throwable
*/
- public function general(BudgetReportHelperInterface $helper, Collection $accounts, Carbon $start, Carbon $end)
+ public function general(Collection $accounts, Carbon $start, Carbon $end)
{
// chart properties for cache:
$cache = new CacheProperties;
@@ -54,7 +54,7 @@ class BudgetController extends Controller
if ($cache->has()) {
return $cache->get(); // @codeCoverageIgnore
}
-
+ $helper = app(BudgetReportHelperInterface::class);
$budgets = $helper->getBudgetReport($start, $end, $accounts);
$result = view('reports.partials.budgets', compact('budgets'))->render();
@@ -63,6 +63,7 @@ class BudgetController extends Controller
return $result;
}
+
/**
* @param Collection $accounts
* @param Carbon $start
diff --git a/app/Http/Controllers/Report/CategoryController.php b/app/Http/Controllers/Report/CategoryController.php
index 5b182a8e7e..6df7eec8e3 100644
--- a/app/Http/Controllers/Report/CategoryController.php
+++ b/app/Http/Controllers/Report/CategoryController.php
@@ -34,6 +34,7 @@ use Illuminate\Support\Collection;
*/
class CategoryController extends Controller
{
+
/**
* @param Collection $accounts
* @param Carbon $start
@@ -66,6 +67,7 @@ class CategoryController extends Controller
return $result;
}
+
/**
* @param Collection $accounts
*
@@ -99,6 +101,7 @@ class CategoryController extends Controller
return $result;
}
+
/**
* @param Collection $accounts
* @param Carbon $start
diff --git a/app/Http/Controllers/Report/ExpenseController.php b/app/Http/Controllers/Report/ExpenseController.php
index 4869ac785e..2a23efb99a 100644
--- a/app/Http/Controllers/Report/ExpenseController.php
+++ b/app/Http/Controllers/Report/ExpenseController.php
@@ -18,6 +18,7 @@
* You should have received a copy of the GNU General Public License
* along with Firefly III. If not, see .
*/
+/** @noinspection MoreThanThreeArgumentsInspection */
declare(strict_types=1);
namespace FireflyIII\Http\Controllers\Report;
@@ -58,6 +59,7 @@ class ExpenseController extends Controller
);
}
+
/**
* Generates the overview per budget.
*
@@ -104,6 +106,7 @@ class ExpenseController extends Controller
return $result;
}
+
/**
* Generates the overview per category (spent and earned).
*
@@ -160,6 +163,7 @@ class ExpenseController extends Controller
return $result;
}
+
/**
* Overview of spending
*
@@ -206,6 +210,7 @@ class ExpenseController extends Controller
// for period, get spent and earned for each account (by name)
}
+
/**
* @param Collection $accounts
* @param Collection $expense
diff --git a/app/Http/Controllers/Report/OperationsController.php b/app/Http/Controllers/Report/OperationsController.php
index 2164c57749..fc0777852e 100644
--- a/app/Http/Controllers/Report/OperationsController.php
+++ b/app/Http/Controllers/Report/OperationsController.php
@@ -33,16 +33,37 @@ use Illuminate\Support\Collection;
*/
class OperationsController extends Controller
{
+
+ /** @var AccountTaskerInterface */
+ private $tasker;
+
/**
- * @param AccountTaskerInterface $tasker
- * @param Collection $accounts
- * @param Carbon $start
- * @param Carbon $end
+ *
+ */
+ public function __construct()
+ {
+ parent::__construct();
+
+ // translations:
+ $this->middleware(
+ function ($request, $next) {
+ $this->tasker = app(AccountTaskerInterface::class);
+
+ return $next($request);
+ }
+ );
+ }
+
+
+ /**
+ * @param Collection $accounts
+ * @param Carbon $start
+ * @param Carbon $end
*
* @return mixed|string
* @throws \Throwable
*/
- public function expenses(AccountTaskerInterface $tasker, Collection $accounts, Carbon $start, Carbon $end)
+ public function expenses(Collection $accounts, Carbon $start, Carbon $end)
{
// chart properties for cache:
$cache = new CacheProperties;
@@ -53,7 +74,7 @@ class OperationsController extends Controller
if ($cache->has()) {
return $cache->get(); // @codeCoverageIgnore
}
- $entries = $tasker->getExpenseReport($start, $end, $accounts);
+ $entries = $this->tasker->getExpenseReport($start, $end, $accounts);
$type = 'expense-entry';
$result = view('reports.partials.income-expenses', compact('entries', 'type'))->render();
$cache->store($result);
@@ -62,15 +83,14 @@ class OperationsController extends Controller
}
/**
- * @param AccountTaskerInterface $tasker
- * @param Collection $accounts
- * @param Carbon $start
- * @param Carbon $end
+ * @param Collection $accounts
+ * @param Carbon $start
+ * @param Carbon $end
*
* @return string
* @throws \Throwable
*/
- public function income(AccountTaskerInterface $tasker, Collection $accounts, Carbon $start, Carbon $end)
+ public function income(Collection $accounts, Carbon $start, Carbon $end)
{
// chart properties for cache:
$cache = new CacheProperties;
@@ -81,7 +101,7 @@ class OperationsController extends Controller
if ($cache->has()) {
return $cache->get(); // @codeCoverageIgnore
}
- $entries = $tasker->getIncomeReport($start, $end, $accounts);
+ $entries = $this->tasker->getIncomeReport($start, $end, $accounts);
$type = 'income-entry';
$result = view('reports.partials.income-expenses', compact('entries', 'type'))->render();
@@ -91,15 +111,14 @@ class OperationsController extends Controller
}
/**
- * @param AccountTaskerInterface $tasker
- * @param Collection $accounts
- * @param Carbon $start
- * @param Carbon $end
+ * @param Collection $accounts
+ * @param Carbon $start
+ * @param Carbon $end
*
* @return mixed|string
* @throws \Throwable
*/
- public function operations(AccountTaskerInterface $tasker, Collection $accounts, Carbon $start, Carbon $end)
+ public function operations(Collection $accounts, Carbon $start, Carbon $end)
{
// chart properties for cache:
$cache = new CacheProperties;
@@ -111,8 +130,8 @@ class OperationsController extends Controller
return $cache->get(); // @codeCoverageIgnore
}
- $incomes = $tasker->getIncomeReport($start, $end, $accounts);
- $expenses = $tasker->getExpenseReport($start, $end, $accounts);
+ $incomes = $this->tasker->getIncomeReport($start, $end, $accounts);
+ $expenses = $this->tasker->getExpenseReport($start, $end, $accounts);
$incomeSum = array_sum(
array_map(
function ($item) {
diff --git a/app/Http/Controllers/ReportController.php b/app/Http/Controllers/ReportController.php
index b1e5c00242..0b88b9599c 100644
--- a/app/Http/Controllers/ReportController.php
+++ b/app/Http/Controllers/ReportController.php
@@ -18,6 +18,8 @@
* You should have received a copy of the GNU General Public License
* along with Firefly III. If not, see .
*/
+/** @noinspection CallableParameterUseCaseInTypeContextInspection */
+/** @noinspection MoreThanThreeArgumentsInspection */
declare(strict_types=1);
namespace FireflyIII\Http\Controllers;
@@ -256,7 +258,7 @@ class ReportController extends Controller
/**
* @param AccountRepositoryInterface $repository
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function index(AccountRepositoryInterface $repository)
{
@@ -307,7 +309,6 @@ class ReportController extends Controller
* @return RedirectResponse|\Illuminate\Routing\Redirector
*
* @throws \FireflyIII\Exceptions\FireflyException
- * @SuppressWarnings(PHPMD.CyclomaticComplexity)
*/
public function postIndex(ReportFormRequest $request)
{
@@ -329,19 +330,19 @@ class ReportController extends Controller
return redirect(route('reports.index'));
}
- if (0 === $request->getCategoryList()->count() && 'category' === $reportType) {
+ if ('category' === $reportType && 0 === $request->getCategoryList()->count()) {
session()->flash('error', trans('firefly.select_more_than_one_category'));
return redirect(route('reports.index'));
}
- if (0 === $request->getBudgetList()->count() && 'budget' === $reportType) {
+ if ('budget' === $reportType && 0 === $request->getBudgetList()->count()) {
session()->flash('error', trans('firefly.select_more_than_one_budget'));
return redirect(route('reports.index'));
}
- if (0 === $request->getTagList()->count() && 'tag' === $reportType) {
+ if ('tag' === $reportType && 0 === $request->getTagList()->count()) {
session()->flash('error', trans('firefly.select_more_than_one_tag'));
return redirect(route('reports.index'));
diff --git a/app/Http/Controllers/RuleController.php b/app/Http/Controllers/RuleController.php
index 655a4ae34d..67050297c9 100644
--- a/app/Http/Controllers/RuleController.php
+++ b/app/Http/Controllers/RuleController.php
@@ -42,9 +42,7 @@ use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
use Illuminate\Support\Collection;
use Log;
-use Preferences;
use Throwable;
-use View;
/**
* Class RuleController.
@@ -88,8 +86,7 @@ class RuleController extends Controller
* @param Request $request
* @param RuleGroup $ruleGroup
*
- * @return View
- *
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function create(Request $request, RuleGroup $ruleGroup)
{
@@ -158,7 +155,7 @@ class RuleController extends Controller
*
* @param Rule $rule
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function delete(Rule $rule)
{
@@ -183,7 +180,7 @@ class RuleController extends Controller
$this->ruleRepos->destroy($rule);
session()->flash('success', trans('firefly.deleted_rule', ['title' => $title]));
- Preferences::mark();
+ app('preferences')->mark();
return redirect($this->getPreviousUri('rules.delete.uri'));
}
@@ -204,8 +201,7 @@ class RuleController extends Controller
* @param Request $request
* @param Rule $rule
*
- * @return View
- *
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function edit(Request $request, Rule $rule)
{
@@ -288,7 +284,7 @@ class RuleController extends Controller
}
/**
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function index()
{
@@ -356,7 +352,7 @@ class RuleController extends Controller
$data = $request->getRuleData();
$rule = $this->ruleRepos->store($data);
session()->flash('success', trans('firefly.stored_new_rule', ['title' => $rule->title]));
- Preferences::mark();
+ app('preferences')->mark();
// redirect to show bill.
if ('true' === $request->get('return_to_bill') && (int)$request->get('bill_id') > 0) {
@@ -368,16 +364,16 @@ class RuleController extends Controller
return redirect($this->getPreviousUri('bills.create.uri')); // @codeCoverageIgnore
}
+ $redirect = redirect($this->getPreviousUri('rules.create.uri'));
if (1 === (int)$request->get('create_another')) {
// @codeCoverageIgnoreStart
session()->put('rules.create.fromStore', true);
-
- return redirect(route('rules.create', [$data['rule_group_id']]))->withInput();
+ $redirect = redirect(route('rules.create', [$data['rule_group_id']]))->withInput();
// @codeCoverageIgnoreEnd
}
- return redirect($this->getPreviousUri('rules.create.uri'));
+ return $redirect;
}
/**
@@ -529,17 +525,17 @@ class RuleController extends Controller
$this->ruleRepos->update($rule, $data);
session()->flash('success', trans('firefly.updated_rule', ['title' => $rule->title]));
- Preferences::mark();
-
+ app('preferences')->mark();
+ $redirect = redirect($this->getPreviousUri('rules.edit.uri'));
if (1 === (int)$request->get('return_to_edit')) {
// @codeCoverageIgnoreStart
session()->put('rules.edit.fromUpdate', true);
- return redirect(route('rules.edit', [$rule->id]))->withInput(['return_to_edit' => 1]);
+ $redirect = redirect(route('rules.edit', [$rule->id]))->withInput(['return_to_edit' => 1]);
// @codeCoverageIgnoreEnd
}
- return redirect($this->getPreviousUri('rules.edit.uri'));
+ return $redirect;
}
/**
diff --git a/app/Http/Controllers/RuleGroupController.php b/app/Http/Controllers/RuleGroupController.php
index 27d3005ee5..a0c20b3d37 100644
--- a/app/Http/Controllers/RuleGroupController.php
+++ b/app/Http/Controllers/RuleGroupController.php
@@ -30,8 +30,6 @@ use FireflyIII\Models\RuleGroup;
use FireflyIII\Repositories\Account\AccountRepositoryInterface;
use FireflyIII\Repositories\RuleGroup\RuleGroupRepositoryInterface;
use Illuminate\Http\Request;
-use Preferences;
-use View;
/**
* Class RuleGroupController.
@@ -56,7 +54,7 @@ class RuleGroupController extends Controller
}
/**
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function create()
{
@@ -75,7 +73,7 @@ class RuleGroupController extends Controller
/**
* @param RuleGroup $ruleGroup
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function delete(RuleGroup $ruleGroup)
{
@@ -102,7 +100,7 @@ class RuleGroupController extends Controller
$repository->destroy($ruleGroup, $moveTo);
session()->flash('success', (string)trans('firefly.deleted_rule_group', ['title' => $title]));
- Preferences::mark();
+ app('preferences')->mark();
return redirect($this->getPreviousUri('rule-groups.delete.uri'));
}
@@ -183,7 +181,7 @@ class RuleGroupController extends Controller
/**
* @param RuleGroup $ruleGroup
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function selectTransactions(RuleGroup $ruleGroup)
{
@@ -206,17 +204,18 @@ class RuleGroupController extends Controller
$ruleGroup = $repository->store($data);
session()->flash('success', (string)trans('firefly.created_new_rule_group', ['title' => $ruleGroup->title]));
- Preferences::mark();
+ app('preferences')->mark();
+ $redirect = redirect($this->getPreviousUri('rule-groups.create.uri'));
if (1 === (int)$request->get('create_another')) {
// @codeCoverageIgnoreStart
session()->put('rule-groups.create.fromStore', true);
- return redirect(route('rule-groups.create'))->withInput();
+ $redirect = redirect(route('rule-groups.create'))->withInput();
// @codeCoverageIgnoreEnd
}
- return redirect($this->getPreviousUri('rule-groups.create.uri'));
+ return $redirect;
}
/**
@@ -250,17 +249,17 @@ class RuleGroupController extends Controller
$repository->update($ruleGroup, $data);
session()->flash('success', (string)trans('firefly.updated_rule_group', ['title' => $ruleGroup->title]));
- Preferences::mark();
-
+ app('preferences')->mark();
+ $redirect = redirect($this->getPreviousUri('rule-groups.edit.uri'));
if (1 === (int)$request->get('return_to_edit')) {
// @codeCoverageIgnoreStart
session()->put('rule-groups.edit.fromUpdate', true);
- return redirect(route('rule-groups.edit', [$ruleGroup->id]))->withInput(['return_to_edit' => 1]);
+ $redirect = redirect(route('rule-groups.edit', [$ruleGroup->id]))->withInput(['return_to_edit' => 1]);
// @codeCoverageIgnoreEnd
}
// redirect to previous URL.
- return redirect($this->getPreviousUri('rule-groups.edit.uri'));
+ return $redirect;
}
}
diff --git a/app/Http/Controllers/SearchController.php b/app/Http/Controllers/SearchController.php
index 4baf91f083..cdea90db85 100644
--- a/app/Http/Controllers/SearchController.php
+++ b/app/Http/Controllers/SearchController.php
@@ -26,7 +26,6 @@ use FireflyIII\Support\CacheProperties;
use FireflyIII\Support\Search\SearchInterface;
use Illuminate\Http\Request;
use Illuminate\Support\Collection;
-use View;
/**
* Class SearchController.
@@ -54,7 +53,7 @@ class SearchController extends Controller
* @param Request $request
* @param SearchInterface $searcher
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function index(Request $request, SearchInterface $searcher)
{
diff --git a/app/Http/Controllers/TagController.php b/app/Http/Controllers/TagController.php
index 247ef130e3..c67193287e 100644
--- a/app/Http/Controllers/TagController.php
+++ b/app/Http/Controllers/TagController.php
@@ -63,9 +63,7 @@ class TagController extends Controller
}
/**
- * Create a new tag.
- *
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function create()
{
@@ -86,7 +84,7 @@ class TagController extends Controller
*
* @param Tag $tag
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function delete(Tag $tag)
{
@@ -119,7 +117,7 @@ class TagController extends Controller
*
* @param Tag $tag
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function edit(Tag $tag)
{
@@ -136,11 +134,11 @@ class TagController extends Controller
}
/**
- * View all tags.
+ * Edit a tag.
*
* @param TagRepositoryInterface $repository
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function index(TagRepositoryInterface $repository)
{
@@ -164,16 +162,16 @@ class TagController extends Controller
}
/**
- * @param Request $request
- * @param TagRepositoryInterface $repository
- * @param Tag $tag
- * @param string $moment
+ * @param Request $request
+ * @param Tag $tag
+ * @param string|null $moment
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
- public function show(Request $request, TagRepositoryInterface $repository, Tag $tag, string $moment = '')
+ public function show(Request $request, Tag $tag, string $moment = null)
{
// default values:
+ $moment = $moment ?? '';
$subTitle = $tag->tag;
$subTitleIcon = 'fa-tag';
$page = (int)$request->get('page');
@@ -187,7 +185,7 @@ class TagController extends Controller
// prep for "all" view.
if ('all' === $moment) {
$subTitle = trans('firefly.all_journals_for_tag', ['tag' => $tag->tag]);
- $start = $repository->firstUseDate($tag);
+ $start = $this->repository->firstUseDate($tag);
$end = new Carbon;
$path = route('tags.show', [$tag->id, 'all']);
}
@@ -225,7 +223,7 @@ class TagController extends Controller
$transactions = $collector->getPaginatedJournals();
$transactions->setPath($path);
- $sums = $repository->sumsOfTag($tag, $start, $end);
+ $sums = $this->repository->sumsOfTag($tag, $start, $end);
return view('tags.show', compact('tag', 'sums', 'periods', 'subTitle', 'subTitleIcon', 'transactions', 'start', 'end', 'moment'));
}
@@ -243,15 +241,17 @@ class TagController extends Controller
session()->flash('success', (string)trans('firefly.created_tag', ['tag' => $data['tag']]));
app('preferences')->mark();
+ $redirect = redirect($this->getPreviousUri('tags.create.uri'));
if (1 === (int)$request->get('create_another')) {
// @codeCoverageIgnoreStart
session()->put('tags.create.fromStore', true);
- return redirect(route('tags.create'))->withInput();
+ $redirect = redirect(route('tags.create'))->withInput();
// @codeCoverageIgnoreEnd
}
- return redirect($this->getPreviousUri('tags.create.uri'));
+ return $redirect;
+
}
/**
@@ -268,16 +268,17 @@ class TagController extends Controller
session()->flash('success', (string)trans('firefly.updated_tag', ['tag' => $data['tag']]));
app('preferences')->mark();
+ $redirect = redirect($this->getPreviousUri('tags.edit.uri'));
if (1 === (int)$request->get('return_to_edit')) {
// @codeCoverageIgnoreStart
session()->put('tags.edit.fromUpdate', true);
- return redirect(route('tags.edit', [$tag->id]))->withInput(['return_to_edit' => 1]);
+ $redirect = redirect(route('tags.edit', [$tag->id]))->withInput(['return_to_edit' => 1]);
// @codeCoverageIgnoreEnd
}
// redirect to previous URL.
- return redirect($this->getPreviousUri('tags.edit.uri'));
+ return $redirect;
}
/**
diff --git a/app/Http/Controllers/Transaction/BulkController.php b/app/Http/Controllers/Transaction/BulkController.php
index 3c49398d12..a2648b35e1 100644
--- a/app/Http/Controllers/Transaction/BulkController.php
+++ b/app/Http/Controllers/Transaction/BulkController.php
@@ -32,8 +32,6 @@ use FireflyIII\Repositories\Budget\BudgetRepositoryInterface;
use FireflyIII\Repositories\Journal\JournalRepositoryInterface;
use Illuminate\Support\Collection;
use Log;
-use Preferences;
-use View;
/**
* Class BulkController
@@ -45,7 +43,7 @@ class BulkController extends Controller
/**
- *
+ * BulkController constructor.
*/
public function __construct()
{
@@ -65,7 +63,7 @@ class BulkController extends Controller
/**
* @param Collection $journals
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function edit(Collection $journals)
{
@@ -129,7 +127,7 @@ class BulkController extends Controller
}
}
- Preferences::mark();
+ app('preferences')->mark();
$request->session()->flash('success', trans('firefly.mass_edited_transactions_success', ['amount' => $count]));
// redirect to previous URL:
diff --git a/app/Http/Controllers/Transaction/ConvertController.php b/app/Http/Controllers/Transaction/ConvertController.php
index 6a4b644244..c6f45d7790 100644
--- a/app/Http/Controllers/Transaction/ConvertController.php
+++ b/app/Http/Controllers/Transaction/ConvertController.php
@@ -61,6 +61,7 @@ class ConvertController extends Controller
);
}
+
/**
* @param TransactionType $destinationType
* @param TransactionJournal $journal
@@ -109,6 +110,7 @@ class ConvertController extends Controller
);
}
+
/**
* @param Request $request
* @param TransactionType $destinationType
@@ -124,6 +126,7 @@ class ConvertController extends Controller
// @codeCoverageIgnoreStart
if ($this->isOpeningBalance($journal)) {
Log::debug('Journal is opening balance, return to account.');
+
return $this->redirectToAccount($journal);
}
// @codeCoverageIgnoreEnd
@@ -160,6 +163,7 @@ class ConvertController extends Controller
return redirect(route('transactions.show', [$journal->id]));
}
+
/**
* @param TransactionJournal $journal
* @param TransactionType $destinationType
@@ -215,6 +219,7 @@ class ConvertController extends Controller
return $destination;
}
+
/**
* @param TransactionJournal $journal
* @param TransactionType $destinationType
diff --git a/app/Http/Controllers/Transaction/LinkController.php b/app/Http/Controllers/Transaction/LinkController.php
index 686b73c082..eca642a990 100644
--- a/app/Http/Controllers/Transaction/LinkController.php
+++ b/app/Http/Controllers/Transaction/LinkController.php
@@ -29,7 +29,6 @@ use FireflyIII\Models\TransactionJournalLink;
use FireflyIII\Repositories\Journal\JournalRepositoryInterface;
use FireflyIII\Repositories\LinkType\LinkTypeRepositoryInterface;
use Log;
-use Preferences;
use URL;
/**
@@ -86,7 +85,7 @@ class LinkController extends Controller
$this->repository->destroyLink($link);
session()->flash('success', (string)trans('firefly.deleted_link'));
- Preferences::mark();
+ app('preferences')->mark();
return redirect((string)session('journal_links.delete.uri'));
}
diff --git a/app/Http/Controllers/Transaction/MassController.php b/app/Http/Controllers/Transaction/MassController.php
index ae043d9c19..cebd47ef29 100644
--- a/app/Http/Controllers/Transaction/MassController.php
+++ b/app/Http/Controllers/Transaction/MassController.php
@@ -37,7 +37,6 @@ use FireflyIII\Repositories\Journal\JournalRepositoryInterface;
use FireflyIII\Transformers\TransactionTransformer;
use Illuminate\Support\Collection;
use Illuminate\View\View as IlluminateView;
-use Preferences;
use Symfony\Component\HttpFoundation\ParameterBag;
/**
@@ -109,7 +108,7 @@ class MassController extends Controller
++$count;
}
- Preferences::mark();
+ app('preferences')->mark();
session()->flash('success', trans('firefly.mass_deleted_transactions_success', ['amount' => $count]));
// redirect to previous URL:
@@ -241,7 +240,7 @@ class MassController extends Controller
}
}
}
- Preferences::mark();
+ app('preferences')->mark();
session()->flash('success', trans('firefly.mass_edited_transactions_success', ['amount' => $count]));
// redirect to previous URL:
diff --git a/app/Http/Controllers/Transaction/SingleController.php b/app/Http/Controllers/Transaction/SingleController.php
index d0358b7a8b..261119e15b 100644
--- a/app/Http/Controllers/Transaction/SingleController.php
+++ b/app/Http/Controllers/Transaction/SingleController.php
@@ -135,14 +135,14 @@ class SingleController extends Controller
}
/**
- * @param Request $request
- * @param string $what
+ * @param Request $request
+ * @param string|null $what
*
- * @return View
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
- public function create(Request $request, string $what = TransactionType::DEPOSIT)
+ public function create(Request $request, string $what = null)
{
- $what = strtolower($what);
+ $what = strtolower($what ?? TransactionType::DEPOSIT);
$what = (string)($request->old('what') ?? $what);
$budgets = ExpandedForm::makeSelectListWithEmpty($this->budgets->getActiveBudgets());
$preFilled = session()->has('preFilled') ? session('preFilled') : [];
@@ -220,7 +220,7 @@ class SingleController extends Controller
$this->repository->destroy($transactionJournal);
- Preferences::mark();
+ app('preferences')->mark();
return redirect($this->getPreviousUri('transactions.delete.uri'));
}
@@ -296,7 +296,7 @@ class SingleController extends Controller
// amounts for withdrawals and deposits:
// amount, native_amount, source_amount, destination_amount
- if (($journal->isWithdrawal() || $journal->isDeposit()) && null !== $pTransaction->foreign_amount) {
+ if (null !== $pTransaction->foreign_amount && ($journal->isWithdrawal() || $journal->isDeposit())) {
$preFilled['amount'] = $pTransaction->foreign_amount;
$preFilled['currency'] = $pTransaction->foreignCurrency;
}
@@ -355,7 +355,7 @@ class SingleController extends Controller
event(new StoredTransactionJournal($journal, $data['piggy_bank_id']));
session()->flash('success', (string)trans('firefly.stored_journal', ['description' => $journal->description]));
- Preferences::mark();
+ app('preferences')->mark();
// @codeCoverageIgnoreStart
if (true === $createAnother) {
@@ -412,7 +412,7 @@ class SingleController extends Controller
$type = strtolower($this->repository->getTransactionType($journal));
session()->flash('success', (string)trans('firefly.updated_' . $type, ['description' => $data['description']]));
- Preferences::mark();
+ app('preferences')->mark();
// @codeCoverageIgnoreStart
if (1 === (int)$request->get('return_to_edit')) {
diff --git a/app/Http/Controllers/TransactionController.php b/app/Http/Controllers/TransactionController.php
index d1c67291aa..471eac4562 100644
--- a/app/Http/Controllers/TransactionController.php
+++ b/app/Http/Controllers/TransactionController.php
@@ -18,6 +18,8 @@
* You should have received a copy of the GNU General Public License
* along with Firefly III. If not, see .
*/
+/** @noinspection CallableParameterUseCaseInTypeContextInspection */
+/** @noinspection MoreThanThreeArgumentsInspection */
declare(strict_types=1);
namespace FireflyIII\Http\Controllers;
@@ -71,13 +73,12 @@ class TransactionController extends Controller
/**
* Index for a range of transactions.
*
- * @param Request $request
- * @param string $what
- * @param Carbon $start
- * @param Carbon $end
- *
- * @return View
+ * @param Request $request
+ * @param string $what
+ * @param Carbon|null $start
+ * @param Carbon|null $end
*
+ * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function index(Request $request, string $what, Carbon $start = null, Carbon $end = null)
{
@@ -189,7 +190,7 @@ class TransactionController extends Controller
}
}
}
- Preferences::mark();
+ app('preferences')->mark();
return response()->json([true]);
}
diff --git a/app/Http/Middleware/Authenticate.php b/app/Http/Middleware/Authenticate.php
index 4e8408129c..0689d4b65e 100644
--- a/app/Http/Middleware/Authenticate.php
+++ b/app/Http/Middleware/Authenticate.php
@@ -73,6 +73,7 @@ class Authenticate
return $next($request);
}
+
/**
* Determine if the user is logged in to any of the given guards.
*
diff --git a/app/Http/Middleware/AuthenticateTwoFactor.php b/app/Http/Middleware/AuthenticateTwoFactor.php
index 3e5715377e..af3d68a4b1 100644
--- a/app/Http/Middleware/AuthenticateTwoFactor.php
+++ b/app/Http/Middleware/AuthenticateTwoFactor.php
@@ -51,6 +51,7 @@ class AuthenticateTwoFactor
$this->auth = $auth;
}
+
/**
* @param $request
* @param Closure $next
diff --git a/app/Http/Middleware/Sandstorm.php b/app/Http/Middleware/Sandstorm.php
index f992852ce8..8e9b3eb8f1 100644
--- a/app/Http/Middleware/Sandstorm.php
+++ b/app/Http/Middleware/Sandstorm.php
@@ -48,7 +48,6 @@ class Sandstorm
* @return mixed
*
* @throws FireflyException
- * @SuppressWarnings(PHPMD.CyclomaticComplexity)
*/
public function handle(Request $request, Closure $next, $guard = null)
{
diff --git a/app/Http/Middleware/StartFireflySession.php b/app/Http/Middleware/StartFireflySession.php
index 4cb809999a..77e90c55f6 100644
--- a/app/Http/Middleware/StartFireflySession.php
+++ b/app/Http/Middleware/StartFireflySession.php
@@ -41,7 +41,7 @@ class StartFireflySession extends StartSession
{
$uri = $request->fullUrl();
$strpos = strpos($uri, 'jscript');
- if ('GET' === $request->method() && $request->route() && !$request->ajax() && false === $strpos) {
+ if (false === $strpos && 'GET' === $request->method() && $request->route() && !$request->ajax()) {
$session->setPreviousUrl($uri);
}
}
diff --git a/app/Http/Requests/AccountFormRequest.php b/app/Http/Requests/AccountFormRequest.php
index 289be2b07b..85d717990a 100644
--- a/app/Http/Requests/AccountFormRequest.php
+++ b/app/Http/Requests/AccountFormRequest.php
@@ -33,7 +33,7 @@ class AccountFormRequest extends Request
/**
* @return bool
*/
- public function authorize()
+ public function authorize(): bool
{
// Only allow logged in users
return auth()->check();
@@ -66,7 +66,7 @@ class AccountFormRequest extends Request
/**
* @return array
*/
- public function rules()
+ public function rules(): array
{
$accountRoles = implode(',', config('firefly.accountRoles'));
$types = implode(',', array_keys(config('firefly.subTitlesByIdentifier')));
diff --git a/tests/Feature/Controllers/Admin/UpdateControllerTest.php b/tests/Feature/Controllers/Admin/UpdateControllerTest.php
index 4b17eaf5cd..0d9212bb35 100644
--- a/tests/Feature/Controllers/Admin/UpdateControllerTest.php
+++ b/tests/Feature/Controllers/Admin/UpdateControllerTest.php
@@ -151,11 +151,10 @@ class UpdateControllerTest extends TestCase
$falseConfig = new Configuration;
$falseConfig->data = false;
FireflyConfig::shouldReceive('get')->withArgs(['is_demo_site', false])->once()->andReturn($falseConfig);
+ FireflyConfig::shouldReceive('set')->withArgs(['last_update_check', Mockery::any()])->once()->andReturn(new Configuration);
$version = config('firefly.version') . '-alpha';
- $releases = [
- new Release(['id' => 'x', 'title' => $version, 'content' => '', 'updated' => new Carbon]),
- ];
+ $releases = [];
$updater = $this->mock(UpdateRequest::class);
$updater->shouldReceive('call')->andThrow(FireflyException::class, 'Something broke.');
$updater->shouldReceive('getReleases')->andReturn($releases);