mirror of
https://github.com/firefly-iii/firefly-iii.git
synced 2025-02-25 18:45:27 -06:00
Change scope of methods, add some notes. Prep for refactoring.
This commit is contained in:
@@ -127,7 +127,7 @@ class IndexController extends Controller
|
||||
*
|
||||
* @return null|mixed
|
||||
*/
|
||||
protected function isInArray(array $array, int $entryId)
|
||||
protected function isInArray(array $array, int $entryId) // helper for data (math, calculations)
|
||||
{
|
||||
$result = '0';
|
||||
if (isset($array[$entryId])) {
|
||||
|
||||
@@ -380,7 +380,7 @@ class ReconcileController extends Controller
|
||||
*
|
||||
* @throws FireflyException
|
||||
*/
|
||||
private function redirectToOriginalAccount(Account $account)
|
||||
protected function redirectToOriginalAccount(Account $account) // user redirection + nav
|
||||
{
|
||||
/** @var Transaction $transaction */
|
||||
$transaction = $account->transactions()->first();
|
||||
|
||||
@@ -187,7 +187,7 @@ class ShowController extends Controller
|
||||
*
|
||||
* @SuppressWarnings(PHPMD.ExcessiveMethodLength)
|
||||
*/
|
||||
private function getPeriodOverview(Account $account, ?Carbon $date): Collection
|
||||
protected function getPeriodOverview(Account $account, ?Carbon $date): Collection // period overview
|
||||
{
|
||||
$range = app('preferences')->get('viewRange', '1M')->data;
|
||||
$start = $this->repository->oldestJournalDate($account) ?? Carbon::now()->startOfMonth();
|
||||
@@ -252,7 +252,7 @@ class ShowController extends Controller
|
||||
*
|
||||
* @throws FireflyException
|
||||
*/
|
||||
private function redirectToOriginalAccount(Account $account)
|
||||
protected function redirectToOriginalAccount(Account $account) // user redirection + nav
|
||||
{
|
||||
/** @var Transaction $transaction */
|
||||
$transaction = $account->transactions()->first();
|
||||
|
||||
@@ -126,7 +126,7 @@ class RegisterController extends Controller
|
||||
*
|
||||
* @return \FireflyIII\User
|
||||
*/
|
||||
protected function create(array $data): User
|
||||
protected function create(array $data): User // create object
|
||||
{
|
||||
return User::create(
|
||||
[
|
||||
|
||||
@@ -211,7 +211,7 @@ class ShowController extends Controller
|
||||
*
|
||||
* @return Collection
|
||||
*/
|
||||
private function getLimits(Budget $budget, Carbon $start, Carbon $end): Collection
|
||||
protected function getLimits(Budget $budget, Carbon $start, Carbon $end): Collection // get data + augment with info
|
||||
{
|
||||
// properties for cache
|
||||
$cache = new CacheProperties;
|
||||
@@ -245,7 +245,7 @@ class ShowController extends Controller
|
||||
*
|
||||
* @SuppressWarnings(PHPMD.ExcessiveMethodLength)
|
||||
*/
|
||||
private function getPeriodOverview(): Collection
|
||||
protected function getPeriodOverview(): Collection
|
||||
{
|
||||
/** @var JournalRepositoryInterface $repository */
|
||||
$repository = app(JournalRepositoryInterface::class);
|
||||
|
||||
@@ -145,7 +145,7 @@ class NoCategoryController extends Controller
|
||||
* @return Collection
|
||||
* @SuppressWarnings(PHPMD.ExcessiveMethodLength)
|
||||
*/
|
||||
private function getNoCategoryPeriodOverview(Carbon $theDate): Collection
|
||||
protected function getNoCategoryPeriodOverview(Carbon $theDate): Collection // period overview method.
|
||||
{
|
||||
Log::debug(sprintf('Now in getNoCategoryPeriodOverview(%s)', $theDate->format('Y-m-d')));
|
||||
$range = app('preferences')->get('viewRange', '1M')->data;
|
||||
|
||||
@@ -165,7 +165,7 @@ class ShowController extends Controller
|
||||
*
|
||||
* @SuppressWarnings(PHPMD.ExcessiveMethodLength)
|
||||
*/
|
||||
private function getPeriodOverview(Category $category, Carbon $date): Collection
|
||||
protected function getPeriodOverview(Category $category, Carbon $date): Collection // periodOverview method
|
||||
{
|
||||
$range = app('preferences')->get('viewRange', '1M')->data;
|
||||
$first = $this->journalRepos->firstNull();
|
||||
|
||||
@@ -457,7 +457,7 @@ class AccountController extends Controller
|
||||
* @SuppressWarnings(PHPMD.CyclomaticComplexity)
|
||||
* @SuppressWarnings(PHPMD.ExcessiveMethodLength)
|
||||
*/
|
||||
private function accountBalanceChart(Collection $accounts, Carbon $start, Carbon $end): array
|
||||
protected function accountBalanceChart(Collection $accounts, Carbon $start, Carbon $end): array // chart helper method.
|
||||
{
|
||||
// chart properties for cache:
|
||||
$cache = new CacheProperties();
|
||||
@@ -515,7 +515,7 @@ class AccountController extends Controller
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
private function getBudgetNames(array $budgetIds): array
|
||||
protected function getBudgetNames(array $budgetIds): array // extract info from array.
|
||||
{
|
||||
/** @var BudgetRepositoryInterface $repository */
|
||||
$repository = app(BudgetRepositoryInterface::class);
|
||||
@@ -539,7 +539,7 @@ class AccountController extends Controller
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
private function getCategoryNames(array $categoryIds): array
|
||||
protected function getCategoryNames(array $categoryIds): array // extract info from array.
|
||||
{
|
||||
/** @var CategoryRepositoryInterface $repository */
|
||||
$repository = app(CategoryRepositoryInterface::class);
|
||||
|
||||
@@ -468,7 +468,7 @@ class BudgetController extends Controller
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
private function getAccountNames(array $accountIds): array
|
||||
protected function getAccountNames(array $accountIds): array // extract info from array.
|
||||
{
|
||||
/** @var AccountRepositoryInterface $repository */
|
||||
$repository = app(AccountRepositoryInterface::class);
|
||||
@@ -494,7 +494,7 @@ class BudgetController extends Controller
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
private function getBudgetedInPeriod(Budget $budget, Carbon $start, Carbon $end): array
|
||||
protected function getBudgetedInPeriod(Budget $budget, Carbon $start, Carbon $end): array // get data + augment with info
|
||||
{
|
||||
$key = app('navigation')->preferredCarbonFormat($start, $end);
|
||||
$range = app('navigation')->preferredRangeFormat($start, $end);
|
||||
@@ -522,7 +522,7 @@ class BudgetController extends Controller
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
private function getCategoryNames(array $categoryIds): array
|
||||
protected function getCategoryNames(array $categoryIds): array // extract info from arrat
|
||||
{
|
||||
/** @var CategoryRepositoryInterface $repository */
|
||||
$repository = app(CategoryRepositoryInterface::class);
|
||||
@@ -552,7 +552,7 @@ class BudgetController extends Controller
|
||||
*
|
||||
* @SuppressWarnings(PHPMD.CyclomaticComplexity)
|
||||
*/
|
||||
private function getExpensesForBudget(Collection $limits, Budget $budget, Carbon $start, Carbon $end): array
|
||||
protected function getExpensesForBudget(Collection $limits, Budget $budget, Carbon $start, Carbon $end): array // get data + augment with info
|
||||
{
|
||||
$return = [];
|
||||
if (0 === $limits->count()) {
|
||||
@@ -595,7 +595,7 @@ class BudgetController extends Controller
|
||||
* @SuppressWarnings(PHPMD.CyclomaticComplexity)
|
||||
*
|
||||
*/
|
||||
private function spentInPeriodMulti(Budget $budget, Collection $limits): array
|
||||
protected function spentInPeriodMulti(Budget $budget, Collection $limits): array // get data + augment with info
|
||||
{
|
||||
$return = [];
|
||||
$format = (string)trans('config.month_and_day');
|
||||
@@ -643,7 +643,7 @@ class BudgetController extends Controller
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
private function spentInPeriodWithout(Carbon $start, Carbon $end): string
|
||||
protected function spentInPeriodWithout(Carbon $start, Carbon $end): string // get data + augment with info
|
||||
{
|
||||
// collector
|
||||
/** @var JournalCollectorInterface $collector */
|
||||
|
||||
@@ -228,7 +228,7 @@ class BudgetReportController extends Controller
|
||||
*
|
||||
* @return Collection
|
||||
*/
|
||||
private function filterBudgetLimits(Collection $budgetLimits, Budget $budget, Carbon $start, Carbon $end): Collection
|
||||
protected function filterBudgetLimits(Collection $budgetLimits, Budget $budget, Carbon $start, Carbon $end): Collection // filter data
|
||||
{
|
||||
$set = $budgetLimits->filter(
|
||||
function (BudgetLimit $budgetLimit) use ($budget, $start, $end) {
|
||||
@@ -257,7 +257,7 @@ class BudgetReportController extends Controller
|
||||
*
|
||||
* @return Collection
|
||||
*/
|
||||
private function getExpenses(Collection $accounts, Collection $budgets, Carbon $start, Carbon $end): Collection
|
||||
protected function getExpenses(Collection $accounts, Collection $budgets, Carbon $start, Carbon $end): Collection // get data + augment with info
|
||||
{
|
||||
/** @var JournalCollectorInterface $collector */
|
||||
$collector = app(JournalCollectorInterface::class);
|
||||
@@ -278,7 +278,7 @@ class BudgetReportController extends Controller
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
private function groupByBudget(Collection $set): array
|
||||
protected function groupByBudget(Collection $set): array // filter + group data
|
||||
{
|
||||
// group by category ID:
|
||||
$grouped = [];
|
||||
|
||||
@@ -307,7 +307,7 @@ class CategoryController extends Controller
|
||||
*
|
||||
* @SuppressWarnings(PHPMD.ExcessiveMethodLength)
|
||||
*/
|
||||
private function makePeriodChart(Category $category, Carbon $start, Carbon $end): array
|
||||
protected function makePeriodChart(Category $category, Carbon $start, Carbon $end): array // chart helper method.
|
||||
{
|
||||
$cache = new CacheProperties;
|
||||
$cache->addProperty($start);
|
||||
|
||||
@@ -302,7 +302,7 @@ class CategoryReportController extends Controller
|
||||
*
|
||||
*
|
||||
*/
|
||||
private function getExpenses(Collection $accounts, Collection $categories, Carbon $start, Carbon $end): Collection
|
||||
protected function getExpenses(Collection $accounts, Collection $categories, Carbon $start, Carbon $end): Collection // get data + augument
|
||||
{
|
||||
/** @var JournalCollectorInterface $collector */
|
||||
$collector = app(JournalCollectorInterface::class);
|
||||
@@ -327,7 +327,7 @@ class CategoryReportController extends Controller
|
||||
*
|
||||
* @return Collection
|
||||
*/
|
||||
private function getIncome(Collection $accounts, Collection $categories, Carbon $start, Carbon $end): Collection
|
||||
protected function getIncome(Collection $accounts, Collection $categories, Carbon $start, Carbon $end): Collection // get data + augument
|
||||
{
|
||||
/** @var JournalCollectorInterface $collector */
|
||||
$collector = app(JournalCollectorInterface::class);
|
||||
@@ -347,7 +347,7 @@ class CategoryReportController extends Controller
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
private function groupByCategory(Collection $set): array
|
||||
protected function groupByCategory(Collection $set): array // filter + group data
|
||||
{
|
||||
// group by category ID:
|
||||
$grouped = [];
|
||||
|
||||
@@ -199,7 +199,7 @@ class ExpenseReportController extends Controller
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
protected function combineAccounts(Collection $accounts): array
|
||||
protected function combineAccounts(Collection $accounts): array // filter + group data
|
||||
{
|
||||
$combined = [];
|
||||
/** @var Account $expenseAccount */
|
||||
@@ -227,7 +227,7 @@ class ExpenseReportController extends Controller
|
||||
*
|
||||
* @return Collection
|
||||
*/
|
||||
private function getExpenses(Collection $accounts, Collection $opposing, Carbon $start, Carbon $end): Collection
|
||||
protected function getExpenses(Collection $accounts, Collection $opposing, Carbon $start, Carbon $end): Collection // get data + augument
|
||||
{
|
||||
/** @var JournalCollectorInterface $collector */
|
||||
$collector = app(JournalCollectorInterface::class);
|
||||
@@ -246,7 +246,7 @@ class ExpenseReportController extends Controller
|
||||
*
|
||||
* @return Collection
|
||||
*/
|
||||
private function getIncome(Collection $accounts, Collection $opposing, Carbon $start, Carbon $end): Collection
|
||||
protected function getIncome(Collection $accounts, Collection $opposing, Carbon $start, Carbon $end): Collection // get data + augument
|
||||
{
|
||||
/** @var JournalCollectorInterface $collector */
|
||||
/** @var JournalCollectorInterface $collector */
|
||||
@@ -263,7 +263,7 @@ class ExpenseReportController extends Controller
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
private function groupByName(Collection $set): array
|
||||
protected function groupByName(Collection $set): array // filter + group data
|
||||
{
|
||||
// group by opposing account name.
|
||||
$grouped = [];
|
||||
|
||||
@@ -222,11 +222,11 @@ class ReportController extends Controller
|
||||
/**
|
||||
* Sum up an array.
|
||||
*
|
||||
* @param $array
|
||||
* @param array $array
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
private function arraySum($array): string
|
||||
protected function arraySum(array $array): string // filter + group data
|
||||
{
|
||||
$sum = '0';
|
||||
foreach ($array as $entry) {
|
||||
@@ -247,7 +247,7 @@ class ReportController extends Controller
|
||||
*
|
||||
* @SuppressWarnings(PHPMD.ExcessiveMethodLength)
|
||||
*/
|
||||
private function getChartData(Collection $accounts, Carbon $start, Carbon $end): array
|
||||
protected function getChartData(Collection $accounts, Carbon $start, Carbon $end): array // chart helper function
|
||||
{
|
||||
$cache = new CacheProperties;
|
||||
$cache->addProperty('chart.report.get-chart-data');
|
||||
|
||||
@@ -355,7 +355,7 @@ class TagReportController extends Controller
|
||||
*
|
||||
* @SuppressWarnings(PHPMD.ExcessiveParameterList)
|
||||
*/
|
||||
private function getExpenses(Collection $accounts, Collection $tags, Carbon $start, Carbon $end): Collection
|
||||
protected function getExpenses(Collection $accounts, Collection $tags, Carbon $start, Carbon $end): Collection // get data + augument
|
||||
{
|
||||
/** @var JournalCollectorInterface $collector */
|
||||
$collector = app(JournalCollectorInterface::class);
|
||||
@@ -382,7 +382,7 @@ class TagReportController extends Controller
|
||||
*
|
||||
* @SuppressWarnings(PHPMD.ExcessiveParameterList)
|
||||
*/
|
||||
private function getIncome(Collection $accounts, Collection $tags, Carbon $start, Carbon $end): Collection
|
||||
protected function getIncome(Collection $accounts, Collection $tags, Carbon $start, Carbon $end): Collection // get data + augument
|
||||
{
|
||||
/** @var JournalCollectorInterface $collector */
|
||||
$collector = app(JournalCollectorInterface::class);
|
||||
@@ -402,7 +402,7 @@ class TagReportController extends Controller
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
private function groupByTag(Collection $set): array
|
||||
protected function groupByTag(Collection $set): array // filter + group data
|
||||
{
|
||||
// group by category ID:
|
||||
$grouped = [];
|
||||
|
||||
@@ -27,6 +27,7 @@ use FireflyIII\Models\AccountType;
|
||||
use FireflyIII\Models\Transaction;
|
||||
use FireflyIII\Models\TransactionJournal;
|
||||
use FireflyIII\Models\TransactionType;
|
||||
use FireflyIII\Support\Http\Controllers\UserNavigation;
|
||||
use Illuminate\Foundation\Auth\Access\AuthorizesRequests;
|
||||
use Illuminate\Foundation\Bus\DispatchesJobs;
|
||||
use Illuminate\Foundation\Validation\ValidatesRequests;
|
||||
@@ -42,7 +43,7 @@ use URL;
|
||||
*/
|
||||
class Controller extends BaseController
|
||||
{
|
||||
use AuthorizesRequests, DispatchesJobs, ValidatesRequests;
|
||||
use AuthorizesRequests, DispatchesJobs, ValidatesRequests, UserNavigation;
|
||||
|
||||
/** @var string Format for date and time. */
|
||||
protected $dateTimeFormat;
|
||||
@@ -94,29 +95,7 @@ class Controller extends BaseController
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Functionality:.
|
||||
*
|
||||
* - If the $identifier contains the word "delete" then a remembered uri with the text "/show/" in it will not be returned but instead the index (/)
|
||||
* will be returned.
|
||||
* - If the remembered uri contains "javascript/" the remembered uri will not be returned but instead the index (/) will be returned.
|
||||
*
|
||||
* @param string $identifier
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
protected function getPreviousUri(string $identifier): string
|
||||
{
|
||||
$uri = (string)session($identifier);
|
||||
if (!(false === strpos($identifier, 'delete')) && !(false === strpos($uri, '/show/'))) {
|
||||
$uri = $this->redirectUri;
|
||||
}
|
||||
if (!(false === strpos($uri, 'jscript'))) {
|
||||
$uri = $this->redirectUri; // @codeCoverageIgnore
|
||||
}
|
||||
|
||||
return $uri;
|
||||
}
|
||||
|
||||
/**
|
||||
* Is transaction opening balance?
|
||||
@@ -125,53 +104,20 @@ class Controller extends BaseController
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
protected function isOpeningBalance(TransactionJournal $journal): bool
|
||||
protected function isOpeningBalance(TransactionJournal $journal): bool // get object info / validate input
|
||||
{
|
||||
return TransactionType::OPENING_BALANCE === $journal->transactionType->type;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Redirect to asset account that transaction belongs to.
|
||||
*
|
||||
* @param TransactionJournal $journal
|
||||
*
|
||||
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector
|
||||
*/
|
||||
protected function redirectToAccount(TransactionJournal $journal)
|
||||
{
|
||||
$valid = [AccountType::DEFAULT, AccountType::ASSET];
|
||||
$transactions = $journal->transactions;
|
||||
/** @var Transaction $transaction */
|
||||
foreach ($transactions as $transaction) {
|
||||
$account = $transaction->account;
|
||||
if (\in_array($account->accountType->type, $valid, true)) {
|
||||
return redirect(route('accounts.show', [$account->id]));
|
||||
}
|
||||
}
|
||||
// @codeCoverageIgnoreStart
|
||||
session()->flash('error', (string)trans('firefly.cannot_redirect_to_account'));
|
||||
|
||||
return redirect(route('index'));
|
||||
// @codeCoverageIgnoreEnd
|
||||
}
|
||||
|
||||
/**
|
||||
* Remember previous URL.
|
||||
*
|
||||
* @param string $identifier
|
||||
*/
|
||||
protected function rememberPreviousUri(string $identifier): void
|
||||
{
|
||||
session()->put($identifier, URL::previous());
|
||||
}
|
||||
|
||||
/**
|
||||
* Get user's language.
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
private function getLanguage(): string
|
||||
protected function getLanguage(): string // get preference
|
||||
{
|
||||
/** @var string $language */
|
||||
$language = app('preferences')->get('language', config('firefly.default_language', 'en_US'))->data;
|
||||
@@ -182,7 +128,7 @@ class Controller extends BaseController
|
||||
/**
|
||||
* @return string
|
||||
*/
|
||||
private function getPageName(): string
|
||||
protected function getPageName(): string // get request info
|
||||
{
|
||||
return str_replace('.', '_', Route::currentRouteName());
|
||||
}
|
||||
@@ -192,7 +138,7 @@ class Controller extends BaseController
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
private function getSpecificPageName(): string
|
||||
protected function getSpecificPageName(): string // get request info
|
||||
{
|
||||
return null === Route::current()->parameter('what') ? '' : '_' . Route::current()->parameter('what');
|
||||
}
|
||||
@@ -202,7 +148,7 @@ class Controller extends BaseController
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
private function hasSeenDemo(): bool
|
||||
protected function hasSeenDemo(): bool // get request info + get preference
|
||||
{
|
||||
$page = $this->getPageName();
|
||||
$specificPage = $this->getSpecificPageName();
|
||||
|
||||
@@ -248,7 +248,7 @@ class DebugController extends Controller
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
protected function errorReporting(int $value): string
|
||||
protected function errorReporting(int $value): string // get configuration
|
||||
{
|
||||
$array = [
|
||||
-1 => 'ALL errors',
|
||||
@@ -272,7 +272,7 @@ class DebugController extends Controller
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
private function collectPackages(): array
|
||||
protected function collectPackages(): array // get configuration
|
||||
{
|
||||
$packages = [];
|
||||
$file = \dirname(__DIR__, 3) . '/vendor/composer/installed.json';
|
||||
|
||||
@@ -76,7 +76,7 @@ class HelpController extends Controller
|
||||
* @SuppressWarnings(PHPMD.ExcessiveMethodLength)
|
||||
* @SuppressWarnings(PHPMD.CyclomaticComplexity)
|
||||
*/
|
||||
private function getHelpText(string $route, string $language): string
|
||||
protected function getHelpText(string $route, string $language): string // get from internet.
|
||||
{
|
||||
// get language and default variables.
|
||||
$content = '<p>' . trans('firefly.route_has_no_help') . '</p>';
|
||||
|
||||
@@ -170,7 +170,7 @@ class JobConfigurationController extends Controller
|
||||
*
|
||||
* @throws FireflyException
|
||||
*/
|
||||
private function makeConfigurator(ImportJob $importJob): JobConfigurationInterface
|
||||
protected function makeConfigurator(ImportJob $importJob): JobConfigurationInterface // make object
|
||||
{
|
||||
$key = sprintf('import.configuration.%s', $importJob->provider);
|
||||
$className = (string)config($key);
|
||||
|
||||
@@ -231,7 +231,7 @@ class JobStatusController extends Controller
|
||||
*
|
||||
* @throws FireflyException
|
||||
*/
|
||||
private function storeTransactions(ImportJob $importJob): void
|
||||
protected function storeTransactions(ImportJob $importJob): void // make object + execute
|
||||
{
|
||||
/** @var ImportArrayStorage $storage */
|
||||
$storage = app(ImportArrayStorage::class);
|
||||
|
||||
@@ -146,7 +146,7 @@ class JavascriptController extends Controller
|
||||
* @return array
|
||||
* @SuppressWarnings(PHPMD.ExcessiveMethodLength)
|
||||
*/
|
||||
private function getDateRangeConfig(): array
|
||||
protected function getDateRangeConfig(): array // get configuration + get preferences.
|
||||
{
|
||||
$viewRange = app('preferences')->get('viewRange', '1M')->data;
|
||||
/** @var Carbon $start */
|
||||
|
||||
@@ -302,7 +302,7 @@ class BoxController extends Controller
|
||||
*
|
||||
* @return TransactionCurrency
|
||||
*/
|
||||
private function getCurrencyOrDefault(Account $account): TransactionCurrency
|
||||
protected function getCurrencyOrDefault(Account $account): TransactionCurrency // get a preference
|
||||
{
|
||||
/** @var AccountRepositoryInterface $repository */
|
||||
$repository = app(AccountRepositoryInterface::class);
|
||||
@@ -330,7 +330,7 @@ class BoxController extends Controller
|
||||
* @return bool
|
||||
* @SuppressWarnings(PHPMD.CyclomaticComplexity)
|
||||
*/
|
||||
private function notInSessionRange(Carbon $date): bool
|
||||
protected function notInSessionRange(Carbon $date): bool // Validate a preference
|
||||
{
|
||||
/** @var Carbon $start */
|
||||
$start = session('start', Carbon::now()->startOfMonth());
|
||||
|
||||
@@ -142,7 +142,7 @@ class IntroController
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
private function getBasicSteps(string $route): array
|
||||
protected function getBasicSteps(string $route): array // get config values
|
||||
{
|
||||
$routeKey = str_replace('.', '_', $route);
|
||||
$elements = config(sprintf('intro.%s', $routeKey));
|
||||
@@ -172,7 +172,7 @@ class IntroController
|
||||
* @return array
|
||||
* @SuppressWarnings(PHPMD.CyclomaticComplexity)
|
||||
*/
|
||||
private function getSpecificSteps(string $route, string $specificPage): array
|
||||
protected function getSpecificSteps(string $route, string $specificPage): array // get config values
|
||||
{
|
||||
$steps = [];
|
||||
$routeKey = '';
|
||||
|
||||
@@ -210,7 +210,7 @@ class ReconcileController extends Controller
|
||||
*
|
||||
* @throws FireflyException
|
||||
*/
|
||||
private function redirectToOriginalAccount(Account $account)
|
||||
protected function redirectToOriginalAccount(Account $account) // user redirection + nav
|
||||
{
|
||||
/** @var Transaction $transaction */
|
||||
$transaction = $account->transactions()->first();
|
||||
|
||||
@@ -128,7 +128,7 @@ class NewUserController extends Controller
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
private function createAssetAccount(NewUserFormRequest $request, TransactionCurrency $currency): bool
|
||||
protected function createAssetAccount(NewUserFormRequest $request, TransactionCurrency $currency): bool // create stuff
|
||||
{
|
||||
$assetAccount = [
|
||||
'name' => $request->get('bank_name'),
|
||||
@@ -156,7 +156,7 @@ class NewUserController extends Controller
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
private function createCashWalletAccount(TransactionCurrency $currency, string $language): bool
|
||||
protected function createCashWalletAccount(TransactionCurrency $currency, string $language): bool // create stuff
|
||||
{
|
||||
$assetAccount = [
|
||||
'name' => (string)trans('firefly.cash_wallet', [], $language),
|
||||
@@ -185,7 +185,7 @@ class NewUserController extends Controller
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
private function createSavingsAccount(NewUserFormRequest $request, TransactionCurrency $currency, string $language): bool
|
||||
protected function createSavingsAccount(NewUserFormRequest $request, TransactionCurrency $currency, string $language): bool // create stuff
|
||||
{
|
||||
$savingsAccount = [
|
||||
'name' => (string)trans('firefly.new_savings_account', ['bank_name' => $request->get('bank_name')], $language),
|
||||
|
||||
@@ -127,7 +127,7 @@ class ReportController extends Controller
|
||||
*
|
||||
* @SuppressWarnings(PHPMD.CyclomaticComplexity)
|
||||
*/
|
||||
private function balanceAmount(array $attributes): string
|
||||
protected function balanceAmount(array $attributes): string // generate view for report.
|
||||
{
|
||||
$role = (int)$attributes['role'];
|
||||
$budget = $this->budgetRepository->findNull((int)$attributes['budgetId']);
|
||||
@@ -165,7 +165,7 @@ class ReportController extends Controller
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
private function budgetSpentAmount(array $attributes): string
|
||||
protected function budgetSpentAmount(array $attributes): string // generate view for report.
|
||||
{
|
||||
$budget = $this->budgetRepository->findNull((int)$attributes['budgetId']);
|
||||
if (null === $budget) {
|
||||
@@ -189,7 +189,7 @@ class ReportController extends Controller
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
private function categoryEntry(array $attributes): string
|
||||
protected function categoryEntry(array $attributes): string // generate view for report.
|
||||
{
|
||||
$category = $this->categoryRepository->findNull((int)$attributes['categoryId']);
|
||||
|
||||
@@ -215,7 +215,7 @@ class ReportController extends Controller
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
private function expenseEntry(array $attributes): string
|
||||
protected function expenseEntry(array $attributes): string // generate view for report.
|
||||
{
|
||||
$account = $this->accountRepository->findNull((int)$attributes['accountId']);
|
||||
|
||||
@@ -241,7 +241,7 @@ class ReportController extends Controller
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
private function incomeEntry(array $attributes): string
|
||||
protected function incomeEntry(array $attributes): string // generate view for report.
|
||||
{
|
||||
$account = $this->accountRepository->findNull((int)$attributes['accountId']);
|
||||
|
||||
@@ -267,7 +267,7 @@ class ReportController extends Controller
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
private function parseAttributes(array $attributes): array
|
||||
protected function parseAttributes(array $attributes): array // parse input + return result
|
||||
{
|
||||
$attributes['location'] = $attributes['location'] ?? '';
|
||||
$attributes['accounts'] = AccountList::routeBinder($attributes['accounts'] ?? '', new Route('get', '', []));
|
||||
|
||||
@@ -450,7 +450,7 @@ class ProfileController extends Controller
|
||||
*
|
||||
* @throws ValidationException
|
||||
*/
|
||||
protected function validatePassword(User $user, string $current, string $new): bool
|
||||
protected function validatePassword(User $user, string $current, string $new): bool //get request info
|
||||
{
|
||||
if (!Hash::check($current, $user->password)) {
|
||||
throw new ValidationException((string)trans('firefly.invalid_current_password'));
|
||||
@@ -466,7 +466,7 @@ class ProfileController extends Controller
|
||||
/**
|
||||
* Create new RSA keys.
|
||||
*/
|
||||
private function createOAuthKeys(): void
|
||||
protected function createOAuthKeys(): void // create stuff
|
||||
{
|
||||
$rsa = new RSA();
|
||||
$keys = $rsa->createKey(4096);
|
||||
@@ -492,7 +492,7 @@ class ProfileController extends Controller
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
private function getDomain(): string
|
||||
protected function getDomain(): string // get request info
|
||||
{
|
||||
$url = url()->to('/');
|
||||
$parts = parse_url($url);
|
||||
|
||||
@@ -117,7 +117,7 @@ class BudgetController extends Controller
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
private function filterBudgetPeriodReport(array $data): array
|
||||
protected function filterBudgetPeriodReport(array $data): array // helper function for period overview.
|
||||
{
|
||||
/**
|
||||
* @var int
|
||||
|
||||
@@ -173,7 +173,7 @@ class CategoryController extends Controller
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
private function filterReport(array $data): array
|
||||
protected function filterReport(array $data): array // filter data from report.
|
||||
{
|
||||
foreach ($data as $categoryId => $set) {
|
||||
$sum = '0';
|
||||
|
||||
@@ -335,7 +335,7 @@ class ExpenseController extends Controller
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
protected function combineAccounts(Collection $accounts): array
|
||||
protected function combineAccounts(Collection $accounts): array // filter + group data
|
||||
{
|
||||
$combined = [];
|
||||
/** @var Account $expenseAccount */
|
||||
@@ -367,7 +367,7 @@ class ExpenseController extends Controller
|
||||
* @SuppressWarnings(PHPMD.CyclomaticComplexity)
|
||||
* @SuppressWarnings(PHPMD.ExcessiveMethodLength)
|
||||
*/
|
||||
protected function earnedByCategory(Collection $assets, Collection $opposing, Carbon $start, Carbon $end): array
|
||||
protected function earnedByCategory(Collection $assets, Collection $opposing, Carbon $start, Carbon $end): array // get data + augment with info
|
||||
{
|
||||
/** @var JournalCollectorInterface $collector */
|
||||
$collector = app(JournalCollectorInterface::class);
|
||||
@@ -431,7 +431,7 @@ class ExpenseController extends Controller
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
protected function earnedInPeriod(Collection $assets, Collection $opposing, Carbon $start, Carbon $end): array
|
||||
protected function earnedInPeriod(Collection $assets, Collection $opposing, Carbon $start, Carbon $end): array // get data + augment with info
|
||||
{
|
||||
/** @var JournalCollectorInterface $collector */
|
||||
$collector = app(JournalCollectorInterface::class);
|
||||
@@ -478,7 +478,7 @@ class ExpenseController extends Controller
|
||||
* @SuppressWarnings(PHPMD.CyclomaticComplexity)
|
||||
* @SuppressWarnings(PHPMD.ExcessiveMethodLength)
|
||||
*/
|
||||
protected function spentByBudget(Collection $assets, Collection $opposing, Carbon $start, Carbon $end): array
|
||||
protected function spentByBudget(Collection $assets, Collection $opposing, Carbon $start, Carbon $end): array // get data + augment with info
|
||||
{
|
||||
/** @var JournalCollectorInterface $collector */
|
||||
$collector = app(JournalCollectorInterface::class);
|
||||
@@ -545,7 +545,7 @@ class ExpenseController extends Controller
|
||||
* @SuppressWarnings(PHPMD.CyclomaticComplexity)
|
||||
* @SuppressWarnings(PHPMD.ExcessiveMethodLength)
|
||||
*/
|
||||
protected function spentByCategory(Collection $assets, Collection $opposing, Carbon $start, Carbon $end): array
|
||||
protected function spentByCategory(Collection $assets, Collection $opposing, Carbon $start, Carbon $end): array // get data + augment with info
|
||||
{
|
||||
/** @var JournalCollectorInterface $collector */
|
||||
$collector = app(JournalCollectorInterface::class);
|
||||
@@ -609,7 +609,7 @@ class ExpenseController extends Controller
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
protected function spentInPeriod(Collection $assets, Collection $opposing, Carbon $start, Carbon $end): array
|
||||
protected function spentInPeriod(Collection $assets, Collection $opposing, Carbon $start, Carbon $end): array // get data + augment with info
|
||||
{
|
||||
/** @var JournalCollectorInterface $collector */
|
||||
$collector = app(JournalCollectorInterface::class);
|
||||
|
||||
@@ -423,7 +423,7 @@ class ReportController extends Controller
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
private function accountReportOptions(): string
|
||||
protected function accountReportOptions(): string // render a view
|
||||
{
|
||||
/** @var AccountRepositoryInterface $repository */
|
||||
$repository = app(AccountRepositoryInterface::class);
|
||||
@@ -451,7 +451,7 @@ class ReportController extends Controller
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
private function budgetReportOptions(): string
|
||||
protected function budgetReportOptions(): string // render a view
|
||||
{
|
||||
/** @var BudgetRepositoryInterface $repository */
|
||||
$repository = app(BudgetRepositoryInterface::class);
|
||||
@@ -471,7 +471,7 @@ class ReportController extends Controller
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
private function categoryReportOptions(): string
|
||||
protected function categoryReportOptions(): string // render a view
|
||||
{
|
||||
/** @var CategoryRepositoryInterface $repository */
|
||||
$repository = app(CategoryRepositoryInterface::class);
|
||||
@@ -491,7 +491,7 @@ class ReportController extends Controller
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
private function noReportOptions(): string
|
||||
protected function noReportOptions(): string // render a view
|
||||
{
|
||||
try {
|
||||
$result = view('reports.options.no-options')->render();
|
||||
@@ -508,7 +508,7 @@ class ReportController extends Controller
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
private function tagReportOptions(): string
|
||||
protected function tagReportOptions(): string // render a view
|
||||
{
|
||||
/** @var TagRepositoryInterface $repository */
|
||||
$repository = app(TagRepositoryInterface::class);
|
||||
|
||||
@@ -206,7 +206,7 @@ class CreateController extends Controller
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
private function getActionsForBill(Bill $bill): array
|
||||
protected function getActionsForBill(Bill $bill): array // get info and augument
|
||||
{
|
||||
try {
|
||||
$result = view(
|
||||
@@ -237,7 +237,7 @@ class CreateController extends Controller
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
private function getTriggersForBill(Bill $bill): array
|
||||
protected function getTriggersForBill(Bill $bill): array // get info and augument
|
||||
{
|
||||
$result = [];
|
||||
$triggers = ['currency_is', 'amount_more', 'amount_less', 'description_contains'];
|
||||
|
||||
@@ -154,7 +154,7 @@ class EditController extends Controller
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
private function getCurrentActions(Rule $rule): array
|
||||
protected function getCurrentActions(Rule $rule): array // get info from object and present.
|
||||
{
|
||||
$index = 0;
|
||||
$actions = [];
|
||||
@@ -192,7 +192,7 @@ class EditController extends Controller
|
||||
* @return array
|
||||
*
|
||||
*/
|
||||
private function getCurrentTriggers(Rule $rule): array
|
||||
protected function getCurrentTriggers(Rule $rule): array // get info from object and present.
|
||||
{
|
||||
$index = 0;
|
||||
$triggers = [];
|
||||
|
||||
@@ -263,7 +263,7 @@ class SelectController extends Controller
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
private function getValidTriggerList(TestRuleFormRequest $request): array
|
||||
protected function getValidTriggerList(TestRuleFormRequest $request): array // process input
|
||||
{
|
||||
$triggers = [];
|
||||
$data = $request->get('rule_triggers');
|
||||
|
||||
@@ -183,7 +183,7 @@ class InstallController extends Controller
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
private function hasForbiddenFunctions(): bool
|
||||
protected function hasForbiddenFunctions(): bool // validate system config
|
||||
{
|
||||
$list = ['proc_close'];
|
||||
$forbidden = explode(',', ini_get('disable_functions'));
|
||||
|
||||
@@ -304,7 +304,7 @@ class TagController extends Controller
|
||||
*
|
||||
* @SuppressWarnings(PHPMD.ExcessiveMethodLength)
|
||||
*/
|
||||
private function getPeriodOverview(Tag $tag): Collection
|
||||
protected function getPeriodOverview(Tag $tag): Collection // period overview for tags.
|
||||
{
|
||||
// get first and last tag date from tag:
|
||||
$range = app('preferences')->get('viewRange', '1M')->data;
|
||||
|
||||
@@ -181,7 +181,7 @@ class ConvertController extends Controller
|
||||
* @SuppressWarnings(PHPMD.ExcessiveMethodLength)
|
||||
* @SuppressWarnings(PHPMD.CyclomaticComplexity)
|
||||
*/
|
||||
private function getDestinationAccount(TransactionJournal $journal, TransactionType $destinationType, array $data): Account
|
||||
protected function getDestinationAccount(TransactionJournal $journal, TransactionType $destinationType, array $data): Account // helper for conversion. Get info from obj.
|
||||
{
|
||||
/** @var AccountRepositoryInterface $accountRepository */
|
||||
$accountRepository = app(AccountRepositoryInterface::class);
|
||||
@@ -242,7 +242,7 @@ class ConvertController extends Controller
|
||||
* @SuppressWarnings(PHPMD.ExcessiveMethodLength)
|
||||
* @SuppressWarnings(PHPMD.CyclomaticComplexity)
|
||||
*/
|
||||
private function getSourceAccount(TransactionJournal $journal, TransactionType $destinationType, array $data): Account
|
||||
protected function getSourceAccount(TransactionJournal $journal, TransactionType $destinationType, array $data): Account // helper for conversion. Get info from obj.
|
||||
{
|
||||
/** @var AccountRepositoryInterface $accountRepository */
|
||||
$accountRepository = app(AccountRepositoryInterface::class);
|
||||
|
||||
@@ -450,7 +450,7 @@ class SingleController extends Controller
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
private function isSplitJournal(TransactionJournal $journal): bool
|
||||
protected function isSplitJournal(TransactionJournal $journal): bool // validate objects
|
||||
{
|
||||
$count = $this->repository->countTransactions($journal);
|
||||
|
||||
|
||||
@@ -182,7 +182,7 @@ class SplitController extends Controller
|
||||
* @return array
|
||||
* @throws FireflyException
|
||||
*/
|
||||
private function arrayFromJournal(Request $request, TransactionJournal $journal): array
|
||||
protected function arrayFromJournal(Request $request, TransactionJournal $journal): array // convert user input.
|
||||
{
|
||||
$sourceAccounts = $this->repository->getJournalSourceAccounts($journal);
|
||||
$destinationAccounts = $this->repository->getJournalDestinationAccounts($journal);
|
||||
@@ -232,7 +232,7 @@ class SplitController extends Controller
|
||||
*
|
||||
* @SuppressWarnings(PHPMD.CyclomaticComplexity)
|
||||
*/
|
||||
private function getTransactionDataFromJournal(TransactionJournal $journal): array
|
||||
protected function getTransactionDataFromJournal(TransactionJournal $journal): array // convert object
|
||||
{
|
||||
// use collector to collect transactions.
|
||||
$collector = app(JournalCollectorInterface::class);
|
||||
@@ -274,7 +274,7 @@ class SplitController extends Controller
|
||||
* @SuppressWarnings(PHPMD.ExcessiveMethodLength)
|
||||
* @SuppressWarnings(PHPMD.CyclomaticComplexity)
|
||||
*/
|
||||
private function updateWithPrevious($array, $old): array
|
||||
protected function updateWithPrevious($array, $old): array // update object with new info
|
||||
{
|
||||
if (0 === \count($old) || !isset($old['transactions'])) {
|
||||
return $array;
|
||||
|
||||
@@ -258,7 +258,7 @@ class TransactionController extends Controller
|
||||
* @SuppressWarnings(PHPMD.ExcessiveMethodLength)
|
||||
* @SuppressWarnings(PHPMD.CyclomaticComplexity)
|
||||
*/
|
||||
private function getPeriodOverview(string $what, Carbon $date): Collection
|
||||
protected function getPeriodOverview(string $what, Carbon $date): Collection // period overview for transactions.
|
||||
{
|
||||
$range = app('preferences')->get('viewRange', '1M')->data;
|
||||
$first = $this->repository->firstNull();
|
||||
@@ -309,7 +309,7 @@ class TransactionController extends Controller
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
private function sumPerCurrency(Collection $collection): array
|
||||
protected function sumPerCurrency(Collection $collection): array // helper for transactions (math, calculations)
|
||||
{
|
||||
$return = [];
|
||||
/** @var Transaction $transaction */
|
||||
|
||||
96
app/Support/Http/Controllers/UserNavigation.php
Normal file
96
app/Support/Http/Controllers/UserNavigation.php
Normal file
@@ -0,0 +1,96 @@
|
||||
<?php
|
||||
/**
|
||||
* UserNavigation.php
|
||||
* Copyright (c) 2018 thegrumpydictator@gmail.com
|
||||
*
|
||||
* This file is part of Firefly III.
|
||||
*
|
||||
* Firefly III is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* Firefly III is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with Firefly III. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace FireflyIII\Support\Http\Controllers;
|
||||
|
||||
use FireflyIII\Models\AccountType;
|
||||
use FireflyIII\Models\Transaction;
|
||||
use FireflyIII\Models\TransactionJournal;
|
||||
use URL;
|
||||
|
||||
/**
|
||||
* Trait UserNavigation
|
||||
*
|
||||
* @package FireflyIII\Support\Http\Controllers
|
||||
*/
|
||||
trait UserNavigation
|
||||
{
|
||||
/**
|
||||
* Functionality:.
|
||||
*
|
||||
* - If the $identifier contains the word "delete" then a remembered uri with the text "/show/" in it will not be returned but instead the index (/)
|
||||
* will be returned.
|
||||
* - If the remembered uri contains "javascript/" the remembered uri will not be returned but instead the index (/) will be returned.
|
||||
*
|
||||
* @param string $identifier
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
protected function getPreviousUri(string $identifier): string
|
||||
{
|
||||
$uri = (string)session($identifier);
|
||||
if (!(false === strpos($identifier, 'delete')) && !(false === strpos($uri, '/show/'))) {
|
||||
$uri = $this->redirectUri;
|
||||
}
|
||||
if (!(false === strpos($uri, 'jscript'))) {
|
||||
$uri = $this->redirectUri; // @codeCoverageIgnore
|
||||
}
|
||||
|
||||
return $uri;
|
||||
}
|
||||
|
||||
/**
|
||||
* Redirect to asset account that transaction belongs to.
|
||||
*
|
||||
* @param TransactionJournal $journal
|
||||
*
|
||||
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector
|
||||
*/
|
||||
protected function redirectToAccount(TransactionJournal $journal)
|
||||
{
|
||||
$valid = [AccountType::DEFAULT, AccountType::ASSET];
|
||||
$transactions = $journal->transactions;
|
||||
/** @var Transaction $transaction */
|
||||
foreach ($transactions as $transaction) {
|
||||
$account = $transaction->account;
|
||||
if (\in_array($account->accountType->type, $valid, true)) {
|
||||
return redirect(route('accounts.show', [$account->id]));
|
||||
}
|
||||
}
|
||||
// @codeCoverageIgnoreStart
|
||||
session()->flash('error', (string)trans('firefly.cannot_redirect_to_account'));
|
||||
|
||||
return redirect(route('index'));
|
||||
// @codeCoverageIgnoreEnd
|
||||
}
|
||||
|
||||
/**
|
||||
* Remember previous URL.
|
||||
*
|
||||
* @param string $identifier
|
||||
*/
|
||||
protected function rememberPreviousUri(string $identifier): void
|
||||
{
|
||||
session()->put($identifier, URL::previous());
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user