transactionType->type; switch ($type) { case 'Withdrawal': return ''; break; case 'Deposit': return ''; break; case 'Transfer': return ''; break; case 'Opening balance': return ''; break; default: return ''; break; } }, ['is_safe' => ['html']] ); return $filters; } /** * @SuppressWarnings(PHPMD.CyclomaticComplexity) * * @return array */ public function getFunctions() { $functions = []; $functions[] = new Twig_SimpleFunction( 'invalidJournal', function (TransactionJournal $journal) { if (!isset($journal->transactions[1]) || !isset($journal->transactions[0])) { return true; } return false; } ); $functions[] = new Twig_SimpleFunction( 'relevantTags', function (TransactionJournal $journal) { if ($journal->tags->count() == 0) { return App::make('amount')->formatJournal($journal); } foreach ($journal->tags as $tag) { if ($tag->tagMode == 'balancingAct') { // return tag formatted for a "balancing act". $amount = App::make('amount')->formatJournal($journal, false); return ' ' . $tag->tag . ''; } } return 'TODO: ' . $journal->amount; } ); return $functions; } /** * Returns the name of the extension. * * @return string The extension name */ public function getName() { return 'FireflyIII\Support\Twig\Journals'; } }