Restore todo's

This commit is contained in:
James Cole
2022-10-30 11:43:17 +01:00
parent e3181e90df
commit d28326cc89
64 changed files with 102 additions and 104 deletions

View File

@@ -63,7 +63,7 @@ class MoveTransactionsRequest extends FormRequest
* Configure the validator instance with special rules for after the basic validation rules. * Configure the validator instance with special rules for after the basic validation rules.
* *
* @param Validator $validator * @param Validator $validator
* See reference nr. 74 * TODO this is duplicate.
* *
* @return void * @return void
*/ */

View File

@@ -76,7 +76,7 @@ class UpdateRequest extends FormRequest
* Configure the validator instance with special rules for after the basic validation rules. * Configure the validator instance with special rules for after the basic validation rules.
* *
* @param Validator $validator * @param Validator $validator
* See reference nr. 72 * TODO duplicate code
* *
* @return void * @return void
*/ */

View File

@@ -65,7 +65,7 @@ class UpdateRequest extends FormRequest
public function rules(): array public function rules(): array
{ {
$tag = $this->route()->parameter('tagOrId'); $tag = $this->route()->parameter('tagOrId');
// See reference nr. 73 // TODO check if uniqueObjectForUser is obsolete
$rules = [ $rules = [
'tag' => 'min:1|uniqueObjectForUser:tags,tag,' . $tag->id, 'tag' => 'min:1|uniqueObjectForUser:tags,tag,' . $tag->id,
'description' => 'min:1|nullable', 'description' => 'min:1|nullable',

View File

@@ -61,7 +61,7 @@ class StoreRequest extends FormRequest
'fire_webhooks' => $this->boolean('fire_webhooks', true), 'fire_webhooks' => $this->boolean('fire_webhooks', true),
'transactions' => $this->getTransactionData(), 'transactions' => $this->getTransactionData(),
]; ];
// See reference nr. 71 // TODO include location and ability to process it.
} }
/** /**

View File

@@ -34,7 +34,7 @@ use Throwable;
/** /**
* Class MonthReportGenerator. * Class MonthReportGenerator.
* See reference nr. 19 * TODO include info about tags.
* *
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */

View File

@@ -35,7 +35,7 @@ use Throwable;
/** /**
* Class MonthReportGenerator. * Class MonthReportGenerator.
* See reference nr. 18 * TODO include info about tags
* *
* @codeCoverageIgnore * @codeCoverageIgnore
*/ */

View File

