mirror of
https://github.com/firefly-iii/firefly-iii.git
synced 2025-10-18 18:40:12 +00:00
Compare commits
55 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
aaa186be5e | ||
|
98ae5b0ca0 | ||
|
36c8171d0f | ||
|
3603eb94cc | ||
|
0e068d4ccf | ||
|
199f348ff4 | ||
|
b22655fb7c | ||
|
06cc9618ba | ||
|
b9019c8c7f | ||
|
77e133e67c | ||
|
571e7df807 | ||
|
22f4d2979a | ||
|
e46e366694 | ||
|
7b4bc23815 | ||
|
9ca79f767c | ||
|
274dba7408 | ||
|
31708ca29e | ||
|
671b025588 | ||
|
a7956e4856 | ||
|
355862025a | ||
|
a2a39ee0f8 | ||
|
ec8e39c16f | ||
|
88f714999e | ||
|
c0c2aa3be0 | ||
|
822044820e | ||
|
6ffc182142 | ||
|
3d54a78573 | ||
|
8ddf7d953a | ||
|
8b9e9ad103 | ||
|
5737224c40 | ||
|
ec9aacbcae | ||
|
9395454997 | ||
|
66198a8d98 | ||
|
96ed9a4256 | ||
|
10e54b2263 | ||
|
cf00922ad2 | ||
|
84e8e007a5 | ||
|
d07b2e773b | ||
|
506ef7b0b9 | ||
|
2cd5dae8e2 | ||
|
a1cd49c111 | ||
|
aca2973aef | ||
|
0a7a691c95 | ||
|
72906a7afd | ||
|
d1a4a83570 | ||
|
e0396b29e8 | ||
|
536833cfe0 | ||
|
317b02d1b9 | ||
|
75e279ea0d | ||
|
dc2ad21f4c | ||
|
484d49aae1 | ||
|
ca39438ad4 | ||
|
49a65ebff4 | ||
|
befdc05084 | ||
|
1fbffe761b |
@@ -15,4 +15,5 @@ EMAIL_SMTP=
|
|||||||
EMAIL_DRIVER=smtp
|
EMAIL_DRIVER=smtp
|
||||||
EMAIL_USERNAME=
|
EMAIL_USERNAME=
|
||||||
EMAIL_PASSWORD=
|
EMAIL_PASSWORD=
|
||||||
ANALYTICS_ID=
|
ANALYTICS_ID=
|
||||||
|
EMAIL_PRETEND=false
|
@@ -14,4 +14,5 @@ SESSION_DRIVER=array
|
|||||||
EMAIL_SMTP=
|
EMAIL_SMTP=
|
||||||
EMAIL_USERNAME=
|
EMAIL_USERNAME=
|
||||||
EMAIL_PASSWORD=
|
EMAIL_PASSWORD=
|
||||||
ANALYTICS_ID=ABC
|
ANALYTICS_ID=ABC
|
||||||
|
EMAIL_PRETEND=true
|
94
README.md
94
README.md
@@ -1,46 +1,64 @@
|
|||||||
Firefly III (v3.4.0.3)
|
# Firefly III
|
||||||
===========
|
#### v3.4.0.6
|
||||||
|
|
||||||
[](https://travis-ci.org/JC5/firefly-iii)
|
[](https://travis-ci.org/JC5/firefly-iii)
|
||||||
[](http://stillmaintained.com/JC5/firefly-iii)
|
[](http://stillmaintained.com/JC5/firefly-iii)
|
||||||
[](https://insight.sensiolabs.com/projects/d44c7012-5f50-41ad-add8-8445330e4102)
|
[](https://insight.sensiolabs.com/projects/d44c7012-5f50-41ad-add8-8445330e4102)
|
||||||
[](https://codeclimate.com/github/JC5/firefly-iii)
|
[](https://codeclimate.com/github/JC5/firefly-iii)
|
||||||
[](https://coveralls.io/r/JC5/firefly-iii?branch=master)
|
[](https://coveralls.io/r/JC5/firefly-iii?branch=master)
|
||||||
[](https://coveralls.io/r/JC5/firefly-iii?branch=develop)
|
|
||||||
|
|
||||||
[](https://packagist.org/packages/grumpydictator/firefly-iii)
|
[](https://packagist.org/packages/grumpydictator/firefly-iii)
|
||||||
[](https://packagist.org/packages/grumpydictator/firefly-iii)
|

|
||||||
[](https://packagist.org/packages/grumpydictator/firefly-iii)
|
## About
|
||||||
[](https://packagist.org/packages/grumpydictator/firefly-iii)
|
|
||||||
|
|
||||||
Firefly III is a tool to help you manage your finances. Please read the full description [in the wiki](https://github.com/JC5/firefly-iii/wiki/full-description).
|
"Firefly III" is a financial manager. It can help you keep track of expenses, income, budgets and everything in between. It even supports credit cards, shared
|
||||||
|
household accounts and savings accounts! It's pretty fancy. You should use it to save and organise money.
|
||||||
Firefly Mark III is a new version of Firefly built upon best practices and lessons learned
|
|
||||||
from building [Firefly](https://github.com/JC5/Firefly). It's Mark III since the original Firefly never made it outside of my
|
|
||||||
laptop and [Firefly II](https://github.com/JC5/Firefly) is live.
|
|
||||||
|
|
||||||
If you're not sure if this tool is for you, please read the [full description](https://github.com/JC5/firefly-iii/wiki/full-description).
|
|
||||||
|
|
||||||
To install and use Firefly III, please read [the installation guide](https://github.com/JC5/firefly-iii/wiki/Installation),
|
|
||||||
[the upgrade guide](https://github.com/JC5/firefly-iii/wiki/Upgrade-instructions) (if applicable) and the **[first use guide](https://github.com/JC5/firefly-iii/wiki/First-use)**.
|
|
||||||
|
|
||||||
If you want to try out Firefly III, you can do so on [this dedicated website](https://geld.nder.be/). This site always runs the latest version of Firefly III. If you want to use it, please read the [privacy considerations](https://github.com/JC5/firefly-iii/wiki/Privacy-on-demo-site) for this demo-site.
|
_Firefly is a system you'll have install yourself on webhosting of your choosing._
|
||||||
|
|
||||||
|
Personal financial management is pretty difficult, and everybody has their own approach to it. Some people
|
||||||
|
make budgets, other people limit their cashflow by throwing away their credit cards, others try to increase
|
||||||
|
their current cashflow. There are tons of ways to save and earn money.
|
||||||
|
|
||||||
|
Firefly works on the principle that if you know where you're money is going, you can stop it from going there.
|
||||||
|
|
||||||
|
|
||||||
|
To get to know Firefly, and to see if it fits you, check out these resources:
|
||||||
|
|
||||||
|
- The screenshots below on this very page.
|
||||||
|
- The featurelist below, also on this very page.
|
||||||
|
- The [full description](https://github.com/JC5/firefly-iii/wiki/full-description), which will tell you how Firefly works,
|
||||||
|
and the philosophy behind it.
|
||||||
|
|
||||||
|
|
||||||
|
#### About the name (if you care)
|
||||||
|
|
||||||
|
It's III, or 3, because [version 2](https://github.com/JC5/Firefly) and version 1 (not online) preceded it. It has been growing steadily ever since.
|
||||||
|
|
||||||
|
## Running and installing
|
||||||
|
|
||||||
|
If you're still interested please read [the installation guide](https://github.com/JC5/firefly-iii/wiki/Installation),
|
||||||
|
[the upgrade guide](https://github.com/JC5/firefly-iii/wiki/Upgrade-instructions) (if applicable)
|
||||||
|
and the **[first use guide](https://github.com/JC5/firefly-iii/wiki/First-use)**.
|
||||||
|
|
||||||
|
If you want to try out Firefly III, you can do so on [this dedicated website](https://geld.nder.be/).
|
||||||
|
This site always runs the latest version of Firefly III. If you want to use it, please read the [privacy considerations](https://github.com/JC5/firefly-iii/wiki/Privacy-on-demo-site) for this demo-site.
|
||||||
|
|
||||||
## Current features
|
## Current features
|
||||||
|
|
||||||
- [A double-entry bookkeeping system](https://en.wikipedia.org/wiki/Double-entry_bookkeeping_system);
|
- [A double-entry bookkeeping system](https://en.wikipedia.org/wiki/Double-entry_bookkeeping_system);
|
||||||
- You can store, edit and remove withdrawals, deposits and transfers. This allows you full financial management;
|
- You can store, edit and remove [withdrawals, deposits and transfers](https://en.wikipedia.org/wiki/Financial_transaction). This allows you full financial management;
|
||||||
- You can manage different types of accounts
|
- You can manage different types of accounts
|
||||||
- Asset accounts
|
- [Asset](https://en.wikipedia.org/wiki/Asset) accounts
|
||||||
- Shared asset accounts (household accounts)
|
- Shared [asset accounts](https://en.wikipedia.org/wiki/Asset) ([household accounts](https://en.wikipedia.org/wiki/Household))
|
||||||
- Saving accounts
|
- Saving accounts
|
||||||
- Credit cards
|
- Credit cards
|
||||||
- It's possible to create, change and manage money using _[budgets](https://en.wikipedia.org/wiki/Envelope_system)_;
|
- It's possible to create, change and manage money using _[budgets](https://en.wikipedia.org/wiki/Envelope_system)_;
|
||||||
- Organize transactions using categories;
|
- Organize transactions using categories;
|
||||||
- Save towards a goal using piggy banks;
|
- Save towards a goal using [piggy banks](https://en.wikipedia.org/wiki/Piggy_bank);
|
||||||
- Predict and anticipate bills;
|
- Predict and anticipate [bills](https://en.wikipedia.org/wiki/Invoice);
|
||||||
- View income / expense reports;
|
- View income / expense [reports](https://en.wikipedia.org/wiki/Financial_statement);
|
||||||
- Lots of help text in case you don't get it;
|
- Organize expenses using tags;
|
||||||
|
- Lots of help text in case you don't get it.
|
||||||
|
|
||||||
Everything is organised:
|
Everything is organised:
|
||||||
|
|
||||||
@@ -50,24 +68,10 @@ Everything is organised:
|
|||||||
- Lots of charts because we all love them.
|
- Lots of charts because we all love them.
|
||||||
- Financial reporting showing you how well you are doing;
|
- Financial reporting showing you how well you are doing;
|
||||||
|
|
||||||
## Changes
|
|
||||||
|
|
||||||
Firefly III will feature, but does not feature yet:
|
|
||||||
|
|
||||||
|
|
||||||
- More control over other resources outside of personal finance
|
|
||||||
- Debts
|
|
||||||
- More test-coverage;
|
|
||||||
- Firefly will be able to split transactions; a single purchase can be split in multiple entries, for more fine-grained control.
|
|
||||||
- Firefly will be able to join transactions.
|
|
||||||
- Any other features I might not have thought of.
|
|
||||||
|
|
||||||
Some stuff has been removed:
|
|
||||||
|
|
||||||
- The nesting of budgets, categories and beneficiaries is removed because it was pretty pointless.
|
|
||||||
|
|
||||||
## Screenshots
|
## Screenshots
|
||||||
|
|
||||||
|
_Please note that everything in these screenshots is fictional and may not be realistic._
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||

|

|
||||||
@@ -83,6 +87,10 @@ Some stuff has been removed:
|
|||||||

|

|
||||||
|
|
||||||
## Current state
|
## Current state
|
||||||
I have the basics up and running. Test coverage is currently coming, slowly.
|
|
||||||
|
|
||||||
Questions, ideas or other things to contribute? [Let me know](https://github.com/JC5/firefly-iii/issues/new)!
|
Firefly III is pretty much all grown up. Full test coverage (nerd alert!) is coming. One of the things on the todo-list
|
||||||
|
is adding translations.
|
||||||
|
|
||||||
|
Questions, ideas, bugs or other things to contribute? [Let me know](https://github.com/JC5/firefly-iii/issues/new)!
|
||||||
|
|
||||||
|
If you like this tool, feel free to [donate me some beer money](https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=2ZMV952UUSCLU&lc=NL&item_name=Development%20of%20Firefly¤cy_code=EUR&bn=PP%2dDonationsBF%3abtn_donate_SM%2egif%3aNonHosted).
|
||||||
|
@@ -2,6 +2,7 @@
|
|||||||
/**
|
/**
|
||||||
* Class Command
|
* Class Command
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Commands
|
* @package FireflyIII\Commands
|
||||||
*/
|
*/
|
||||||
abstract class Command
|
abstract class Command
|
||||||
|
@@ -6,6 +6,7 @@ use Illuminate\Foundation\Console\Kernel as ConsoleKernel;
|
|||||||
/**
|
/**
|
||||||
* Class Kernel
|
* Class Kernel
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Console
|
* @package FireflyIII\Console
|
||||||
*/
|
*/
|
||||||
class Kernel extends ConsoleKernel
|
class Kernel extends ConsoleKernel
|
||||||
|
@@ -3,6 +3,7 @@
|
|||||||
/**
|
/**
|
||||||
* Class Event
|
* Class Event
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Events
|
* @package FireflyIII\Events
|
||||||
*/
|
*/
|
||||||
abstract class Event
|
abstract class Event
|
||||||
|
@@ -6,6 +6,7 @@ use Illuminate\Queue\SerializesModels;
|
|||||||
/**
|
/**
|
||||||
* Class JournalCreated
|
* Class JournalCreated
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Events
|
* @package FireflyIII\Events
|
||||||
*/
|
*/
|
||||||
class JournalCreated extends Event
|
class JournalCreated extends Event
|
||||||
|
@@ -5,6 +5,7 @@ use Illuminate\Queue\SerializesModels;
|
|||||||
/**
|
/**
|
||||||
* Class JournalDeleted
|
* Class JournalDeleted
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Events
|
* @package FireflyIII\Events
|
||||||
*/
|
*/
|
||||||
class JournalDeleted extends Event
|
class JournalDeleted extends Event
|
||||||
|
@@ -6,6 +6,7 @@ use Illuminate\Queue\SerializesModels;
|
|||||||
/**
|
/**
|
||||||
* Class JournalSaved
|
* Class JournalSaved
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Events
|
* @package FireflyIII\Events
|
||||||
*/
|
*/
|
||||||
class JournalSaved extends Event
|
class JournalSaved extends Event
|
||||||
|
@@ -6,6 +6,7 @@ namespace FireflyIII\Exceptions;
|
|||||||
/**
|
/**
|
||||||
* Class FireflyException
|
* Class FireflyException
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Exceptions
|
* @package FireflyIII\Exceptions
|
||||||
*/
|
*/
|
||||||
class FireflyException extends \Exception
|
class FireflyException extends \Exception
|
||||||
|
@@ -6,6 +6,7 @@ use Illuminate\Foundation\Exceptions\Handler as ExceptionHandler;
|
|||||||
/**
|
/**
|
||||||
* Class Handler
|
* Class Handler
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Exceptions
|
* @package FireflyIII\Exceptions
|
||||||
*/
|
*/
|
||||||
class Handler extends ExceptionHandler
|
class Handler extends ExceptionHandler
|
||||||
|
@@ -5,6 +5,7 @@ namespace FireflyIII\Exceptions;
|
|||||||
/**
|
/**
|
||||||
* Class NotImplementedException
|
* Class NotImplementedException
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Exceptions
|
* @package FireflyIII\Exceptions
|
||||||
*/
|
*/
|
||||||
class NotImplementedException extends \Exception
|
class NotImplementedException extends \Exception
|
||||||
|
@@ -4,6 +4,7 @@ namespace FireflyIII\Exceptions;
|
|||||||
/**
|
/**
|
||||||
* Class ValidationExceptions
|
* Class ValidationExceptions
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Exception
|
* @package FireflyIII\Exception
|
||||||
*/
|
*/
|
||||||
class ValidationException extends \Exception
|
class ValidationException extends \Exception
|
||||||
|
@@ -30,7 +30,7 @@ class ConnectJournalToPiggyBank
|
|||||||
*
|
*
|
||||||
* @param JournalCreated $event
|
* @param JournalCreated $event
|
||||||
*
|
*
|
||||||
* @return void
|
* @return boolean
|
||||||
*/
|
*/
|
||||||
public function handle(JournalCreated $event)
|
public function handle(JournalCreated $event)
|
||||||
{
|
{
|
||||||
@@ -38,7 +38,7 @@ class ConnectJournalToPiggyBank
|
|||||||
$journal = $event->journal;
|
$journal = $event->journal;
|
||||||
$piggyBankId = $event->piggyBankId;
|
$piggyBankId = $event->piggyBankId;
|
||||||
if (intval($piggyBankId) < 1) {
|
if (intval($piggyBankId) < 1) {
|
||||||
return;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
Log::debug('JournalCreated event: ' . $journal->id . ', ' . $piggyBankId);
|
Log::debug('JournalCreated event: ' . $journal->id . ', ' . $piggyBankId);
|
||||||
@@ -47,20 +47,20 @@ class ConnectJournalToPiggyBank
|
|||||||
$piggyBank = Auth::user()->piggybanks()->where('piggy_banks.id', $piggyBankId)->first(['piggy_banks.*']);
|
$piggyBank = Auth::user()->piggybanks()->where('piggy_banks.id', $piggyBankId)->first(['piggy_banks.*']);
|
||||||
|
|
||||||
if (is_null($piggyBank) || $journal->transactionType->type != 'Transfer') {
|
if (is_null($piggyBank) || $journal->transactionType->type != 'Transfer') {
|
||||||
return;
|
return false;
|
||||||
}
|
}
|
||||||
Log::debug('Found a piggy bank');
|
Log::debug('Found a piggy bank');
|
||||||
$amount = $journal->amount;
|
$amount = $journal->amount;
|
||||||
Log::debug('Amount: ' . $amount);
|
Log::debug('Amount: ' . $amount);
|
||||||
if ($amount == 0) {
|
if ($amount == 0) {
|
||||||
return;
|
return false;
|
||||||
}
|
}
|
||||||
// update piggy bank rep for date of transaction journal.
|
// update piggy bank rep for date of transaction journal.
|
||||||
$repetition = $piggyBank->piggyBankRepetitions()->relevantOnDate($journal->date)->first();
|
$repetition = $piggyBank->piggyBankRepetitions()->relevantOnDate($journal->date)->first();
|
||||||
if (is_null($repetition)) {
|
if (is_null($repetition)) {
|
||||||
Log::debug('Found no repetition for piggy bank for date ' . $journal->date->format('Y M d'));
|
Log::debug('Found no repetition for piggy bank for date ' . $journal->date->format('Y M d'));
|
||||||
|
|
||||||
return;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
Log::debug('Found rep! ' . $repetition->id);
|
Log::debug('Found rep! ' . $repetition->id);
|
||||||
@@ -91,6 +91,7 @@ class ConnectJournalToPiggyBank
|
|||||||
'amount' => $amount
|
'amount' => $amount
|
||||||
]
|
]
|
||||||
);
|
);
|
||||||
|
return true;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -5,6 +5,7 @@ use FireflyIII\Events\JournalDeleted;
|
|||||||
/**
|
/**
|
||||||
* Class JournalDeletedHandler
|
* Class JournalDeletedHandler
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Handlers\Events
|
* @package FireflyIII\Handlers\Events
|
||||||
*/
|
*/
|
||||||
class JournalDeletedHandler
|
class JournalDeletedHandler
|
||||||
|
@@ -7,6 +7,7 @@ use Log;
|
|||||||
/**
|
/**
|
||||||
* Class RescanJournal
|
* Class RescanJournal
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Handlers\Events
|
* @package FireflyIII\Handlers\Events
|
||||||
*/
|
*/
|
||||||
class RescanJournal
|
class RescanJournal
|
||||||
|
@@ -6,6 +6,7 @@ use FireflyIII\Models\PiggyBankEvent;
|
|||||||
/**
|
/**
|
||||||
* Class UpdateJournalConnection
|
* Class UpdateJournalConnection
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Handlers\Events
|
* @package FireflyIII\Handlers\Events
|
||||||
*/
|
*/
|
||||||
class UpdateJournalConnection
|
class UpdateJournalConnection
|
||||||
|
@@ -17,6 +17,7 @@ class Help implements HelpInterface
|
|||||||
{
|
{
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @param $key
|
* @param $key
|
||||||
*
|
*
|
||||||
* @return string
|
* @return string
|
||||||
@@ -27,6 +28,7 @@ class Help implements HelpInterface
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @param $route
|
* @param $route
|
||||||
*
|
*
|
||||||
* @return array
|
* @return array
|
||||||
@@ -54,6 +56,7 @@ class Help implements HelpInterface
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @param $route
|
* @param $route
|
||||||
*
|
*
|
||||||
* @return bool
|
* @return bool
|
||||||
@@ -64,6 +67,7 @@ class Help implements HelpInterface
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @param $route
|
* @param $route
|
||||||
* @param array $content
|
* @param array $content
|
||||||
*
|
*
|
||||||
@@ -76,6 +80,7 @@ class Help implements HelpInterface
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @param $route
|
* @param $route
|
||||||
*
|
*
|
||||||
* @return bool
|
* @return bool
|
||||||
|
@@ -33,7 +33,7 @@ class ReminderHelper implements ReminderHelperInterface
|
|||||||
$ranges = $this->getReminderRanges($piggyBank, $start);
|
$ranges = $this->getReminderRanges($piggyBank, $start);
|
||||||
$currentRep = $piggyBank->currentRelevantRep();
|
$currentRep = $piggyBank->currentRelevantRep();
|
||||||
$left = $piggyBank->targetamount - $currentRep->currentamount;
|
$left = $piggyBank->targetamount - $currentRep->currentamount;
|
||||||
$perReminder = $left / count($ranges);
|
$perReminder = count($ranges) == 0 ? $left : $left / count($ranges);
|
||||||
} else {
|
} else {
|
||||||
$perReminder = null;
|
$perReminder = null;
|
||||||
$ranges = [];
|
$ranges = [];
|
||||||
@@ -46,8 +46,6 @@ class ReminderHelper implements ReminderHelperInterface
|
|||||||
'leftToSave' => $left,
|
'leftToSave' => $left,
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
||||||
// create one:
|
|
||||||
$reminder = new Reminder;
|
$reminder = new Reminder;
|
||||||
$reminder->user()->associate(Auth::user());
|
$reminder->user()->associate(Auth::user());
|
||||||
$reminder->startdate = $start;
|
$reminder->startdate = $start;
|
||||||
|
@@ -18,25 +18,6 @@ use Steam;
|
|||||||
class ReportHelper implements ReportHelperInterface
|
class ReportHelper implements ReportHelperInterface
|
||||||
{
|
{
|
||||||
|
|
||||||
/**
|
|
||||||
* This methods fails to take in account transfers FROM shared accounts.
|
|
||||||
*
|
|
||||||
* @param Carbon $start
|
|
||||||
* @param Carbon $end
|
|
||||||
* @param int $limit
|
|
||||||
*
|
|
||||||
* @return Collection
|
|
||||||
*/
|
|
||||||
public function expensesGroupedByAccount(Carbon $start, Carbon $end, $limit = 15)
|
|
||||||
{
|
|
||||||
$result = $this->_queries->journalsByExpenseAccount($start, $end);
|
|
||||||
$array = $this->_helper->makeArray($result);
|
|
||||||
$limited = $this->_helper->limitArray($array, $limit);
|
|
||||||
|
|
||||||
return $limited;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This method gets some kind of list for a monthly overview.
|
* This method gets some kind of list for a monthly overview.
|
||||||
*
|
*
|
||||||
|
@@ -13,18 +13,6 @@ use Illuminate\Support\Collection;
|
|||||||
interface ReportHelperInterface
|
interface ReportHelperInterface
|
||||||
{
|
{
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* This methods fails to take in account transfers FROM shared accounts.
|
|
||||||
*
|
|
||||||
* @param Carbon $start
|
|
||||||
* @param Carbon $end
|
|
||||||
* @param int $limit
|
|
||||||
*
|
|
||||||
* @return Collection
|
|
||||||
*/
|
|
||||||
public function expensesGroupedByAccount(Carbon $start, Carbon $end, $limit = 15);
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This method gets some kind of list for a monthly overview.
|
* This method gets some kind of list for a monthly overview.
|
||||||
*
|
*
|
||||||
|
@@ -38,6 +38,7 @@ class AuthController extends Controller
|
|||||||
*
|
*
|
||||||
* @param \Illuminate\Contracts\Auth\Guard $auth
|
* @param \Illuminate\Contracts\Auth\Guard $auth
|
||||||
* @param \Illuminate\Contracts\Auth\Registrar $registrar
|
* @param \Illuminate\Contracts\Auth\Registrar $registrar
|
||||||
|
* @codeCoverageIgnore
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
public function __construct(Guard $auth, Registrar $registrar)
|
public function __construct(Guard $auth, Registrar $registrar)
|
||||||
@@ -51,7 +52,9 @@ class AuthController extends Controller
|
|||||||
/**
|
/**
|
||||||
* Show the application login form.
|
* Show the application login form.
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @return \Illuminate\Http\Response
|
* @return \Illuminate\Http\Response
|
||||||
|
*
|
||||||
*/
|
*/
|
||||||
public function getLogin()
|
public function getLogin()
|
||||||
{
|
{
|
||||||
@@ -73,7 +76,9 @@ class AuthController extends Controller
|
|||||||
$this->throwValidationException(
|
$this->throwValidationException(
|
||||||
$request, $validator
|
$request, $validator
|
||||||
);
|
);
|
||||||
|
// @codeCoverageIgnoreStart
|
||||||
}
|
}
|
||||||
|
// @codeCoverageIgnoreEnd
|
||||||
|
|
||||||
$data = $request->all();
|
$data = $request->all();
|
||||||
$data['password'] = bcrypt($data['password']);
|
$data['password'] = bcrypt($data['password']);
|
||||||
|
@@ -7,7 +7,7 @@ use Illuminate\Foundation\Auth\ResetsPasswords;
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Class PasswordController
|
* Class PasswordController
|
||||||
*
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Http\Controllers\Auth
|
* @package FireflyIII\Http\Controllers\Auth
|
||||||
*/
|
*/
|
||||||
class PasswordController extends Controller
|
class PasswordController extends Controller
|
||||||
|
@@ -149,6 +149,7 @@ class GoogleChartController extends Controller
|
|||||||
{
|
{
|
||||||
$chart->addColumn('Budget', 'string');
|
$chart->addColumn('Budget', 'string');
|
||||||
$chart->addColumn('Left', 'number');
|
$chart->addColumn('Left', 'number');
|
||||||
|
$chart->addColumn('Spent', 'number');
|
||||||
$chart->addColumn('Overspent', 'number');
|
$chart->addColumn('Overspent', 'number');
|
||||||
|
|
||||||
$budgets = $repository->getBudgets();
|
$budgets = $repository->getBudgets();
|
||||||
@@ -160,30 +161,31 @@ class GoogleChartController extends Controller
|
|||||||
$repetitions = $repository->getBudgetLimitRepetitions($budget, $start, $end);
|
$repetitions = $repository->getBudgetLimitRepetitions($budget, $start, $end);
|
||||||
if ($repetitions->count() == 0) {
|
if ($repetitions->count() == 0) {
|
||||||
$expenses = $repository->sumBudgetExpensesInPeriod($budget, $start, $end);
|
$expenses = $repository->sumBudgetExpensesInPeriod($budget, $start, $end);
|
||||||
$allEntries->push([$budget->name, 0, $expenses]);
|
$allEntries->push([$budget->name, 0, 0, $expenses]);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
/** @var LimitRepetition $repetition */
|
/** @var LimitRepetition $repetition */
|
||||||
foreach ($repetitions as $repetition) {
|
foreach ($repetitions as $repetition) {
|
||||||
$expenses = $repository->sumBudgetExpensesInPeriod($budget, $repetition->startdate, $repetition->enddate);
|
$expenses = $repository->sumBudgetExpensesInPeriod($budget, $repetition->startdate, $repetition->enddate);
|
||||||
$allEntries->push([$budget->name . ' (' . $repetition->startdate->format('j M Y') . ')', floatval($repetition->amount), $expenses]);
|
$left = $expenses < floatval($repetition->amount) ? floatval($repetition->amount) - $expenses : 0;
|
||||||
|
$spent = $expenses > floatval($repetition->amount) ? 0 : $expenses;
|
||||||
|
$overspent = $expenses > floatval($repetition->amount) ? $expenses - floatval($repetition->amount) : 0;
|
||||||
|
$allEntries->push(
|
||||||
|
[$budget->name . ' (' . $repetition->startdate->format('j M Y') . ')',
|
||||||
|
$left,
|
||||||
|
$spent,
|
||||||
|
$overspent
|
||||||
|
]
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$noBudgetExpenses = $repository->getWithoutBudgetSum($start, $end);
|
$noBudgetExpenses = $repository->getWithoutBudgetSum($start, $end);
|
||||||
$allEntries->push(['(no budget)', 0, $noBudgetExpenses]);
|
$allEntries->push(['(no budget)', 0, 0, $noBudgetExpenses]);
|
||||||
|
|
||||||
foreach ($allEntries as $entry) {
|
foreach ($allEntries as $entry) {
|
||||||
if ($entry[2] > 0) {
|
if ($entry[1] != 0 || $entry[2] != 0 || $entry[3] != 0) {
|
||||||
$left = $entry[1] - $entry[2];
|
$chart->addRow($entry[0], $entry[1], $entry[2], $entry[3]);
|
||||||
if ($left > 0) {
|
|
||||||
$chart->addRow($entry[0], $left, null);
|
|
||||||
} else {
|
|
||||||
if ($left < 0) {
|
|
||||||
$chart->addRow($entry[0], null, $left);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -7,6 +7,7 @@ use Illuminate\Http\Request;
|
|||||||
/**
|
/**
|
||||||
* Class Authenticate
|
* Class Authenticate
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Http\Middleware
|
* @package FireflyIII\Http\Middleware
|
||||||
*/
|
*/
|
||||||
class Authenticate
|
class Authenticate
|
||||||
|
@@ -46,7 +46,7 @@ class PiggyBanks
|
|||||||
*/
|
*/
|
||||||
public function handle(Request $request, Closure $next)
|
public function handle(Request $request, Closure $next)
|
||||||
{
|
{
|
||||||
if ($this->auth->check() && !$request->isXmlHttpRequest() && App::environment() != 'testing') {
|
if ($this->auth->check() && !$request->isXmlHttpRequest()) {
|
||||||
// get piggy banks without a repetition:
|
// get piggy banks without a repetition:
|
||||||
/** @var Collection $set */
|
/** @var Collection $set */
|
||||||
$set = $this->auth->user()->piggybanks()
|
$set = $this->auth->user()->piggybanks()
|
||||||
|
@@ -48,7 +48,7 @@ class Range
|
|||||||
*/
|
*/
|
||||||
public function handle(Request $request, Closure $theNext)
|
public function handle(Request $request, Closure $theNext)
|
||||||
{
|
{
|
||||||
if ($this->auth->check() && App::environment() != 'testing') {
|
if ($this->auth->check()) {
|
||||||
|
|
||||||
// ignore preference. set the range to be the current month:
|
// ignore preference. set the range to be the current month:
|
||||||
if (!Session::has('start') && !Session::has('end')) {
|
if (!Session::has('start') && !Session::has('end')) {
|
||||||
|
@@ -8,6 +8,7 @@ use Illuminate\Http\Request;
|
|||||||
/**
|
/**
|
||||||
* Class RedirectIfAuthenticated
|
* Class RedirectIfAuthenticated
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Http\Middleware
|
* @package FireflyIII\Http\Middleware
|
||||||
*/
|
*/
|
||||||
class RedirectIfAuthenticated
|
class RedirectIfAuthenticated
|
||||||
|
@@ -46,7 +46,7 @@ class Reminders
|
|||||||
*/
|
*/
|
||||||
public function handle(Request $request, Closure $next)
|
public function handle(Request $request, Closure $next)
|
||||||
{
|
{
|
||||||
if ($this->auth->check() && !$request->isXmlHttpRequest() && App::environment() != 'testing') {
|
if ($this->auth->check() && !$request->isXmlHttpRequest()) {
|
||||||
// do reminders stuff.
|
// do reminders stuff.
|
||||||
$piggyBanks = $this->auth->user()->piggyBanks()->where('remind_me', 1)->get();
|
$piggyBanks = $this->auth->user()->piggyBanks()->where('remind_me', 1)->get();
|
||||||
$today = new Carbon;
|
$today = new Carbon;
|
||||||
|
@@ -10,6 +10,7 @@ use Log;
|
|||||||
/**
|
/**
|
||||||
* Class ReplaceTestVars
|
* Class ReplaceTestVars
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Http\Middleware
|
* @package FireflyIII\Http\Middleware
|
||||||
*/
|
*/
|
||||||
class ReplaceTestVars
|
class ReplaceTestVars
|
||||||
|
@@ -6,6 +6,7 @@ use Illuminate\Foundation\Http\Middleware\VerifyCsrfToken as BaseVerifier;
|
|||||||
/**
|
/**
|
||||||
* Class VerifyCsrfToken
|
* Class VerifyCsrfToken
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Http\Middleware
|
* @package FireflyIII\Http\Middleware
|
||||||
*/
|
*/
|
||||||
class VerifyCsrfToken extends BaseVerifier
|
class VerifyCsrfToken extends BaseVerifier
|
||||||
|
@@ -10,6 +10,7 @@ use Input;
|
|||||||
/**
|
/**
|
||||||
* Class AccountFormRequest
|
* Class AccountFormRequest
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Http\Requests
|
* @package FireflyIII\Http\Requests
|
||||||
*/
|
*/
|
||||||
class AccountFormRequest extends Request
|
class AccountFormRequest extends Request
|
||||||
|
@@ -9,6 +9,7 @@ use Input;
|
|||||||
/**
|
/**
|
||||||
* Class BillFormRequest
|
* Class BillFormRequest
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Http\Requests
|
* @package FireflyIII\Http\Requests
|
||||||
*/
|
*/
|
||||||
class BillFormRequest extends Request
|
class BillFormRequest extends Request
|
||||||
|
@@ -9,6 +9,7 @@ use Input;
|
|||||||
/**
|
/**
|
||||||
* Class BudgetFormRequest
|
* Class BudgetFormRequest
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Http\Requests
|
* @package FireflyIII\Http\Requests
|
||||||
*/
|
*/
|
||||||
class BudgetFormRequest extends Request
|
class BudgetFormRequest extends Request
|
||||||
|
@@ -9,6 +9,7 @@ use Input;
|
|||||||
/**
|
/**
|
||||||
* Class CategoryFormRequest
|
* Class CategoryFormRequest
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Http\Requests
|
* @package FireflyIII\Http\Requests
|
||||||
*/
|
*/
|
||||||
class CategoryFormRequest extends Request
|
class CategoryFormRequest extends Request
|
||||||
|
@@ -8,6 +8,7 @@ use Input;
|
|||||||
/**
|
/**
|
||||||
* Class BillFormRequest
|
* Class BillFormRequest
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Http\Requests
|
* @package FireflyIII\Http\Requests
|
||||||
*/
|
*/
|
||||||
class CurrencyFormRequest extends Request
|
class CurrencyFormRequest extends Request
|
||||||
|
@@ -7,6 +7,7 @@ use Auth;
|
|||||||
/**
|
/**
|
||||||
* Class DeleteAccountFormRequest
|
* Class DeleteAccountFormRequest
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Http\Requests
|
* @package FireflyIII\Http\Requests
|
||||||
*/
|
*/
|
||||||
class DeleteAccountFormRequest extends Request
|
class DeleteAccountFormRequest extends Request
|
||||||
|
@@ -10,6 +10,7 @@ use Input;
|
|||||||
/**
|
/**
|
||||||
* Class JournalFormRequest
|
* Class JournalFormRequest
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Http\Requests
|
* @package FireflyIII\Http\Requests
|
||||||
*/
|
*/
|
||||||
class JournalFormRequest extends Request
|
class JournalFormRequest extends Request
|
||||||
|
@@ -8,6 +8,7 @@ use Input;
|
|||||||
/**
|
/**
|
||||||
* Class PiggyBankFormRequest
|
* Class PiggyBankFormRequest
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Http\Requests
|
* @package FireflyIII\Http\Requests
|
||||||
*/
|
*/
|
||||||
class PiggyBankFormRequest extends Request
|
class PiggyBankFormRequest extends Request
|
||||||
|
@@ -7,6 +7,7 @@ use Auth;
|
|||||||
/**
|
/**
|
||||||
* Class ProfileFormRequest
|
* Class ProfileFormRequest
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Http\Requests
|
* @package FireflyIII\Http\Requests
|
||||||
*/
|
*/
|
||||||
class ProfileFormRequest extends Request
|
class ProfileFormRequest extends Request
|
||||||
|
@@ -5,6 +5,7 @@ use Illuminate\Foundation\Http\FormRequest;
|
|||||||
/**
|
/**
|
||||||
* Class Request
|
* Class Request
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Http\Requests
|
* @package FireflyIII\Http\Requests
|
||||||
*/
|
*/
|
||||||
abstract class Request extends FormRequest
|
abstract class Request extends FormRequest
|
||||||
|
@@ -15,6 +15,7 @@ use Input;
|
|||||||
/**
|
/**
|
||||||
* Class TagFormRequest
|
* Class TagFormRequest
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Http\Requests
|
* @package FireflyIII\Http\Requests
|
||||||
*/
|
*/
|
||||||
class TagFormRequest extends Request
|
class TagFormRequest extends Request
|
||||||
|
@@ -319,7 +319,7 @@ Breadcrumbs::register(
|
|||||||
|
|
||||||
Breadcrumbs::register(
|
Breadcrumbs::register(
|
||||||
'reports.month', function (Generator $breadcrumbs, Carbon $date) {
|
'reports.month', function (Generator $breadcrumbs, Carbon $date) {
|
||||||
$breadcrumbs->parent('reports.index');
|
$breadcrumbs->parent('reports.year', $date);
|
||||||
$breadcrumbs->push('Monthly report for ' . $date->format('F Y'), route('reports.month', [$date->year, $date->month]));
|
$breadcrumbs->push('Monthly report for ' . $date->format('F Y'), route('reports.month', [$date->year, $date->month]));
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
@@ -29,6 +29,7 @@ class Account extends Model
|
|||||||
/**
|
/**
|
||||||
* @param array $fields
|
* @param array $fields
|
||||||
*
|
*
|
||||||
|
*
|
||||||
* @return Account|null
|
* @return Account|null
|
||||||
*/
|
*/
|
||||||
public static function firstOrCreateEncrypted(array $fields)
|
public static function firstOrCreateEncrypted(array $fields)
|
||||||
@@ -86,6 +87,7 @@ class Account extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @return \Illuminate\Database\Eloquent\Relations\HasMany
|
* @return \Illuminate\Database\Eloquent\Relations\HasMany
|
||||||
*/
|
*/
|
||||||
public function accountMeta()
|
public function accountMeta()
|
||||||
@@ -94,6 +96,7 @@ class Account extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @return \Illuminate\Database\Eloquent\Relations\BelongsTo
|
* @return \Illuminate\Database\Eloquent\Relations\BelongsTo
|
||||||
*/
|
*/
|
||||||
public function accountType()
|
public function accountType()
|
||||||
@@ -102,6 +105,7 @@ class Account extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @return array
|
* @return array
|
||||||
*/
|
*/
|
||||||
public function getDates()
|
public function getDates()
|
||||||
@@ -110,6 +114,7 @@ class Account extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
*
|
||||||
* @param $fieldName
|
* @param $fieldName
|
||||||
*
|
*
|
||||||
* @return string|null
|
* @return string|null
|
||||||
@@ -127,6 +132,7 @@ class Account extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @param $value
|
* @param $value
|
||||||
*
|
*
|
||||||
* @return string
|
* @return string
|
||||||
@@ -144,6 +150,7 @@ class Account extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @return \Illuminate\Database\Eloquent\Relations\HasMany
|
* @return \Illuminate\Database\Eloquent\Relations\HasMany
|
||||||
*/
|
*/
|
||||||
public function piggyBanks()
|
public function piggyBanks()
|
||||||
@@ -152,6 +159,7 @@ class Account extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @param EloquentBuilder $query
|
* @param EloquentBuilder $query
|
||||||
* @param array $types
|
* @param array $types
|
||||||
*/
|
*/
|
||||||
@@ -165,6 +173,7 @@ class Account extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @param EloquentBuilder $query
|
* @param EloquentBuilder $query
|
||||||
* @param string $name
|
* @param string $name
|
||||||
* @param string $value
|
* @param string $value
|
||||||
@@ -181,6 +190,7 @@ class Account extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @param $value
|
* @param $value
|
||||||
*/
|
*/
|
||||||
public function setNameAttribute($value)
|
public function setNameAttribute($value)
|
||||||
@@ -190,6 +200,7 @@ class Account extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @return \Illuminate\Database\Eloquent\Relations\HasMany
|
* @return \Illuminate\Database\Eloquent\Relations\HasMany
|
||||||
*/
|
*/
|
||||||
public function transactions()
|
public function transactions()
|
||||||
@@ -198,6 +209,7 @@ class Account extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @return \Illuminate\Database\Eloquent\Relations\BelongsTo
|
* @return \Illuminate\Database\Eloquent\Relations\BelongsTo
|
||||||
*/
|
*/
|
||||||
public function user()
|
public function user()
|
||||||
|
@@ -6,6 +6,7 @@ use Watson\Validating\ValidatingTrait;
|
|||||||
/**
|
/**
|
||||||
* Class AccountMeta
|
* Class AccountMeta
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Models
|
* @package FireflyIII\Models
|
||||||
*/
|
*/
|
||||||
class AccountMeta extends Model
|
class AccountMeta extends Model
|
||||||
@@ -22,6 +23,7 @@ class AccountMeta extends Model
|
|||||||
protected $table = 'account_meta';
|
protected $table = 'account_meta';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
*
|
||||||
* @return \Illuminate\Database\Eloquent\Relations\BelongsTo
|
* @return \Illuminate\Database\Eloquent\Relations\BelongsTo
|
||||||
*/
|
*/
|
||||||
public function account()
|
public function account()
|
||||||
|
@@ -5,6 +5,7 @@ use Illuminate\Database\Eloquent\Model;
|
|||||||
/**
|
/**
|
||||||
* Class AccountType
|
* Class AccountType
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Models
|
* @package FireflyIII\Models
|
||||||
*/
|
*/
|
||||||
class AccountType extends Model
|
class AccountType extends Model
|
||||||
|
@@ -7,6 +7,7 @@ use Illuminate\Database\Eloquent\SoftDeletes;
|
|||||||
/**
|
/**
|
||||||
* Class Budget
|
* Class Budget
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Models
|
* @package FireflyIII\Models
|
||||||
*/
|
*/
|
||||||
class Budget extends Model
|
class Budget extends Model
|
||||||
@@ -17,6 +18,7 @@ class Budget extends Model
|
|||||||
protected $fillable = ['user_id', 'name'];
|
protected $fillable = ['user_id', 'name'];
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
*
|
||||||
* @return \Illuminate\Database\Eloquent\Relations\HasMany
|
* @return \Illuminate\Database\Eloquent\Relations\HasMany
|
||||||
*/
|
*/
|
||||||
public function budgetlimits()
|
public function budgetlimits()
|
||||||
|
@@ -5,6 +5,7 @@ use Illuminate\Database\Eloquent\Model;
|
|||||||
/**
|
/**
|
||||||
* Class BudgetLimit
|
* Class BudgetLimit
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Models
|
* @package FireflyIII\Models
|
||||||
*/
|
*/
|
||||||
class BudgetLimit extends Model
|
class BudgetLimit extends Model
|
||||||
|
@@ -8,6 +8,7 @@ use Illuminate\Database\Eloquent\SoftDeletes;
|
|||||||
/**
|
/**
|
||||||
* Class Category
|
* Class Category
|
||||||
*
|
*
|
||||||
|
*
|
||||||
* @package FireflyIII\Models
|
* @package FireflyIII\Models
|
||||||
*/
|
*/
|
||||||
class Category extends Model
|
class Category extends Model
|
||||||
@@ -17,6 +18,7 @@ class Category extends Model
|
|||||||
protected $fillable = ['user_id', 'name'];
|
protected $fillable = ['user_id', 'name'];
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @return array
|
* @return array
|
||||||
*/
|
*/
|
||||||
public function getDates()
|
public function getDates()
|
||||||
@@ -25,6 +27,7 @@ class Category extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @return \Illuminate\Database\Eloquent\Relations\BelongsToMany
|
* @return \Illuminate\Database\Eloquent\Relations\BelongsToMany
|
||||||
*/
|
*/
|
||||||
public function transactionjournals()
|
public function transactionjournals()
|
||||||
@@ -66,6 +69,7 @@ class Category extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @return \Illuminate\Database\Eloquent\Relations\BelongsTo
|
* @return \Illuminate\Database\Eloquent\Relations\BelongsTo
|
||||||
*/
|
*/
|
||||||
public function user()
|
public function user()
|
||||||
@@ -74,6 +78,7 @@ class Category extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @param $value
|
* @param $value
|
||||||
*/
|
*/
|
||||||
public function setNameAttribute($value)
|
public function setNameAttribute($value)
|
||||||
@@ -83,6 +88,7 @@ class Category extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @param $value
|
* @param $value
|
||||||
*
|
*
|
||||||
* @return string
|
* @return string
|
||||||
@@ -94,9 +100,7 @@ class Category extends Model
|
|||||||
return Crypt::decrypt($value);
|
return Crypt::decrypt($value);
|
||||||
}
|
}
|
||||||
|
|
||||||
// @codeCoverageIgnoreStart
|
|
||||||
return $value;
|
return $value;
|
||||||
// @codeCoverageIgnoreEnd
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -6,6 +6,7 @@ use Illuminate\Database\Eloquent\SoftDeletes;
|
|||||||
/**
|
/**
|
||||||
* Class Component
|
* Class Component
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Models
|
* @package FireflyIII\Models
|
||||||
*/
|
*/
|
||||||
class Component extends Model
|
class Component extends Model
|
||||||
|
@@ -13,6 +13,7 @@ class LimitRepetition extends Model
|
|||||||
{
|
{
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @return \Illuminate\Database\Eloquent\Relations\BelongsTo
|
* @return \Illuminate\Database\Eloquent\Relations\BelongsTo
|
||||||
*/
|
*/
|
||||||
public function budgetLimit()
|
public function budgetLimit()
|
||||||
@@ -21,6 +22,7 @@ class LimitRepetition extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @return array
|
* @return array
|
||||||
*/
|
*/
|
||||||
public function getDates()
|
public function getDates()
|
||||||
|
@@ -17,6 +17,7 @@ class PiggyBank extends Model
|
|||||||
= ['name', 'account_id', 'order', 'reminder_skip', 'targetamount', 'startdate', 'targetdate', 'reminder', 'remind_me'];
|
= ['name', 'account_id', 'order', 'reminder_skip', 'targetamount', 'startdate', 'targetdate', 'reminder', 'remind_me'];
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @return \Illuminate\Database\Eloquent\Relations\BelongsTo
|
* @return \Illuminate\Database\Eloquent\Relations\BelongsTo
|
||||||
*/
|
*/
|
||||||
public function account()
|
public function account()
|
||||||
@@ -44,6 +45,7 @@ class PiggyBank extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @return \Illuminate\Database\Eloquent\Relations\HasMany
|
* @return \Illuminate\Database\Eloquent\Relations\HasMany
|
||||||
*/
|
*/
|
||||||
public function piggyBankRepetitions()
|
public function piggyBankRepetitions()
|
||||||
@@ -52,6 +54,7 @@ class PiggyBank extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @return array
|
* @return array
|
||||||
*/
|
*/
|
||||||
public function getDates()
|
public function getDates()
|
||||||
@@ -60,6 +63,7 @@ class PiggyBank extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @param $value
|
* @param $value
|
||||||
*
|
*
|
||||||
* @return int
|
* @return int
|
||||||
@@ -70,6 +74,7 @@ class PiggyBank extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @return \Illuminate\Database\Eloquent\Relations\HasMany
|
* @return \Illuminate\Database\Eloquent\Relations\HasMany
|
||||||
*/
|
*/
|
||||||
public function piggyBankEvents()
|
public function piggyBankEvents()
|
||||||
@@ -78,6 +83,7 @@ class PiggyBank extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @return \Illuminate\Database\Eloquent\Relations\MorphMany
|
* @return \Illuminate\Database\Eloquent\Relations\MorphMany
|
||||||
*/
|
*/
|
||||||
public function reminders()
|
public function reminders()
|
||||||
@@ -86,6 +92,7 @@ class PiggyBank extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @param $value
|
* @param $value
|
||||||
*/
|
*/
|
||||||
public function setNameAttribute($value)
|
public function setNameAttribute($value)
|
||||||
@@ -95,6 +102,7 @@ class PiggyBank extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @param $value
|
* @param $value
|
||||||
*
|
*
|
||||||
* @return string
|
* @return string
|
||||||
|
@@ -5,6 +5,7 @@ use Illuminate\Database\Eloquent\Model;
|
|||||||
/**
|
/**
|
||||||
* Class PiggyBankEvent
|
* Class PiggyBankEvent
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Models
|
* @package FireflyIII\Models
|
||||||
*/
|
*/
|
||||||
class PiggyBankEvent extends Model
|
class PiggyBankEvent extends Model
|
||||||
|
@@ -7,6 +7,7 @@ use Illuminate\Database\Eloquent\Model;
|
|||||||
/**
|
/**
|
||||||
* Class PiggyBankRepetition
|
* Class PiggyBankRepetition
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Models
|
* @package FireflyIII\Models
|
||||||
*/
|
*/
|
||||||
class PiggyBankRepetition extends Model
|
class PiggyBankRepetition extends Model
|
||||||
|
@@ -5,6 +5,7 @@ use Illuminate\Database\Eloquent\Model;
|
|||||||
/**
|
/**
|
||||||
* Class Preference
|
* Class Preference
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Models
|
* @package FireflyIII\Models
|
||||||
*/
|
*/
|
||||||
class Preference extends Model
|
class Preference extends Model
|
||||||
|
@@ -17,6 +17,7 @@ class Reminder extends Model
|
|||||||
protected $fillable = ['user_id', 'startdate', 'metadata', 'enddate', 'active', 'notnow', 'remindersable_id', 'remindersable_type',];
|
protected $fillable = ['user_id', 'startdate', 'metadata', 'enddate', 'active', 'notnow', 'remindersable_id', 'remindersable_type',];
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @param $value
|
* @param $value
|
||||||
*
|
*
|
||||||
* @return int
|
* @return int
|
||||||
@@ -27,6 +28,7 @@ class Reminder extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @return array
|
* @return array
|
||||||
*/
|
*/
|
||||||
public function getDates()
|
public function getDates()
|
||||||
@@ -35,6 +37,7 @@ class Reminder extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @param $value
|
* @param $value
|
||||||
*
|
*
|
||||||
* @return mixed
|
* @return mixed
|
||||||
@@ -49,6 +52,7 @@ class Reminder extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @param $value
|
* @param $value
|
||||||
*
|
*
|
||||||
* @return bool
|
* @return bool
|
||||||
@@ -59,6 +63,7 @@ class Reminder extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @return \Illuminate\Database\Eloquent\Relations\MorphTo
|
* @return \Illuminate\Database\Eloquent\Relations\MorphTo
|
||||||
*/
|
*/
|
||||||
public function remindersable()
|
public function remindersable()
|
||||||
@@ -67,6 +72,7 @@ class Reminder extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @param EloquentBuilder $query
|
* @param EloquentBuilder $query
|
||||||
* @param Carbon $start
|
* @param Carbon $start
|
||||||
* @param Carbon $end
|
* @param Carbon $end
|
||||||
@@ -79,6 +85,7 @@ class Reminder extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @param EloquentBuilder $query
|
* @param EloquentBuilder $query
|
||||||
*
|
*
|
||||||
* @return $this
|
* @return $this
|
||||||
@@ -92,6 +99,7 @@ class Reminder extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @param $value
|
* @param $value
|
||||||
*/
|
*/
|
||||||
public function setMetadataAttribute($value)
|
public function setMetadataAttribute($value)
|
||||||
@@ -101,6 +109,7 @@ class Reminder extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @return \Illuminate\Database\Eloquent\Relations\BelongsTo
|
* @return \Illuminate\Database\Eloquent\Relations\BelongsTo
|
||||||
*/
|
*/
|
||||||
public function user()
|
public function user()
|
||||||
|
@@ -67,6 +67,7 @@ class Tag extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @return array
|
* @return array
|
||||||
*/
|
*/
|
||||||
public function getDates()
|
public function getDates()
|
||||||
@@ -75,6 +76,7 @@ class Tag extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @param $value
|
* @param $value
|
||||||
*
|
*
|
||||||
* @return string
|
* @return string
|
||||||
@@ -85,6 +87,7 @@ class Tag extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @param $value
|
* @param $value
|
||||||
*
|
*
|
||||||
* @return string
|
* @return string
|
||||||
@@ -95,6 +98,7 @@ class Tag extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @param $value
|
* @param $value
|
||||||
*/
|
*/
|
||||||
public function setDescriptionAttribute($value)
|
public function setDescriptionAttribute($value)
|
||||||
@@ -103,6 +107,7 @@ class Tag extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @param $value
|
* @param $value
|
||||||
*/
|
*/
|
||||||
public function setTagAttribute($value)
|
public function setTagAttribute($value)
|
||||||
@@ -111,6 +116,7 @@ class Tag extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @return \Illuminate\Database\Eloquent\Relations\BelongsToMany
|
* @return \Illuminate\Database\Eloquent\Relations\BelongsToMany
|
||||||
*/
|
*/
|
||||||
public function transactionjournals()
|
public function transactionjournals()
|
||||||
@@ -119,6 +125,7 @@ class Tag extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @return \Illuminate\Database\Eloquent\Relations\BelongsTo
|
* @return \Illuminate\Database\Eloquent\Relations\BelongsTo
|
||||||
*/
|
*/
|
||||||
public function user()
|
public function user()
|
||||||
|
@@ -9,6 +9,7 @@ use Watson\Validating\ValidatingTrait;
|
|||||||
/**
|
/**
|
||||||
* Class Transaction
|
* Class Transaction
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Models
|
* @package FireflyIII\Models
|
||||||
*/
|
*/
|
||||||
class Transaction extends Model
|
class Transaction extends Model
|
||||||
|
@@ -4,8 +4,10 @@ use Illuminate\Database\Eloquent\Model;
|
|||||||
use Illuminate\Database\Eloquent\SoftDeletes;
|
use Illuminate\Database\Eloquent\SoftDeletes;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
*
|
||||||
* Class TransactionCurrency
|
* Class TransactionCurrency
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Models
|
* @package FireflyIII\Models
|
||||||
*/
|
*/
|
||||||
class TransactionCurrency extends Model
|
class TransactionCurrency extends Model
|
||||||
|
@@ -6,6 +6,7 @@ use Illuminate\Database\Eloquent\SoftDeletes;
|
|||||||
/**
|
/**
|
||||||
* Class TransactionGroup
|
* Class TransactionGroup
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Models
|
* @package FireflyIII\Models
|
||||||
*/
|
*/
|
||||||
class TransactionGroup extends Model
|
class TransactionGroup extends Model
|
||||||
|
@@ -32,6 +32,7 @@ class TransactionJournal extends Model
|
|||||||
];
|
];
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @return \Illuminate\Database\Eloquent\Relations\BelongsTo
|
* @return \Illuminate\Database\Eloquent\Relations\BelongsTo
|
||||||
*/
|
*/
|
||||||
public function bill()
|
public function bill()
|
||||||
@@ -40,6 +41,7 @@ class TransactionJournal extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @return \Illuminate\Database\Eloquent\Relations\BelongsToMany
|
* @return \Illuminate\Database\Eloquent\Relations\BelongsToMany
|
||||||
*/
|
*/
|
||||||
public function budgets()
|
public function budgets()
|
||||||
@@ -48,6 +50,7 @@ class TransactionJournal extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @return \Illuminate\Database\Eloquent\Relations\BelongsToMany
|
* @return \Illuminate\Database\Eloquent\Relations\BelongsToMany
|
||||||
*/
|
*/
|
||||||
public function categories()
|
public function categories()
|
||||||
@@ -94,6 +97,7 @@ class TransactionJournal extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @return \Illuminate\Database\Eloquent\Relations\HasMany
|
* @return \Illuminate\Database\Eloquent\Relations\HasMany
|
||||||
*/
|
*/
|
||||||
public function transactions()
|
public function transactions()
|
||||||
@@ -102,6 +106,7 @@ class TransactionJournal extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @return array
|
* @return array
|
||||||
*/
|
*/
|
||||||
public function getDates()
|
public function getDates()
|
||||||
@@ -110,6 +115,7 @@ class TransactionJournal extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @param $value
|
* @param $value
|
||||||
*
|
*
|
||||||
* @return string
|
* @return string
|
||||||
@@ -120,12 +126,11 @@ class TransactionJournal extends Model
|
|||||||
return Crypt::decrypt($value);
|
return Crypt::decrypt($value);
|
||||||
}
|
}
|
||||||
|
|
||||||
// @codeCoverageIgnoreStart
|
|
||||||
return $value;
|
return $value;
|
||||||
// @codeCoverageIgnoreEnd
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @return \Illuminate\Database\Eloquent\Relations\HasMany
|
* @return \Illuminate\Database\Eloquent\Relations\HasMany
|
||||||
*/
|
*/
|
||||||
public function piggyBankEvents()
|
public function piggyBankEvents()
|
||||||
@@ -134,6 +139,7 @@ class TransactionJournal extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @param EloquentBuilder $query
|
* @param EloquentBuilder $query
|
||||||
* @param Account $account
|
* @param Account $account
|
||||||
*/
|
*/
|
||||||
@@ -147,6 +153,7 @@ class TransactionJournal extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @param EloquentBuilder $query
|
* @param EloquentBuilder $query
|
||||||
* @param Carbon $date
|
* @param Carbon $date
|
||||||
*
|
*
|
||||||
@@ -158,6 +165,7 @@ class TransactionJournal extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @param EloquentBuilder $query
|
* @param EloquentBuilder $query
|
||||||
* @param Carbon $date
|
* @param Carbon $date
|
||||||
*
|
*
|
||||||
@@ -169,6 +177,7 @@ class TransactionJournal extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @param EloquentBuilder $query
|
* @param EloquentBuilder $query
|
||||||
* @param $amount
|
* @param $amount
|
||||||
*/
|
*/
|
||||||
@@ -185,6 +194,7 @@ class TransactionJournal extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @param EloquentBuilder $query
|
* @param EloquentBuilder $query
|
||||||
* @param Carbon $date
|
* @param Carbon $date
|
||||||
*
|
*
|
||||||
@@ -196,6 +206,7 @@ class TransactionJournal extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @param EloquentBuilder $query
|
* @param EloquentBuilder $query
|
||||||
* @param array $types
|
* @param array $types
|
||||||
*/
|
*/
|
||||||
@@ -211,6 +222,7 @@ class TransactionJournal extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* Automatically includes the 'with' parameters to get relevant related
|
* Automatically includes the 'with' parameters to get relevant related
|
||||||
* objects.
|
* objects.
|
||||||
*
|
*
|
||||||
@@ -226,6 +238,7 @@ class TransactionJournal extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @param $value
|
* @param $value
|
||||||
*/
|
*/
|
||||||
public function setDescriptionAttribute($value)
|
public function setDescriptionAttribute($value)
|
||||||
@@ -235,6 +248,7 @@ class TransactionJournal extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @return \Illuminate\Database\Eloquent\Relations\BelongsToMany
|
* @return \Illuminate\Database\Eloquent\Relations\BelongsToMany
|
||||||
*/
|
*/
|
||||||
public function tags()
|
public function tags()
|
||||||
@@ -243,6 +257,7 @@ class TransactionJournal extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @return \Illuminate\Database\Eloquent\Relations\BelongsTo
|
* @return \Illuminate\Database\Eloquent\Relations\BelongsTo
|
||||||
*/
|
*/
|
||||||
public function transactionCurrency()
|
public function transactionCurrency()
|
||||||
@@ -251,6 +266,7 @@ class TransactionJournal extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @return \Illuminate\Database\Eloquent\Relations\BelongsTo
|
* @return \Illuminate\Database\Eloquent\Relations\BelongsTo
|
||||||
*/
|
*/
|
||||||
public function transactionType()
|
public function transactionType()
|
||||||
@@ -259,6 +275,7 @@ class TransactionJournal extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @return \Illuminate\Database\Eloquent\Relations\BelongsToMany
|
* @return \Illuminate\Database\Eloquent\Relations\BelongsToMany
|
||||||
*/
|
*/
|
||||||
public function transactiongroups()
|
public function transactiongroups()
|
||||||
@@ -267,6 +284,7 @@ class TransactionJournal extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @return \Illuminate\Database\Eloquent\Relations\BelongsTo
|
* @return \Illuminate\Database\Eloquent\Relations\BelongsTo
|
||||||
*/
|
*/
|
||||||
public function user()
|
public function user()
|
||||||
|
@@ -5,6 +5,7 @@ use Illuminate\Database\Eloquent\Model;
|
|||||||
/**
|
/**
|
||||||
* Class TransactionRelation
|
* Class TransactionRelation
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Models
|
* @package FireflyIII\Models
|
||||||
*/
|
*/
|
||||||
class TransactionRelation extends Model
|
class TransactionRelation extends Model
|
||||||
|
@@ -6,6 +6,7 @@ use Illuminate\Database\Eloquent\SoftDeletes;
|
|||||||
/**
|
/**
|
||||||
* Class TransactionType
|
* Class TransactionType
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Models
|
* @package FireflyIII\Models
|
||||||
*/
|
*/
|
||||||
class TransactionType extends Model
|
class TransactionType extends Model
|
||||||
|
@@ -10,6 +10,7 @@ use FireflyIII\Support\Preferences;
|
|||||||
use FireflyIII\Support\Steam;
|
use FireflyIII\Support\Steam;
|
||||||
use FireflyIII\Support\Twig\Budget;
|
use FireflyIII\Support\Twig\Budget;
|
||||||
use FireflyIII\Support\Twig\General;
|
use FireflyIII\Support\Twig\General;
|
||||||
|
use FireflyIII\Support\Twig\Translation;
|
||||||
use FireflyIII\Support\Twig\Journal;
|
use FireflyIII\Support\Twig\Journal;
|
||||||
use FireflyIII\Support\Twig\PiggyBank;
|
use FireflyIII\Support\Twig\PiggyBank;
|
||||||
use FireflyIII\Validation\FireflyValidator;
|
use FireflyIII\Validation\FireflyValidator;
|
||||||
@@ -42,6 +43,7 @@ class FireflyServiceProvider extends ServiceProvider
|
|||||||
Twig::addExtension(new General);
|
Twig::addExtension(new General);
|
||||||
Twig::addExtension(new Journal);
|
Twig::addExtension(new Journal);
|
||||||
Twig::addExtension(new Budget);
|
Twig::addExtension(new Budget);
|
||||||
|
Twig::addExtension(new Translation);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function register()
|
public function register()
|
||||||
|
@@ -25,21 +25,6 @@ class BudgetRepository implements BudgetRepositoryInterface
|
|||||||
*/
|
*/
|
||||||
public function cleanupBudgets()
|
public function cleanupBudgets()
|
||||||
{
|
{
|
||||||
$limits = BudgetLimit::leftJoin('budgets', 'budgets.id', '=', 'budget_limits.budget_id')->get(['budget_limits.*']);
|
|
||||||
|
|
||||||
// loop budget limits:
|
|
||||||
$found = [];
|
|
||||||
/** @var BudgetLimit $limit */
|
|
||||||
foreach ($limits as $limit) {
|
|
||||||
$key = $limit->budget_id . '-' . $limit->startdate;
|
|
||||||
if (isset($found[$key])) {
|
|
||||||
$limit->delete();
|
|
||||||
} else {
|
|
||||||
$found[$key] = true;
|
|
||||||
}
|
|
||||||
unset($key);
|
|
||||||
}
|
|
||||||
|
|
||||||
// delete limits with amount 0:
|
// delete limits with amount 0:
|
||||||
BudgetLimit::where('amount', 0)->delete();
|
BudgetLimit::where('amount', 0)->delete();
|
||||||
|
|
||||||
@@ -261,13 +246,12 @@ class BudgetRepository implements BudgetRepositoryInterface
|
|||||||
->whereNotNull('budget_transaction_journal.budget_id');
|
->whereNotNull('budget_transaction_journal.budget_id');
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
->before($end)
|
|
||||||
->after($start)
|
->after($start)
|
||||||
|
->before($end)
|
||||||
->lessThan(0)
|
->lessThan(0)
|
||||||
->transactionTypes(['Withdrawal'])
|
->transactionTypes(['Withdrawal'])
|
||||||
->get();
|
->sum('transactions.amount');
|
||||||
|
return floatval($noBudgetSet) * -1;
|
||||||
return floatval($noBudgetSet->sum('amount')) * -1;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -137,7 +137,7 @@ class JournalRepository implements JournalRepositoryInterface
|
|||||||
*/
|
*/
|
||||||
public function getWithDate($id, Carbon $date)
|
public function getWithDate($id, Carbon $date)
|
||||||
{
|
{
|
||||||
return Auth::user()->transactionjournals()->where('id', $id)->where('date', $date->format('Y-m-d'))->first();
|
return Auth::user()->transactionjournals()->where('id', $id)->where('date', $date->format('Y-m-d 00:00:00'))->first();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -379,14 +379,19 @@ class JournalRepository implements JournalRepositoryInterface
|
|||||||
$to = Account::find($data['account_to_id']);
|
$to = Account::find($data['account_to_id']);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (is_null($to->id)) {
|
if (is_null($to) || (!is_null($to) && is_null($to->id))) {
|
||||||
Log::error('"to"-account is null, so we cannot continue!');
|
Log::error('"to"-account is null, so we cannot continue!');
|
||||||
App::abort(500, '"to"-account is null, so we cannot continue!');
|
App::abort(500, '"to"-account is null, so we cannot continue!');
|
||||||
|
// @codeCoverageIgnoreStart
|
||||||
}
|
}
|
||||||
if (is_null($from->id)) {
|
// @codeCoverageIgnoreEnd
|
||||||
|
|
||||||
|
if (is_null($from) || (!is_null($from) && is_null($from->id))) {
|
||||||
Log::error('"from"-account is null, so we cannot continue!');
|
Log::error('"from"-account is null, so we cannot continue!');
|
||||||
App::abort(500, '"from"-account is null, so we cannot continue!');
|
App::abort(500, '"from"-account is null, so we cannot continue!');
|
||||||
|
// @codeCoverageIgnoreStart
|
||||||
}
|
}
|
||||||
|
// @codeCoverageIgnoreEnd
|
||||||
|
|
||||||
return [$from, $to];
|
return [$from, $to];
|
||||||
}
|
}
|
||||||
|
@@ -145,14 +145,20 @@ class PiggyBankRepository implements PiggyBankRepositoryInterface
|
|||||||
/**
|
/**
|
||||||
* Set all piggy banks to order 0.
|
* Set all piggy banks to order 0.
|
||||||
*
|
*
|
||||||
* @return void
|
* @return boolean
|
||||||
*/
|
*/
|
||||||
public function reset()
|
public function reset()
|
||||||
{
|
{
|
||||||
DB::table('piggy_banks')
|
// split query to make it work in sqlite:
|
||||||
->leftJoin('accounts', 'accounts.id', '=', 'piggy_banks.id')
|
$set = PiggyBank::
|
||||||
->where('accounts.user_id', Auth::user()->id)
|
leftJoin('accounts', 'accounts.id', '=', 'piggy_banks.id')
|
||||||
->update(['order' => 0, 'piggy_banks.updated_at' => DB::Raw('NOW()')]);
|
->where('accounts.user_id', Auth::user()->id)->get(['piggy_banks.*']);
|
||||||
|
foreach ($set as $e) {
|
||||||
|
$e->order = 0;
|
||||||
|
$e->save();
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -9,6 +9,7 @@ use FireflyIII\Models\Reminder;
|
|||||||
/**
|
/**
|
||||||
* Class PiggyBankPart
|
* Class PiggyBankPart
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Collection
|
* @package FireflyIII\Collection
|
||||||
*/
|
*/
|
||||||
class PiggyBankPart
|
class PiggyBankPart
|
||||||
|
@@ -20,7 +20,7 @@ class ReminderRepository implements ReminderRepositoryInterface
|
|||||||
protected $helper;
|
protected $helper;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
* @codeCoverageIgnore
|
||||||
*/
|
*/
|
||||||
public function __construct()
|
public function __construct()
|
||||||
{
|
{
|
||||||
|
@@ -52,6 +52,7 @@ class TagRepository implements TagRepositoryInterface
|
|||||||
|
|
||||||
$withdrawals = $tag->transactionjournals()->where('transaction_type_id', $withdrawal->id)->count();
|
$withdrawals = $tag->transactionjournals()->where('transaction_type_id', $withdrawal->id)->count();
|
||||||
$transfers = $tag->transactionjournals()->where('transaction_type_id', $transfer->id)->count();
|
$transfers = $tag->transactionjournals()->where('transaction_type_id', $transfer->id)->count();
|
||||||
|
$deposits = $tag->transactionjournals()->where('transaction_type_id', $deposit->id)->count();
|
||||||
|
|
||||||
if ($tag->tagMode == 'balancingAct') {
|
if ($tag->tagMode == 'balancingAct') {
|
||||||
|
|
||||||
@@ -73,39 +74,47 @@ class TagRepository implements TagRepositoryInterface
|
|||||||
}
|
}
|
||||||
if ($tag->tagMode == 'advancePayment') {
|
if ($tag->tagMode == 'advancePayment') {
|
||||||
|
|
||||||
|
// advance payments cannot accept transfers:
|
||||||
|
if ($journal->transaction_type_id == $transfer->id) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
// only if this is the only withdrawal
|
// the first transaction to be attached to this
|
||||||
if ($journal->transaction_type_id == $withdrawal->id && $withdrawals < 1) {
|
// tag is attached just like that:
|
||||||
|
if ($withdrawals < 1 && $deposits < 1) {
|
||||||
$journal->tags()->save($tag);
|
$journal->tags()->save($tag);
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
// only if this is a deposit.
|
// if withdrawal and already has a withdrawal, return false:
|
||||||
if ($journal->transaction_type_id == $deposit->id) {
|
if ($journal->transaction_type_id == $withdrawal->id && $withdrawals == 1) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
// if this is a deposit, account must match the current only journal
|
// if already has transaction journals, must match ALL asset account id's:
|
||||||
// (if already present):
|
if ($deposits > 0 || $withdrawals == 1) {
|
||||||
$currentWithdrawal = $tag->transactionjournals()->where('transaction_type_id', $withdrawal->id)->first();
|
$match = true;
|
||||||
|
/** @var TransactionJournal $check */
|
||||||
if ($currentWithdrawal && $currentWithdrawal->assetAccount->id == $journal->assetAccount->id) {
|
foreach ($tag->transactionjournals as $check) {
|
||||||
|
if ($check->assetAccount->id != $journal->assetAccount->id) {
|
||||||
|
$match = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if ($match) {
|
||||||
$journal->tags()->save($tag);
|
$journal->tags()->save($tag);
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
} else {
|
|
||||||
if (is_null($currentWithdrawal)) {
|
|
||||||
$journal->tags()->save($tag);
|
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
// @codeCoverageIgnoreStart
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
// @codeCoverageIgnoreEnd
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param Tag $tag
|
* @param Tag $tag
|
||||||
|
@@ -7,6 +7,7 @@ use Validator;
|
|||||||
/**
|
/**
|
||||||
* Class Registrar
|
* Class Registrar
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Services
|
* @package FireflyIII\Services
|
||||||
*/
|
*/
|
||||||
class Registrar implements RegistrarContract
|
class Registrar implements RegistrarContract
|
||||||
|
@@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
namespace FireflyIII\Support;
|
namespace FireflyIII\Support;
|
||||||
|
|
||||||
use Cache;
|
|
||||||
use FireflyIII\Models\Transaction;
|
use FireflyIII\Models\Transaction;
|
||||||
use FireflyIII\Models\TransactionCurrency;
|
use FireflyIII\Models\TransactionCurrency;
|
||||||
use FireflyIII\Models\TransactionJournal;
|
use FireflyIII\Models\TransactionJournal;
|
||||||
|
@@ -7,6 +7,7 @@ use Illuminate\Support\Facades\Facade;
|
|||||||
/**
|
/**
|
||||||
* Class Amount
|
* Class Amount
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Support\Facades
|
* @package FireflyIII\Support\Facades
|
||||||
*/
|
*/
|
||||||
class Amount extends Facade
|
class Amount extends Facade
|
||||||
|
@@ -7,6 +7,7 @@ use Illuminate\Support\Facades\Facade;
|
|||||||
/**
|
/**
|
||||||
* Class Amount
|
* Class Amount
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Support\Facades
|
* @package FireflyIII\Support\Facades
|
||||||
*/
|
*/
|
||||||
class ExpandedForm extends Facade
|
class ExpandedForm extends Facade
|
||||||
|
@@ -7,6 +7,7 @@ use Illuminate\Support\Facades\Facade;
|
|||||||
/**
|
/**
|
||||||
* Class Navigation
|
* Class Navigation
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Support\Facades
|
* @package FireflyIII\Support\Facades
|
||||||
*/
|
*/
|
||||||
class Navigation extends Facade
|
class Navigation extends Facade
|
||||||
|
@@ -7,6 +7,7 @@ use Illuminate\Support\Facades\Facade;
|
|||||||
/**
|
/**
|
||||||
* Class Preferences
|
* Class Preferences
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Support\Facades
|
* @package FireflyIII\Support\Facades
|
||||||
*/
|
*/
|
||||||
class Preferences extends Facade
|
class Preferences extends Facade
|
||||||
|
@@ -7,6 +7,7 @@ use Illuminate\Support\Facades\Facade;
|
|||||||
/**
|
/**
|
||||||
* Class Steam
|
* Class Steam
|
||||||
*
|
*
|
||||||
|
* @codeCoverageIgnore
|
||||||
* @package FireflyIII\Support\Facades
|
* @package FireflyIII\Support\Facades
|
||||||
*/
|
*/
|
||||||
class Steam extends Facade
|
class Steam extends Facade
|
||||||
|
42
app/Support/Twig/Translation.php
Normal file
42
app/Support/Twig/Translation.php
Normal file
@@ -0,0 +1,42 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace FireflyIII\Support\Twig;
|
||||||
|
|
||||||
|
use FireflyIII\Models\LimitRepetition;
|
||||||
|
use Twig_Extension;
|
||||||
|
use Twig_SimpleFilter;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Class Budget
|
||||||
|
*
|
||||||
|
* @package FireflyIII\Support\Twig
|
||||||
|
*/
|
||||||
|
class Translation extends Twig_Extension
|
||||||
|
{
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return array
|
||||||
|
*/
|
||||||
|
public function getFilters()
|
||||||
|
{
|
||||||
|
$filters = [];
|
||||||
|
|
||||||
|
$filters[] = new Twig_SimpleFilter(
|
||||||
|
'_', function ($name) {
|
||||||
|
|
||||||
|
return trans('firefly.'.$name);
|
||||||
|
|
||||||
|
}, ['is_safe' => ['html']]
|
||||||
|
);
|
||||||
|
|
||||||
|
return $filters;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@inheritDoc}
|
||||||
|
*/
|
||||||
|
public function getName()
|
||||||
|
{
|
||||||
|
return 'FireflyIII\Support\Twig\Translation';
|
||||||
|
}
|
||||||
|
}
|
@@ -119,6 +119,6 @@ return [
|
|||||||
|
|
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
'pretend' => false,
|
'pretend' => env('EMAIL_PRETEND', false),
|
||||||
|
|
||||||
];
|
];
|
||||||
|
@@ -3,7 +3,8 @@ google.setOnLoadCallback(drawChart);
|
|||||||
|
|
||||||
function drawChart() {
|
function drawChart() {
|
||||||
googleLineChart('chart/home/account', 'accounts-chart');
|
googleLineChart('chart/home/account', 'accounts-chart');
|
||||||
googleColumnChart('chart/home/budgets', 'budgets-chart');
|
//googleColumnChart('chart/home/budgets', 'budgets-chart');
|
||||||
|
googleStackedColumnChart('chart/home/budgets', 'budgets-chart');
|
||||||
googleColumnChart('chart/home/categories', 'categories-chart');
|
googleColumnChart('chart/home/categories', 'categories-chart');
|
||||||
googlePieChart('chart/home/bills', 'bills-chart');
|
googlePieChart('chart/home/bills', 'bills-chart');
|
||||||
getBoxAmounts();
|
getBoxAmounts();
|
||||||
|
12
resources/lang/en/firefly.php
Normal file
12
resources/lang/en/firefly.php
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
<?php
|
||||||
|
return [
|
||||||
|
'welcome' => 'Welcome to Firefly!',
|
||||||
|
'mainTitle' => 'What\'s playing?',
|
||||||
|
'close' => 'Clone',
|
||||||
|
'pleaseHold' => 'Please hold...',
|
||||||
|
'mandatoryFields' => 'Mandatory fields',
|
||||||
|
'optionalFields' => 'Optional fields',
|
||||||
|
'options' => 'Options',
|
||||||
|
'something' => 'Something!'
|
||||||
|
|
||||||
|
];
|
@@ -9,7 +9,7 @@
|
|||||||
<div class="col-lg-6 col-md-6 col-sm-12">
|
<div class="col-lg-6 col-md-6 col-sm-12">
|
||||||
<div class="panel panel-primary">
|
<div class="panel panel-primary">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<i class="fa {{ subTitleIcon }}"></i> Mandatory fields
|
<i class="fa {{ subTitleIcon }}"></i> {{ 'mandatoryFields'|_ }}
|
||||||
</div>
|
</div>
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
{{ ExpandedForm.text('name') }}
|
{{ ExpandedForm.text('name') }}
|
||||||
@@ -22,7 +22,7 @@
|
|||||||
{% if what == 'asset' %}
|
{% if what == 'asset' %}
|
||||||
<div class="panel panel-default">
|
<div class="panel panel-default">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<i class="fa fa-smile-o"></i> Optional fields
|
<i class="fa fa-smile-o"></i> {{ 'optionalFields'|_ }}
|
||||||
</div>
|
</div>
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
|
|
||||||
@@ -34,11 +34,10 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
<!-- panel for options -->
|
|
||||||
<div class="panel panel-default">
|
<div class="panel panel-default">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<i class="fa fa-bolt"></i> Options
|
<i class="fa fa-bolt"></i> {{ 'options'|_ }}
|
||||||
</div>
|
</div>
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
{{ ExpandedForm.optionsList('create','account') }}
|
{{ ExpandedForm.optionsList('create','account') }}
|
||||||
|
@@ -9,7 +9,7 @@
|
|||||||
<div class="col-lg-6 col-md-6 col-sm-12">
|
<div class="col-lg-6 col-md-6 col-sm-12">
|
||||||
<div class="panel panel-primary">
|
<div class="panel panel-primary">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<i class="fa {{ subTitleIcon }}"></i> Mandatory fields
|
<i class="fa {{ subTitleIcon }}"></i> {{ 'mandatoryFields'|_ }}
|
||||||
</div>
|
</div>
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
{{ ExpandedForm.text('name') }}
|
{{ ExpandedForm.text('name') }}
|
||||||
@@ -20,7 +20,7 @@
|
|||||||
<div class="col-lg-6 col-md-6 col-sm-12">
|
<div class="col-lg-6 col-md-6 col-sm-12">
|
||||||
<div class="panel panel-default">
|
<div class="panel panel-default">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<i class="fa fa-smile-o"></i> Optional fields
|
<i class="fa fa-smile-o"></i> {{ 'optionalFields'|_ }}
|
||||||
</div>
|
</div>
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
{% if account.accounttype.type == 'Default account' or account.accounttype.type == 'Asset account' %}
|
{% if account.accounttype.type == 'Default account' or account.accounttype.type == 'Asset account' %}
|
||||||
@@ -50,7 +50,7 @@
|
|||||||
<!-- panel for options -->
|
<!-- panel for options -->
|
||||||
<div class="panel panel-default">
|
<div class="panel panel-default">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<i class="fa fa-bolt"></i> Options
|
<i class="fa fa-bolt"></i> {{ 'options'|_ }}
|
||||||
</div>
|
</div>
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
{{ ExpandedForm.optionsList('update','account') }}
|
{{ ExpandedForm.optionsList('update','account') }}
|
||||||
|
@@ -5,10 +5,9 @@
|
|||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-lg-6 col-md-12 col-sm-6">
|
<div class="col-lg-6 col-md-12 col-sm-6">
|
||||||
<!-- panel for mandatory fields -->
|
|
||||||
<div class="panel panel-primary">
|
<div class="panel panel-primary">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<i class="fa fa-exclamation-circle"></i> Mandatory fields
|
<i class="fa fa-exclamation-circle"></i> {{ 'mandatoryFields'|_ }}
|
||||||
</div>
|
</div>
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
{{ ExpandedForm.text('name') }}
|
{{ ExpandedForm.text('name') }}
|
||||||
@@ -22,10 +21,9 @@
|
|||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div class="col-lg-6 col-md-12 col-sm-6">
|
<div class="col-lg-6 col-md-12 col-sm-6">
|
||||||
<!-- panel for optional fields -->
|
|
||||||
<div class="panel panel-default">
|
<div class="panel panel-default">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<i class="fa fa-smile-o"></i> Optional fields
|
<i class="fa fa-smile-o"></i> {{ 'optionalFields'|_ }}
|
||||||
</div>
|
</div>
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
{{ ExpandedForm.integer('skip',0) }}
|
{{ ExpandedForm.integer('skip',0) }}
|
||||||
@@ -37,7 +35,7 @@
|
|||||||
<!-- panel for options -->
|
<!-- panel for options -->
|
||||||
<div class="panel panel-default">
|
<div class="panel panel-default">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<i class="fa fa-bolt"></i> Options
|
<i class="fa fa-bolt"></i> {{ 'options'|_ }}
|
||||||
</div>
|
</div>
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
{{ ExpandedForm.optionsList('create','bill') }}
|
{{ ExpandedForm.optionsList('create','bill') }}
|
||||||
|
@@ -9,7 +9,7 @@
|
|||||||
<div class="col-lg-6 col-md-12 col-sm-6">
|
<div class="col-lg-6 col-md-12 col-sm-6">
|
||||||
<div class="panel panel-primary">
|
<div class="panel panel-primary">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<i class="fa fa-exclamation-circle"></i> Mandatory fields
|
<i class="fa fa-exclamation-circle"></i> {{ 'mandatoryFields'|_ }}
|
||||||
</div>
|
</div>
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
{{ ExpandedForm.text('name') }}
|
{{ ExpandedForm.text('name') }}
|
||||||
@@ -26,7 +26,7 @@
|
|||||||
<div class="col-lg-6 col-md-12 col-sm-6">
|
<div class="col-lg-6 col-md-12 col-sm-6">
|
||||||
<div class="panel panel-default">
|
<div class="panel panel-default">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<i class="fa fa-smile-o"></i> Optional fields
|
<i class="fa fa-smile-o"></i> {{ 'optionalFields'|_ }}
|
||||||
</div>
|
</div>
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
{{ ExpandedForm.integer('skip') }}
|
{{ ExpandedForm.integer('skip') }}
|
||||||
@@ -37,7 +37,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="panel panel-default">
|
<div class="panel panel-default">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<i class="fa fa-bolt"></i> Options
|
<i class="fa fa-bolt"></i> {{ 'options'|_ }}
|
||||||
</div>
|
</div>
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
{{ ExpandedForm.optionsList('update','bill') }}
|
{{ ExpandedForm.optionsList('update','bill') }}
|
||||||
|
@@ -6,7 +6,7 @@
|
|||||||
<div class="col-lg-6 col-md-6 col-sm-12">
|
<div class="col-lg-6 col-md-6 col-sm-12">
|
||||||
<div class="panel panel-primary">
|
<div class="panel panel-primary">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<i class="fa fa-exclamation"></i> Mandatory fields
|
<i class="fa fa-exclamation"></i> {{ 'mandatoryFields'|_ }}
|
||||||
</div>
|
</div>
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
{{ ExpandedForm.text('name') }}
|
{{ ExpandedForm.text('name') }}
|
||||||
@@ -17,7 +17,7 @@
|
|||||||
<!-- panel for options -->
|
<!-- panel for options -->
|
||||||
<div class="panel panel-default">
|
<div class="panel panel-default">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<i class="fa fa-bolt"></i> Options
|
<i class="fa fa-bolt"></i> {{ 'options'|_ }}
|
||||||
</div>
|
</div>
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
{{ ExpandedForm.optionsList('create','budget') }}
|
{{ ExpandedForm.optionsList('create','budget') }}
|
||||||
|
@@ -13,7 +13,7 @@
|
|||||||
<div class="col-lg-6 col-md-12 col-sm-6">
|
<div class="col-lg-6 col-md-12 col-sm-6">
|
||||||
<div class="panel panel-primary">
|
<div class="panel panel-primary">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<i class="fa fa-fw fa-exclamation"></i> Mandatory fields
|
<i class="fa fa-fw fa-exclamation"></i> {{ 'mandatoryFields'|_ }}
|
||||||
</div>
|
</div>
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
{{ ExpandedForm.checkbox('active') }}
|
{{ ExpandedForm.checkbox('active') }}
|
||||||
@@ -26,7 +26,7 @@
|
|||||||
<!-- panel for options -->
|
<!-- panel for options -->
|
||||||
<div class="panel panel-default">
|
<div class="panel panel-default">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<i class="fa fa-bolt"></i> Options
|
<i class="fa fa-bolt"></i> {{ 'options'|_ }}
|
||||||
</div>
|
</div>
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
{{ ExpandedForm.optionsList('update','budget') }}
|
{{ ExpandedForm.optionsList('update','budget') }}
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
<div class="col-lg-6 col-md-6 col-sm-12">
|
<div class="col-lg-6 col-md-6 col-sm-12">
|
||||||
<div class="panel panel-primary">
|
<div class="panel panel-primary">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<i class="fa fa-exclamation"></i> Mandatory fields
|
<i class="fa fa-exclamation"></i> {{ 'mandatoryFields'|_ }}
|
||||||
</div>
|
</div>
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
{{ ExpandedForm.text('name') }}
|
{{ ExpandedForm.text('name') }}
|
||||||
@@ -20,7 +20,7 @@
|
|||||||
<!-- panel for options -->
|
<!-- panel for options -->
|
||||||
<div class="panel panel-default">
|
<div class="panel panel-default">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<i class="fa fa-bolt"></i> Options
|
<i class="fa fa-bolt"></i> {{ 'options'|_ }}
|
||||||
</div>
|
</div>
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
{{ ExpandedForm.optionsList('create','category') }}
|
{{ ExpandedForm.optionsList('create','category') }}
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
<div class="col-lg-6 col-md-6 col-sm-12">
|
<div class="col-lg-6 col-md-6 col-sm-12">
|
||||||
<div class="panel panel-primary">
|
<div class="panel panel-primary">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<i class="fa fa-exclamation"></i> Mandatory fields
|
<i class="fa fa-exclamation"></i> {{ 'mandatoryFields'|_ }}
|
||||||
</div>
|
</div>
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
{{ ExpandedForm.text('name') }}
|
{{ ExpandedForm.text('name') }}
|
||||||
@@ -21,7 +21,7 @@
|
|||||||
<!-- panel for options -->
|
<!-- panel for options -->
|
||||||
<div class="panel panel-default">
|
<div class="panel panel-default">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<i class="fa fa-bolt"></i> Options
|
<i class="fa fa-bolt"></i> {{ 'options'|_ }}
|
||||||
</div>
|
</div>
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
{{ ExpandedForm.optionsList('update','category') }}
|
{{ ExpandedForm.optionsList('update','category') }}
|
||||||
|
@@ -6,7 +6,7 @@
|
|||||||
<div class="col-lg-6 col-md-6 col-sm-12">
|
<div class="col-lg-6 col-md-6 col-sm-12">
|
||||||
<div class="panel panel-primary">
|
<div class="panel panel-primary">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<i class="fa {{ subTitleIcon }}"></i> Mandatory fields
|
<i class="fa {{ subTitleIcon }}"></i> {{ 'mandatoryFields'|_ }}
|
||||||
</div>
|
</div>
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
{{ ExpandedForm.text('name',null,{'maxlength' : 48}) }}
|
{{ ExpandedForm.text('name',null,{'maxlength' : 48}) }}
|
||||||
@@ -22,7 +22,7 @@
|
|||||||
<!-- panel for options -->
|
<!-- panel for options -->
|
||||||
<div class="panel panel-default">
|
<div class="panel panel-default">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<i class="fa fa-bolt"></i> Options
|
<i class="fa fa-bolt"></i> {{ 'options'|_ }}
|
||||||
</div>
|
</div>
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
{{ ExpandedForm.optionsList('create','currency') }}
|
{{ ExpandedForm.optionsList('create','currency') }}
|
||||||
|
@@ -8,7 +8,7 @@
|
|||||||
<div class="col-lg-6 col-md-6 col-sm-12">
|
<div class="col-lg-6 col-md-6 col-sm-12">
|
||||||
<div class="panel panel-primary">
|
<div class="panel panel-primary">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<i class="fa {{ subTitleIcon }}"></i> Mandatory fields
|
<i class="fa {{ subTitleIcon }}"></i> {{ 'mandatoryFields'|_ }}
|
||||||
</div>
|
</div>
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
{{ ExpandedForm.text('name',null,{'maxlength' : 48}) }}
|
{{ ExpandedForm.text('name',null,{'maxlength' : 48}) }}
|
||||||
@@ -23,7 +23,7 @@
|
|||||||
<!-- panel for options -->
|
<!-- panel for options -->
|
||||||
<div class="panel panel-default">
|
<div class="panel panel-default">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<i class="fa fa-bolt"></i> Options
|
<i class="fa fa-bolt"></i> {{ 'options'|_ }}
|
||||||
</div>
|
</div>
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
{{ ExpandedForm.optionsList('update','currency') }}
|
{{ ExpandedForm.optionsList('update','currency') }}
|
||||||
|
@@ -5,7 +5,7 @@
|
|||||||
{% if count == 0 %}
|
{% if count == 0 %}
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-lg-12 col-md-12 col-sm-12">
|
<div class="col-lg-12 col-md-12 col-sm-12">
|
||||||
<p class="lead">Welcome to Firefly III.</p>
|
<p class="lead">{{ 'welcome'|_ }}</p>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
Create a new asset account to get started.
|
Create a new asset account to get started.
|
||||||
|
@@ -60,7 +60,7 @@
|
|||||||
<div class="col-lg-12">
|
<div class="col-lg-12">
|
||||||
<h1 class="page-header">
|
<h1 class="page-header">
|
||||||
{% if mainTitleIcon %}
|
{% if mainTitleIcon %}
|
||||||
<i class="fa {{ mainTitleIcon }}"></i>
|
<i class="hidden-xs fa {{ mainTitleIcon }}"></i>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{{ title }}
|
{{ title }}
|
||||||
@@ -68,12 +68,12 @@
|
|||||||
{% if subTitle %}
|
{% if subTitle %}
|
||||||
<small>
|
<small>
|
||||||
{% if subTitleIcon %}
|
{% if subTitleIcon %}
|
||||||
<i class="fa {{ subTitleIcon }}"></i>
|
<i class="hidden-xs fa {{ subTitleIcon }}"></i>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{{ subTitle }}
|
{{ subTitle }}
|
||||||
</small>
|
</small>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
<small class="pull-right"><a href="#" id="help" data-route="{{ Route.getCurrentRoute.getName }}"><i
|
<small class="pull-right hidden-xs"><a href="#" id="help" data-route="{{ Route.getCurrentRoute.getName }}"><i
|
||||||
data-route="{{ Route.getCurrentRoute.getName }}" class="fa fa-question-circle"></i></a></small>
|
data-route="{{ Route.getCurrentRoute.getName }}" class="fa fa-question-circle"></i></a></small>
|
||||||
</h1>
|
</h1>
|
||||||
|
|
||||||
@@ -89,15 +89,15 @@
|
|||||||
<div class="modal-dialog">
|
<div class="modal-dialog">
|
||||||
<div class="modal-content">
|
<div class="modal-content">
|
||||||
<div class="modal-header">
|
<div class="modal-header">
|
||||||
<button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">×</span><span class="sr-only">Close</span>
|
<button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">×</span><span class="sr-only">{{ 'close'|_ }}</span>
|
||||||
</button>
|
</button>
|
||||||
<h4 class="modal-title" id="helpTitle">Please hold...</h4>
|
<h4 class="modal-title" id="helpTitle">{{ 'pleaseHold'|_ }}</h4>
|
||||||
</div>
|
</div>
|
||||||
<div class="modal-body" id="helpBody">
|
<div class="modal-body" id="helpBody">
|
||||||
<i class="fa fa-refresh fa-spin"></i>
|
<i class="fa fa-refresh fa-spin"></i>
|
||||||
</div>
|
</div>
|
||||||
<div class="modal-footer">
|
<div class="modal-footer">
|
||||||
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
|
<button type="button" class="btn btn-default" data-dismiss="modal">{{ 'close'|_ }}</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@@ -2,25 +2,25 @@
|
|||||||
|
|
||||||
<table class="table table-striped table-bordered sortable-table">
|
<table class="table table-striped table-bordered sortable-table">
|
||||||
<tr class="ignore">
|
<tr class="ignore">
|
||||||
<th colspan="2"> </th>
|
<th class="hidden-xs" colspan="2"> </th>
|
||||||
<th>Description</th>
|
<th>Description</th>
|
||||||
<th>Amount</th>
|
<th>Amount</th>
|
||||||
<th>Date</th>
|
<th>Date</th>
|
||||||
<th>From</th>
|
<th class="hidden-xs">From</th>
|
||||||
<th>To</th>
|
<th class="hidden-xs">To</th>
|
||||||
<!-- Hide budgets? -->
|
<!-- Hide budgets? -->
|
||||||
{% if not hideBudgets %}
|
{% if not hideBudgets %}
|
||||||
<th><i class="fa fa-tasks fa-fw" title="Budget"></i></th>
|
<th class="hidden-xs"><i class="fa fa-tasks fa-fw" title="Budget"></i></th>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
<!-- Hide categories? -->
|
<!-- Hide categories? -->
|
||||||
{% if not hideCategories %}
|
{% if not hideCategories %}
|
||||||
<th><i class="fa fa-bar-chart fa-fw" title="Category"></i></th>
|
<th class="hidden-xs"><i class="fa fa-bar-chart fa-fw" title="Category"></i></th>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
<!-- Hide bills? -->
|
<!-- Hide bills? -->
|
||||||
{% if not hideBills %}
|
{% if not hideBills %}
|
||||||
<th><i class="fa fa-fw fa-rotate-right" title="Bill"></i></th>
|
<th class="hidden-xs"><i class="fa fa-fw fa-rotate-right" title="Bill"></i></th>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</tr>
|
</tr>
|
||||||
{% for journal in journals %}
|
{% for journal in journals %}
|
||||||
@@ -37,7 +37,7 @@
|
|||||||
</tr>
|
</tr>
|
||||||
{% else %}
|
{% else %}
|
||||||
<tr class="drag" data-date="{{journal.date.format('Y-m-d')}}" data-id="{{journal.id}}">
|
<tr class="drag" data-date="{{journal.date.format('Y-m-d')}}" data-id="{{journal.id}}">
|
||||||
<td>
|
<td class="hidden-xs">
|
||||||
<div class="btn-group btn-group-xs">
|
<div class="btn-group btn-group-xs">
|
||||||
{% if sorting %}
|
{% if sorting %}
|
||||||
<a href="#" class="handle btn btn-default btn-xs"><i class="fa fa-fw fa-arrows-v"></i></a>
|
<a href="#" class="handle btn btn-default btn-xs"><i class="fa fa-fw fa-arrows-v"></i></a>
|
||||||
@@ -47,7 +47,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
|
|
||||||
<td>
|
<td class="hidden-xs">
|
||||||
{{ journal|typeIcon }}
|
{{ journal|typeIcon }}
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
@@ -63,14 +63,14 @@
|
|||||||
<td>
|
<td>
|
||||||
{{journal.date.format('j F Y')}}
|
{{journal.date.format('j F Y')}}
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td class="hidden-xs">
|
||||||
{% if journal.transactions[0].account.accountType.type == 'Cash account' %}
|
{% if journal.transactions[0].account.accountType.type == 'Cash account' %}
|
||||||
<span class="text-success">(cash)</span>
|
<span class="text-success">(cash)</span>
|
||||||
{% else %}
|
{% else %}
|
||||||
<a href="{{route('accounts.show',journal.transactions[0].account_id)}}">{{journal.transactions[0].account.name}}</a>
|
<a href="{{route('accounts.show',journal.transactions[0].account_id)}}">{{journal.transactions[0].account.name}}</a>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td class="hidden-xs">
|
||||||
{% if journal.transactions[1].account.accountType.type == 'Cash account' %}
|
{% if journal.transactions[1].account.accountType.type == 'Cash account' %}
|
||||||
<span class="text-success">(cash)</span>
|
<span class="text-success">(cash)</span>
|
||||||
{% else %}
|
{% else %}
|
||||||
@@ -80,7 +80,7 @@
|
|||||||
|
|
||||||
<!-- Do NOT hide the budget? -->
|
<!-- Do NOT hide the budget? -->
|
||||||
{% if not hideBudgets %}
|
{% if not hideBudgets %}
|
||||||
<td>
|
<td class="hidden-xs">
|
||||||
{% if journal.budgets[0] %}
|
{% if journal.budgets[0] %}
|
||||||
<a href="{{route('budgets.show',journal.budgets[0].id)}}">{{journal.budgets[0].name}}</a>
|
<a href="{{route('budgets.show',journal.budgets[0].id)}}">{{journal.budgets[0].name}}</a>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
@@ -89,7 +89,7 @@
|
|||||||
|
|
||||||
<!-- Do NOT hide the category? -->
|
<!-- Do NOT hide the category? -->
|
||||||
{% if not hideCategories %}
|
{% if not hideCategories %}
|
||||||
<td>
|
<td class="hidden-xs">
|
||||||
{% if journal.categories[0] %}
|
{% if journal.categories[0] %}
|
||||||
<a href="{{route('categories.show',journal.categories[0].id)}}">{{journal.categories[0].name}}</a>
|
<a href="{{route('categories.show',journal.categories[0].id)}}">{{journal.categories[0].name}}</a>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
@@ -98,7 +98,7 @@
|
|||||||
|
|
||||||
<!-- Do NOT hide the bill? -->
|
<!-- Do NOT hide the bill? -->
|
||||||
{% if not hideBills %}
|
{% if not hideBills %}
|
||||||
<td>
|
<td class="hidden-xs">
|
||||||
{% if journal.bill %}
|
{% if journal.bill %}
|
||||||
<a href="{{ route('bills.show',journal.bill_id) }}">{{journal.bill.name}}</a>
|
<a href="{{ route('bills.show',journal.bill_id) }}">{{journal.bill.name}}</a>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
@@ -13,7 +13,7 @@
|
|||||||
<!-- /.navbar-header -->
|
<!-- /.navbar-header -->
|
||||||
|
|
||||||
|
|
||||||
<ul class="nav navbar-top-links navbar-right">
|
<ul class="nav navbar-top-links navbar-right hidden-xs">
|
||||||
|
|
||||||
<!-- reminders -->
|
<!-- reminders -->
|
||||||
{% if reminders|length > 0 %}
|
{% if reminders|length > 0 %}
|
||||||
@@ -68,16 +68,15 @@
|
|||||||
|
|
||||||
<!-- /.dropdown -->
|
<!-- /.dropdown -->
|
||||||
|
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<p class="navbar-text navbar-right" id="daterange"><span> </span> <b class="caret"></b></p>
|
<p class="navbar-text navbar-right hidden-xs" id="daterange"><span> </span> <b class="caret"></b></p>
|
||||||
|
|
||||||
|
|
||||||
<!-- /.navbar-top-links -->
|
<!-- /.navbar-top-links -->
|
||||||
<div class="navbar-default sidebar" role="navigation">
|
<div class="navbar-default sidebar" role="navigation">
|
||||||
<div class="sidebar-nav navbar-collapse">
|
<div class="sidebar-nav navbar-collapse">
|
||||||
<ul class="nav" id="side-menu">
|
<ul class="nav" id="side-menu">
|
||||||
<li class="sidebar-search">
|
<li class="sidebar-search hidden-xs">
|
||||||
<form action="{{ route('search') }}" method="GET" class="form-inline">
|
<form action="{{ route('search') }}" method="GET" class="form-inline">
|
||||||
<div class="input-group custom-search-form">
|
<div class="input-group custom-search-form">
|
||||||
<input type="text" name="q" class="form-control" value="{% if Input.get('q') %}{{ Input.get('q') }}{% endif %}"
|
<input type="text" name="q" class="form-control" value="{% if Input.get('q') %}{{ Input.get('q') }}{% endif %}"
|
||||||
@@ -174,6 +173,8 @@
|
|||||||
</ul>
|
</ul>
|
||||||
<!-- /.nav-second-level -->
|
<!-- /.nav-second-level -->
|
||||||
</li>
|
</li>
|
||||||
|
<!-- profile, again-->
|
||||||
|
<!-- reminders, again-->
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<!-- /.sidebar-collapse -->
|
<!-- /.sidebar-collapse -->
|
||||||
|
@@ -8,7 +8,7 @@
|
|||||||
<div class="col-lg-6 col-md-12 col-sm-6">
|
<div class="col-lg-6 col-md-12 col-sm-6">
|
||||||
<div class="panel panel-primary">
|
<div class="panel panel-primary">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<i class="fa fa-fw fa-exclamation"></i> Mandatory fields
|
<i class="fa fa-fw fa-exclamation"></i> {{ 'mandatoryFields'|_ }}
|
||||||
</div>
|
</div>
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
|
|
||||||
@@ -20,10 +20,9 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-lg-6 col-md-12 col-sm-12">
|
<div class="col-lg-6 col-md-12 col-sm-12">
|
||||||
<!-- panel for optional fields -->
|
|
||||||
<div class="panel panel-default">
|
<div class="panel panel-default">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<i class="fa fa-smile-o"></i> Optional fields
|
<i class="fa fa-smile-o"></i> {{ 'optionalFields'|_ }}
|
||||||
</div>
|
</div>
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
{{ ExpandedForm.date('targetdate') }}
|
{{ ExpandedForm.date('targetdate') }}
|
||||||
@@ -35,7 +34,7 @@
|
|||||||
<!-- panel for options -->
|
<!-- panel for options -->
|
||||||
<div class="panel panel-default">
|
<div class="panel panel-default">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<i class="fa fa-bolt"></i> Options
|
<i class="fa fa-bolt"></i> {{ 'options'|_ }}
|
||||||
</div>
|
</div>
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
{{ ExpandedForm.optionsList('create','piggy bank') }}
|
{{ ExpandedForm.optionsList('create','piggy bank') }}
|
||||||
|
@@ -10,7 +10,7 @@
|
|||||||
<div class="col-lg-6 col-md-12 col-sm-6">
|
<div class="col-lg-6 col-md-12 col-sm-6">
|
||||||
<div class="panel panel-primary">
|
<div class="panel panel-primary">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<i class="fa fa-fw fa-exclamation"></i> Mandatory fields
|
<i class="fa fa-fw fa-exclamation"></i> {{ 'mandatoryFields'|_ }}
|
||||||
</div>
|
</div>
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
|
|
||||||
@@ -23,10 +23,9 @@
|
|||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div class="col-lg-6 col-md-12 col-sm-12">
|
<div class="col-lg-6 col-md-12 col-sm-12">
|
||||||
<!-- panel for optional fields -->
|
|
||||||
<div class="panel panel-default">
|
<div class="panel panel-default">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<i class="fa fa-smile-o"></i> Optional fields
|
<i class="fa fa-smile-o"></i> {{ 'optionalFields'|_ }}
|
||||||
</div>
|
</div>
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
{{ ExpandedForm.date('targetdate') }}
|
{{ ExpandedForm.date('targetdate') }}
|
||||||
@@ -38,7 +37,7 @@
|
|||||||
<!-- panel for options -->
|
<!-- panel for options -->
|
||||||
<div class="panel panel-default">
|
<div class="panel panel-default">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<i class="fa fa-bolt"></i> Options
|
<i class="fa fa-bolt"></i> {{ 'options'|_ }}
|
||||||
</div>
|
</div>
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
{{ ExpandedForm.optionsList('update','piggy bank') }}
|
{{ ExpandedForm.optionsList('update','piggy bank') }}
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
<div class="col-lg-5 col-md-5 col-sm-12">
|
<div class="col-lg-5 col-md-5 col-sm-12">
|
||||||
<div class="panel panel-primary">
|
<div class="panel panel-primary">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<i class="fa fa-tag"></i> Mandatory fields
|
<i class="fa fa-tag"></i> {{ 'mandatoryFields'|_ }}
|
||||||
</div>
|
</div>
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
{{ ExpandedForm.text('tag') }}
|
{{ ExpandedForm.text('tag') }}
|
||||||
@@ -20,7 +20,7 @@
|
|||||||
|
|
||||||
<div class="panel panel-default">
|
<div class="panel panel-default">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<i class="fa fa-smile-o"></i> Optional fields
|
<i class="fa fa-smile-o"></i> {{ 'optionalFields'|_ }}
|
||||||
</div>
|
</div>
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
{{ ExpandedForm.date('date') }}
|
{{ ExpandedForm.date('date') }}
|
||||||
@@ -32,7 +32,7 @@
|
|||||||
<!-- panel for options -->
|
<!-- panel for options -->
|
||||||
<div class="panel panel-default">
|
<div class="panel panel-default">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<i class="fa fa-bolt"></i> Options
|
<i class="fa fa-bolt"></i> {{ 'options'|_ }}
|
||||||
</div>
|
</div>
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
{{ ExpandedForm.optionsList('create','tag') }}
|
{{ ExpandedForm.optionsList('create','tag') }}
|
||||||
|
@@ -9,7 +9,7 @@
|
|||||||
<div class="col-lg-5 col-md-5 col-sm-12">
|
<div class="col-lg-5 col-md-5 col-sm-12">
|
||||||
<div class="panel panel-primary">
|
<div class="panel panel-primary">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<i class="fa fa-tag"></i> Mandatory fields
|
<i class="fa fa-tag"></i> {{ 'mandatoryFields'|_ }}
|
||||||
</div>
|
</div>
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
{{ ExpandedForm.text('tag') }}
|
{{ ExpandedForm.text('tag') }}
|
||||||
@@ -22,7 +22,7 @@
|
|||||||
|
|
||||||
<div class="panel panel-default">
|
<div class="panel panel-default">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<i class="fa fa-smile-o"></i> Optional fields
|
<i class="fa fa-smile-o"></i> {{ 'optionalFields'|_ }}
|
||||||
</div>
|
</div>
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
{{ ExpandedForm.date('date') }}
|
{{ ExpandedForm.date('date') }}
|
||||||
@@ -34,7 +34,7 @@
|
|||||||
<!-- panel for options -->
|
<!-- panel for options -->
|
||||||
<div class="panel panel-default">
|
<div class="panel panel-default">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<i class="fa fa-bolt"></i> Options
|
<i class="fa fa-bolt"></i> {{ 'options'|_ }}
|
||||||
</div>
|
</div>
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
{{ ExpandedForm.optionsList('update','tag') }}
|
{{ ExpandedForm.optionsList('update','tag') }}
|
||||||
|
@@ -6,10 +6,9 @@
|
|||||||
<input type="hidden" name="what" value="{{ what }}" />
|
<input type="hidden" name="what" value="{{ what }}" />
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-lg-6 col-md-12 col-sm-12">
|
<div class="col-lg-6 col-md-12 col-sm-12">
|
||||||
<!-- panel for mandatory fields -->
|
|
||||||
<div class="panel panel-primary">
|
<div class="panel panel-primary">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<i class="fa fa-exclamation-circle"></i> Mandatory fields
|
<i class="fa fa-exclamation-circle"></i> {{ 'mandatoryFields'|_ }}
|
||||||
</div>
|
</div>
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
<!-- DESCRIPTION ALWAYS AVAILABLE -->
|
<!-- DESCRIPTION ALWAYS AVAILABLE -->
|
||||||
@@ -46,10 +45,9 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-lg-6 col-md-12 col-sm-12">
|
<div class="col-lg-6 col-md-12 col-sm-12">
|
||||||
<!-- panel for optional fields -->
|
|
||||||
<div class="panel panel-default">
|
<div class="panel panel-default">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<i class="fa fa-smile-o"></i> Optional fields
|
<i class="fa fa-smile-o"></i> {{ 'optionalFields'|_ }}
|
||||||
</div>
|
</div>
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
<!-- BUDGET ONLY WHEN CREATING A WITHDRAWAL -->
|
<!-- BUDGET ONLY WHEN CREATING A WITHDRAWAL -->
|
||||||
@@ -73,7 +71,7 @@
|
|||||||
<!-- panel for options -->
|
<!-- panel for options -->
|
||||||
<div class="panel panel-default">
|
<div class="panel panel-default">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<i class="fa fa-bolt"></i> Options
|
<i class="fa fa-bolt"></i> {{ 'options'|_ }}
|
||||||
</div>
|
</div>
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
{{ ExpandedForm.optionsList('create','transaction') }}
|
{{ ExpandedForm.optionsList('create','transaction') }}
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user