@@ -169,7 +169,7 @@ class IndexController extends Controller
$accounts->each( $accounts->each(
function (Account $account) use ($activities, $startBalances, $endBalances) { function (Account $account) use ($activities, $startBalances, $endBalances) {
// See reference nr. 68 // TODO lots of queries in this block of code.
$account->lastActivityDate = $this->isInArrayDate($activities, $account->id); $account->lastActivityDate = $this->isInArrayDate($activities, $account->id);
$account->startBalance = $this->isInArray($startBalances, $account->id); $account->startBalance = $this->isInArray($startBalances, $account->id);
$account->endBalance = $this->isInArray($endBalances, $account->id); $account->endBalance = $this->isInArray($endBalances, $account->id);

View File

@@ -518,7 +518,7 @@ class AccountController extends Controller
/** /**
* Shows the balances for a given set of dates and accounts. * Shows the balances for a given set of dates and accounts.
* *
* See reference nr. 55 * TODO this chart is not multi currency aware.
* *
* @param Collection $accounts * @param Collection $accounts
* *

View File

@@ -65,7 +65,7 @@ class CategoryController extends Controller
/** /**
* Show an overview for a category for all time, per month/week/year. * Show an overview for a category for all time, per month/week/year.
* See reference nr. 59 * TODO test method, for category refactor.
* *
* @param Category $category * @param Category $category
* *
@@ -116,7 +116,7 @@ class CategoryController extends Controller
/** /**
* Shows the category chart on the front page. * Shows the category chart on the front page.
* See reference nr. 60 * TODO test method for category refactor.
* *
* @return JsonResponse * @return JsonResponse
*/ */
@@ -143,7 +143,7 @@ class CategoryController extends Controller
/** /**
* Chart report. * Chart report.
* See reference nr. 61 * TODO test method for category refactor.
* *
* @param Category $category * @param Category $category
* @param Collection $accounts * @param Collection $accounts
@@ -259,7 +259,7 @@ class CategoryController extends Controller
/** /**
* Chart for period for transactions without a category. * Chart for period for transactions without a category.
* See reference nr. 62 * TODO test me.
* *
* @param Collection $accounts * @param Collection $accounts
* @param Carbon $start * @param Carbon $start
@@ -286,7 +286,7 @@ class CategoryController extends Controller
/** /**
* Chart for a specific period. * Chart for a specific period.
* See reference nr. 63 * TODO test me, for category refactor.
* *
* @param Category $category * @param Category $category
* @param Carbon $date * @param Carbon $date

View File

@@ -318,7 +318,7 @@ class CategoryReportController extends Controller
} }
/** /**
* See reference nr. 57 * TODO duplicate function
* *
* @param Carbon $start * @param Carbon $start
* @param Carbon $end * @param Carbon $end

View File

@@ -249,7 +249,7 @@ class DoubleReportController extends Controller
} }
/** /**
* See reference nr. 51 * TODO duplicate function
* *
* @param Collection $accounts * @param Collection $accounts
* @param int $id * @param int $id
@@ -274,7 +274,7 @@ class DoubleReportController extends Controller
} }
/** /**
* See reference nr. 52 * TODO duplicate function
* *
* @param Carbon $start * @param Carbon $start
* @param Carbon $end * @param Carbon $end

View File

@@ -70,7 +70,7 @@ class ExpenseReportController extends Controller
/** /**
* Main chart that shows income and expense for a combination of expense/revenue accounts. * Main chart that shows income and expense for a combination of expense/revenue accounts.
* *
* See reference nr. 58 * TODO this chart is not multi currency aware.
* *
* @param Collection $accounts * @param Collection $accounts
* @param Collection $expense * @param Collection $expense

View File

@@ -58,7 +58,7 @@ class PiggyBankController extends Controller
/** /**
* Shows the piggy bank history. * Shows the piggy bank history.
* *
* See reference nr. 53 * TODO this chart is not multi currency aware.
* *
* @param PiggyBankRepositoryInterface $repository * @param PiggyBankRepositoryInterface $repository
* @param PiggyBank $piggyBank * @param PiggyBank $piggyBank

View File

@@ -104,7 +104,7 @@ class ReportController extends Controller
} }
); );
// See reference nr. 56 // TODO get liabilities and include those as well?
while ($current < $end) { while ($current < $end) {
// get balances by date, grouped by currency. // get balances by date, grouped by currency.

View File

@@ -323,7 +323,7 @@ class TagReportController extends Controller
} }
/** /**
* See reference nr. 54 * TODO duplicate function
* *
* @param Carbon $start * @param Carbon $start
* @param Carbon $end * @param Carbon $end

View File

@@ -69,7 +69,8 @@ class IndexController extends Controller
/** /**
* Show overview of all piggy banks. * Show overview of all piggy banks.
* See reference nr. 66 *
* TODO very complicated function.
* *
* @param Request $request * @param Request $request
* *

View File

@@ -531,7 +531,7 @@ class ProfileController extends Controller
} }
/** /**
* See reference nr. 64 * TODO duplicate code.
* *
* @param string $mfaCode * @param string $mfaCode
* *

View File

@@ -89,7 +89,7 @@ class EditController extends Controller
*/ */
public function edit(Request $request, Recurrence $recurrence) public function edit(Request $request, Recurrence $recurrence)
{ {
// See reference nr. 69 // TODO this should be in the repository.
$count = $recurrence->recurrenceTransactions()->count(); $count = $recurrence->recurrenceTransactions()->count();
if (0 === $count) { if (0 === $count) {
throw new FireflyException('This recurring transaction has no meta-data. You will have to delete it and recreate it. Sorry!'); throw new FireflyException('This recurring transaction has no meta-data. You will have to delete it and recreate it. Sorry!');

View File

@@ -68,7 +68,7 @@ class IndexController extends Controller
} }
/** /**
* See reference nr. 70 * TODO the notes of a recurrence are pretty pointless at this moment.
* Show all recurring transactions. * Show all recurring transactions.
* *
* @param Request $request * @param Request $request

View File

@@ -292,7 +292,7 @@ class DoubleController extends Controller
} }
/** /**
* See reference nr. 67 * TODO this method is duplicated.
* *
* @param Collection $accounts * @param Collection $accounts
* @param int $id * @param int $id

View File

@@ -143,7 +143,7 @@ class EditController extends Controller
*/ */
private function parseFromOperators(array $submittedOperators): array private function parseFromOperators(array $submittedOperators): array
{ {
// See reference nr. 65 // TODO this code is duplicate.
$operators = config('search.operators'); $operators = config('search.operators');
$renderedEntries = []; $renderedEntries = [];
$triggers = []; $triggers = [];

View File

@@ -68,7 +68,7 @@ class BulkController extends Controller
/** /**
* Edit a set of journals in bulk. * Edit a set of journals in bulk.
* *
* See reference nr. 47 * TODO user wont be able to tell if the journal is part of a split.
* *
* @param array $journals * @param array $journals
* *

View File

@@ -47,7 +47,7 @@ use Log;
/** /**
* Class ConvertController. * Class ConvertController.
* *
* See reference nr. 49 * TODO when converting a split transfer, all sources and destinations must be the same.
*/ */
class ConvertController extends Controller class ConvertController extends Controller
{ {
@@ -346,7 +346,7 @@ class ConvertController extends Controller
throw new FireflyException(sprintf(trans('firefly.convert_invalid_destination'), $journal->id)); throw new FireflyException(sprintf(trans('firefly.convert_invalid_destination'), $journal->id));
} }
// See reference nr. 50 // TODO typeOverrule: the account validator may have another opinion on the transaction type.
$update = [ $update = [
'source_id' => $sourceId, 'source_id' => $sourceId,

View File

@@ -168,7 +168,7 @@ class MassController extends Controller
{ {
$journalIds = $request->get('journals'); $journalIds = $request->get('journals');
if (!is_array($journalIds)) { if (!is_array($journalIds)) {
// See reference nr. 48 // TODO this is a weird error, should be caught.
throw new FireflyException('This is not an array.'); throw new FireflyException('This is not an array.');
} }
$count = 0; $count = 0;

View File

@@ -307,7 +307,7 @@ class RecurrenceFormRequest extends FormRequest
$sourceId = null; $sourceId = null;
$destinationId = null; $destinationId = null;
// See reference nr. 45 // TODO typeOverrule: the account validator may have another opinion the transaction type.
switch ($this->convertString('transaction_type')) { switch ($this->convertString('transaction_type')) {
default: default:

View File

@@ -37,7 +37,7 @@ class TestRuleFormRequest extends FormRequest
/** /**
* Rules for this request. * Rules for this request.
* See reference nr. 46 * TODO these rules are not valid anymore.
* *
* @return array * @return array
*/ */

View File

@@ -70,7 +70,7 @@ class Configuration extends Model
protected $table = 'configuration'; protected $table = 'configuration';
/** /**
* See reference nr. 17 * TODO can be replaced with native laravel code.
* *
* @codeCoverageIgnore * @codeCoverageIgnore
* *

View File

@@ -72,7 +72,7 @@ interface BudgetLimitRepositoryInterface
public function find(Budget $budget, TransactionCurrency $currency, Carbon $start, Carbon $end): ?BudgetLimit; public function find(Budget $budget, TransactionCurrency $currency, Carbon $start, Carbon $end): ?BudgetLimit;
/** /**
* See reference nr. 11 * TODO this method is not multi currency aware.
* *
* @param Carbon|null $start * @param Carbon|null $start
* @param Carbon|null $end * @param Carbon|null $end

View File

@@ -147,8 +147,8 @@ class NoBudgetRepository implements NoBudgetRepositoryInterface
/** @noinspection MoreThanThreeArgumentsInspection */ /** @noinspection MoreThanThreeArgumentsInspection */
/** /**
* See reference nr. 15 * TODO this method does not include multi currency. It just counts.
* See reference nr. 16 * TODO this probably also applies to the other "sumExpenses" methods.
* *
* @param Carbon $start * @param Carbon $start
* @param Carbon $end * @param Carbon $end

View File

@@ -240,7 +240,7 @@ class OperationsRepository implements OperationsRepositoryInterface
if ($accounts->count() > 0) { if ($accounts->count() > 0) {
$collector->setAccounts($accounts); $collector->setAccounts($accounts);
} }
// See reference nr. 13 // TODO possible candidate for "get extracted groups" method.
$set = $collector->getGroups(); $set = $collector->getGroups();
$return = []; $return = [];
$total = []; $total = [];
@@ -384,7 +384,7 @@ class OperationsRepository implements OperationsRepositoryInterface
/** /**
* For now, simply refer to whichever repository holds this function. * For now, simply refer to whichever repository holds this function.
* See reference nr. 14 * TODO perhaps better in the future.
* *
* @param Budget $budget * @param Budget $budget
* @param Carbon|null $start * @param Carbon|null $start

View File

@@ -51,7 +51,6 @@ interface JournalRepositoryInterface
public function destroyJournal(TransactionJournal $journal): void; public function destroyJournal(TransactionJournal $journal): void;
/** /**
* See reference nr. 1
* Find a specific journal. * Find a specific journal.
* *
* @param int $journalId * @param int $journalId
@@ -126,7 +125,7 @@ interface JournalRepositoryInterface
public function getSourceAccount(TransactionJournal $journal): Account; public function getSourceAccount(TransactionJournal $journal): Account;
/** /**
* See reference nr. 5 * TODO Maybe to account repository? Do this wen reconcile is API only.
* *
* @param int $journalId * @param int $journalId
*/ */

View File

@@ -100,9 +100,9 @@ trait AccountServiceTrait
} }
/** /**
* Update meta data for account. Depends on type which fields are valid. * Update metadata for account. Depends on type which fields are valid.
* *
* See reference nr. 97 * TODO this method treats expense accounts and liabilities the same way (tries to save interest)
* *
* @param Account $account * @param Account $account
* @param array $data * @param array $data
@@ -525,7 +525,7 @@ trait AccountServiceTrait
} }
/** /**
* See reference nr. 99 * TODO refactor to "getfirstjournal"
* *
* @param TransactionGroup $group * @param TransactionGroup $group
* *
@@ -544,7 +544,7 @@ trait AccountServiceTrait
} }
/** /**
* See reference nr. 98 * TODO Rename to getOpposingTransaction
* *
* @param TransactionJournal $journal * @param TransactionJournal $journal
* @param Account $account * @param Account $account

View File

@@ -148,7 +148,7 @@ trait RecurringTransactionTrait
if (array_key_exists('foreign_amount', $array) && '' === (string) $array['foreign_amount']) { if (array_key_exists('foreign_amount', $array) && '' === (string) $array['foreign_amount']) {
unset($array['foreign_amount']); unset($array['foreign_amount']);
} }
// See reference nr. 100 // TODO typeOverrule. The account validator may have a different opinion on the type of the transaction.
$transaction = new RecurrenceTransaction( $transaction = new RecurrenceTransaction(
[ [
'recurrence_id' => $recurrence->id, 'recurrence_id' => $recurrence->id,

View File

@@ -35,7 +35,7 @@ use Log;
/** /**
* Class AccountUpdateService * Class AccountUpdateService
* See reference nr. 90 * TODO this service is messy and convoluted.
*/ */
class AccountUpdateService class AccountUpdateService
{ {

View File

@@ -219,7 +219,7 @@ class JournalUpdateService
$result = $validator->validateSource(['id' => $sourceId]); $result = $validator->validateSource(['id' => $sourceId]);
Log::debug(sprintf('hasValidSourceAccount(%d, "%s") will return %s', $sourceId, $sourceName, var_export($result, true))); Log::debug(sprintf('hasValidSourceAccount(%d, "%s") will return %s', $sourceId, $sourceName, var_export($result, true)));
// See reference nr. 95 // TODO typeoverrule the account validator may have a different opinion on the transaction type.
// validate submitted info: // validate submitted info:
return $result; return $result;
@@ -313,7 +313,7 @@ class JournalUpdateService
$result = $validator->validateDestination(['id' => $destId]); $result = $validator->validateDestination(['id' => $destId]);
Log::debug(sprintf('hasValidDestinationAccount(%d, "%s") will return %s', $destId, $destName, var_export($result, true))); Log::debug(sprintf('hasValidDestinationAccount(%d, "%s") will return %s', $destId, $destName, var_export($result, true)));
// See reference nr. 96 // TODO typeOverrule: the account validator may have another opinion on the transaction type.
// validate submitted info: // validate submitted info:
return $result; return $result;

View File

@@ -49,7 +49,7 @@ class RecurrenceUpdateService
/** /**
* Updates a recurrence. * Updates a recurrence.
* *
* See reference nr. 88 * TODO if the user updates the type, the accounts must be validated again.
* *
* @param Recurrence $recurrence * @param Recurrence $recurrence
* @param array $data * @param array $data
@@ -217,7 +217,7 @@ class RecurrenceUpdateService
} }
/** /**
* See reference nr. 89 * TODO this method is very complex.
* *
* @param Recurrence $recurrence * @param Recurrence $recurrence
* @param array $transactions * @param array $transactions

View File

@@ -115,7 +115,7 @@ class WholePeriodChartGenerator
} }
/** /**
* See reference nr. 32 * TODO this method is duplicated
* *
* @param Carbon $start * @param Carbon $start
* @param Carbon $end * @param Carbon $end

View File

@@ -648,7 +648,7 @@ class ExportDataGenerator
*/ */
private function exportTransactions(): string private function exportTransactions(): string
{ {
// See reference nr. 41 // TODO better place for keys?
$header = ['user_id', 'group_id', 'journal_id', 'created_at', 'updated_at', 'group_title', 'type', 'amount', 'foreign_amount', 'currency_code', $header = ['user_id', 'group_id', 'journal_id', 'created_at', 'updated_at', 'group_title', 'type', 'amount', 'foreign_amount', 'currency_code',
'foreign_currency_code', 'description', 'date', 'source_name', 'source_iban', 'source_type', 'destination_name', 'destination_iban', 'foreign_currency_code', 'description', 'date', 'source_name', 'source_iban', 'source_type', 'destination_name', 'destination_iban',
'destination_type', 'reconciled', 'category', 'budget', 'bill', 'tags', 'notes', 'destination_type', 'reconciled', 'category', 'budget', 'bill', 'tags', 'notes',

View File

@@ -34,8 +34,8 @@ use Throwable;
* *
* All form methods that are account related. * All form methods that are account related.
* *
* See reference nr. 29 * TODO describe all methods
* See reference nr. 30 * TODO optimize repositories and methods.
*/ */
class AccountForm class AccountForm
{ {

View File

@@ -105,7 +105,7 @@ class CurrencyForm
} }
/** /**
* See reference nr. 23 * TODO describe and cleanup.
* *
* @param string $name * @param string $name
* @param mixed $value * @param mixed $value
@@ -119,7 +119,7 @@ class CurrencyForm
} }
/** /**
* See reference nr. 24 * TODO describe and cleanup
* *
* @param string $name * @param string $name
* @param string $view * @param string $view
@@ -174,7 +174,7 @@ class CurrencyForm
} }
/** /**
* See reference nr. 25 * TODO cleanup and describe
* *
* @param string $name * @param string $name
* @param mixed $value * @param mixed $value
@@ -199,7 +199,7 @@ class CurrencyForm
} }
/** /**
* See reference nr. 26 * TODO cleanup and describe
* *
* @param string $name * @param string $name
* @param mixed $value * @param mixed $value

View File

@@ -29,14 +29,14 @@ use FireflyIII\Repositories\PiggyBank\PiggyBankRepositoryInterface;
/** /**
* Class PiggyBankForm * Class PiggyBankForm
* *
* See reference nr. 27 * TODO cleanup and describe.
*/ */
class PiggyBankForm class PiggyBankForm
{ {
use FormSupport; use FormSupport;
/** /**
* See reference nr. 28 * TODO cleanup and describe
* *
* @param string $name * @param string $name
* @param mixed $value * @param mixed $value

View File

@@ -30,7 +30,7 @@ use Illuminate\Support\HtmlString;
/** /**
* Class RuleForm * Class RuleForm
* See reference nr. 31 * TODO cleanup and describe
*/ */
class RuleForm class RuleForm
{ {

View File

@@ -76,7 +76,7 @@ trait ChartGeneration
$chartData = []; $chartData = [];
/** @var Account $account */ /** @var Account $account */
foreach ($accounts as $account) { foreach ($accounts as $account) {
// See reference nr. 33 // TODO we can use getAccountCurrency instead.
$currency = $repository->find((int) $accountRepos->getMetaValue($account, 'currency_id')); $currency = $repository->find((int) $accountRepos->getMetaValue($account, 'currency_id'));
if (null === $currency) { if (null === $currency) {
$currency = $default; $currency = $default;

View File

@@ -115,7 +115,7 @@ trait ModelInformation
*/ */
protected function getTriggersForBill(Bill $bill): array // get info and augument protected function getTriggersForBill(Bill $bill): array // get info and augument
{ {
// See reference nr. 39 // TODO duplicate code
$operators = config('search.operators'); $operators = config('search.operators');
$triggers = []; $triggers = [];
foreach ($operators as $key => $operator) { foreach ($operators as $key => $operator) {

View File

@@ -39,7 +39,7 @@ use Log;
/** /**
* Trait PeriodOverview. * Trait PeriodOverview.
* *
* See reference nr. 36 * TODO verify this all works as expected.
* *
* - Always request start date and end date. * - Always request start date and end date.
* - Group expenses, income, etc. under this period. * - Group expenses, income, etc. under this period.
@@ -399,7 +399,7 @@ trait PeriodOverview
} }
/** /**
* See reference nr. 37 * TODO fix the date.
* *
* Show period overview for no category view. * Show period overview for no category view.
* *

View File

@@ -298,7 +298,7 @@ trait RenderPartialViews
*/ */
protected function getCurrentTriggers(Rule $rule): array // get info from object and present. protected function getCurrentTriggers(Rule $rule): array // get info from object and present.
{ {
// See reference nr. 38 // TODO duplicated code.
$operators = config('search.operators'); $operators = config('search.operators');
$triggers = []; $triggers = [];
foreach ($operators as $key => $operator) { foreach ($operators as $key => $operator) {

View File

@@ -78,7 +78,7 @@ trait RuleManagement
*/ */
protected function getPreviousTriggers(Request $request): array protected function getPreviousTriggers(Request $request): array
{ {
// See reference nr. 34 // TODO duplicated code.
$operators = config('search.operators'); $operators = config('search.operators');
$triggers = []; $triggers = [];
foreach ($operators as $key => $operator) { foreach ($operators as $key => $operator) {
@@ -124,7 +124,7 @@ trait RuleManagement
*/ */
protected function parseFromOperators(array $submittedOperators): array protected function parseFromOperators(array $submittedOperators): array
{ {
// See reference nr. 35 // TODO duplicated code.
$operators = config('search.operators'); $operators = config('search.operators');
$renderedEntries = []; $renderedEntries = [];
$triggers = []; $triggers = [];

View File

@@ -154,7 +154,7 @@ class Preferences
* @param null $default * @param null $default
* *
* @return Preference|null * @return Preference|null
* See reference nr. 44 * TODO remove me.
* @throws FireflyException * @throws FireflyException
*/ */
public function getFreshForUser(User $user, string $name, $default = null): ?Preference public function getFreshForUser(User $user, string $name, $default = null): ?Preference

View File

@@ -93,7 +93,7 @@ class AmountFormat extends AbstractExtension
* Will format the amount by the currency related to the given account. * Will format the amount by the currency related to the given account.
* *
* @return TwigFunction * @return TwigFunction
* See reference nr. 42 * TODO remove me when layout v1 is deprecated.
*/ */
protected function formatAmountByAccount(): TwigFunction protected function formatAmountByAccount(): TwigFunction
{ {

View File

@@ -377,7 +377,7 @@ class General extends AbstractExtension
/** /**
* @return TwigFunction * @return TwigFunction
* See reference nr. 43 * TODO remove me when layout v1 is deprecated.
*/ */
protected function getMetaField(): TwigFunction protected function getMetaField(): TwigFunction
{ {

View File

@@ -220,7 +220,7 @@ class AccountTransformer extends AbstractTransformer
* *
* @return array * @return array
* *
* See reference nr. 20 * TODO refactor call to get~OpeningBalanceAmount / Date because it is a lot of queries.
*/ */
private function getOpeningBalance(Account $account, string $accountType): array private function getOpeningBalance(Account $account, string $accountType): array
{ {

View File

@@ -35,7 +35,7 @@ class TagTransformer extends AbstractTransformer
/** /**
* Transform a tag. * Transform a tag.
* *
* See reference nr. 21 * TODO add spent, earned, transferred, etc.
* *
* @param Tag $tag * @param Tag $tag
* *

View File

@@ -788,8 +788,6 @@ class FireflyValidator extends Validator
* @param mixed $value * @param mixed $value
* @param mixed $parameters * @param mixed $parameters
* *
* See reference nr. 107
*
* @return bool * @return bool
*/ */
public function validateUniquePiggyBankForUser($attribute, $value, $parameters): bool public function validateUniquePiggyBankForUser($attribute, $value, $parameters): bool

View File

@@ -41,7 +41,7 @@ trait RecurrenceValidation
/** /**
* Validate account information input for recurrences which are being updated. * Validate account information input for recurrences which are being updated.
* *
* See reference nr. 101 * TODO Must always trigger when the type of the recurrence changes.
* *
* @param Validator $validator * @param Validator $validator
*/ */

View File

@@ -199,19 +199,19 @@ export default {
if (this.transactionType.toString() !== '' && this.index > 0) { if (this.transactionType.toString() !== '' && this.index > 0) {
if (this.transactionType.toString().toLowerCase() === 'transfer') { if (this.transactionType.toString().toLowerCase() === 'transfer') {
this.inputDisabled = true; this.inputDisabled = true;
// See reference nr. 2 // TODO needs to copy value from very first input.
return; return;
} }
if (this.transactionType.toString().toLowerCase() === 'withdrawal' && this.inputName.substr(0, 6).toLowerCase() === 'source') { if (this.transactionType.toString().toLowerCase() === 'withdrawal' && this.inputName.substr(0, 6).toLowerCase() === 'source') {
// See reference nr. 3 // TODO also clear value?
this.inputDisabled = true; this.inputDisabled = true;
return; return;
} }
if (this.transactionType.toString().toLowerCase() === 'deposit' && this.inputName.substr(0, 11).toLowerCase() === 'destination') { if (this.transactionType.toString().toLowerCase() === 'deposit' && this.inputName.substr(0, 11).toLowerCase() === 'destination') {
// See reference nr. 4 // TODO also clear valye?
this.inputDisabled = true; this.inputDisabled = true;
} }
} }
@@ -241,7 +241,7 @@ export default {
this.$emit('clear:value') this.$emit('clear:value')
}, },
handleEnter: function (e) { handleEnter: function (e) {
// See reference nr. 5 // TODO feels sloppy. Can be removed.
if (e.keyCode === 13) { if (e.keyCode === 13) {
//e.preventDefault(); //e.preventDefault();
} }

View File

@@ -167,7 +167,7 @@ export default {
this.$emit('input', this.name.name); this.$emit('input', this.name.name);
}, },
handleEnter: function (e) { handleEnter: function (e) {
// See reference nr. 1 // TODO feels sloppy
if (e.keyCode === 13) { if (e.keyCode === 13) {
//e.preventDefault(); //e.preventDefault();
} }

View File

@@ -96,7 +96,7 @@ export default {
}; };
}, },
computed: { computed: {
// See reference nr. 6 // TODO this seems to be a pretty weird way of doing it.
dateComponent() { dateComponent() {
return 'custom-date'; return 'custom-date';
}, },

View File

@@ -139,7 +139,7 @@ export default {
this.$emit('input', this.$refs.descr.value); this.$emit('input', this.$refs.descr.value);
}, },
handleEnter: function (e) { handleEnter: function (e) {
// See reference nr. 7 // TODO feels sloppy
if (e.keyCode === 13) { if (e.keyCode === 13) {
//e.preventDefault(); //e.preventDefault();

View File

@@ -127,7 +127,7 @@
{% if journal.reconciled %} {% if journal.reconciled %}
<span class="fa fa-check" aria-hidden="true"></span> <span class="fa fa-check" aria-hidden="true"></span>
{% else %} {% else %}
<!-- See reference nr. 1 --> <!--TODO include icon -->
{% endif %} {% endif %}
{% endif %} {% endif %}

View File

@@ -16,7 +16,8 @@
<td data-value="{{ transaction.description }}">{{ transaction.description }}</td> <td data-value="{{ transaction.description }}">{{ transaction.description }}</td>
<td data-value="{{ transaction.date.format('Y-m-d') }}"> <td data-value="{{ transaction.date.format('Y-m-d') }}">
{{ transaction.date.isoFormat(monthAndDayFormat) }} {{ transaction.date.isoFormat(monthAndDayFormat) }}
</td><!-- See reference nr. 3 --> </td>
<!-- TODO i dont think transactionAmount will work. -->
<td style="text-align: right;" data-value="{{ transaction.amount}}"><span <td style="text-align: right;" data-value="{{ transaction.amount}}"><span
style="margin-right:5px;"> style="margin-right:5px;">

View File

@@ -3,7 +3,7 @@
<a href="#" class="btn btn-danger btn-sm remove-action"><span class="fa fa-trash"></span></a> <a href="#" class="btn btn-danger btn-sm remove-action"><span class="fa fa-trash"></span></a>
</td> </td>
<td style="width:30%;"> <td style="width:30%;">
{# See reference nr. 2 #} {# TODO error when invalid name #}
<select name="actions[{{ count }}][type]" class="form-control"> <select name="actions[{{ count }}][type]" class="form-control">
{% for key,type in allRuleActions() %} {% for key,type in allRuleActions() %}
<option value="{{ key }}" label="{{ type }}" {% if key == oldAction %} selected{% endif %}>{{ type }}</option> <option value="{{ key }}" label="{{ type }}" {% if key == oldAction %} selected{% endif %}>{{ type }}</option>

View File

@@ -220,10 +220,10 @@ Route::group(
Route::get('tag', ['uses' => 'TagController@tag', 'as' => 'tag']); Route::get('tag', ['uses' => 'TagController@tag', 'as' => 'tag']);
Route::get('no-tag', ['uses' => 'TagController@noTag', 'as' => 'no-tag']); Route::get('no-tag', ['uses' => 'TagController@noTag', 'as' => 'no-tag']);
// See reference nr. 7 // TODO per object group, perhaps in the future.
// See reference nr. 8 // TODO per recurrence, all transaction created under it.
// See reference nr. 9 // TODO Per currency or as filter?
// See reference nr. 10 // TODO Show user net worth
} }
); );
// insight in income // insight in income
@@ -241,10 +241,10 @@ Route::group(
Route::get('tag', ['uses' => 'TagController@tag', 'as' => 'tag']); Route::get('tag', ['uses' => 'TagController@tag', 'as' => 'tag']);
Route::get('no-tag', ['uses' => 'TagController@noTag', 'as' => 'no-tag']); Route::get('no-tag', ['uses' => 'TagController@noTag', 'as' => 'no-tag']);
// See reference nr. 11 // TODO per object group, maybe in the future
// See reference nr. 12 // TODO Per recurrence, all transactions created under it.
// See reference nr. 13 // TODO per currency or as a filter?
// See reference nr. 14 // TODO show user net worth?
} }
); );
@@ -261,7 +261,7 @@ Route::group(
Route::get('no-tag', ['uses' => 'TagController@noTag', 'as' => 'no-tag']); Route::get('no-tag', ['uses' => 'TagController@noTag', 'as' => 'no-tag']);
Route::get('total', ['uses' => 'PeriodController@total', 'as' => 'total']); Route::get('total', ['uses' => 'PeriodController@total', 'as' => 'total']);
// See reference nr. 15 // TODO Transfers for piggies
} }
); );
/** /**
@@ -442,7 +442,6 @@ Route::group(
Route::delete('{recurrence}', ['uses' => 'DestroyController@destroy', 'as' => 'delete']); Route::delete('{recurrence}', ['uses' => 'DestroyController@destroy', 'as' => 'delete']);
Route::get('{recurrence}/transactions', ['uses' => 'ListController@transactions', 'as' => 'transactions']); Route::get('{recurrence}/transactions', ['uses' => 'ListController@transactions', 'as' => 'transactions']);
// See reference nr. 16
Route::post('trigger', ['uses' => 'RecurrenceController@trigger', 'as' => 'trigger']); Route::post('trigger', ['uses' => 'RecurrenceController@trigger', 'as' => 'trigger']);
} }
); );
@@ -460,9 +459,9 @@ Route::group(
Route::delete('{rule}', ['uses' => 'DestroyController@destroy', 'as' => 'delete']); Route::delete('{rule}', ['uses' => 'DestroyController@destroy', 'as' => 'delete']);
Route::get('{rule}/test', ['uses' => 'TriggerController@testRule', 'as' => 'test']); Route::get('{rule}/test', ['uses' => 'TriggerController@testRule', 'as' => 'test']);
// See reference nr. 17 // TODO give results back
Route::post('{rule}/trigger', ['uses' => 'TriggerController@triggerRule', 'as' => 'trigger']); Route::post('{rule}/trigger', ['uses' => 'TriggerController@triggerRule', 'as' => 'trigger']);
// See reference nr. 18 // TODO rule transactions, rule bills?
} }
); );

View File

@@ -1135,13 +1135,13 @@ try {
$title = limitStringLength((string) $group->title); $title = limitStringLength((string) $group->title);
} }
if ('opening balance' === $type) { if ('opening balance' === $type) {
// See reference nr. 1 // TODO link to account
$breadcrumbs->push($title, route('transactions.show', [$group->id])); $breadcrumbs->push($title, route('transactions.show', [$group->id]));
return; return;
} }
if ('reconciliation' === $type) { if ('reconciliation' === $type) {
// See reference nr. 2 // TODO link to account
$breadcrumbs->push($title, route('transactions.show', [$group->id])); $breadcrumbs->push($title, route('transactions.show', [$group->id]));
return; return;

View File

@@ -804,7 +804,7 @@ Route::group(
'as' => 'report-data.category.',], 'as' => 'report-data.category.',],
static function () { static function () {
// See reference nr. 3 // TODO three routes still in use?
Route::get('operations/{accountList}/{start_date}/{end_date}', ['uses' => 'CategoryController@operations', 'as' => 'operations']); Route::get('operations/{accountList}/{start_date}/{end_date}', ['uses' => 'CategoryController@operations', 'as' => 'operations']);
Route::get('income/{accountList}/{start_date}/{end_date}', ['uses' => 'CategoryController@income', 'as' => 'income']); Route::get('income/{accountList}/{start_date}/{end_date}', ['uses' => 'CategoryController@income', 'as' => 'income']);
Route::get('expenses/{accountList}/{start_date}/{end_date}', ['uses' => 'CategoryController@expenses', 'as' => 'expenses']); Route::get('expenses/{accountList}/{start_date}/{end_date}', ['uses' => 'CategoryController@expenses', 'as' => 'expenses']);
@@ -860,7 +860,7 @@ Route::group(
['middleware' => 'user-full-auth', 'namespace' => 'FireflyIII\Http\Controllers\Report', 'prefix' => 'report-data/budget', 'as' => 'report-data.budget.'], ['middleware' => 'user-full-auth', 'namespace' => 'FireflyIII\Http\Controllers\Report', 'prefix' => 'report-data/budget', 'as' => 'report-data.budget.'],
static function () { static function () {
Route::get('general/{accountList}/{start_date}/{end_date}/', ['uses' => 'BudgetController@general', 'as' => 'general']); Route::get('general/{accountList}/{start_date}/{end_date}/', ['uses' => 'BudgetController@general', 'as' => 'general']);
// See reference nr. 4 // TODO is route still used?
Route::get('period/{accountList}/{start_date}/{end_date}', ['uses' => 'BudgetController@period', 'as' => 'period']); Route::get('period/{accountList}/{start_date}/{end_date}', ['uses' => 'BudgetController@period', 'as' => 'period']);
Route::get('accounts/{accountList}/{budgetList}/{start_date}/{end_date}', ['uses' => 'BudgetController@accounts', 'as' => 'accounts']); Route::get('accounts/{accountList}/{budgetList}/{start_date}/{end_date}', ['uses' => 'BudgetController@accounts', 'as' => 'accounts']);
@@ -971,7 +971,7 @@ Route::group(
static function () { static function () {
// show groups: // show groups:
// See reference nr. 5 // TODO improve these routes
Route::get('{what}/all', ['uses' => 'Transaction\IndexController@indexAll', 'as' => 'index.all'])->where( Route::get('{what}/all', ['uses' => 'Transaction\IndexController@indexAll', 'as' => 'index.all'])->where(
['what' => 'withdrawal|deposit|transfers|transfer'] ['what' => 'withdrawal|deposit|transfers|transfer']
); );
@@ -1044,7 +1044,7 @@ Route::group(
static function () { static function () {
Route::get('modal/{tj}', ['uses' => 'LinkController@modal', 'as' => 'modal']); Route::get('modal/{tj}', ['uses' => 'LinkController@modal', 'as' => 'modal']);
// See reference nr. 6 // TODO improve this route
Route::post('store/{tj}', ['uses' => 'LinkController@store', 'as' => 'store']); Route::post('store/{tj}', ['uses' => 'LinkController@store', 'as' => 'store']);
Route::get('delete/{journalLink}', ['uses' => 'LinkController@delete', 'as' => 'delete']); Route::get('delete/{journalLink}', ['uses' => 'LinkController@delete', 'as' => 'delete']);
Route::post('switch', ['uses' => 'LinkController@switchLink', 'as' => 'switch']); Route::post('switch', ['uses' => 'LinkController@switchLink', 'as' => 'switch']);