mirror of
https://github.com/firefly-iii/firefly-iii.git
synced 2025-12-18 17:21:23 +00:00
Compare commits
51 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
6e48827d3f | ||
|
|
f0c20cc706 | ||
|
|
8916c0a3de | ||
|
|
7193a77840 | ||
|
|
61930b5b51 | ||
|
|
11a494cacf | ||
|
|
17f9bf0339 | ||
|
|
3d9755ca8c | ||
|
|
b5cf2d03e6 | ||
|
|
e3b35b8f35 | ||
|
|
1c1fe672bd | ||
|
|
6c71f68ed8 | ||
|
|
8f2f912cdf | ||
|
|
bf6ea16acb | ||
|
|
288546c2b9 | ||
|
|
724db6c34c | ||
|
|
067c451c1d | ||
|
|
11e3696191 | ||
|
|
41e20664de | ||
|
|
d8de90d6f3 | ||
|
|
b01e8299d3 | ||
|
|
1ec11e3e2e | ||
|
|
422f429725 | ||
|
|
5c55fa5fbb | ||
|
|
80d845fdf2 | ||
|
|
601fe68346 | ||
|
|
9e050fb059 | ||
|
|
99d4adf5e6 | ||
|
|
85f8d1e8e9 | ||
|
|
8334d3d99f | ||
|
|
cff08d19eb | ||
|
|
2d86390bc1 | ||
|
|
7a20835571 | ||
|
|
ff3c9676b5 | ||
|
|
055f97dab1 | ||
|
|
8a867e71a1 | ||
|
|
b8275b4734 | ||
|
|
36b951b146 | ||
|
|
c5a5f17643 | ||
|
|
16b909c4df | ||
|
|
92b7648e03 | ||
|
|
ca46ebe3b2 | ||
|
|
676e48254a | ||
|
|
b15b55227d | ||
|
|
3c3b723913 | ||
|
|
f05002c729 | ||
|
|
1c2cbd5b40 | ||
|
|
54c6ca9f45 | ||
|
|
c10efbb170 | ||
|
|
a496ad5814 | ||
|
|
f946f10afd |
25
.codeclimate.yml
Normal file
25
.codeclimate.yml
Normal file
@@ -0,0 +1,25 @@
|
||||
# Save as .codeclimate.yml (note leading .) in project root directory
|
||||
languages:
|
||||
JavaScript: true
|
||||
PHP: true
|
||||
exclude_paths:
|
||||
- "public/packages/maximebf/php-debugbar/debugbar.js"
|
||||
- "public/packages/maximebf/php-debugbar/widgets.js"
|
||||
- "public/packages/maximebf/php-debugbar/openhandler.js"
|
||||
- "public/packages/maximebf/php-debugbar/widgets/sqlqueries/widget.js"
|
||||
- "public/js/bootstrap3-typeahead.min.js"
|
||||
- "public/js/bootstrap-sortable.js"
|
||||
- "public/js/bootstrap-tagsinput.min.js"
|
||||
- "public/js/bootstrap-tagsinput.min.js.map"
|
||||
- "public/js/daterangepicker.js"
|
||||
- "public/js/jquery-2.1.3.min.js"
|
||||
- "public/js/jquery-2.1.3.min.js.map"
|
||||
- "public/js/jquery-ui.min.js"
|
||||
- "public/js/metisMenu.js"
|
||||
- "public/js/moment.min.js"
|
||||
- "public/js/sb-admin-2.js"
|
||||
- "public/bootstrap/*"
|
||||
- "resources/lang/*"
|
||||
- "tests/*"
|
||||
- "database/*"
|
||||
- "storage/*"
|
||||
@@ -16,4 +16,5 @@ EMAIL_DRIVER=smtp
|
||||
EMAIL_USERNAME=
|
||||
EMAIL_PASSWORD=
|
||||
ANALYTICS_ID=
|
||||
EMAIL_PRETEND=false
|
||||
EMAIL_PRETEND=false
|
||||
RUNCLEANUP=true
|
||||
@@ -1,5 +1,5 @@
|
||||
# Firefly III
|
||||
#### v3.4.0.8
|
||||
#### v3.4.0.10
|
||||
|
||||
[](https://travis-ci.org/JC5/firefly-iii)
|
||||
[](http://stillmaintained.com/JC5/firefly-iii)
|
||||
|
||||
@@ -18,6 +18,8 @@ class ConnectJournalToPiggyBank
|
||||
/**
|
||||
* Create the event handler.
|
||||
*
|
||||
* @codeCoverageIgnore
|
||||
*
|
||||
*/
|
||||
public function __construct()
|
||||
{
|
||||
|
||||
@@ -3,7 +3,6 @@
|
||||
namespace FireflyIII\Helpers\Collection;
|
||||
|
||||
|
||||
use FireflyIII\Models\Bill as BillModel;
|
||||
use Illuminate\Support\Collection;
|
||||
|
||||
/**
|
||||
|
||||
@@ -15,14 +15,14 @@ class Budget
|
||||
{
|
||||
/** @var Collection */
|
||||
protected $budgetLines;
|
||||
/** @var float */
|
||||
protected $budgeted = 0;
|
||||
/** @var float */
|
||||
protected $left = 0;
|
||||
/** @var float */
|
||||
protected $overspent = 0;
|
||||
/** @var float */
|
||||
protected $spent = 0;
|
||||
/** @var string */
|
||||
protected $budgeted = '0';
|
||||
/** @var string */
|
||||
protected $left = '0';
|
||||
/** @var string */
|
||||
protected $overspent = '0';
|
||||
/** @var string */
|
||||
protected $spent = '0';
|
||||
|
||||
/**
|
||||
*
|
||||
@@ -45,7 +45,9 @@ class Budget
|
||||
*/
|
||||
public function addBudgeted($add)
|
||||
{
|
||||
$this->budgeted += floatval($add);
|
||||
$add = strval(round($add, 2));
|
||||
bcscale(2);
|
||||
$this->budgeted = bcadd($this->budgeted, $add);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -53,7 +55,9 @@ class Budget
|
||||
*/
|
||||
public function addLeft($add)
|
||||
{
|
||||
$this->left += floatval($add);
|
||||
$add = strval(round($add, 2));
|
||||
bcscale(2);
|
||||
$this->left = bcadd($this->left, $add);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -61,7 +65,9 @@ class Budget
|
||||
*/
|
||||
public function addOverspent($add)
|
||||
{
|
||||
$this->overspent += floatval($add);
|
||||
$add = strval(round($add, 2));
|
||||
bcscale(2);
|
||||
$this->overspent = bcadd($this->overspent, $add);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -69,7 +75,9 @@ class Budget
|
||||
*/
|
||||
public function addSpent($add)
|
||||
{
|
||||
$this->spent += floatval($add);
|
||||
$add = strval(round($add, 2));
|
||||
bcscale(2);
|
||||
$this->spent = bcadd($this->spent, $add);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -81,7 +89,7 @@ class Budget
|
||||
}
|
||||
|
||||
/**
|
||||
* @return float
|
||||
* @return string
|
||||
*/
|
||||
public function getBudgeted()
|
||||
{
|
||||
@@ -89,7 +97,7 @@ class Budget
|
||||
}
|
||||
|
||||
/**
|
||||
* @param float $budgeted
|
||||
* @param string $budgeted
|
||||
*/
|
||||
public function setBudgeted($budgeted)
|
||||
{
|
||||
@@ -97,7 +105,7 @@ class Budget
|
||||
}
|
||||
|
||||
/**
|
||||
* @return float
|
||||
* @return string
|
||||
*/
|
||||
public function getLeft()
|
||||
{
|
||||
@@ -105,7 +113,7 @@ class Budget
|
||||
}
|
||||
|
||||
/**
|
||||
* @param float $left
|
||||
* @param string $left
|
||||
*/
|
||||
public function setLeft($left)
|
||||
{
|
||||
@@ -113,7 +121,7 @@ class Budget
|
||||
}
|
||||
|
||||
/**
|
||||
* @return float
|
||||
* @return string
|
||||
*/
|
||||
public function getOverspent()
|
||||
{
|
||||
@@ -121,15 +129,15 @@ class Budget
|
||||
}
|
||||
|
||||
/**
|
||||
* @param float $overspent
|
||||
* @param string $overspent
|
||||
*/
|
||||
public function setOverspent($overspent)
|
||||
{
|
||||
$this->overspent = $overspent;
|
||||
$this->overspent = strval(round($overspent, 2));
|
||||
}
|
||||
|
||||
/**
|
||||
* @return float
|
||||
* @return string
|
||||
*/
|
||||
public function getSpent()
|
||||
{
|
||||
@@ -137,11 +145,11 @@ class Budget
|
||||
}
|
||||
|
||||
/**
|
||||
* @param float $spent
|
||||
* @param string $spent
|
||||
*/
|
||||
public function setSpent($spent)
|
||||
{
|
||||
$this->spent = $spent;
|
||||
$this->spent = strval(round($spent, 2));
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,16 +17,14 @@ class BudgetLine
|
||||
|
||||
/** @var BudgetModel */
|
||||
protected $budget;
|
||||
|
||||
/** @var LimitRepetition */
|
||||
protected $repetition;
|
||||
|
||||
/** @var float */
|
||||
protected $budgeted = 0;
|
||||
/** @var float */
|
||||
protected $left = 0;
|
||||
/** @var float */
|
||||
protected $overspent = 0;
|
||||
/** @var LimitRepetition */
|
||||
protected $repetition;
|
||||
/** @var float */
|
||||
protected $spent = 0;
|
||||
|
||||
@@ -94,22 +92,6 @@ class BudgetLine
|
||||
$this->overspent = $overspent;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return float
|
||||
*/
|
||||
public function getSpent()
|
||||
{
|
||||
return $this->spent;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param float $spent
|
||||
*/
|
||||
public function setSpent($spent)
|
||||
{
|
||||
$this->spent = $spent;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return LimitRepetition
|
||||
*/
|
||||
@@ -126,5 +108,21 @@ class BudgetLine
|
||||
$this->repetition = $repetition;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return float
|
||||
*/
|
||||
public function getSpent()
|
||||
{
|
||||
return $this->spent;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param float $spent
|
||||
*/
|
||||
public function setSpent($spent)
|
||||
{
|
||||
$this->spent = $spent;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -1,10 +1,4 @@
|
||||
<?php
|
||||
/**
|
||||
* Created by PhpStorm.
|
||||
* User: sander
|
||||
* Date: 16/05/15
|
||||
* Time: 13:09
|
||||
*/
|
||||
|
||||
namespace FireflyIII\Helpers\Collection;
|
||||
|
||||
@@ -24,8 +18,8 @@ class Category
|
||||
|
||||
/** @var Collection */
|
||||
protected $categories;
|
||||
/** @var float */
|
||||
protected $total = 0;
|
||||
/** @var string */
|
||||
protected $total = '0';
|
||||
|
||||
/**
|
||||
*
|
||||
@@ -50,7 +44,9 @@ class Category
|
||||
*/
|
||||
public function addTotal($add)
|
||||
{
|
||||
$this->total += floatval($add);
|
||||
$add = strval(round($add, 2));
|
||||
bcscale(2);
|
||||
$this->total = bcadd($this->total, $add);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -69,11 +65,11 @@ class Category
|
||||
}
|
||||
|
||||
/**
|
||||
* @return float
|
||||
* @return string
|
||||
*/
|
||||
public function getTotal()
|
||||
{
|
||||
return $this->total;
|
||||
return strval(round($this->total, 2));
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,8 +17,8 @@ class Expense
|
||||
{
|
||||
/** @var Collection */
|
||||
protected $expenses;
|
||||
/** @var float */
|
||||
protected $total;
|
||||
/** @var string */
|
||||
protected $total = '0';
|
||||
|
||||
/**
|
||||
*
|
||||
@@ -37,14 +37,15 @@ class Expense
|
||||
$accountId = $entry->account_id;
|
||||
if (!$this->expenses->has($accountId)) {
|
||||
$newObject = new stdClass;
|
||||
$newObject->amount = floatval($entry->amount);
|
||||
$newObject->amount = strval(round($entry->amount, 2));
|
||||
$newObject->name = $entry->name;
|
||||
$newObject->count = 1;
|
||||
$newObject->id = $accountId;
|
||||
$this->expenses->put($accountId, $newObject);
|
||||
} else {
|
||||
$existing = $this->expenses->get($accountId);
|
||||
$existing->amount += floatval($entry->amount);
|
||||
bcscale(2);
|
||||
$existing = $this->expenses->get($accountId);
|
||||
$existing->amount = bcadd($existing->amount, $entry->amount);
|
||||
$existing->count++;
|
||||
$this->expenses->put($accountId, $existing);
|
||||
}
|
||||
@@ -55,7 +56,9 @@ class Expense
|
||||
*/
|
||||
public function addToTotal($add)
|
||||
{
|
||||
$this->total += floatval($add);
|
||||
$add = strval(round($add, 2));
|
||||
bcscale(2);
|
||||
$this->total = bcadd($this->total, $add);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -73,10 +76,10 @@ class Expense
|
||||
}
|
||||
|
||||
/**
|
||||
* @return float
|
||||
* @return string
|
||||
*/
|
||||
public function getTotal()
|
||||
{
|
||||
return $this->total;
|
||||
return strval(round($this->total, 2));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -38,14 +38,15 @@ class Income
|
||||
$accountId = $entry->account_id;
|
||||
if (!$this->incomes->has($accountId)) {
|
||||
$newObject = new stdClass;
|
||||
$newObject->amount = floatval($entry->amount);
|
||||
$newObject->amount = strval(round($entry->amount, 2));
|
||||
$newObject->name = $entry->name;
|
||||
$newObject->count = 1;
|
||||
$newObject->id = $accountId;
|
||||
$this->incomes->put($accountId, $newObject);
|
||||
} else {
|
||||
$existing = $this->incomes->get($accountId);
|
||||
$existing->amount += floatval($entry->amount);
|
||||
bcscale(2);
|
||||
$existing = $this->incomes->get($accountId);
|
||||
$existing->amount = bcadd($existing->amount, $entry->amount);
|
||||
$existing->count++;
|
||||
$this->incomes->put($accountId, $existing);
|
||||
}
|
||||
@@ -56,7 +57,9 @@ class Income
|
||||
*/
|
||||
public function addToTotal($add)
|
||||
{
|
||||
$this->total += floatval($add);
|
||||
$add = strval(round($add, 2));
|
||||
bcscale(2);
|
||||
$this->total = bcadd($this->total, $add);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -78,7 +81,7 @@ class Income
|
||||
*/
|
||||
public function getTotal()
|
||||
{
|
||||
return $this->total;
|
||||
return strval(round($this->total, 2));
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -4,7 +4,6 @@ namespace FireflyIII\Helpers\Reminders;
|
||||
|
||||
use Carbon\Carbon;
|
||||
use FireflyIII\Models\PiggyBank;
|
||||
use FireflyIII\Models\PiggyBankRepetition;
|
||||
use FireflyIII\Models\Reminder;
|
||||
|
||||
/**
|
||||
|
||||
@@ -34,6 +34,7 @@ class ReportHelper implements ReportHelperInterface
|
||||
|
||||
/**
|
||||
* @codeCoverageIgnore
|
||||
*
|
||||
* @param ReportQueryInterface $query
|
||||
*
|
||||
*/
|
||||
@@ -64,11 +65,13 @@ class ReportHelper implements ReportHelperInterface
|
||||
$diff = 0;
|
||||
|
||||
// remove cash account, if any:
|
||||
$accounts =$accounts->filter(function(Account $account) {
|
||||
if($account->accountType->type != 'Cash account') {
|
||||
return $account;
|
||||
}
|
||||
});
|
||||
$accounts = $accounts->filter(
|
||||
function (Account $account) {
|
||||
if ($account->accountType->type != 'Cash account') {
|
||||
return $account;
|
||||
}
|
||||
} // @codeCoverageIgnore
|
||||
);
|
||||
|
||||
// summarize:
|
||||
foreach ($accounts as $account) {
|
||||
|
||||
@@ -5,12 +5,10 @@ namespace FireflyIII\Helpers\Report;
|
||||
use Auth;
|
||||
use Carbon\Carbon;
|
||||
use Crypt;
|
||||
use DB;
|
||||
use FireflyIII\Models\Account;
|
||||
use FireflyIII\Models\Budget;
|
||||
use FireflyIII\Models\TransactionJournal;
|
||||
use Illuminate\Database\Eloquent\Builder;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Query\JoinClause;
|
||||
use Illuminate\Support\Collection;
|
||||
use Steam;
|
||||
@@ -74,7 +72,7 @@ class ReportQuery implements ReportQueryInterface
|
||||
if ($journal->amount != 0) {
|
||||
return $journal;
|
||||
}
|
||||
}
|
||||
} // @codeCoverageIgnore
|
||||
);
|
||||
|
||||
return $data;
|
||||
@@ -138,7 +136,6 @@ class ReportQuery implements ReportQueryInterface
|
||||
* This method returns all "income" journals in a certain period, which are both transfers from a shared account
|
||||
* and "ordinary" deposits. The query used is almost equal to ReportQueryInterface::journalsByRevenueAccount but it does
|
||||
* not group and returns different fields.
|
||||
|
||||
*
|
||||
* @param Carbon $start
|
||||
* @param Carbon $end
|
||||
@@ -191,7 +188,7 @@ class ReportQuery implements ReportQueryInterface
|
||||
if ($journal->amount != 0) {
|
||||
return $journal;
|
||||
}
|
||||
}
|
||||
} // @codeCoverageIgnore
|
||||
);
|
||||
|
||||
return $data;
|
||||
@@ -237,13 +234,11 @@ class ReportQuery implements ReportQueryInterface
|
||||
Auth::user()->transactionjournals()
|
||||
->leftJoin('transactions', 'transactions.transaction_journal_id', '=', 'transaction_journals.id')
|
||||
->leftJoin('budget_transaction_journal', 'budget_transaction_journal.transaction_journal_id', '=', 'transaction_journals.id')
|
||||
->where('transactions.amount', '<', 0)
|
||||
->transactionTypes(['Withdrawal'])
|
||||
->where('transactions.account_id', $account->id)
|
||||
->before($end)
|
||||
->after($start)
|
||||
->whereNull('budget_transaction_journal.budget_id')
|
||||
->sum('transactions.amount')
|
||||
->whereNull('budget_transaction_journal.budget_id')->get(['transaction_journals.*'])->sum('amount')
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
@@ -22,7 +22,7 @@ use View;
|
||||
class AccountController extends Controller
|
||||
{
|
||||
/**
|
||||
*
|
||||
* @codeCoverageIgnore
|
||||
*/
|
||||
public function __construct()
|
||||
{
|
||||
@@ -39,7 +39,7 @@ class AccountController extends Controller
|
||||
public function create($what = 'asset')
|
||||
{
|
||||
$subTitleIcon = Config::get('firefly.subIconsByIdentifier.' . $what);
|
||||
$subTitle = 'Create a new ' . e($what) . ' account';
|
||||
$subTitle = trans('firefly.make_new_' . $what . '_account');
|
||||
|
||||
// put previous url in session if not redirect from store (not "create another").
|
||||
if (Session::get('accounts.create.fromStore') !== true) {
|
||||
@@ -58,7 +58,8 @@ class AccountController extends Controller
|
||||
*/
|
||||
public function delete(Account $account)
|
||||
{
|
||||
$subTitle = 'Delete ' . strtolower(e($account->accountType->type)) . ' "' . e($account->name) . '"';
|
||||
$typeName = Config::get('firefly.shortNamesByFullName.' . $account->accountType->type);
|
||||
$subTitle = trans('firefly.delete_' . $typeName . '_account', ['name' => $account->name]);
|
||||
|
||||
// put previous url in session
|
||||
Session::put('accounts.delete.url', URL::previous());
|
||||
@@ -81,7 +82,7 @@ class AccountController extends Controller
|
||||
|
||||
$repository->destroy($account);
|
||||
|
||||
Session::flash('success', 'The ' . e($typeName) . ' account "' . e($name) . '" was deleted.');
|
||||
Session::flash('success', trans('firefly.' . $typeName . '_deleted', ['name' => $name]));
|
||||
|
||||
return Redirect::to(Session::get('accounts.delete.url'));
|
||||
}
|
||||
|
||||
@@ -36,6 +36,8 @@ class PasswordController extends Controller
|
||||
* @param \Illuminate\Contracts\Auth\Guard $auth
|
||||
* @param \Illuminate\Contracts\Auth\PasswordBroker $passwords
|
||||
*
|
||||
* @codeCoverageIgnore
|
||||
*
|
||||
*/
|
||||
public function __construct(Guard $auth, PasswordBroker $passwords)
|
||||
{
|
||||
|
||||
@@ -3,7 +3,6 @@
|
||||
use Config;
|
||||
use FireflyIII\Http\Requests;
|
||||
use FireflyIII\Http\Requests\BillFormRequest;
|
||||
use FireflyIII\Models\Account;
|
||||
use FireflyIII\Models\Bill;
|
||||
use FireflyIII\Models\Transaction;
|
||||
use FireflyIII\Models\TransactionJournal;
|
||||
@@ -23,7 +22,7 @@ class BillController extends Controller
|
||||
{
|
||||
|
||||
/**
|
||||
*
|
||||
* @codeCoverageIgnore
|
||||
*/
|
||||
public function __construct()
|
||||
{
|
||||
|
||||
@@ -24,7 +24,7 @@ class BudgetController extends Controller
|
||||
{
|
||||
|
||||
/**
|
||||
*
|
||||
* @codeCoverageIgnore
|
||||
*/
|
||||
public function __construct()
|
||||
{
|
||||
|
||||
@@ -21,7 +21,7 @@ class CategoryController extends Controller
|
||||
{
|
||||
|
||||
/**
|
||||
*
|
||||
* @codeCoverageIgnore
|
||||
*/
|
||||
public function __construct()
|
||||
{
|
||||
|
||||
@@ -4,7 +4,6 @@ namespace FireflyIII\Http\Controllers\Chart;
|
||||
|
||||
use Carbon\Carbon;
|
||||
use FireflyIII\Http\Controllers\Controller;
|
||||
use FireflyIII\Models\Account;
|
||||
use FireflyIII\Models\Bill;
|
||||
use FireflyIII\Models\TransactionJournal;
|
||||
use FireflyIII\Repositories\Account\AccountRepositoryInterface;
|
||||
|
||||
@@ -33,7 +33,7 @@ class BudgetController extends Controller
|
||||
|
||||
|
||||
$first = $repository->getFirstBudgetLimitDate($budget);
|
||||
$range = $viewRange = Preferences::get('viewRange', '1M')->data;
|
||||
$range = Preferences::get('viewRange', '1M')->data;
|
||||
$last = Session::get('end', new Carbon);
|
||||
$final = clone $last;
|
||||
$final->addYears(2);
|
||||
|
||||
@@ -6,8 +6,6 @@ namespace FireflyIII\Http\Controllers\Chart;
|
||||
use Carbon\Carbon;
|
||||
use FireflyIII\Http\Controllers\Controller;
|
||||
use FireflyIII\Models\Category;
|
||||
use FireflyIII\Models\LimitRepetition;
|
||||
use FireflyIII\Models\Preference;
|
||||
use FireflyIII\Repositories\Category\CategoryRepositoryInterface;
|
||||
use Grumpydictator\Gchart\GChart;
|
||||
use Navigation;
|
||||
|
||||
@@ -1,19 +1,10 @@
|
||||
<?php
|
||||
/**
|
||||
* Created by PhpStorm.
|
||||
* User: sander
|
||||
* Date: 16/05/15
|
||||
* Time: 09:36
|
||||
*/
|
||||
|
||||
namespace FireflyIII\Http\Controllers\Chart;
|
||||
|
||||
use Carbon\Carbon;
|
||||
use FireflyIII\Http\Controllers\Controller;
|
||||
use FireflyIII\Models\Account;
|
||||
use FireflyIII\Models\Bill;
|
||||
use FireflyIII\Models\PiggyBank;
|
||||
use FireflyIII\Models\TransactionJournal;
|
||||
use FireflyIII\Repositories\PiggyBank\PiggyBankRepositoryInterface;
|
||||
use Grumpydictator\Gchart\GChart;
|
||||
use Illuminate\Support\Collection;
|
||||
|
||||
@@ -24,7 +24,7 @@ abstract class Controller extends BaseController
|
||||
protected $monthFormat;
|
||||
|
||||
/**
|
||||
*
|
||||
* @codeCoverageIgnore
|
||||
*/
|
||||
public function __construct()
|
||||
{
|
||||
|
||||
@@ -23,7 +23,7 @@ class CurrencyController extends Controller
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* @codeCoverageIgnore
|
||||
*/
|
||||
public function __construct()
|
||||
{
|
||||
|
||||
@@ -6,6 +6,7 @@ use FireflyIII\Repositories\Account\AccountRepositoryInterface;
|
||||
use Input;
|
||||
use Preferences;
|
||||
use Redirect;
|
||||
use Route;
|
||||
use Session;
|
||||
use Steam;
|
||||
|
||||
@@ -87,5 +88,78 @@ class HomeController extends Controller
|
||||
return view('index', compact('count', 'title', 'savings', 'subTitle', 'mainTitleIcon', 'transactions', 'savingsTotal', 'piggyBankAccounts'));
|
||||
}
|
||||
|
||||
/**
|
||||
* @codeCoverageIgnore
|
||||
* @SuppressWarnings(PHPMD.ExcessiveMethodLength)
|
||||
* @SuppressWarnings(PHPMD.CyclomaticComplexity)
|
||||
*/
|
||||
public function routes()
|
||||
{
|
||||
$directory = '/vagrant_data/Sites/firefly-iii-help';
|
||||
$languages = array_keys(Config::get('firefly.lang'));
|
||||
$routes = [];
|
||||
$ignored = [
|
||||
'debugbar.openhandler', 'debugbar.assets.css', 'debugbar.assets.js', 'register', 'routes', 'daterange',
|
||||
'flush', 'delete-account-post', 'change-password-post', 'logout', 'login', 'tags.hideTagHelp',
|
||||
'budgets.postIncome', 'flush'
|
||||
];
|
||||
|
||||
$ignoreMatch = ['.store', '.update', '.destroy', 'json.'];
|
||||
|
||||
$routeCollection = Route::getRoutes();
|
||||
/** @var \Illuminate\Routing\Route $object */
|
||||
foreach ($routeCollection as $object) {
|
||||
// get name:
|
||||
$name = $object->getName();
|
||||
// has name and not in ignore list?
|
||||
if (strlen($name) > 0 && !in_array($name, $ignored)) {
|
||||
|
||||
// not in ignoreMatch?
|
||||
$continue = true;
|
||||
foreach ($ignoreMatch as $ignore) {
|
||||
$match = strpos($name, $ignore);
|
||||
if (!($match === false)) {
|
||||
$continue = false;
|
||||
}
|
||||
}
|
||||
unset($ignore, $match);
|
||||
|
||||
if ($continue) {
|
||||
|
||||
$routes[] = $name;
|
||||
|
||||
// check all languages:
|
||||
foreach ($languages as $lang) {
|
||||
$file = $directory . '/' . $lang . '/' . $name . '.md';
|
||||
if (!file_exists($file)) {
|
||||
touch($file);
|
||||
echo $name . '<br />';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// loop directories with language file.
|
||||
// tag the ones not in the list of approved routes.
|
||||
foreach ($languages as $lang) {
|
||||
$dir = $directory . '/' . $lang;
|
||||
$set = scandir($dir);
|
||||
foreach ($set as $entry) {
|
||||
if ($entry != '.' && $entry != '..') {
|
||||
$name = str_replace('.md', '', $entry);
|
||||
if (!in_array($name, $routes)) {
|
||||
$file = $dir . '/' . $entry;
|
||||
unlink($file);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
echo 'Done!';
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -5,7 +5,6 @@ use Carbon\Carbon;
|
||||
use FireflyIII\Helpers\Report\ReportQueryInterface;
|
||||
use FireflyIII\Models\Account;
|
||||
use FireflyIII\Models\Bill;
|
||||
use FireflyIII\Models\Preference;
|
||||
use FireflyIII\Repositories\Account\AccountRepositoryInterface;
|
||||
use FireflyIII\Repositories\Bill\BillRepositoryInterface;
|
||||
use FireflyIII\Repositories\Category\CategoryRepositoryInterface;
|
||||
@@ -123,11 +122,6 @@ class JsonController extends Controller
|
||||
$start = Session::get('start', Carbon::now()->startOfMonth());
|
||||
$end = Session::get('end', Carbon::now()->endOfMonth());
|
||||
$amount = $reportQuery->incomeInPeriodCorrected($start, $end, true)->sum('amount');
|
||||
// $amount = 0;
|
||||
// foreach($set as $entry) {
|
||||
// //echo $entry->description.' ('.$entry->tags->count().'): ' . $entry->amount."\n";
|
||||
// $amount += $entry->amount;
|
||||
// }
|
||||
|
||||
return Response::json(['box' => 'in', 'amount' => Amount::format($amount, false), 'amount_raw' => $amount]);
|
||||
}
|
||||
|
||||
@@ -26,7 +26,7 @@ class PiggyBankController extends Controller
|
||||
{
|
||||
|
||||
/**
|
||||
*
|
||||
* @codeCoverageIgnore
|
||||
*/
|
||||
public function __construct()
|
||||
{
|
||||
|
||||
@@ -17,7 +17,7 @@ class PreferencesController extends Controller
|
||||
{
|
||||
|
||||
/**
|
||||
*
|
||||
* @codeCoverageIgnore
|
||||
*/
|
||||
public function __construct()
|
||||
{
|
||||
|
||||
@@ -3,10 +3,6 @@
|
||||
use Carbon\Carbon;
|
||||
use FireflyIII\Helpers\Report\ReportHelperInterface;
|
||||
use FireflyIII\Models\Account;
|
||||
use FireflyIII\Models\Budget;
|
||||
use FireflyIII\Models\LimitRepetition;
|
||||
use FireflyIII\Models\Preference;
|
||||
use FireflyIII\Models\TransactionJournal;
|
||||
use FireflyIII\Repositories\Account\AccountRepositoryInterface;
|
||||
use Session;
|
||||
use View;
|
||||
@@ -23,6 +19,8 @@ class ReportController extends Controller
|
||||
protected $helper;
|
||||
|
||||
/**
|
||||
* @codeCoverageIgnore
|
||||
*
|
||||
* @param ReportHelperInterface $helper
|
||||
*/
|
||||
public function __construct(ReportHelperInterface $helper)
|
||||
|
||||
@@ -32,7 +32,7 @@ use View;
|
||||
class TagController extends Controller
|
||||
{
|
||||
/**
|
||||
*
|
||||
* @codeCoverageIgnore
|
||||
*/
|
||||
public function __construct()
|
||||
{
|
||||
|
||||
@@ -26,6 +26,7 @@ use View;
|
||||
class TransactionController extends Controller
|
||||
{
|
||||
/**
|
||||
* @codeCoverageIgnore
|
||||
*/
|
||||
public function __construct()
|
||||
{
|
||||
|
||||
@@ -37,8 +37,8 @@ class Kernel extends HttpKernel
|
||||
'auth.basic' => 'Illuminate\Auth\Middleware\AuthenticateWithBasicAuth',
|
||||
'guest' => 'FireflyIII\Http\Middleware\RedirectIfAuthenticated',
|
||||
'range' => 'FireflyIII\Http\Middleware\Range',
|
||||
'cleanup' => 'FireflyIII\Http\Middleware\Cleanup',
|
||||
'reminders' => 'FireflyIII\Http\Middleware\Reminders',
|
||||
'piggybanks' => 'FireflyIII\Http\Middleware\PiggyBanks',
|
||||
|
||||
];
|
||||
|
||||
|
||||
@@ -3,7 +3,6 @@
|
||||
use App;
|
||||
use Closure;
|
||||
use Config;
|
||||
use FireflyIII\Models\Preference;
|
||||
use Illuminate\Contracts\Auth\Guard;
|
||||
use Illuminate\Http\Request;
|
||||
use Preferences;
|
||||
|
||||
186
app/Http/Middleware/Cleanup.php
Normal file
186
app/Http/Middleware/Cleanup.php
Normal file
@@ -0,0 +1,186 @@
|
||||
<?php namespace FireflyIII\Http\Middleware;
|
||||
|
||||
use Closure;
|
||||
use FireflyIII\Models\Account;
|
||||
use FireflyIII\Models\Bill;
|
||||
use FireflyIII\Models\Budget;
|
||||
use FireflyIII\Models\BudgetLimit;
|
||||
use FireflyIII\Models\Category;
|
||||
use FireflyIII\Models\LimitRepetition;
|
||||
use FireflyIII\Models\PiggyBank;
|
||||
use FireflyIII\Models\PiggyBankEvent;
|
||||
use FireflyIII\Models\PiggyBankRepetition;
|
||||
use FireflyIII\Models\Preference;
|
||||
use FireflyIII\Models\Reminder;
|
||||
use FireflyIII\Models\Transaction;
|
||||
use FireflyIII\Models\TransactionJournal;
|
||||
use Illuminate\Contracts\Auth\Guard;
|
||||
use Illuminate\Http\Request;
|
||||
use Session;
|
||||
|
||||
/**
|
||||
* Class Cleanup
|
||||
*
|
||||
* @codeCoverageIgnore
|
||||
* @package FireflyIII\Http\Middleware
|
||||
*/
|
||||
class Cleanup
|
||||
{
|
||||
|
||||
/**
|
||||
* The Guard implementation.
|
||||
*
|
||||
* @var Guard
|
||||
*/
|
||||
protected $auth;
|
||||
|
||||
/**
|
||||
* Create a new filter instance.
|
||||
*
|
||||
* @param Guard $auth
|
||||
*
|
||||
*/
|
||||
public function __construct(Guard $auth)
|
||||
{
|
||||
$this->auth = $auth;
|
||||
}
|
||||
|
||||
/**
|
||||
* Handle an incoming request.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param \Closure $next
|
||||
*
|
||||
* @return mixed
|
||||
*/
|
||||
public function handle(Request $request, Closure $next)
|
||||
{
|
||||
if ($this->auth->guest()) {
|
||||
if ($request->ajax()) {
|
||||
return response('Unauthorized.', 401);
|
||||
} else {
|
||||
return redirect()->guest('auth/login');
|
||||
}
|
||||
}
|
||||
$run = env('RUNCLEANUP') == 'true' ? true : false;
|
||||
$count = 0;
|
||||
|
||||
if ($run) {
|
||||
// encrypt account name
|
||||
$set = Account::where('encrypted', 0)->take(5)->get();
|
||||
/** @var Account $entry */
|
||||
foreach ($set as $entry) {
|
||||
$count++;
|
||||
$name = $entry->name;
|
||||
$entry->name = $name;
|
||||
$entry->save();
|
||||
}
|
||||
unset($set, $entry, $name);
|
||||
|
||||
// encrypt bill name
|
||||
$set = Bill::where('name_encrypted', 0)->take(5)->get();
|
||||
/** @var Bill $entry */
|
||||
foreach ($set as $entry) {
|
||||
$count++;
|
||||
$name = $entry->name;
|
||||
$entry->name = $name;
|
||||
$entry->save();
|
||||
}
|
||||
unset($set, $entry, $name);
|
||||
|
||||
// encrypt bill match
|
||||
$set = Bill::where('match_encrypted', 0)->take(5)->get();
|
||||
/** @var Bill $entry */
|
||||
foreach ($set as $entry) {
|
||||
$match = $entry->match;
|
||||
$entry->match = $match;
|
||||
$entry->save();
|
||||
}
|
||||
unset($set, $entry, $match);
|
||||
|
||||
// encrypt budget name
|
||||
$set = Budget::where('encrypted', 0)->take(5)->get();
|
||||
/** @var Budget $entry */
|
||||
foreach ($set as $entry) {
|
||||
$count++;
|
||||
$name = $entry->name;
|
||||
$entry->name = $name;
|
||||
$entry->save();
|
||||
}
|
||||
unset($set, $entry, $name);
|
||||
|
||||
// encrypt category name
|
||||
$set = Category::where('encrypted', 0)->take(5)->get();
|
||||
/** @var Category $entry */
|
||||
foreach ($set as $entry) {
|
||||
$count++;
|
||||
$name = $entry->name;
|
||||
$entry->name = $name;
|
||||
$entry->save();
|
||||
}
|
||||
unset($set, $entry, $name);
|
||||
|
||||
// encrypt piggy bank name
|
||||
$set = PiggyBank::where('encrypted', 0)->take(5)->get();
|
||||
/** @var PiggyBank $entry */
|
||||
foreach ($set as $entry) {
|
||||
$count++;
|
||||
$name = $entry->name;
|
||||
$entry->name = $name;
|
||||
$entry->save();
|
||||
}
|
||||
unset($set, $entry, $name);
|
||||
|
||||
// encrypt transaction journal description
|
||||
$set = TransactionJournal::where('encrypted', 0)->take(5)->get();
|
||||
/** @var TransactionJournal $entry */
|
||||
foreach ($set as $entry) {
|
||||
$count++;
|
||||
$description = $entry->description;
|
||||
$entry->description = $description;
|
||||
$entry->save();
|
||||
}
|
||||
unset($set, $entry, $description);
|
||||
|
||||
// encrypt reminder metadata
|
||||
$set = Reminder::where('encrypted', 0)->take(5)->get();
|
||||
/** @var Reminder $entry */
|
||||
foreach ($set as $entry) {
|
||||
$count++;
|
||||
$metadata = $entry->metadata;
|
||||
$entry->metadata = $metadata;
|
||||
$entry->save();
|
||||
}
|
||||
unset($set, $entry, $metadata);
|
||||
|
||||
//encrypt preference name
|
||||
$set = Preference::whereNull('name_encrypted')->take(5)->get();
|
||||
/** @var Preference $entry */
|
||||
foreach ($set as $entry) {
|
||||
$count++;
|
||||
$name = $entry->name;
|
||||
$entry->name = $name;
|
||||
$entry->save();
|
||||
}
|
||||
unset($set, $entry, $name);
|
||||
|
||||
//encrypt preference data
|
||||
$set = Preference::whereNull('data_encrypted')->take(5)->get();
|
||||
/** @var Preference $entry */
|
||||
foreach ($set as $entry) {
|
||||
$count++;
|
||||
$data = $entry->data;
|
||||
$entry->data = $data;
|
||||
$entry->save();
|
||||
}
|
||||
unset($set, $entry, $data);
|
||||
|
||||
}
|
||||
if ($count == 0 && $run) {
|
||||
Session::flash('warning', 'Please open the .env file and change RUNCLEANUP=true to RUNCLEANUP=false');
|
||||
}
|
||||
|
||||
return $next($request);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,70 +0,0 @@
|
||||
<?php
|
||||
|
||||
namespace FireflyIII\Http\Middleware;
|
||||
|
||||
|
||||
use Closure;
|
||||
use FireflyIII\Models\PiggyBank;
|
||||
use FireflyIII\Models\PiggyBankRepetition;
|
||||
use Illuminate\Contracts\Auth\Guard;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Collection;
|
||||
|
||||
/**
|
||||
* Class PiggyBanks
|
||||
*
|
||||
* @package FireflyIII\Http\Middleware
|
||||
*/
|
||||
class PiggyBanks
|
||||
{
|
||||
/**
|
||||
* The Guard implementation.
|
||||
*
|
||||
* @var Guard
|
||||
*/
|
||||
protected $auth;
|
||||
|
||||
/**
|
||||
* Create a new filter instance.
|
||||
*
|
||||
* @param Guard $auth
|
||||
*
|
||||
*/
|
||||
public function __construct(Guard $auth)
|
||||
{
|
||||
$this->auth = $auth;
|
||||
}
|
||||
|
||||
/**
|
||||
* Handle an incoming request.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param \Closure $next
|
||||
*
|
||||
* @return mixed
|
||||
*/
|
||||
public function handle(Request $request, Closure $next)
|
||||
{
|
||||
if ($this->auth->check() && !$request->isXmlHttpRequest()) {
|
||||
// get piggy banks without a repetition:
|
||||
/** @var Collection $set */
|
||||
$set = $this->auth->user()->piggybanks()
|
||||
->leftJoin('piggy_bank_repetitions', 'piggy_banks.id', '=', 'piggy_bank_repetitions.piggy_bank_id')
|
||||
->whereNull('piggy_bank_repetitions.id')
|
||||
->get(['piggy_banks.id', 'piggy_banks.startdate', 'piggy_banks.targetdate']);
|
||||
|
||||
/** @var PiggyBank $partialPiggy */
|
||||
foreach ($set as $partialPiggy) {
|
||||
$repetition = new PiggyBankRepetition;
|
||||
$repetition->piggyBank()->associate($partialPiggy);
|
||||
$repetition->startdate = $partialPiggy->startdate;
|
||||
$repetition->targetdate = $partialPiggy->targetdate;
|
||||
$repetition->currentamount = 0;
|
||||
$repetition->save();
|
||||
}
|
||||
unset($partialPiggy, $set, $repetition);
|
||||
}
|
||||
|
||||
return $next($request);
|
||||
}
|
||||
}
|
||||
@@ -1,11 +1,4 @@
|
||||
<?php
|
||||
/**
|
||||
* Created by PhpStorm.
|
||||
* User: sander
|
||||
* Date: 27/04/15
|
||||
* Time: 12:50
|
||||
*/
|
||||
|
||||
namespace FireflyIII\Http\Requests;
|
||||
|
||||
use Auth;
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
<?php
|
||||
use Carbon\Carbon;
|
||||
use DaveJamesMiller\Breadcrumbs\Generator;
|
||||
use FireflyIII\Exceptions\FireflyException;
|
||||
use FireflyIII\Models\Account;
|
||||
use FireflyIII\Models\Bill;
|
||||
use FireflyIII\Models\Budget;
|
||||
@@ -71,7 +70,7 @@ Breadcrumbs::register(
|
||||
$breadcrumbs->parent('accounts.show', $account);
|
||||
$what = Config::get('firefly.shortNamesByFullName.' . $account->accountType->type);
|
||||
|
||||
$breadcrumbs->push(trans('breadcrumbs.edit_'.$what.'_account', ['name' => e($account->name)]), route('accounts.edit', $account->id));
|
||||
$breadcrumbs->push(trans('breadcrumbs.edit_' . $what . '_account', ['name' => e($account->name)]), route('accounts.edit', $account->id));
|
||||
}
|
||||
);
|
||||
|
||||
|
||||
@@ -193,13 +193,14 @@ Route::controllers(
|
||||
]
|
||||
);
|
||||
|
||||
Route::get('/routes', ['uses' => 'HomeController@routes', 'as' => 'routes']);
|
||||
|
||||
/**
|
||||
* Home Controller
|
||||
*/
|
||||
Route::group(
|
||||
['middleware' => ['auth', 'range', 'reminders', 'piggybanks']], function () {
|
||||
Route::get('/', ['uses' => 'HomeController@index', 'as' => 'index']);
|
||||
['middleware' => ['auth', 'range', 'reminders']], function () {
|
||||
Route::get('/', ['uses' => 'HomeController@index', 'as' => 'index', 'middleware' => 'cleanup']);
|
||||
Route::get('/home', ['uses' => 'HomeController@index', 'as' => 'home']);
|
||||
Route::post('/daterange', ['uses' => 'HomeController@dateRange', 'as' => 'daterange']);
|
||||
Route::get('/flush', ['uses' => 'HomeController@flush', 'as' => 'flush']);
|
||||
@@ -370,7 +371,6 @@ Route::group(
|
||||
* Report Controller
|
||||
*/
|
||||
Route::get('/reports', ['uses' => 'ReportController@index', 'as' => 'reports.index']);
|
||||
//Route::get('/reports/{year}', ['uses' => 'ReportController@year', 'as' => 'reports.year'])->where(['year' => '[0-9]{4}']);
|
||||
Route::get('/reports/{year}/{shared?}', ['uses' => 'ReportController@year', 'as' => 'reports.year'])->where(['year' => '[0-9]{4}', 'shared' => 'shared']);
|
||||
Route::get('/reports/{year}/{month}/{shared?}', ['uses' => 'ReportController@month', 'as' => 'reports.month'])->where(
|
||||
['year' => '[0-9]{4}', 'month' => '[0-9]{1,2}', 'shared' => 'shared']
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
<?php namespace FireflyIII\Models;
|
||||
|
||||
use App;
|
||||
use Crypt;
|
||||
use Illuminate\Database\Eloquent\Builder as EloquentBuilder;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
@@ -18,6 +17,7 @@ class Account extends Model
|
||||
use SoftDeletes, ValidatingTrait;
|
||||
|
||||
protected $fillable = ['user_id', 'account_type_id', 'name', 'active', 'virtual_balance'];
|
||||
protected $hidden = ['virtual_balance_encrypted', 'encrypted'];
|
||||
protected $rules
|
||||
= [
|
||||
'user_id' => 'required|exists:users,id',
|
||||
@@ -50,12 +50,6 @@ class Account extends Model
|
||||
}
|
||||
// create it!
|
||||
$account = Account::create($fields);
|
||||
if (is_null($account->id)) {
|
||||
// could not create account:
|
||||
App::abort(500, 'Could not create new account with data: ' . json_encode($fields) . ' because ' . json_encode($account->getErrors()));
|
||||
|
||||
|
||||
}
|
||||
|
||||
return $account;
|
||||
|
||||
@@ -117,6 +111,8 @@ class Account extends Model
|
||||
*
|
||||
* @param $fieldName
|
||||
*
|
||||
* @codeCoverageIgnore
|
||||
*
|
||||
* @return string|null
|
||||
*/
|
||||
public function getMeta($fieldName)
|
||||
@@ -145,9 +141,7 @@ class Account extends Model
|
||||
return Crypt::decrypt($value);
|
||||
}
|
||||
|
||||
// @codeCoverageIgnoreStart
|
||||
return $value;
|
||||
// @codeCoverageIgnoreEnd
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -203,6 +197,16 @@ class Account extends Model
|
||||
$this->attributes['encrypted'] = true;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param $value
|
||||
*
|
||||
* @codeCoverageIgnore
|
||||
*/
|
||||
public function setVirtualBalanceAttribute($value)
|
||||
{
|
||||
$this->attributes['virtual_balance'] = strval(round($value, 2));
|
||||
}
|
||||
|
||||
/**
|
||||
* @codeCoverageIgnore
|
||||
* @return \Illuminate\Database\Eloquent\Relations\HasMany
|
||||
|
||||
@@ -4,6 +4,7 @@ use Crypt;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
|
||||
/**
|
||||
* @codeCoverageIgnore
|
||||
* Class Bill
|
||||
*
|
||||
* @package FireflyIII\Models
|
||||
@@ -14,6 +15,8 @@ class Bill extends Model
|
||||
protected $fillable
|
||||
= ['name', 'match', 'amount_min', 'match_encrypted', 'name_encrypted', 'user_id', 'amount_max', 'date', 'repeat_freq', 'skip', 'automatch', 'active',];
|
||||
|
||||
protected $hidden = ['amount_min_encrypted', 'amount_max_encrypted', 'name_encrypted', 'match_encrypted'];
|
||||
|
||||
/**
|
||||
* @return array
|
||||
*/
|
||||
@@ -34,9 +37,7 @@ class Bill extends Model
|
||||
return Crypt::decrypt($value);
|
||||
}
|
||||
|
||||
// @codeCoverageIgnoreStart
|
||||
return $value;
|
||||
// @codeCoverageIgnoreEnd
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -51,9 +52,23 @@ class Bill extends Model
|
||||
return Crypt::decrypt($value);
|
||||
}
|
||||
|
||||
// @codeCoverageIgnoreStart
|
||||
return $value;
|
||||
// @codeCoverageIgnoreEnd
|
||||
}
|
||||
|
||||
/**
|
||||
* @param $value
|
||||
*/
|
||||
public function setAmountMaxAttribute($value)
|
||||
{
|
||||
$this->attributes['amount_max'] = strval(round($value, 2));
|
||||
}
|
||||
|
||||
/**
|
||||
* @param $value
|
||||
*/
|
||||
public function setAmountMinAttribute($value)
|
||||
{
|
||||
$this->attributes['amount_min'] = strval(round($value, 2));
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -15,7 +15,8 @@ class Budget extends Model
|
||||
|
||||
use SoftDeletes;
|
||||
|
||||
protected $fillable = ['user_id', 'name'];
|
||||
protected $fillable = ['user_id', 'name', 'active'];
|
||||
protected $hidden = ['encrypted'];
|
||||
|
||||
/**
|
||||
*
|
||||
@@ -46,9 +47,7 @@ class Budget extends Model
|
||||
return Crypt::decrypt($value);
|
||||
}
|
||||
|
||||
// @codeCoverageIgnoreStart
|
||||
return $value;
|
||||
// @codeCoverageIgnoreEnd
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -11,6 +11,8 @@ use Illuminate\Database\Eloquent\Model;
|
||||
class BudgetLimit extends Model
|
||||
{
|
||||
|
||||
protected $hidden = ['amount_encrypted'];
|
||||
|
||||
/**
|
||||
* @return \Illuminate\Database\Eloquent\Relations\BelongsTo
|
||||
*/
|
||||
@@ -35,4 +37,12 @@ class BudgetLimit extends Model
|
||||
return $this->hasMany('FireflyIII\Models\LimitRepetition');
|
||||
}
|
||||
|
||||
/**
|
||||
* @param $value
|
||||
*/
|
||||
public function setAmountAttribute($value)
|
||||
{
|
||||
$this->attributes['amount'] = strval(round($value, 2));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
<?php namespace FireflyIII\Models;
|
||||
|
||||
use App;
|
||||
use Crypt;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\SoftDeletes;
|
||||
@@ -16,24 +15,7 @@ class Category extends Model
|
||||
use SoftDeletes;
|
||||
|
||||
protected $fillable = ['user_id', 'name'];
|
||||
|
||||
/**
|
||||
* @codeCoverageIgnore
|
||||
* @return array
|
||||
*/
|
||||
public function getDates()
|
||||
{
|
||||
return ['created_at', 'updated_at', 'deleted_at'];
|
||||
}
|
||||
|
||||
/**
|
||||
* @codeCoverageIgnore
|
||||
* @return \Illuminate\Database\Eloquent\Relations\BelongsToMany
|
||||
*/
|
||||
public function transactionjournals()
|
||||
{
|
||||
return $this->belongsToMany('FireflyIII\Models\TransactionJournal', 'category_transaction_journal', 'category_id');
|
||||
}
|
||||
protected $hidden = ['encrypted'];
|
||||
|
||||
/**
|
||||
* @param array $fields
|
||||
@@ -59,11 +41,6 @@ class Category extends Model
|
||||
}
|
||||
// create it!
|
||||
$category = Category::create($fields);
|
||||
if (is_null($category->id)) {
|
||||
// could not create account:
|
||||
App::abort(500, 'Could not create new category with data: ' . json_encode($fields));
|
||||
|
||||
}
|
||||
|
||||
return $category;
|
||||
|
||||
@@ -71,22 +48,11 @@ class Category extends Model
|
||||
|
||||
/**
|
||||
* @codeCoverageIgnore
|
||||
* @return \Illuminate\Database\Eloquent\Relations\BelongsTo
|
||||
* @return array
|
||||
*/
|
||||
public function user()
|
||||
public function getDates()
|
||||
{
|
||||
return $this->belongsTo('FireflyIII\User');
|
||||
}
|
||||
|
||||
/**
|
||||
* @codeCoverageIgnore
|
||||
*
|
||||
* @param $value
|
||||
*/
|
||||
public function setNameAttribute($value)
|
||||
{
|
||||
$this->attributes['name'] = Crypt::encrypt($value);
|
||||
$this->attributes['encrypted'] = true;
|
||||
return ['created_at', 'updated_at', 'deleted_at'];
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -106,4 +72,33 @@ class Category extends Model
|
||||
return $value;
|
||||
}
|
||||
|
||||
/**
|
||||
* @codeCoverageIgnore
|
||||
*
|
||||
* @param $value
|
||||
*/
|
||||
public function setNameAttribute($value)
|
||||
{
|
||||
$this->attributes['name'] = Crypt::encrypt($value);
|
||||
$this->attributes['encrypted'] = true;
|
||||
}
|
||||
|
||||
/**
|
||||
* @codeCoverageIgnore
|
||||
* @return \Illuminate\Database\Eloquent\Relations\BelongsToMany
|
||||
*/
|
||||
public function transactionjournals()
|
||||
{
|
||||
return $this->belongsToMany('FireflyIII\Models\TransactionJournal', 'category_transaction_journal', 'category_id');
|
||||
}
|
||||
|
||||
/**
|
||||
* @codeCoverageIgnore
|
||||
* @return \Illuminate\Database\Eloquent\Relations\BelongsTo
|
||||
*/
|
||||
public function user()
|
||||
{
|
||||
return $this->belongsTo('FireflyIII\User');
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -1,19 +1,20 @@
|
||||
<?php namespace FireflyIII\Models;
|
||||
|
||||
use Auth;
|
||||
use DB;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
|
||||
/**
|
||||
* Class LimitRepetition
|
||||
*
|
||||
* @codeCoverageIgnore
|
||||
*
|
||||
* @package FireflyIII\Models
|
||||
*/
|
||||
class LimitRepetition extends Model
|
||||
{
|
||||
|
||||
protected $hidden = ['amount_encrypted'];
|
||||
|
||||
/**
|
||||
* @codeCoverageIgnore
|
||||
* @return \Illuminate\Database\Eloquent\Relations\BelongsTo
|
||||
*/
|
||||
public function budgetLimit()
|
||||
@@ -22,7 +23,6 @@ class LimitRepetition extends Model
|
||||
}
|
||||
|
||||
/**
|
||||
* @codeCoverageIgnore
|
||||
* @return array
|
||||
*/
|
||||
public function getDates()
|
||||
@@ -31,24 +31,11 @@ class LimitRepetition extends Model
|
||||
}
|
||||
|
||||
/**
|
||||
* @return float
|
||||
* @param $value
|
||||
*/
|
||||
public function spentInRepetition()
|
||||
public function setAmountAttribute($value)
|
||||
{
|
||||
$sum = DB::table('transactions')
|
||||
->leftJoin('transaction_journals', 'transaction_journals.id', '=', 'transactions.transaction_journal_id')
|
||||
->leftJoin('budget_transaction_journal', 'budget_transaction_journal.transaction_journal_id', '=', 'transaction_journals.id')
|
||||
->leftJoin('budget_limits', 'budget_limits.budget_id', '=', 'budget_transaction_journal.budget_id')
|
||||
->leftJoin('limit_repetitions', 'limit_repetitions.budget_limit_id', '=', 'budget_limits.id')
|
||||
->where('transaction_journals.date', '>=', $this->startdate->format('Y-m-d'))
|
||||
->where('transaction_journals.date', '<=', $this->enddate->format('Y-m-d'))
|
||||
->where('transaction_journals.user_id', Auth::user()->id)
|
||||
->whereNull('transactions.deleted_at')
|
||||
->where('transactions.amount', '>', 0)
|
||||
->where('limit_repetitions.id', '=', $this->id)
|
||||
->sum('transactions.amount');
|
||||
|
||||
return floatval($sum);
|
||||
$this->attributes['amount'] = strval(round($value, 2));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -7,6 +7,8 @@ use Illuminate\Database\Eloquent\SoftDeletes;
|
||||
/**
|
||||
* Class PiggyBank
|
||||
*
|
||||
* @codeCoverageIgnore
|
||||
*
|
||||
* @package FireflyIII\Models
|
||||
*/
|
||||
class PiggyBank extends Model
|
||||
@@ -14,10 +16,10 @@ class PiggyBank extends Model
|
||||
use SoftDeletes;
|
||||
|
||||
protected $fillable
|
||||
= ['name', 'account_id', 'order', 'reminder_skip', 'targetamount', 'startdate', 'targetdate', 'reminder', 'remind_me'];
|
||||
= ['name', 'account_id', 'order', 'reminder_skip', 'targetamount', 'startdate', 'targetdate', 'reminder', 'remind_me'];
|
||||
protected $hidden = ['targetamount_encrypted', 'encrypted'];
|
||||
|
||||
/**
|
||||
* @codeCoverageIgnore
|
||||
* @return \Illuminate\Database\Eloquent\Relations\BelongsTo
|
||||
*/
|
||||
public function account()
|
||||
@@ -45,7 +47,6 @@ class PiggyBank extends Model
|
||||
}
|
||||
|
||||
/**
|
||||
* @codeCoverageIgnore
|
||||
* @return \Illuminate\Database\Eloquent\Relations\HasMany
|
||||
*/
|
||||
public function piggyBankRepetitions()
|
||||
@@ -54,7 +55,6 @@ class PiggyBank extends Model
|
||||
}
|
||||
|
||||
/**
|
||||
* @codeCoverageIgnore
|
||||
* @return array
|
||||
*/
|
||||
public function getDates()
|
||||
@@ -63,48 +63,6 @@ class PiggyBank extends Model
|
||||
}
|
||||
|
||||
/**
|
||||
* @codeCoverageIgnore
|
||||
*
|
||||
* @param $value
|
||||
*
|
||||
* @return int
|
||||
*/
|
||||
public function getRemindMeAttribute($value)
|
||||
{
|
||||
return intval($value) == 1;
|
||||
}
|
||||
|
||||
/**
|
||||
* @codeCoverageIgnore
|
||||
* @return \Illuminate\Database\Eloquent\Relations\HasMany
|
||||
*/
|
||||
public function piggyBankEvents()
|
||||
{
|
||||
return $this->hasMany('FireflyIII\Models\PiggyBankEvent');
|
||||
}
|
||||
|
||||
/**
|
||||
* @codeCoverageIgnore
|
||||
* @return \Illuminate\Database\Eloquent\Relations\MorphMany
|
||||
*/
|
||||
public function reminders()
|
||||
{
|
||||
return $this->morphMany('FireflyIII\Models\Reminder', 'remindersable');
|
||||
}
|
||||
|
||||
/**
|
||||
* @codeCoverageIgnore
|
||||
*
|
||||
* @param $value
|
||||
*/
|
||||
public function setNameAttribute($value)
|
||||
{
|
||||
$this->attributes['name'] = Crypt::encrypt($value);
|
||||
$this->attributes['encrypted'] = true;
|
||||
}
|
||||
|
||||
/**
|
||||
* @codeCoverageIgnore
|
||||
*
|
||||
* @param $value
|
||||
*
|
||||
@@ -117,8 +75,51 @@ class PiggyBank extends Model
|
||||
return Crypt::decrypt($value);
|
||||
}
|
||||
|
||||
// @codeCoverageIgnoreStart
|
||||
return $value;
|
||||
// @codeCoverageIgnoreEnd
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param $value
|
||||
*
|
||||
* @return int
|
||||
*/
|
||||
public function getRemindMeAttribute($value)
|
||||
{
|
||||
return intval($value) == 1;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return \Illuminate\Database\Eloquent\Relations\HasMany
|
||||
*/
|
||||
public function piggyBankEvents()
|
||||
{
|
||||
return $this->hasMany('FireflyIII\Models\PiggyBankEvent');
|
||||
}
|
||||
|
||||
/**
|
||||
* @return \Illuminate\Database\Eloquent\Relations\MorphMany
|
||||
*/
|
||||
public function reminders()
|
||||
{
|
||||
return $this->morphMany('FireflyIII\Models\Reminder', 'remindersable');
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param $value
|
||||
*/
|
||||
public function setNameAttribute($value)
|
||||
{
|
||||
$this->attributes['name'] = Crypt::encrypt($value);
|
||||
$this->attributes['encrypted'] = true;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param $value
|
||||
*/
|
||||
public function setTargetamountAttribute($value)
|
||||
{
|
||||
$this->attributes['targetamount'] = strval(round($value, 2));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,12 +6,14 @@ use Illuminate\Database\Eloquent\Model;
|
||||
* Class PiggyBankEvent
|
||||
*
|
||||
* @codeCoverageIgnore
|
||||
*
|
||||
* @package FireflyIII\Models
|
||||
*/
|
||||
class PiggyBankEvent extends Model
|
||||
{
|
||||
|
||||
protected $fillable = ['piggy_bank_id', 'transaction_journal_id', 'date', 'amount'];
|
||||
protected $hidden = ['amount_encrypted'];
|
||||
|
||||
/**
|
||||
* @return array
|
||||
@@ -29,6 +31,14 @@ class PiggyBankEvent extends Model
|
||||
return $this->belongsTo('FireflyIII\Models\PiggyBank');
|
||||
}
|
||||
|
||||
/**
|
||||
* @param $value
|
||||
*/
|
||||
public function setAmountAttribute($value)
|
||||
{
|
||||
$this->attributes['amount'] = strval(round($value, 2));
|
||||
}
|
||||
|
||||
/**
|
||||
* @return \Illuminate\Database\Eloquent\Relations\BelongsTo
|
||||
*/
|
||||
|
||||
@@ -14,6 +14,7 @@ class PiggyBankRepetition extends Model
|
||||
{
|
||||
|
||||
protected $fillable = ['piggy_bank_id', 'startdate', 'targetdate', 'currentamount'];
|
||||
protected $hidden = ['currentamount_encrypted'];
|
||||
|
||||
/**
|
||||
* @return array
|
||||
@@ -66,4 +67,12 @@ class PiggyBankRepetition extends Model
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param $value
|
||||
*/
|
||||
public function setCurrentamountAttribute($value)
|
||||
{
|
||||
$this->attributes['currentamount'] = strval(round($value, 2));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
<?php namespace FireflyIII\Models;
|
||||
|
||||
use Crypt;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
|
||||
/**
|
||||
@@ -12,6 +13,7 @@ class Preference extends Model
|
||||
{
|
||||
|
||||
protected $fillable = ['user_id', 'data', 'name'];
|
||||
protected $hidden = ['data_encrypted', 'name_encrypted'];
|
||||
|
||||
/**
|
||||
* @param $value
|
||||
@@ -20,7 +22,12 @@ class Preference extends Model
|
||||
*/
|
||||
public function getDataAttribute($value)
|
||||
{
|
||||
return json_decode($value);
|
||||
if (is_null($this->data_encrypted)) {
|
||||
return json_decode($value);
|
||||
}
|
||||
$data = Crypt::decrypt($this->data_encrypted);
|
||||
|
||||
return json_decode($data);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -31,12 +38,37 @@ class Preference extends Model
|
||||
return ['created_at', 'updated_at'];
|
||||
}
|
||||
|
||||
/**
|
||||
* @param $value
|
||||
*
|
||||
* @return float|int
|
||||
*/
|
||||
public function getNameAttribute($value)
|
||||
{
|
||||
if (is_null($this->name_encrypted)) {
|
||||
return $value;
|
||||
}
|
||||
$value = Crypt::decrypt($this->name_encrypted);
|
||||
|
||||
return $value;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param $value
|
||||
*/
|
||||
public function setDataAttribute($value)
|
||||
{
|
||||
$this->attributes['data'] = json_encode($value);
|
||||
$this->attributes['data'] = '';
|
||||
$this->attributes['data_encrypted'] = Crypt::encrypt(json_encode($value));
|
||||
}
|
||||
|
||||
/**
|
||||
* @param $value
|
||||
*/
|
||||
public function setNameAttribute($value)
|
||||
{
|
||||
$this->attributes['name_encrypted'] = Crypt::encrypt($value);
|
||||
$this->attributes['name'] = $value;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -8,6 +8,8 @@ use Illuminate\Database\Eloquent\Model;
|
||||
/**
|
||||
* Class Reminder
|
||||
*
|
||||
* @codeCoverageIgnore
|
||||
*
|
||||
* @package FireflyIII\Models
|
||||
*/
|
||||
class Reminder extends Model
|
||||
@@ -15,9 +17,9 @@ class Reminder extends Model
|
||||
|
||||
|
||||
protected $fillable = ['user_id', 'startdate', 'metadata', 'enddate', 'active', 'notnow', 'remindersable_id', 'remindersable_type',];
|
||||
protected $hidden = ['encrypted'];
|
||||
|
||||
/**
|
||||
* @codeCoverageIgnore
|
||||
*
|
||||
* @param $value
|
||||
*
|
||||
@@ -29,7 +31,6 @@ class Reminder extends Model
|
||||
}
|
||||
|
||||
/**
|
||||
* @codeCoverageIgnore
|
||||
* @return array
|
||||
*/
|
||||
public function getDates()
|
||||
@@ -38,7 +39,6 @@ class Reminder extends Model
|
||||
}
|
||||
|
||||
/**
|
||||
* @codeCoverageIgnore
|
||||
*
|
||||
* @param $value
|
||||
*
|
||||
@@ -54,7 +54,6 @@ class Reminder extends Model
|
||||
}
|
||||
|
||||
/**
|
||||
* @codeCoverageIgnore
|
||||
*
|
||||
* @param $value
|
||||
*
|
||||
@@ -66,7 +65,6 @@ class Reminder extends Model
|
||||
}
|
||||
|
||||
/**
|
||||
* @codeCoverageIgnore
|
||||
* @return \Illuminate\Database\Eloquent\Relations\MorphTo
|
||||
*/
|
||||
public function remindersable()
|
||||
@@ -75,7 +73,6 @@ class Reminder extends Model
|
||||
}
|
||||
|
||||
/**
|
||||
* @codeCoverageIgnore
|
||||
*
|
||||
* @param EloquentBuilder $query
|
||||
* @param Carbon $start
|
||||
@@ -89,7 +86,6 @@ class Reminder extends Model
|
||||
}
|
||||
|
||||
/**
|
||||
* @codeCoverageIgnore
|
||||
*
|
||||
* @param EloquentBuilder $query
|
||||
*
|
||||
@@ -104,7 +100,6 @@ class Reminder extends Model
|
||||
}
|
||||
|
||||
/**
|
||||
* @codeCoverageIgnore
|
||||
*
|
||||
* @param $value
|
||||
*/
|
||||
@@ -115,7 +110,6 @@ class Reminder extends Model
|
||||
}
|
||||
|
||||
/**
|
||||
* @codeCoverageIgnore
|
||||
* @return \Illuminate\Database\Eloquent\Relations\BelongsTo
|
||||
*/
|
||||
public function user()
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
|
||||
namespace FireflyIII\Models;
|
||||
|
||||
use App;
|
||||
use Crypt;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Watson\Validating\ValidatingTrait;
|
||||
@@ -57,12 +56,6 @@ class Tag extends Model
|
||||
$fields['tagMode'] = 'nothing';
|
||||
$fields['description'] = isset($fields['description']) && !is_null($fields['description']) ? $fields['description'] : '';
|
||||
$tag = Tag::create($fields);
|
||||
if (is_null($tag->id)) {
|
||||
// could not create account:
|
||||
App::abort(500, 'Could not create new tag with data: ' . json_encode($fields) . ' because ' . json_encode($tag->getErrors()));
|
||||
|
||||
|
||||
}
|
||||
|
||||
return $tag;
|
||||
|
||||
|
||||
@@ -16,6 +16,7 @@ class Transaction extends Model
|
||||
{
|
||||
|
||||
protected $fillable = ['account_id', 'transaction_journal_id', 'description', 'amount'];
|
||||
protected $hidden = ['encrypted'];
|
||||
protected $rules
|
||||
= [
|
||||
'account_id' => 'required|exists:accounts,id',
|
||||
@@ -33,6 +34,24 @@ class Transaction extends Model
|
||||
return $this->belongsTo('FireflyIII\Models\Account');
|
||||
}
|
||||
|
||||
/**
|
||||
* @param $value
|
||||
*
|
||||
* @return float|int
|
||||
*/
|
||||
public function getAmountAttribute($value)
|
||||
{
|
||||
return $value;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return array
|
||||
*/
|
||||
public function getDates()
|
||||
{
|
||||
return ['created_at', 'updated_at', 'deleted_at'];
|
||||
}
|
||||
|
||||
/**
|
||||
* @param EloquentBuilder $query
|
||||
* @param Carbon $date
|
||||
@@ -56,11 +75,11 @@ class Transaction extends Model
|
||||
}
|
||||
|
||||
/**
|
||||
* @return array
|
||||
* @param $value
|
||||
*/
|
||||
public function getDates()
|
||||
public function setAmountAttribute($value)
|
||||
{
|
||||
return ['created_at', 'updated_at', 'deleted_at'];
|
||||
$this->attributes['amount'] = strval(round($value, 2));
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -6,7 +6,6 @@ use Illuminate\Database\Eloquent\Builder as EloquentBuilder;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\Relations\HasMany;
|
||||
use Illuminate\Database\Eloquent\SoftDeletes;
|
||||
use Illuminate\Database\Query\JoinClause;
|
||||
use Watson\Validating\ValidatingTrait;
|
||||
|
||||
/**
|
||||
@@ -19,9 +18,9 @@ class TransactionJournal extends Model
|
||||
use SoftDeletes, ValidatingTrait;
|
||||
|
||||
protected $fillable = ['user_id', 'transaction_type_id', 'bill_id', 'transaction_currency_id', 'description', 'completed', 'date', 'encrypted'];
|
||||
|
||||
protected $hidden = ['encrypted'];
|
||||
protected $rules
|
||||
= [
|
||||
= [
|
||||
'user_id' => 'required|exists:users,id',
|
||||
'transaction_type_id' => 'required|exists:transaction_types,id',
|
||||
'bill_id' => 'exists:bills,id',
|
||||
@@ -60,15 +59,15 @@ class TransactionJournal extends Model
|
||||
}
|
||||
|
||||
/**
|
||||
* @return float
|
||||
* @return string
|
||||
*/
|
||||
public function getActualAmountAttribute()
|
||||
{
|
||||
$amount = 0;
|
||||
$amount = '0';
|
||||
/** @var Transaction $t */
|
||||
foreach ($this->transactions as $t) {
|
||||
if ($t->amount > 0) {
|
||||
$amount = floatval($t->amount);
|
||||
$amount = $t->amount;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -80,11 +79,12 @@ class TransactionJournal extends Model
|
||||
*/
|
||||
public function getAmountAttribute()
|
||||
{
|
||||
$amount = 0;
|
||||
$amount = '0';
|
||||
bcscale(2);
|
||||
/** @var Transaction $t */
|
||||
foreach ($this->transactions as $t) {
|
||||
if ($t->amount > 0) {
|
||||
$amount = floatval($t->amount);
|
||||
$amount = $t->amount;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -94,16 +94,16 @@ class TransactionJournal extends Model
|
||||
if ($this->tags->count() == 0) {
|
||||
return $amount;
|
||||
}
|
||||
|
||||
// if journal is part of advancePayment AND journal is a withdrawal,
|
||||
// then journal is being repaid by other journals, so the actual amount will lower:
|
||||
/** @var Tag $advancePayment */
|
||||
$advancePayment = $this->tags()->where('tagMode', 'advancePayment')->first();
|
||||
if ($advancePayment && $this->transactionType->type == 'Withdrawal') {
|
||||
|
||||
// loop other deposits, remove from our amount.
|
||||
$others = $advancePayment->transactionJournals()->transactionTypes(['Deposit'])->get();
|
||||
foreach ($others as $other) {
|
||||
$amount -= $other->actualAmount;
|
||||
$amount = bcsub($amount, $other->actualAmount);
|
||||
}
|
||||
|
||||
return $amount;
|
||||
@@ -112,25 +112,24 @@ class TransactionJournal extends Model
|
||||
// if this journal is part of an advancePayment AND the journal is a deposit,
|
||||
// then the journal amount is correcting a withdrawal, and the amount is zero:
|
||||
if ($advancePayment && $this->transactionType->type == 'Deposit') {
|
||||
return 0;
|
||||
return '0';
|
||||
}
|
||||
|
||||
|
||||
// is balancing act?
|
||||
$balancingAct = $this->tags()->where('tagMode', 'balancingAct')->first();
|
||||
if ($balancingAct) {
|
||||
// this is the transfer
|
||||
|
||||
if ($balancingAct) {
|
||||
// this is the expense:
|
||||
if ($this->transactionType->type == 'Withdrawal') {
|
||||
$transfer = $balancingAct->transactionJournals()->transactionTypes(['Transfer'])->first();
|
||||
if ($transfer) {
|
||||
$amount -= $transfer->actualAmount;
|
||||
$amount = bcsub($amount, $transfer->actualAmount);
|
||||
|
||||
return $amount;
|
||||
}
|
||||
}
|
||||
}
|
||||
} // @codeCoverageIgnore
|
||||
} // @codeCoverageIgnore
|
||||
|
||||
return $amount;
|
||||
}
|
||||
@@ -181,16 +180,16 @@ class TransactionJournal extends Model
|
||||
*/
|
||||
public function getCorrectedActualAmountAttribute()
|
||||
{
|
||||
$amount = 0;
|
||||
$amount = '0';
|
||||
$type = $this->transactionType->type;
|
||||
/** @var Transaction $t */
|
||||
foreach ($this->transactions as $t) {
|
||||
if ($t->amount > 0 && $type != 'Withdrawal') {
|
||||
$amount = floatval($t->amount);
|
||||
$amount = $t->amount;
|
||||
break;
|
||||
}
|
||||
if ($t->amount < 0 && $type == 'Withdrawal') {
|
||||
$amount = floatval($t->amount);
|
||||
$amount = $t->amount;
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -223,6 +222,21 @@ class TransactionJournal extends Model
|
||||
return $value;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return Account
|
||||
*/
|
||||
public function getDestinationAccountAttribute()
|
||||
{
|
||||
/** @var Transaction $transaction */
|
||||
foreach ($this->transactions()->get() as $transaction) {
|
||||
if (floatval($transaction->amount) > 0) {
|
||||
return $transaction->account;
|
||||
}
|
||||
}
|
||||
|
||||
return $this->transactions()->first()->account;
|
||||
}
|
||||
|
||||
/**
|
||||
* @codeCoverageIgnore
|
||||
* @return \Illuminate\Database\Eloquent\Relations\HasMany
|
||||
@@ -273,24 +287,6 @@ class TransactionJournal extends Model
|
||||
return $query->where('transaction_journals.date', '<=', $date->format('Y-m-d 00:00:00'));
|
||||
}
|
||||
|
||||
/**
|
||||
* @codeCoverageIgnore
|
||||
*
|
||||
* @param EloquentBuilder $query
|
||||
* @param $amount
|
||||
*/
|
||||
public function scopeLessThan(EloquentBuilder $query, $amount)
|
||||
{
|
||||
if (is_null($this->joinedTransactions)) {
|
||||
$query->leftJoin(
|
||||
'transactions', 'transactions.transaction_journal_id', '=', 'transaction_journals.id'
|
||||
);
|
||||
$this->joinedTransactions = true;
|
||||
}
|
||||
|
||||
$query->where('transactions.amount', '<=', $amount);
|
||||
}
|
||||
|
||||
/**
|
||||
* @codeCoverageIgnore
|
||||
*
|
||||
@@ -304,24 +300,6 @@ class TransactionJournal extends Model
|
||||
return $query->where('date', '=', $date->format('Y-m-d'));
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the account to which the money was moved.
|
||||
*
|
||||
* @codeCoverageIgnore
|
||||
*
|
||||
* @param EloquentBuilder $query
|
||||
* @param Account $account
|
||||
*/
|
||||
public function scopeToAccountIs(EloquentBuilder $query, Account $account)
|
||||
{
|
||||
$query->leftJoin(
|
||||
'transactions', function (JoinClause $join) {
|
||||
$join->on('transactions.transaction_journal_id', '=', 'transaction_journals.id')->where('transactions.amount', '>', 0);
|
||||
}
|
||||
);
|
||||
$query->where('transactions.account_id', $account->id);
|
||||
}
|
||||
|
||||
/**
|
||||
* @codeCoverageIgnore
|
||||
*
|
||||
|
||||
@@ -287,7 +287,7 @@ class AccountRepository implements AccountRepositoryInterface
|
||||
*/
|
||||
public function getTransfersInRange(Account $account, Carbon $start, Carbon $end)
|
||||
{
|
||||
return TransactionJournal::whereIn(
|
||||
$set = TransactionJournal::whereIn(
|
||||
'id', function (Builder $q) use ($account, $start, $end) {
|
||||
$q->select('transaction_journals.id')
|
||||
->from('transactions')
|
||||
@@ -297,11 +297,19 @@ class AccountRepository implements AccountRepositoryInterface
|
||||
->where('transaction_journals.user_id', Auth::user()->id)
|
||||
->where('transaction_journals.date', '>=', $start->format('Y-m-d'))
|
||||
->where('transaction_journals.date', '<=', $end->format('Y-m-d'))
|
||||
->where('transactions.amount', '>', 0)
|
||||
->where('transaction_types.type', 'Transfer');
|
||||
|
||||
}
|
||||
)->get();
|
||||
$filtered = $set->filter(
|
||||
function (TransactionJournal $journal) use ($account) {
|
||||
if ($journal->destination_account->id == $account->id) {
|
||||
return $journal;
|
||||
}
|
||||
} // @codeCoverageIgnore
|
||||
);
|
||||
|
||||
return $filtered;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -10,7 +10,6 @@ use FireflyIII\Models\AccountType;
|
||||
use FireflyIII\Models\Bill;
|
||||
use FireflyIII\Models\Transaction;
|
||||
use FireflyIII\Models\TransactionJournal;
|
||||
use Illuminate\Database\Query\JoinClause;
|
||||
use Illuminate\Support\Collection;
|
||||
use Log;
|
||||
use Navigation;
|
||||
@@ -108,16 +107,10 @@ class BillRepository implements BillRepositoryInterface
|
||||
public function getJournals(Bill $bill)
|
||||
{
|
||||
return $bill->transactionjournals()->withRelevantData()
|
||||
->leftJoin(
|
||||
'transactions', function (JoinClause $join) {
|
||||
$join->on('transactions.transaction_journal_id', '=', 'transaction_journals.id')
|
||||
->where('transactions.amount', '>', 0);
|
||||
}
|
||||
)
|
||||
->orderBy('transaction_journals.date', 'DESC')
|
||||
->orderBy('transaction_journals.order', 'ASC')
|
||||
->orderBy('transaction_journals.id', 'DESC')
|
||||
->get(['transaction_journals.*', 'transactions.amount']);
|
||||
->get(['transaction_journals.*']);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -250,9 +250,8 @@ class BudgetRepository implements BudgetRepositoryInterface
|
||||
)
|
||||
->after($start)
|
||||
->before($end)
|
||||
->lessThan(0)
|
||||
->transactionTypes(['Withdrawal'])
|
||||
->sum('transactions.amount');
|
||||
->get(['transaction_journals.*'])->sum('amount');
|
||||
|
||||
return floatval($noBudgetSet) * -1;
|
||||
}
|
||||
@@ -269,13 +268,13 @@ class BudgetRepository implements BudgetRepositoryInterface
|
||||
{
|
||||
if ($shared === true) {
|
||||
// get everything:
|
||||
$sum = floatval($budget->transactionjournals()->before($end)->after($start)->lessThan(0)->get(['transaction_journals.*'])->sum('amount'));
|
||||
$sum = floatval($budget->transactionjournals()->before($end)->after($start)->get(['transaction_journals.*'])->sum('amount'));
|
||||
} else {
|
||||
// get all journals in this month where the asset account is NOT shared.
|
||||
$sum = $budget->transactionjournals()
|
||||
->before($end)
|
||||
->after($start)
|
||||
->lessThan(0)
|
||||
->leftJoin('transactions', 'transactions.transaction_journal_id', '=', 'transaction_journals.id')
|
||||
->leftJoin('accounts', 'accounts.id', '=', 'transactions.account_id')
|
||||
->leftJoin(
|
||||
'account_meta', function (JoinClause $join) {
|
||||
@@ -310,7 +309,6 @@ class BudgetRepository implements BudgetRepositoryInterface
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* @param Budget $budget
|
||||
* @param array $data
|
||||
|
||||
@@ -5,7 +5,6 @@ namespace FireflyIII\Repositories\Category;
|
||||
use Auth;
|
||||
use Carbon\Carbon;
|
||||
use Crypt;
|
||||
use DB;
|
||||
use FireflyIII\Models\Category;
|
||||
use FireflyIII\Models\TransactionJournal;
|
||||
use Illuminate\Database\Query\JoinClause;
|
||||
@@ -86,7 +85,7 @@ class CategoryRepository implements CategoryRepositoryInterface
|
||||
$result[$categoryId]['sum'] += floatval($entry->amount);
|
||||
} else {
|
||||
$isEncrypted = intval($entry->category_encrypted) == 1 ? true : false;
|
||||
$name = strlen($entry->name) == 0 ? trans('firefly.noCategory') : $entry->name;
|
||||
$name = strlen($entry->name) == 0 ? trans('firefly.no_category') : $entry->name;
|
||||
$name = $isEncrypted ? Crypt::decrypt($name) : $name;
|
||||
$result[$categoryId] = [
|
||||
'name' => $name,
|
||||
@@ -202,7 +201,7 @@ class CategoryRepository implements CategoryRepositoryInterface
|
||||
->before($end)
|
||||
->after($start)
|
||||
->transactionTypes(['Withdrawal'])
|
||||
->lessThan(0)
|
||||
->leftJoin('transactions', 'transactions.transaction_journal_id', '=', 'transaction_journals.id')
|
||||
->leftJoin('accounts', 'accounts.id', '=', 'transactions.account_id')
|
||||
->leftJoin(
|
||||
'account_meta', function (JoinClause $join) {
|
||||
|
||||
@@ -76,15 +76,20 @@ class JournalRepository implements JournalRepositoryInterface
|
||||
*/
|
||||
public function getAmountBefore(TransactionJournal $journal, Transaction $transaction)
|
||||
{
|
||||
return floatval(
|
||||
$transaction->account->transactions()->leftJoin(
|
||||
'transaction_journals', 'transaction_journals.id', '=', 'transactions.transaction_journal_id'
|
||||
)
|
||||
->where('transaction_journals.date', '<=', $journal->date->format('Y-m-d'))
|
||||
->where('transaction_journals.order', '>=', $journal->order)
|
||||
->where('transaction_journals.id', '!=', $journal->id)
|
||||
->sum('transactions.amount')
|
||||
);
|
||||
$set = $transaction->account->transactions()->leftJoin(
|
||||
'transaction_journals', 'transaction_journals.id', '=', 'transactions.transaction_journal_id'
|
||||
)
|
||||
->where('transaction_journals.date', '<=', $journal->date->format('Y-m-d'))
|
||||
->where('transaction_journals.order', '>=', $journal->order)
|
||||
->where('transaction_journals.id', '!=', $journal->id)
|
||||
->get(['transactions.*']);
|
||||
$sum = 0;
|
||||
foreach ($set as $entry) {
|
||||
$sum += $entry->amount;
|
||||
}
|
||||
|
||||
return $sum;
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -7,7 +7,6 @@ use Carbon\Carbon;
|
||||
use DB;
|
||||
use FireflyIII\Models\PiggyBank;
|
||||
use FireflyIII\Models\PiggyBankEvent;
|
||||
use FireflyIII\Models\PiggyBankRepetition;
|
||||
use Illuminate\Support\Collection;
|
||||
|
||||
/**
|
||||
|
||||
@@ -3,7 +3,6 @@
|
||||
namespace FireflyIII\Repositories\PiggyBank;
|
||||
|
||||
use FireflyIII\Models\PiggyBank;
|
||||
use FireflyIII\Models\PiggyBankRepetition;
|
||||
use Illuminate\Support\Collection;
|
||||
|
||||
/**
|
||||
|
||||
@@ -78,9 +78,13 @@ class TagRepository implements TagRepositoryInterface
|
||||
|
||||
/** @var Tag $tag */
|
||||
foreach ($tags as $tag) {
|
||||
$transfer = $tag->transactionjournals()->after($start)->before($end)->toAccountIs($account)->transactionTypes(['Transfer'])->first();
|
||||
if ($transfer) {
|
||||
$amount += $transfer->amount;
|
||||
$journals = $tag->transactionjournals()->after($start)->before($end)->transactionTypes(['Transfer'])->get(['transaction_journals.*']);
|
||||
|
||||
/** @var TransactionJournal $journal */
|
||||
foreach ($journals as $journal) {
|
||||
if ($journal->destination_account->id == $account->id) {
|
||||
$amount += $journal->amount;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -34,16 +34,20 @@ class Steam
|
||||
$firstDate = is_null($firstDateObject) ? clone $date : new Carbon($firstDateObject->date);
|
||||
$date = $date < $firstDate ? $firstDate : $date;
|
||||
|
||||
$balance = floatval(
|
||||
$account->transactions()->leftJoin(
|
||||
'transaction_journals', 'transaction_journals.id', '=', 'transactions.transaction_journal_id'
|
||||
)->where('transaction_journals.date', '<=', $date->format('Y-m-d'))->sum('transactions.amount')
|
||||
);
|
||||
if (!$ignoreVirtualBalance) {
|
||||
$balance += floatval($account->virtual_balance);
|
||||
bcscale(2);
|
||||
$set = $account->transactions()->leftJoin(
|
||||
'transaction_journals', 'transaction_journals.id', '=', 'transactions.transaction_journal_id'
|
||||
)->where('transaction_journals.date', '<=', $date->format('Y-m-d'))->get(['transactions.*']);
|
||||
$balance = '0';
|
||||
foreach ($set as $entry) {
|
||||
$balance = bcadd($balance, $entry->amount);
|
||||
}
|
||||
|
||||
return $balance;
|
||||
if (!$ignoreVirtualBalance) {
|
||||
$balance = bcadd($balance, $account->virtual_balance);
|
||||
}
|
||||
|
||||
return round($balance, 2);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -3,7 +3,6 @@
|
||||
namespace FireflyIII\Support\Twig;
|
||||
|
||||
use Auth;
|
||||
use DB;
|
||||
use FireflyIII\Models\LimitRepetition;
|
||||
use Twig_Extension;
|
||||
use Twig_SimpleFunction;
|
||||
@@ -20,25 +19,6 @@ class Budget extends Twig_Extension
|
||||
*/
|
||||
public function getFunctions()
|
||||
{
|
||||
$functions[] = new Twig_SimpleFunction(
|
||||
'spentInRepetition', function (LimitRepetition $repetition) {
|
||||
$sum = DB::table('transactions')
|
||||
->leftJoin('transaction_journals', 'transaction_journals.id', '=', 'transactions.transaction_journal_id')
|
||||
->leftJoin('budget_transaction_journal', 'budget_transaction_journal.transaction_journal_id', '=', 'transaction_journals.id')
|
||||
->leftJoin('budget_limits', 'budget_limits.budget_id', '=', 'budget_transaction_journal.budget_id')
|
||||
->leftJoin('limit_repetitions', 'limit_repetitions.budget_limit_id', '=', 'budget_limits.id')
|
||||
->where('transaction_journals.date', '>=', $repetition->startdate->format('Y-m-d'))
|
||||
->where('transaction_journals.date', '<=', $repetition->enddate->format('Y-m-d'))
|
||||
->where('transaction_journals.user_id', Auth::user()->id)
|
||||
->whereNull('transactions.deleted_at')
|
||||
->where('transactions.amount', '>', 0)
|
||||
->where('limit_repetitions.id', '=', $repetition->id)
|
||||
->sum('transactions.amount');
|
||||
|
||||
return floatval($sum);
|
||||
}
|
||||
);
|
||||
|
||||
$functions[] = new Twig_SimpleFunction(
|
||||
'spentInRepetitionCorrected', function (LimitRepetition $repetition) {
|
||||
$sum
|
||||
|
||||
@@ -84,7 +84,7 @@ class Journal extends Twig_Extension
|
||||
if ($tag->tagMode == 'balancingAct') {
|
||||
// return tag formatted for a "balancing act", even if other
|
||||
// tags are present.
|
||||
$amount = App::make('amount')->formatJournal($journal, false);
|
||||
$amount = App::make('amount')->format($journal->actual_amount, false);
|
||||
|
||||
return '<a href="' . route('tags.show', $tag->id) . '" class="label label-success" title="' . $amount
|
||||
. '"><i class="fa fa-fw fa-refresh"></i> ' . $tag->tag . '</a>';
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
|
||||
namespace FireflyIII\Support\Twig;
|
||||
|
||||
use FireflyIII\Models\LimitRepetition;
|
||||
use Twig_Extension;
|
||||
use Twig_SimpleFilter;
|
||||
|
||||
|
||||
372
composer.lock
generated
372
composer.lock
generated
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"_readme": [
|
||||
"This file locks the dependencies of your project to a known state",
|
||||
"Read more about it at http://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
|
||||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
|
||||
"This file is @generated automatically"
|
||||
],
|
||||
"hash": "e3e90dd365b74f4878cf3b5b4a1c4007",
|
||||
@@ -943,16 +943,16 @@
|
||||
},
|
||||
{
|
||||
"name": "laravel/framework",
|
||||
"version": "v5.0.29",
|
||||
"version": "v5.0.31",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/laravel/framework.git",
|
||||
"reference": "aa7046645e094b0134a4125cce6694f4b076ac62"
|
||||
"reference": "db0a7400465df159ba8c6eaa954f97f50bc19687"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/laravel/framework/zipball/aa7046645e094b0134a4125cce6694f4b076ac62",
|
||||
"reference": "aa7046645e094b0134a4125cce6694f4b076ac62",
|
||||
"url": "https://api.github.com/repos/laravel/framework/zipball/db0a7400465df159ba8c6eaa954f97f50bc19687",
|
||||
"reference": "db0a7400465df159ba8c6eaa954f97f50bc19687",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -1065,7 +1065,7 @@
|
||||
"framework",
|
||||
"laravel"
|
||||
],
|
||||
"time": "2015-05-08 12:57:10"
|
||||
"time": "2015-05-11 22:15:00"
|
||||
},
|
||||
{
|
||||
"name": "league/commonmark",
|
||||
@@ -1328,21 +1328,21 @@
|
||||
},
|
||||
{
|
||||
"name": "nesbot/carbon",
|
||||
"version": "1.18.0",
|
||||
"version": "1.19.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/briannesbitt/Carbon.git",
|
||||
"reference": "99e2f69f7bdc2cc4334b2d00f1e0ba450623ea36"
|
||||
"reference": "68868e0b02d2d803d0052a59d4e5003cccf87320"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/99e2f69f7bdc2cc4334b2d00f1e0ba450623ea36",
|
||||
"reference": "99e2f69f7bdc2cc4334b2d00f1e0ba450623ea36",
|
||||
"url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/68868e0b02d2d803d0052a59d4e5003cccf87320",
|
||||
"reference": "68868e0b02d2d803d0052a59d4e5003cccf87320",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=5.3.0",
|
||||
"symfony/translation": "2.6.*"
|
||||
"symfony/translation": "~2.6"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "~4.0"
|
||||
@@ -1371,7 +1371,7 @@
|
||||
"datetime",
|
||||
"time"
|
||||
],
|
||||
"time": "2015-03-26 03:05:57"
|
||||
"time": "2015-05-09 03:23:44"
|
||||
},
|
||||
{
|
||||
"name": "nikic/php-parser",
|
||||
@@ -1529,21 +1529,21 @@
|
||||
},
|
||||
{
|
||||
"name": "rcrowe/twigbridge",
|
||||
"version": "0.7.x-dev",
|
||||
"version": "dev-master",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/rcrowe/TwigBridge.git",
|
||||
"reference": "ac0bfb5bcdb4fcd0cd01ab8425620ff07f6af026"
|
||||
"reference": "0e2693d99745eb8bbd01a80e841951c0738e1d15"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/rcrowe/TwigBridge/zipball/ac0bfb5bcdb4fcd0cd01ab8425620ff07f6af026",
|
||||
"reference": "ac0bfb5bcdb4fcd0cd01ab8425620ff07f6af026",
|
||||
"url": "https://api.github.com/repos/rcrowe/TwigBridge/zipball/0e2693d99745eb8bbd01a80e841951c0738e1d15",
|
||||
"reference": "0e2693d99745eb8bbd01a80e841951c0738e1d15",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"illuminate/support": "5.0.*",
|
||||
"illuminate/view": "5.0.*",
|
||||
"illuminate/support": "5.0.*|5.1.*",
|
||||
"illuminate/view": "5.0.*|5.1.*",
|
||||
"php": ">=5.4.0",
|
||||
"twig/twig": "~1.15"
|
||||
},
|
||||
@@ -1589,7 +1589,7 @@
|
||||
"laravel",
|
||||
"twig"
|
||||
],
|
||||
"time": "2015-04-22 09:19:03"
|
||||
"time": "2015-05-21 13:46:00"
|
||||
},
|
||||
{
|
||||
"name": "swiftmailer/swiftmailer",
|
||||
@@ -1645,17 +1645,17 @@
|
||||
},
|
||||
{
|
||||
"name": "symfony/console",
|
||||
"version": "v2.6.6",
|
||||
"version": "v2.6.7",
|
||||
"target-dir": "Symfony/Component/Console",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/Console.git",
|
||||
"reference": "5b91dc4ed5eb08553f57f6df04c4730a73992667"
|
||||
"reference": "ebc5679854aa24ed7d65062e9e3ab0b18a917272"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/Console/zipball/5b91dc4ed5eb08553f57f6df04c4730a73992667",
|
||||
"reference": "5b91dc4ed5eb08553f57f6df04c4730a73992667",
|
||||
"url": "https://api.github.com/repos/symfony/Console/zipball/ebc5679854aa24ed7d65062e9e3ab0b18a917272",
|
||||
"reference": "ebc5679854aa24ed7d65062e9e3ab0b18a917272",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -1688,32 +1688,32 @@
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Symfony Community",
|
||||
"homepage": "http://symfony.com/contributors"
|
||||
},
|
||||
{
|
||||
"name": "Fabien Potencier",
|
||||
"email": "fabien@symfony.com"
|
||||
},
|
||||
{
|
||||
"name": "Symfony Community",
|
||||
"homepage": "https://symfony.com/contributors"
|
||||
}
|
||||
],
|
||||
"description": "Symfony Console Component",
|
||||
"homepage": "http://symfony.com",
|
||||
"time": "2015-03-30 15:54:10"
|
||||
"homepage": "https://symfony.com",
|
||||
"time": "2015-05-02 15:18:45"
|
||||
},
|
||||
{
|
||||
"name": "symfony/debug",
|
||||
"version": "v2.6.6",
|
||||
"version": "v2.6.7",
|
||||
"target-dir": "Symfony/Component/Debug",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/Debug.git",
|
||||
"reference": "d49a46a20a8f0544aedac54466750ad787d3d3e3"
|
||||
"reference": "ad4511a8fddce7ec163b513ba39a30ea4f32c9e7"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/Debug/zipball/d49a46a20a8f0544aedac54466750ad787d3d3e3",
|
||||
"reference": "d49a46a20a8f0544aedac54466750ad787d3d3e3",
|
||||
"url": "https://api.github.com/repos/symfony/Debug/zipball/ad4511a8fddce7ec163b513ba39a30ea4f32c9e7",
|
||||
"reference": "ad4511a8fddce7ec163b513ba39a30ea4f32c9e7",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -1749,32 +1749,32 @@
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Symfony Community",
|
||||
"homepage": "http://symfony.com/contributors"
|
||||
},
|
||||
{
|
||||
"name": "Fabien Potencier",
|
||||
"email": "fabien@symfony.com"
|
||||
},
|
||||
{
|
||||
"name": "Symfony Community",
|
||||
"homepage": "https://symfony.com/contributors"
|
||||
}
|
||||
],
|
||||
"description": "Symfony Debug Component",
|
||||
"homepage": "http://symfony.com",
|
||||
"time": "2015-03-22 16:55:57"
|
||||
"homepage": "https://symfony.com",
|
||||
"time": "2015-05-08 13:17:44"
|
||||
},
|
||||
{
|
||||
"name": "symfony/event-dispatcher",
|
||||
"version": "v2.6.6",
|
||||
"version": "v2.6.7",
|
||||
"target-dir": "Symfony/Component/EventDispatcher",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/EventDispatcher.git",
|
||||
"reference": "70f7c8478739ad21e3deef0d977b38c77f1fb284"
|
||||
"reference": "672593bc4b0043a0acf91903bb75a1c82d8f2e02"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/EventDispatcher/zipball/70f7c8478739ad21e3deef0d977b38c77f1fb284",
|
||||
"reference": "70f7c8478739ad21e3deef0d977b38c77f1fb284",
|
||||
"url": "https://api.github.com/repos/symfony/EventDispatcher/zipball/672593bc4b0043a0acf91903bb75a1c82d8f2e02",
|
||||
"reference": "672593bc4b0043a0acf91903bb75a1c82d8f2e02",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -1808,32 +1808,32 @@
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Symfony Community",
|
||||
"homepage": "http://symfony.com/contributors"
|
||||
},
|
||||
{
|
||||
"name": "Fabien Potencier",
|
||||
"email": "fabien@symfony.com"
|
||||
},
|
||||
{
|
||||
"name": "Symfony Community",
|
||||
"homepage": "https://symfony.com/contributors"
|
||||
}
|
||||
],
|
||||
"description": "Symfony EventDispatcher Component",
|
||||
"homepage": "http://symfony.com",
|
||||
"time": "2015-03-13 17:37:22"
|
||||
"homepage": "https://symfony.com",
|
||||
"time": "2015-05-02 15:18:45"
|
||||
},
|
||||
{
|
||||
"name": "symfony/filesystem",
|
||||
"version": "v2.6.6",
|
||||
"version": "v2.6.7",
|
||||
"target-dir": "Symfony/Component/Filesystem",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/Filesystem.git",
|
||||
"reference": "4983964b3693e4f13449cb3800c64a9112c301b4"
|
||||
"reference": "f73904bd2dae525c42ea1f0340c7c98480ecacde"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/Filesystem/zipball/4983964b3693e4f13449cb3800c64a9112c301b4",
|
||||
"reference": "4983964b3693e4f13449cb3800c64a9112c301b4",
|
||||
"url": "https://api.github.com/repos/symfony/Filesystem/zipball/f73904bd2dae525c42ea1f0340c7c98480ecacde",
|
||||
"reference": "f73904bd2dae525c42ea1f0340c7c98480ecacde",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -1858,32 +1858,32 @@
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Symfony Community",
|
||||
"homepage": "http://symfony.com/contributors"
|
||||
},
|
||||
{
|
||||
"name": "Fabien Potencier",
|
||||
"email": "fabien@symfony.com"
|
||||
},
|
||||
{
|
||||
"name": "Symfony Community",
|
||||
"homepage": "https://symfony.com/contributors"
|
||||
}
|
||||
],
|
||||
"description": "Symfony Filesystem Component",
|
||||
"homepage": "http://symfony.com",
|
||||
"time": "2015-03-22 16:55:57"
|
||||
"homepage": "https://symfony.com",
|
||||
"time": "2015-05-08 00:09:07"
|
||||
},
|
||||
{
|
||||
"name": "symfony/finder",
|
||||
"version": "v2.6.6",
|
||||
"version": "v2.6.7",
|
||||
"target-dir": "Symfony/Component/Finder",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/Finder.git",
|
||||
"reference": "5dbe2e73a580618f5b4880fda93406eed25de251"
|
||||
"reference": "704c64c8b12c8882640d5c0330a8414b1e06dc99"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/Finder/zipball/5dbe2e73a580618f5b4880fda93406eed25de251",
|
||||
"reference": "5dbe2e73a580618f5b4880fda93406eed25de251",
|
||||
"url": "https://api.github.com/repos/symfony/Finder/zipball/704c64c8b12c8882640d5c0330a8414b1e06dc99",
|
||||
"reference": "704c64c8b12c8882640d5c0330a8414b1e06dc99",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -1908,32 +1908,32 @@
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Symfony Community",
|
||||
"homepage": "http://symfony.com/contributors"
|
||||
},
|
||||
{
|
||||
"name": "Fabien Potencier",
|
||||
"email": "fabien@symfony.com"
|
||||
},
|
||||
{
|
||||
"name": "Symfony Community",
|
||||
"homepage": "https://symfony.com/contributors"
|
||||
}
|
||||
],
|
||||
"description": "Symfony Finder Component",
|
||||
"homepage": "http://symfony.com",
|
||||
"time": "2015-03-30 15:54:10"
|
||||
"homepage": "https://symfony.com",
|
||||
"time": "2015-05-02 15:18:45"
|
||||
},
|
||||
{
|
||||
"name": "symfony/http-foundation",
|
||||
"version": "v2.6.6",
|
||||
"version": "v2.6.7",
|
||||
"target-dir": "Symfony/Component/HttpFoundation",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/HttpFoundation.git",
|
||||
"reference": "8a6337233f08f7520de97f4ffd6f00e947d892f9"
|
||||
"reference": "8a0d00980ef9f6b47ddbf24bdfbf70fead760816"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/HttpFoundation/zipball/8a6337233f08f7520de97f4ffd6f00e947d892f9",
|
||||
"reference": "8a6337233f08f7520de97f4ffd6f00e947d892f9",
|
||||
"url": "https://api.github.com/repos/symfony/HttpFoundation/zipball/8a0d00980ef9f6b47ddbf24bdfbf70fead760816",
|
||||
"reference": "8a0d00980ef9f6b47ddbf24bdfbf70fead760816",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -1962,32 +1962,32 @@
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Symfony Community",
|
||||
"homepage": "http://symfony.com/contributors"
|
||||
},
|
||||
{
|
||||
"name": "Fabien Potencier",
|
||||
"email": "fabien@symfony.com"
|
||||
},
|
||||
{
|
||||
"name": "Symfony Community",
|
||||
"homepage": "https://symfony.com/contributors"
|
||||
}
|
||||
],
|
||||
"description": "Symfony HttpFoundation Component",
|
||||
"homepage": "http://symfony.com",
|
||||
"time": "2015-04-01 16:50:12"
|
||||
"homepage": "https://symfony.com",
|
||||
"time": "2015-05-02 15:18:45"
|
||||
},
|
||||
{
|
||||
"name": "symfony/http-kernel",
|
||||
"version": "v2.6.6",
|
||||
"version": "v2.6.7",
|
||||
"target-dir": "Symfony/Component/HttpKernel",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/HttpKernel.git",
|
||||
"reference": "3829cacfe21eaf3f73604a62d79183d1f6e792c4"
|
||||
"reference": "2010194de0a57731af9404c7f97fd300db98b7a3"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/HttpKernel/zipball/3829cacfe21eaf3f73604a62d79183d1f6e792c4",
|
||||
"reference": "3829cacfe21eaf3f73604a62d79183d1f6e792c4",
|
||||
"url": "https://api.github.com/repos/symfony/HttpKernel/zipball/2010194de0a57731af9404c7f97fd300db98b7a3",
|
||||
"reference": "2010194de0a57731af9404c7f97fd300db98b7a3",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -2040,32 +2040,32 @@
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Symfony Community",
|
||||
"homepage": "http://symfony.com/contributors"
|
||||
},
|
||||
{
|
||||
"name": "Fabien Potencier",
|
||||
"email": "fabien@symfony.com"
|
||||
},
|
||||
{
|
||||
"name": "Symfony Community",
|
||||
"homepage": "https://symfony.com/contributors"
|
||||
}
|
||||
],
|
||||
"description": "Symfony HttpKernel Component",
|
||||
"homepage": "http://symfony.com",
|
||||
"time": "2015-04-01 16:55:26"
|
||||
"homepage": "https://symfony.com",
|
||||
"time": "2015-05-11 01:58:49"
|
||||
},
|
||||
{
|
||||
"name": "symfony/process",
|
||||
"version": "v2.6.6",
|
||||
"version": "v2.6.7",
|
||||
"target-dir": "Symfony/Component/Process",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/Process.git",
|
||||
"reference": "a8bebaec1a9dc6cde53e0250e32917579b0be552"
|
||||
"reference": "9f3c4baaf840ed849e1b1f7bfd5ae246e8509562"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/Process/zipball/a8bebaec1a9dc6cde53e0250e32917579b0be552",
|
||||
"reference": "a8bebaec1a9dc6cde53e0250e32917579b0be552",
|
||||
"url": "https://api.github.com/repos/symfony/Process/zipball/9f3c4baaf840ed849e1b1f7bfd5ae246e8509562",
|
||||
"reference": "9f3c4baaf840ed849e1b1f7bfd5ae246e8509562",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -2090,32 +2090,32 @@
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Symfony Community",
|
||||
"homepage": "http://symfony.com/contributors"
|
||||
},
|
||||
{
|
||||
"name": "Fabien Potencier",
|
||||
"email": "fabien@symfony.com"
|
||||
},
|
||||
{
|
||||
"name": "Symfony Community",
|
||||
"homepage": "https://symfony.com/contributors"
|
||||
}
|
||||
],
|
||||
"description": "Symfony Process Component",
|
||||
"homepage": "http://symfony.com",
|
||||
"time": "2015-03-30 15:54:10"
|
||||
"homepage": "https://symfony.com",
|
||||
"time": "2015-05-02 15:18:45"
|
||||
},
|
||||
{
|
||||
"name": "symfony/routing",
|
||||
"version": "v2.6.6",
|
||||
"version": "v2.6.7",
|
||||
"target-dir": "Symfony/Component/Routing",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/Routing.git",
|
||||
"reference": "4e173a645b63ff60a124f3741b4f15feebd908fa"
|
||||
"reference": "1455ec537940f7428ea6aa9411f3c4bca69413a0"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/Routing/zipball/4e173a645b63ff60a124f3741b4f15feebd908fa",
|
||||
"reference": "4e173a645b63ff60a124f3741b4f15feebd908fa",
|
||||
"url": "https://api.github.com/repos/symfony/Routing/zipball/1455ec537940f7428ea6aa9411f3c4bca69413a0",
|
||||
"reference": "1455ec537940f7428ea6aa9411f3c4bca69413a0",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -2153,28 +2153,28 @@
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Symfony Community",
|
||||
"homepage": "http://symfony.com/contributors"
|
||||
},
|
||||
{
|
||||
"name": "Fabien Potencier",
|
||||
"email": "fabien@symfony.com"
|
||||
},
|
||||
{
|
||||
"name": "Symfony Community",
|
||||
"homepage": "https://symfony.com/contributors"
|
||||
}
|
||||
],
|
||||
"description": "Symfony Routing Component",
|
||||
"homepage": "http://symfony.com",
|
||||
"homepage": "https://symfony.com",
|
||||
"keywords": [
|
||||
"router",
|
||||
"routing",
|
||||
"uri",
|
||||
"url"
|
||||
],
|
||||
"time": "2015-03-30 15:54:10"
|
||||
"time": "2015-05-02 15:18:45"
|
||||
},
|
||||
{
|
||||
"name": "symfony/security-core",
|
||||
"version": "v2.6.6",
|
||||
"version": "v2.6.7",
|
||||
"target-dir": "Symfony/Component/Security/Core",
|
||||
"source": {
|
||||
"type": "git",
|
||||
@@ -2238,17 +2238,17 @@
|
||||
},
|
||||
{
|
||||
"name": "symfony/translation",
|
||||
"version": "v2.6.6",
|
||||
"version": "v2.6.7",
|
||||
"target-dir": "Symfony/Component/Translation",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/Translation.git",
|
||||
"reference": "bd939f05cdaca128f4ddbae1b447d6f0203b60af"
|
||||
"reference": "398e0eedcb89243ad34a10d079a4b6ea4c0b61ff"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/Translation/zipball/bd939f05cdaca128f4ddbae1b447d6f0203b60af",
|
||||
"reference": "bd939f05cdaca128f4ddbae1b447d6f0203b60af",
|
||||
"url": "https://api.github.com/repos/symfony/Translation/zipball/398e0eedcb89243ad34a10d079a4b6ea4c0b61ff",
|
||||
"reference": "398e0eedcb89243ad34a10d079a4b6ea4c0b61ff",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -2282,32 +2282,32 @@
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Symfony Community",
|
||||
"homepage": "http://symfony.com/contributors"
|
||||
},
|
||||
{
|
||||
"name": "Fabien Potencier",
|
||||
"email": "fabien@symfony.com"
|
||||
},
|
||||
{
|
||||
"name": "Symfony Community",
|
||||
"homepage": "https://symfony.com/contributors"
|
||||
}
|
||||
],
|
||||
"description": "Symfony Translation Component",
|
||||
"homepage": "http://symfony.com",
|
||||
"time": "2015-03-30 15:54:10"
|
||||
"homepage": "https://symfony.com",
|
||||
"time": "2015-05-05 16:51:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/var-dumper",
|
||||
"version": "v2.6.6",
|
||||
"version": "v2.6.7",
|
||||
"target-dir": "Symfony/Component/VarDumper",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/var-dumper.git",
|
||||
"reference": "aafae00236e147568832de3c65ccb94cfc836278"
|
||||
"reference": "89eec96645fb44af4a454a26c74c72ba6311f5bc"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/var-dumper/zipball/aafae00236e147568832de3c65ccb94cfc836278",
|
||||
"reference": "aafae00236e147568832de3c65ccb94cfc836278",
|
||||
"url": "https://api.github.com/repos/symfony/var-dumper/zipball/89eec96645fb44af4a454a26c74c72ba6311f5bc",
|
||||
"reference": "89eec96645fb44af4a454a26c74c72ba6311f5bc",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -2338,22 +2338,22 @@
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Symfony Community",
|
||||
"homepage": "http://symfony.com/contributors"
|
||||
},
|
||||
{
|
||||
"name": "Nicolas Grekas",
|
||||
"email": "p@tchwork.com"
|
||||
},
|
||||
{
|
||||
"name": "Symfony Community",
|
||||
"homepage": "https://symfony.com/contributors"
|
||||
}
|
||||
],
|
||||
"description": "Symfony mechanism for exploring and dumping PHP variables",
|
||||
"homepage": "http://symfony.com",
|
||||
"homepage": "https://symfony.com",
|
||||
"keywords": [
|
||||
"debug",
|
||||
"dump"
|
||||
],
|
||||
"time": "2015-03-31 08:12:29"
|
||||
"time": "2015-05-01 14:14:24"
|
||||
},
|
||||
{
|
||||
"name": "twig/extensions",
|
||||
@@ -2517,29 +2517,29 @@
|
||||
},
|
||||
{
|
||||
"name": "watson/validating",
|
||||
"version": "1.0.0",
|
||||
"version": "1.0.2",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/dwightwatson/validating.git",
|
||||
"reference": "9066ffd9342d1bf8a571d157df047e200a24e64a"
|
||||
"reference": "47320813a45cc35384e72364484d54fe44dcd3fb"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/dwightwatson/validating/zipball/9066ffd9342d1bf8a571d157df047e200a24e64a",
|
||||
"reference": "9066ffd9342d1bf8a571d157df047e200a24e64a",
|
||||
"url": "https://api.github.com/repos/dwightwatson/validating/zipball/47320813a45cc35384e72364484d54fe44dcd3fb",
|
||||
"reference": "47320813a45cc35384e72364484d54fe44dcd3fb",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"illuminate/contracts": "~5.0",
|
||||
"illuminate/database": "~5.0",
|
||||
"illuminate/events": "~5.0",
|
||||
"illuminate/support": "~5.0",
|
||||
"illuminate/validation": "~5.0",
|
||||
"illuminate/contracts": "5.0.*|5.1.*",
|
||||
"illuminate/database": "5.0.*|5.1.*",
|
||||
"illuminate/events": "5.0.*|5.1.*",
|
||||
"illuminate/support": "5.0.*|5.1.*",
|
||||
"illuminate/validation": "5.0.*|5.1.*",
|
||||
"php": ">=5.4.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"mockery/mockery": "0.9.*",
|
||||
"phpunit/phpunit": "4.2.*"
|
||||
"phpunit/phpunit": "~4.0"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
@@ -2568,7 +2568,7 @@
|
||||
"laravel",
|
||||
"validation"
|
||||
],
|
||||
"time": "2015-03-17 10:52:36"
|
||||
"time": "2015-05-23 00:03:54"
|
||||
}
|
||||
],
|
||||
"packages-dev": [
|
||||
@@ -2888,16 +2888,16 @@
|
||||
},
|
||||
{
|
||||
"name": "hamcrest/hamcrest-php",
|
||||
"version": "v1.2.1",
|
||||
"version": "v1.2.2",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/hamcrest/hamcrest-php.git",
|
||||
"reference": "ac50c470531243944f977b8de75be0b684a9cb51"
|
||||
"reference": "b37020aa976fa52d3de9aa904aa2522dc518f79c"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/hamcrest/hamcrest-php/zipball/ac50c470531243944f977b8de75be0b684a9cb51",
|
||||
"reference": "ac50c470531243944f977b8de75be0b684a9cb51",
|
||||
"url": "https://api.github.com/repos/hamcrest/hamcrest-php/zipball/b37020aa976fa52d3de9aa904aa2522dc518f79c",
|
||||
"reference": "b37020aa976fa52d3de9aa904aa2522dc518f79c",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -2929,7 +2929,7 @@
|
||||
"keywords": [
|
||||
"test"
|
||||
],
|
||||
"time": "2015-01-20 19:34:09"
|
||||
"time": "2015-05-11 14:41:42"
|
||||
},
|
||||
{
|
||||
"name": "league/factory-muffin",
|
||||
@@ -4148,17 +4148,17 @@
|
||||
},
|
||||
{
|
||||
"name": "symfony/class-loader",
|
||||
"version": "v2.6.6",
|
||||
"version": "v2.6.7",
|
||||
"target-dir": "Symfony/Component/ClassLoader",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/ClassLoader.git",
|
||||
"reference": "861765b3e5f32979de5bd19ad2577cbb830a29d5"
|
||||
"reference": "695134c9b39559297fa5d1dcff6a9054bb56facb"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/ClassLoader/zipball/861765b3e5f32979de5bd19ad2577cbb830a29d5",
|
||||
"reference": "861765b3e5f32979de5bd19ad2577cbb830a29d5",
|
||||
"url": "https://api.github.com/repos/symfony/ClassLoader/zipball/695134c9b39559297fa5d1dcff6a9054bb56facb",
|
||||
"reference": "695134c9b39559297fa5d1dcff6a9054bb56facb",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -4184,32 +4184,32 @@
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Symfony Community",
|
||||
"homepage": "http://symfony.com/contributors"
|
||||
},
|
||||
{
|
||||
"name": "Fabien Potencier",
|
||||
"email": "fabien@symfony.com"
|
||||
},
|
||||
{
|
||||
"name": "Symfony Community",
|
||||
"homepage": "https://symfony.com/contributors"
|
||||
}
|
||||
],
|
||||
"description": "Symfony ClassLoader Component",
|
||||
"homepage": "http://symfony.com",
|
||||
"time": "2015-03-27 10:19:51"
|
||||
"homepage": "https://symfony.com",
|
||||
"time": "2015-05-02 15:18:45"
|
||||
},
|
||||
{
|
||||
"name": "symfony/config",
|
||||
"version": "v2.6.6",
|
||||
"version": "v2.6.7",
|
||||
"target-dir": "Symfony/Component/Config",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/Config.git",
|
||||
"reference": "d91be01336605db8da21b79bc771e46a7276d1bc"
|
||||
"reference": "b6fddb4aa2daaa2b06f0040071ac131b4a1ecf25"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/Config/zipball/d91be01336605db8da21b79bc771e46a7276d1bc",
|
||||
"reference": "d91be01336605db8da21b79bc771e46a7276d1bc",
|
||||
"url": "https://api.github.com/repos/symfony/Config/zipball/b6fddb4aa2daaa2b06f0040071ac131b4a1ecf25",
|
||||
"reference": "b6fddb4aa2daaa2b06f0040071ac131b4a1ecf25",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -4235,32 +4235,32 @@
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Symfony Community",
|
||||
"homepage": "http://symfony.com/contributors"
|
||||
},
|
||||
{
|
||||
"name": "Fabien Potencier",
|
||||
"email": "fabien@symfony.com"
|
||||
},
|
||||
{
|
||||
"name": "Symfony Community",
|
||||
"homepage": "https://symfony.com/contributors"
|
||||
}
|
||||
],
|
||||
"description": "Symfony Config Component",
|
||||
"homepage": "http://symfony.com",
|
||||
"time": "2015-03-30 15:54:10"
|
||||
"homepage": "https://symfony.com",
|
||||
"time": "2015-05-02 15:18:45"
|
||||
},
|
||||
{
|
||||
"name": "symfony/stopwatch",
|
||||
"version": "v2.6.6",
|
||||
"version": "v2.6.7",
|
||||
"target-dir": "Symfony/Component/Stopwatch",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/Stopwatch.git",
|
||||
"reference": "5f196e84b5640424a166d2ce9cca161ce1e9d912"
|
||||
"reference": "b470f87c69837cb71115f1fa720388bb19b63635"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/Stopwatch/zipball/5f196e84b5640424a166d2ce9cca161ce1e9d912",
|
||||
"reference": "5f196e84b5640424a166d2ce9cca161ce1e9d912",
|
||||
"url": "https://api.github.com/repos/symfony/Stopwatch/zipball/b470f87c69837cb71115f1fa720388bb19b63635",
|
||||
"reference": "b470f87c69837cb71115f1fa720388bb19b63635",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -4285,32 +4285,32 @@
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Symfony Community",
|
||||
"homepage": "http://symfony.com/contributors"
|
||||
},
|
||||
{
|
||||
"name": "Fabien Potencier",
|
||||
"email": "fabien@symfony.com"
|
||||
},
|
||||
{
|
||||
"name": "Symfony Community",
|
||||
"homepage": "https://symfony.com/contributors"
|
||||
}
|
||||
],
|
||||
"description": "Symfony Stopwatch Component",
|
||||
"homepage": "http://symfony.com",
|
||||
"time": "2015-03-22 16:55:57"
|
||||
"homepage": "https://symfony.com",
|
||||
"time": "2015-05-02 15:18:45"
|
||||
},
|
||||
{
|
||||
"name": "symfony/yaml",
|
||||
"version": "v2.6.6",
|
||||
"version": "v2.6.7",
|
||||
"target-dir": "Symfony/Component/Yaml",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/Yaml.git",
|
||||
"reference": "174f009ed36379a801109955fc5a71a49fe62dd4"
|
||||
"reference": "f157ab074e453ecd4c0fa775f721f6e67a99d9e2"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/Yaml/zipball/174f009ed36379a801109955fc5a71a49fe62dd4",
|
||||
"reference": "174f009ed36379a801109955fc5a71a49fe62dd4",
|
||||
"url": "https://api.github.com/repos/symfony/Yaml/zipball/f157ab074e453ecd4c0fa775f721f6e67a99d9e2",
|
||||
"reference": "f157ab074e453ecd4c0fa775f721f6e67a99d9e2",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -4335,18 +4335,18 @@
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Symfony Community",
|
||||
"homepage": "http://symfony.com/contributors"
|
||||
},
|
||||
{
|
||||
"name": "Fabien Potencier",
|
||||
"email": "fabien@symfony.com"
|
||||
},
|
||||
{
|
||||
"name": "Symfony Community",
|
||||
"homepage": "https://symfony.com/contributors"
|
||||
}
|
||||
],
|
||||
"description": "Symfony Yaml Component",
|
||||
"homepage": "http://symfony.com",
|
||||
"time": "2015-03-30 15:54:10"
|
||||
"homepage": "https://symfony.com",
|
||||
"time": "2015-05-02 15:18:45"
|
||||
}
|
||||
],
|
||||
"aliases": [],
|
||||
|
||||
148
database/migrations/2015_05_22_172026_changes_for_v3409.php
Normal file
148
database/migrations/2015_05_22_172026_changes_for_v3409.php
Normal file
@@ -0,0 +1,148 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
|
||||
/**
|
||||
* @SuppressWarnings(PHPMD.ShortMethodName)
|
||||
*
|
||||
* Class ChangesForV3409
|
||||
*/
|
||||
class ChangesForV3409 extends Migration
|
||||
{
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
// remove decryption, but this will destroy amounts.
|
||||
|
||||
Schema::table(
|
||||
'accounts', function (Blueprint $table) {
|
||||
$table->dropColumn('virtual_balance_encrypted');
|
||||
}
|
||||
);
|
||||
|
||||
Schema::table(
|
||||
'bills', function (Blueprint $table) {
|
||||
$table->dropColumn('amount_min_encrypted');
|
||||
$table->dropColumn('amount_max_encrypted');
|
||||
}
|
||||
);
|
||||
|
||||
Schema::table(
|
||||
'budget_limits', function (Blueprint $table) {
|
||||
|
||||
$table->dropColumn('amount_encrypted');
|
||||
}
|
||||
);
|
||||
Schema::table(
|
||||
'limit_repetitions', function (Blueprint $table) {
|
||||
$table->dropColumn('amount_encrypted');
|
||||
}
|
||||
);
|
||||
Schema::table(
|
||||
'piggy_bank_events', function (Blueprint $table) {
|
||||
$table->dropColumn('amount_encrypted');
|
||||
}
|
||||
);
|
||||
Schema::table(
|
||||
'piggy_bank_repetitions', function (Blueprint $table) {
|
||||
$table->dropColumn('currentamount_encrypted');
|
||||
}
|
||||
);
|
||||
|
||||
Schema::table(
|
||||
'piggy_banks', function (Blueprint $table) {
|
||||
$table->dropColumn('targetamount_encrypted');
|
||||
}
|
||||
);
|
||||
Schema::table(
|
||||
'preferences', function (Blueprint $table) {
|
||||
$table->dropColumn('name_encrypted');
|
||||
$table->dropColumn('data_encrypted');
|
||||
}
|
||||
);
|
||||
|
||||
Schema::table(
|
||||
'transactions', function (Blueprint $table) {
|
||||
$table->dropColumn('amount_encrypted');
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
// encrypt account virtual balance:
|
||||
Schema::table(
|
||||
'accounts', function (Blueprint $table) {
|
||||
$table->string('virtual_balance_encrypted')->nullable()->after('virtual_balance');
|
||||
}
|
||||
);
|
||||
|
||||
// encrypt bill amount_min and amount_max:
|
||||
Schema::table(
|
||||
'bills', function (Blueprint $table) {
|
||||
$table->string('amount_min_encrypted')->nullable()->after('amount_min');
|
||||
$table->string('amount_max_encrypted')->nullable()->after('amount_max');
|
||||
}
|
||||
);
|
||||
|
||||
// encrypt budget limit amount
|
||||
Schema::table(
|
||||
'budget_limits', function (Blueprint $table) {
|
||||
$table->string('amount_encrypted')->nullable()->after('amount');
|
||||
}
|
||||
);
|
||||
// encrypt limit repetition amount
|
||||
Schema::table(
|
||||
'limit_repetitions', function (Blueprint $table) {
|
||||
$table->string('amount_encrypted')->nullable()->after('amount');
|
||||
}
|
||||
);
|
||||
// encrypt piggy bank event amount
|
||||
Schema::table(
|
||||
'piggy_bank_events', function (Blueprint $table) {
|
||||
$table->string('amount_encrypted')->nullable()->after('amount');
|
||||
}
|
||||
);
|
||||
// encrypt piggy bank repetition currentamount
|
||||
Schema::table(
|
||||
'piggy_bank_repetitions', function (Blueprint $table) {
|
||||
$table->string('currentamount_encrypted')->nullable()->after('currentamount');
|
||||
}
|
||||
);
|
||||
|
||||
// encrypt piggy bank targetamount
|
||||
Schema::table(
|
||||
'piggy_banks', function (Blueprint $table) {
|
||||
$table->string('targetamount_encrypted')->nullable()->after('targetamount');
|
||||
}
|
||||
);
|
||||
// encrypt preference name (add field)
|
||||
// encrypt preference data (add field)
|
||||
Schema::table(
|
||||
'preferences', function (Blueprint $table) {
|
||||
$table->text('name_encrypted')->nullable()->after('name');
|
||||
$table->text('data_encrypted')->nullable()->after('data');
|
||||
}
|
||||
);
|
||||
|
||||
// encrypt transaction amount
|
||||
Schema::table(
|
||||
'transactions', function (Blueprint $table) {
|
||||
$table->string('amount_encrypted')->nullable()->after('amount');
|
||||
}
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -134,7 +134,9 @@ class TestDataSeeder extends Seeder
|
||||
|
||||
$acc_a = Account::create(['user_id' => $user->id, 'account_type_id' => $assetType->id, 'name' => 'Checking account', 'active' => 1]);
|
||||
$acc_b = Account::create(['user_id' => $user->id, 'account_type_id' => $assetType->id, 'name' => 'Savings account', 'active' => 1]);
|
||||
$acc_c = Account::create(['user_id' => $user->id, 'account_type_id' => $assetType->id, 'name' => 'Delete me', 'active' => 1]);
|
||||
$acc_c = Account::create(
|
||||
['user_id' => $user->id, 'account_type_id' => $assetType->id, 'name' => 'Delete me', 'active' => 1, 'virtual_balance' => 123.45]
|
||||
);
|
||||
|
||||
// create account meta:
|
||||
AccountMeta::create(['account_id' => $acc_a->id, 'name' => 'accountRole', 'data' => 'defaultAsset']);
|
||||
@@ -514,27 +516,6 @@ class TestDataSeeder extends Seeder
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param $name
|
||||
*
|
||||
* @return PiggyBank|null
|
||||
*/
|
||||
protected function findPiggyBank($name)
|
||||
{
|
||||
// account
|
||||
$user = User::whereEmail('thegrumpydictator@gmail.com')->first();
|
||||
/** @var Budget $budget */
|
||||
foreach (PiggyBank::get() as $piggyBank) {
|
||||
$account = $piggyBank->account()->first();
|
||||
if ($piggyBank->name == $name && $user->id == $account->user_id) {
|
||||
return $piggyBank;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param $name
|
||||
*
|
||||
@@ -680,5 +661,26 @@ class TestDataSeeder extends Seeder
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param $name
|
||||
*
|
||||
* @return PiggyBank|null
|
||||
*/
|
||||
protected function findPiggyBank($name)
|
||||
{
|
||||
// account
|
||||
$user = User::whereEmail('thegrumpydictator@gmail.com')->first();
|
||||
/** @var Budget $budget */
|
||||
foreach (PiggyBank::get() as $piggyBank) {
|
||||
$account = $piggyBank->account()->first();
|
||||
if ($piggyBank->name == $name && $user->id == $account->user_id) {
|
||||
return $piggyBank;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -29,8 +29,8 @@ return [
|
||||
'transactionsWithoutBudgetDate' => 'Expenses without budget in :date',
|
||||
'createBudget' => 'New budget',
|
||||
'inactiveBudgets' => 'Inactive budgets',
|
||||
'newCategory' => 'New category',
|
||||
'withoutCategory' => 'Without a category',
|
||||
|
||||
// accounts:
|
||||
|
||||
'details_for_asset' => 'Details for asset account ":name"',
|
||||
'details_for_expense' => 'Details for expense account ":name"',
|
||||
@@ -45,6 +45,14 @@ return [
|
||||
'edit_expense_account' => 'Edit expense account ":name"',
|
||||
'edit_revenue_account' => 'Edit revenue account ":name"',
|
||||
|
||||
'delete_asset_account' => 'Delete asset account ":name"',
|
||||
'delete_expense_account' => 'Delete expense account ":name"',
|
||||
'delete_revenue_account' => 'Delete revenue account ":name"',
|
||||
|
||||
'asset_deleted' => 'Successfully deleted asset account ":name"',
|
||||
'expense_deleted' => 'Successfully deleted expense account ":name"',
|
||||
'revenue_deleted' => 'Successfully deleted revenue account ":name"',
|
||||
|
||||
'update_asset_account' => 'Update asset account',
|
||||
'update_expense_account' => 'Update expense account',
|
||||
'update_revenue_account' => 'Update revenue account',
|
||||
@@ -53,6 +61,14 @@ return [
|
||||
'make_new_expense_account' => 'New expense account',
|
||||
'make_new_revenue_account' => 'New revenue account',
|
||||
|
||||
// categories:
|
||||
'new_category' => 'New category',
|
||||
'without_category' => 'Without a category',
|
||||
'update_category' => 'Wijzig categorie',
|
||||
'categories' => 'Categories',
|
||||
'no_category' => '(no category)',
|
||||
'category' => 'Category',
|
||||
|
||||
// new user:
|
||||
'welcome' => 'Welcome to Firefly!',
|
||||
'createNewAsset' => 'Create a new asset account to get started. This will allow you to create transactions and start your financial management',
|
||||
@@ -94,7 +110,6 @@ return [
|
||||
'Expense account' => 'Expense account',
|
||||
'Revenue account' => 'Revenue account',
|
||||
'budgets' => 'Budgets',
|
||||
'categories' => 'Categories',
|
||||
'tags' => 'Tags',
|
||||
'reports' => 'Reports',
|
||||
'transactions' => 'Transactions',
|
||||
@@ -171,9 +186,7 @@ return [
|
||||
'spent' => 'Spent',
|
||||
'overspent' => 'Overspent',
|
||||
'left' => 'Left',
|
||||
'noCategory' => '(no category)',
|
||||
'noBudget' => '(no budget)',
|
||||
'category' => 'Category',
|
||||
'maxAmount' => 'Maximum amount',
|
||||
'minAmount' => 'Minumum amount',
|
||||
'billEntry' => 'Current bill entry',
|
||||
|
||||
@@ -29,8 +29,8 @@ return [
|
||||
'transactionsWithoutBudgetDate' => 'Uitgaven zonder budget in :date',
|
||||
'createBudget' => 'Maak nieuw budget',
|
||||
'inactiveBudgets' => 'Inactieve budgetten',
|
||||
'newCategory' => 'Nieuwe categorie',
|
||||
'withoutCategory' => 'Zonder categorie',
|
||||
|
||||
// accounts:
|
||||
|
||||
'details_for_asset' => 'Overzicht voor betaalrekening ":name"',
|
||||
'details_for_expense' => 'Overzicht voor crediteur ":name"',
|
||||
@@ -45,6 +45,14 @@ return [
|
||||
'edit_expense_account' => 'Wijzig crediteur ":name"',
|
||||
'edit_revenue_account' => 'Wijzig debiteur ":name"',
|
||||
|
||||
'delete_asset_account' => 'Verwijder betaalrekening ":name"',
|
||||
'delete_expense_account' => 'Verwijder crediteur ":name"',
|
||||
'delete_revenue_account' => 'Verwijder debiteur ":name"',
|
||||
|
||||
'asset_deleted' => 'Betaalrekening ":name" is verwijderd.',
|
||||
'expense_deleted' => 'Crediteur ":name" is verwijderd.',
|
||||
'revenue_deleted' => 'Debiteur ":name" is verwijderd.',
|
||||
|
||||
'update_asset_account' => 'Wijzig betaalrekening',
|
||||
'update_expense_account' => 'Wijzig crediteur',
|
||||
'update_revenue_account' => 'Wijzig debiteur',
|
||||
@@ -53,6 +61,14 @@ return [
|
||||
'make_new_expense_account' => 'Nieuwe crediteur',
|
||||
'make_new_revenue_account' => 'Nieuwe debiteur',
|
||||
|
||||
// categories:
|
||||
'new_category' => 'Nieuwe categorie',
|
||||
'without_category' => 'Zonder categorie',
|
||||
'update_category' => 'Wijzig categorie',
|
||||
'categories' => 'Categorieën',
|
||||
'no_category' => '(geen categorie)',
|
||||
'category' => 'Categorie',
|
||||
|
||||
// new user:
|
||||
'welcome' => 'Welkom bij Firefly!',
|
||||
'createNewAsset' => 'Maak om te beginnen een nieuwe betaalrekening. Dit is je start van je financiële beheer.',
|
||||
@@ -94,7 +110,6 @@ return [
|
||||
'Expense account' => 'Crediteur',
|
||||
'Revenue account' => 'Debiteur',
|
||||
'budgets' => 'Budgetten',
|
||||
'categories' => 'Categorieën',
|
||||
'tags' => 'Tags',
|
||||
'reports' => 'Overzichten',
|
||||
'transactions' => 'Transacties',
|
||||
@@ -134,10 +149,10 @@ return [
|
||||
'accountBalances' => 'Rekeningsaldi',
|
||||
'balanceStartOfYear' => 'Saldo aan het begin van het jaar',
|
||||
'balanceEndOfYear' => 'Saldo aan het einde van het jaar',
|
||||
'balanceStartOfMonth' => 'Saldo aan het einde van de maand',
|
||||
'balanceStartOfMonth' => 'Saldo aan het begin van de maand',
|
||||
'balanceEndOfMonth' => 'Saldo aan het einde van de maand',
|
||||
|
||||
'balanceStart' => 'Saldo aan het einde van de periode',
|
||||
'balanceStart' => 'Saldo aan het begin van de periode',
|
||||
'balanceEnd' => 'Saldo aan het einde van de periode',
|
||||
|
||||
'reportsOwnAccounts' => 'Overzichten voor je eigen betaalrekeningen',
|
||||
@@ -171,9 +186,7 @@ return [
|
||||
'spent' => 'Uitgegeven',
|
||||
'overspent' => 'Teveel uitgegeven',
|
||||
'left' => 'Over',
|
||||
'noCategory' => '(geen categorie)',
|
||||
'noBudget' => '(geen budget)',
|
||||
'category' => 'Categorie',
|
||||
'maxAmount' => 'Maximaal bedrag',
|
||||
'minAmount' => 'Minimaal bedrag',
|
||||
'billEntry' => 'Bedrag voor deze rekening',
|
||||
|
||||
@@ -18,4 +18,4 @@
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -34,7 +34,7 @@
|
||||
<div class="col-lg-12 col-md-12 col-sm-12 col-xs-12">
|
||||
<p>
|
||||
<button type="submit" class="btn btn-lg btn-success">
|
||||
Update category
|
||||
{{ 'update_category'|_ }}
|
||||
</button>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
<span class="caret"></span>
|
||||
</button>
|
||||
<ul class="dropdown-menu pull-right" role="menu">
|
||||
<li><a href="{{ route('categories.create') }}"><i class="fa fa-plus fa-fw"></i> {{ 'newCategory'|_ }}</a></li>
|
||||
<li><a href="{{ route('categories.create') }}"><i class="fa fa-plus fa-fw"></i> {{ 'new_category'|_ }}</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
<tbody>
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td><a href="{{ route('categories.noCategory') }}"><em>{{ 'withoutCategory'|_ }}</em></a></td>
|
||||
<td><a href="{{ route('categories.noCategory') }}"><em>{{ 'without_category'|_ }}</em></a></td>
|
||||
<td> </td>
|
||||
</tr>
|
||||
{% for category in categories %}
|
||||
|
||||
@@ -10,11 +10,11 @@
|
||||
</tr>
|
||||
<tr>
|
||||
<td>{{ 'out'|_ }}</td>
|
||||
<td><span class="text-danger">{{ (expenses.getTotal * -1)|formatAmountPlain }}</span></td>
|
||||
<td><span class="text-danger">{{ (expenses.getTotal)|formatAmountPlain }}</span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>{{ 'difference'|_ }}</td>
|
||||
<td>{{ (incomes.getTotal + expenses.getTotal)|formatAmount }}</td>
|
||||
<td>{{ (incomes.getTotal + (expenses.getTotal * -1))|formatAmount }}</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
@@ -47,6 +47,9 @@ class AccountControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
public function createAccount()
|
||||
{
|
||||
if (is_null($this->account)) {
|
||||
@@ -54,6 +57,9 @@ class AccountControllerTest extends TestCase
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\AccountController::create
|
||||
*/
|
||||
public function testCreate()
|
||||
{
|
||||
$pref = FactoryMuffin::create('FireflyIII\Models\Preference');
|
||||
@@ -79,6 +85,9 @@ class AccountControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\AccountController::delete
|
||||
*/
|
||||
public function testDelete()
|
||||
{
|
||||
|
||||
@@ -89,6 +98,9 @@ class AccountControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\AccountController::destroy
|
||||
*/
|
||||
public function testDestroy()
|
||||
{
|
||||
// fake an account.
|
||||
@@ -106,6 +118,9 @@ class AccountControllerTest extends TestCase
|
||||
$this->assertResponseStatus(302);
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\AccountController::edit
|
||||
*/
|
||||
public function testEdit()
|
||||
{
|
||||
// fake an account.
|
||||
@@ -139,6 +154,9 @@ class AccountControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\AccountController::index
|
||||
*/
|
||||
public function testIndex()
|
||||
{
|
||||
// an account:
|
||||
@@ -166,6 +184,9 @@ class AccountControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\AccountController::show
|
||||
*/
|
||||
public function testShow()
|
||||
{
|
||||
// an account:
|
||||
@@ -181,6 +202,9 @@ class AccountControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\AccountController::store
|
||||
*/
|
||||
public function testStore()
|
||||
{
|
||||
// an account:
|
||||
@@ -211,6 +235,9 @@ class AccountControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\AccountController::store
|
||||
*/
|
||||
public function testStoreAndRedirect()
|
||||
{
|
||||
// an account:
|
||||
@@ -242,6 +269,9 @@ class AccountControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\AccountController::update
|
||||
*/
|
||||
public function testUpdate()
|
||||
{
|
||||
|
||||
@@ -272,6 +302,9 @@ class AccountControllerTest extends TestCase
|
||||
$this->assertSessionHas('success');
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\AccountController::update
|
||||
*/
|
||||
public function testUpdateAndRedirect()
|
||||
{
|
||||
|
||||
|
||||
@@ -36,6 +36,9 @@ class AuthControllerTest extends TestCase
|
||||
parent::tearDown();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\Auth\AuthController::postRegister
|
||||
*/
|
||||
public function testPostRegister()
|
||||
{
|
||||
|
||||
@@ -50,6 +53,9 @@ class AuthControllerTest extends TestCase
|
||||
$this->assertSessionHas('success');
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\Auth\AuthController::postRegister
|
||||
*/
|
||||
public function testPostRegisterFails()
|
||||
{
|
||||
|
||||
|
||||
@@ -38,6 +38,9 @@ class BillControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\BillController::create
|
||||
*/
|
||||
public function testCreate()
|
||||
{
|
||||
// go!
|
||||
@@ -56,6 +59,9 @@ class BillControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\BillController::delete
|
||||
*/
|
||||
public function testDelete()
|
||||
{
|
||||
$bill = FactoryMuffin::create('FireflyIII\Models\Bill');
|
||||
@@ -65,6 +71,9 @@ class BillControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\BillController::destroy
|
||||
*/
|
||||
public function testDestroy()
|
||||
{
|
||||
$bill = FactoryMuffin::create('FireflyIII\Models\Bill');
|
||||
@@ -79,6 +88,9 @@ class BillControllerTest extends TestCase
|
||||
$this->assertResponseStatus(302);
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\BillController::edit
|
||||
*/
|
||||
public function testEdit()
|
||||
{
|
||||
$bill = FactoryMuffin::create('FireflyIII\Models\Bill');
|
||||
@@ -95,6 +107,9 @@ class BillControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\BillController::index
|
||||
*/
|
||||
public function testIndex()
|
||||
{
|
||||
$bill = FactoryMuffin::create('FireflyIII\Models\Bill');
|
||||
@@ -116,6 +131,9 @@ class BillControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\BillController::rescan
|
||||
*/
|
||||
public function testRescan()
|
||||
{
|
||||
$bill = FactoryMuffin::create('FireflyIII\Models\Bill');
|
||||
@@ -135,6 +153,9 @@ class BillControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\BillController::rescan
|
||||
*/
|
||||
public function testRescanInactive()
|
||||
{
|
||||
$bill = FactoryMuffin::create('FireflyIII\Models\Bill');
|
||||
@@ -148,6 +169,9 @@ class BillControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\BillController::show
|
||||
*/
|
||||
public function testShow()
|
||||
{
|
||||
$bill = FactoryMuffin::create('FireflyIII\Models\Bill');
|
||||
@@ -170,6 +194,9 @@ class BillControllerTest extends TestCase
|
||||
$this->call('GET', '/bills/show/' . $bill->id);
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\BillController::store
|
||||
*/
|
||||
public function testStore()
|
||||
{
|
||||
$bill = FactoryMuffin::create('FireflyIII\Models\Bill');
|
||||
@@ -185,6 +212,9 @@ class BillControllerTest extends TestCase
|
||||
$this->assertSessionHas('success', 'Bill "' . e($bill->name) . '" stored.');
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\BillController::store
|
||||
*/
|
||||
public function testStoreAndRedirect()
|
||||
{
|
||||
$bill = FactoryMuffin::create('FireflyIII\Models\Bill');
|
||||
@@ -200,6 +230,9 @@ class BillControllerTest extends TestCase
|
||||
$this->assertSessionHas('success', 'Bill "' . e($bill->name) . '" stored.');
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\BillController::update
|
||||
*/
|
||||
public function testUpdate()
|
||||
{
|
||||
$bill = FactoryMuffin::create('FireflyIII\Models\Bill');
|
||||
@@ -215,6 +248,9 @@ class BillControllerTest extends TestCase
|
||||
$this->assertSessionHas('success', 'Bill "' . e($bill->name) . '" updated.');
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\BillController::update
|
||||
*/
|
||||
public function testUpdateAndRedirect()
|
||||
{
|
||||
$bill = FactoryMuffin::create('FireflyIII\Models\Bill');
|
||||
|
||||
@@ -39,6 +39,9 @@ class BudgetControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\BudgetController::amount
|
||||
*/
|
||||
public function testAmount()
|
||||
{
|
||||
$repository = $this->mock('FireflyIII\Repositories\Budget\BudgetRepositoryInterface');
|
||||
@@ -54,6 +57,9 @@ class BudgetControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\BudgetController::create
|
||||
*/
|
||||
public function testCreate()
|
||||
{
|
||||
$budget = FactoryMuffin::create('FireflyIII\Models\Budget');
|
||||
@@ -63,6 +69,9 @@ class BudgetControllerTest extends TestCase
|
||||
$this->assertViewHas('subTitle', 'Create a new budget');
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\BudgetController::delete
|
||||
*/
|
||||
public function testDelete()
|
||||
{
|
||||
$budget = FactoryMuffin::create('FireflyIII\Models\Budget');
|
||||
@@ -75,6 +84,9 @@ class BudgetControllerTest extends TestCase
|
||||
$this->assertSessionHas('budgets.delete.url');
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\BudgetController::destroy
|
||||
*/
|
||||
public function testDestroy()
|
||||
{
|
||||
$budget = FactoryMuffin::create('FireflyIII\Models\Budget');
|
||||
@@ -89,6 +101,9 @@ class BudgetControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\BudgetController::edit
|
||||
*/
|
||||
public function testEdit()
|
||||
{
|
||||
$budget = FactoryMuffin::create('FireflyIII\Models\Budget');
|
||||
@@ -102,6 +117,9 @@ class BudgetControllerTest extends TestCase
|
||||
$this->assertSessionHas('budgets.edit.url');
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\BudgetController::index
|
||||
*/
|
||||
public function testIndex()
|
||||
{
|
||||
$budget = FactoryMuffin::create('FireflyIII\Models\Budget');
|
||||
@@ -127,6 +145,9 @@ class BudgetControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\BudgetController::noBudget
|
||||
*/
|
||||
public function testNoBudget()
|
||||
{
|
||||
$budget = FactoryMuffin::create('FireflyIII\Models\Budget');
|
||||
@@ -140,6 +161,9 @@ class BudgetControllerTest extends TestCase
|
||||
$this->assertViewHas('subTitle');
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\BudgetController::postUpdateIncome
|
||||
*/
|
||||
public function testPostUpdateIncome()
|
||||
{
|
||||
|
||||
@@ -160,6 +184,9 @@ class BudgetControllerTest extends TestCase
|
||||
$this->assertRedirectedToRoute('budgets.index');
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\BudgetController::show
|
||||
*/
|
||||
public function testShow()
|
||||
{
|
||||
$budget = FactoryMuffin::create('FireflyIII\Models\Budget');
|
||||
@@ -179,6 +206,9 @@ class BudgetControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\BudgetController::show
|
||||
*/
|
||||
public function testShowInvalidRepetition()
|
||||
{
|
||||
|
||||
@@ -203,6 +233,9 @@ class BudgetControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\BudgetController::store
|
||||
*/
|
||||
public function testStore()
|
||||
{
|
||||
// a budget:
|
||||
@@ -228,6 +261,9 @@ class BudgetControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\BudgetController::store
|
||||
*/
|
||||
public function testStoreAndRedirect()
|
||||
{
|
||||
// a budget:
|
||||
@@ -254,6 +290,9 @@ class BudgetControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\BudgetController::update
|
||||
*/
|
||||
public function testUpdate()
|
||||
{
|
||||
|
||||
@@ -280,6 +319,9 @@ class BudgetControllerTest extends TestCase
|
||||
$this->assertSessionHas('success');
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\BudgetController::update
|
||||
*/
|
||||
public function testUpdateAndRedirect()
|
||||
{
|
||||
|
||||
@@ -307,6 +349,9 @@ class BudgetControllerTest extends TestCase
|
||||
$this->assertSessionHas('success');
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\BudgetController::updateIncome
|
||||
*/
|
||||
public function testUpdateIncome()
|
||||
{
|
||||
|
||||
|
||||
@@ -40,6 +40,9 @@ class CategoryControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\CategoryController::create
|
||||
*/
|
||||
public function testCreate()
|
||||
{
|
||||
$category = FactoryMuffin::create('FireflyIII\Models\Category');
|
||||
@@ -50,6 +53,9 @@ class CategoryControllerTest extends TestCase
|
||||
$this->assertViewHas('subTitle', 'Create a new category');
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\CategoryController::delete
|
||||
*/
|
||||
public function testDelete()
|
||||
{
|
||||
|
||||
@@ -61,6 +67,9 @@ class CategoryControllerTest extends TestCase
|
||||
$this->assertViewHas('subTitle', 'Delete category "' . e($category->name) . '"');
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\CategoryController::destroy
|
||||
*/
|
||||
public function testDestroy()
|
||||
{
|
||||
$category = FactoryMuffin::create('FireflyIII\Models\Category');
|
||||
@@ -74,6 +83,9 @@ class CategoryControllerTest extends TestCase
|
||||
$this->assertSessionHas('success', 'The category "' . e($category->name) . '" was deleted.');
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\CategoryController::edit
|
||||
*/
|
||||
public function testEdit()
|
||||
{
|
||||
$category = FactoryMuffin::create('FireflyIII\Models\Category');
|
||||
@@ -84,6 +96,9 @@ class CategoryControllerTest extends TestCase
|
||||
$this->assertViewHas('subTitle', 'Edit category "' . e($category->name) . '"');
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\CategoryController::index
|
||||
*/
|
||||
public function testIndex()
|
||||
{
|
||||
$collection = new Collection;
|
||||
@@ -102,6 +117,9 @@ class CategoryControllerTest extends TestCase
|
||||
$this->assertViewHas('categories');
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\CategoryController::noCategory
|
||||
*/
|
||||
public function testNoCategory()
|
||||
{
|
||||
$collection = new Collection;
|
||||
@@ -123,6 +141,9 @@ class CategoryControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\CategoryController::show
|
||||
*/
|
||||
public function testShow()
|
||||
{
|
||||
$category = FactoryMuffin::create('FireflyIII\Models\Category');
|
||||
@@ -145,6 +166,10 @@ class CategoryControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\CategoryController::store
|
||||
*/
|
||||
public function testStore()
|
||||
{
|
||||
// create
|
||||
@@ -164,7 +189,9 @@ class CategoryControllerTest extends TestCase
|
||||
$this->assertSessionHas('success', 'New category "' . $category->name . '" stored!');
|
||||
}
|
||||
|
||||
//
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\CategoryController::store
|
||||
*/
|
||||
public function testStoreAndRedirect()
|
||||
{
|
||||
// create
|
||||
@@ -185,6 +212,9 @@ class CategoryControllerTest extends TestCase
|
||||
$this->assertSessionHas('success', 'New category "' . $category->name . '" stored!');
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\CategoryController::update
|
||||
*/
|
||||
public function testUpdate()
|
||||
{
|
||||
// create
|
||||
@@ -204,6 +234,9 @@ class CategoryControllerTest extends TestCase
|
||||
$this->assertSessionHas('success', 'Category "' . $category->name . '" updated.');
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\CategoryController::update
|
||||
*/
|
||||
public function testUpdateAndRedirect()
|
||||
{
|
||||
// create
|
||||
|
||||
@@ -37,6 +37,9 @@ class CurrencyControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\CurrencyController::create
|
||||
*/
|
||||
public function testCreate()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -49,6 +52,9 @@ class CurrencyControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\CurrencyController::defaultCurrency
|
||||
*/
|
||||
public function testDefaultCurrency()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -60,6 +66,9 @@ class CurrencyControllerTest extends TestCase
|
||||
$this->assertSessionHas('success', $currency->name . ' is now the default currency.');
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\CurrencyController::delete
|
||||
*/
|
||||
public function testDelete()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -75,6 +84,9 @@ class CurrencyControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\CurrencyController::delete
|
||||
*/
|
||||
public function testDeleteUnable()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -90,6 +102,9 @@ class CurrencyControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\CurrencyController::destroy
|
||||
*/
|
||||
public function testDestroy()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -105,6 +120,9 @@ class CurrencyControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\CurrencyController::destroy
|
||||
*/
|
||||
public function testDestroyUnable()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -120,6 +138,9 @@ class CurrencyControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\CurrencyController::edit
|
||||
*/
|
||||
public function testEdit()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -134,6 +155,9 @@ class CurrencyControllerTest extends TestCase
|
||||
$this->assertViewHas('currency');
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\CurrencyController::index
|
||||
*/
|
||||
public function testIndex()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -148,6 +172,9 @@ class CurrencyControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\CurrencyController::store
|
||||
*/
|
||||
public function testStore()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -166,6 +193,9 @@ class CurrencyControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\CurrencyController::store
|
||||
*/
|
||||
public function testStoreAndReturn()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -184,6 +214,9 @@ class CurrencyControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\CurrencyController::update
|
||||
*/
|
||||
public function testUpdate()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -200,6 +233,9 @@ class CurrencyControllerTest extends TestCase
|
||||
$this->assertSessionHas('success');
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\CurrencyController::update
|
||||
*/
|
||||
public function testUpdateAndReturn()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
|
||||
@@ -38,6 +38,7 @@ class HelpControllerTest extends TestCase
|
||||
|
||||
/**
|
||||
* Everything present and accounted for, and in cache:
|
||||
* @covers FireflyIII\Http\Controllers\HelpController::show
|
||||
*/
|
||||
public function testGetHelpText()
|
||||
{
|
||||
@@ -58,6 +59,7 @@ class HelpControllerTest extends TestCase
|
||||
|
||||
/**
|
||||
* Everything present and accounted for, but not cached
|
||||
* @covers FireflyIII\Http\Controllers\HelpController::show
|
||||
*/
|
||||
public function testGetHelpTextNoCache()
|
||||
{
|
||||
@@ -80,6 +82,7 @@ class HelpControllerTest extends TestCase
|
||||
|
||||
/**
|
||||
* No such route.
|
||||
* @covers FireflyIII\Http\Controllers\HelpController::show
|
||||
*/
|
||||
public function testGetHelpTextNoRoute()
|
||||
{
|
||||
|
||||
@@ -66,7 +66,7 @@ class HomeControllerTest extends TestCase
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @covers FireflyIII\Http\Controllers\HomeController::flush
|
||||
*/
|
||||
public function testFlush()
|
||||
{
|
||||
|
||||
@@ -37,6 +37,9 @@ class JsonControllerTest extends TestCase
|
||||
parent::tearDown();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\JsonController::boxBillsPaid
|
||||
*/
|
||||
public function testBoxBillsPaid()
|
||||
{
|
||||
$bill = FactoryMuffin::create('FireflyIII\Models\Bill');
|
||||
@@ -66,6 +69,9 @@ class JsonControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\JsonController::boxBillsUnpaid
|
||||
*/
|
||||
public function testBoxBillsUnpaid()
|
||||
{
|
||||
$bill = FactoryMuffin::create('FireflyIII\Models\Bill');
|
||||
@@ -92,6 +98,9 @@ class JsonControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\JsonController::boxIn
|
||||
*/
|
||||
public function testBoxIn()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -106,6 +115,9 @@ class JsonControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\JsonController::boxOut
|
||||
*/
|
||||
public function testBoxOut()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -120,6 +132,9 @@ class JsonControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\JsonController::categories
|
||||
*/
|
||||
public function testCategories()
|
||||
{
|
||||
$category = FactoryMuffin::create('FireflyIII\Models\Category');
|
||||
@@ -133,6 +148,9 @@ class JsonControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\JsonController::expenseAccounts
|
||||
*/
|
||||
public function testExpenseAccounts()
|
||||
{
|
||||
$account = FactoryMuffin::create('FireflyIII\Models\Account');
|
||||
@@ -146,6 +164,9 @@ class JsonControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\JsonController::revenueAccounts
|
||||
*/
|
||||
public function testRevenueAccounts()
|
||||
{
|
||||
$account = FactoryMuffin::create('FireflyIII\Models\Account');
|
||||
@@ -159,6 +180,9 @@ class JsonControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\JsonController::tags
|
||||
*/
|
||||
public function testTags()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -177,6 +201,9 @@ class JsonControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\JsonController::transactionJournals
|
||||
*/
|
||||
public function testTransactionJournals()
|
||||
{
|
||||
$journal = FactoryMuffin::create('FireflyIII\Models\TransactionJournal');
|
||||
|
||||
@@ -42,6 +42,9 @@ class PiggyBankControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\PiggyBankController::add
|
||||
*/
|
||||
public function testAdd()
|
||||
{
|
||||
$piggyBank = FactoryMuffin::create('FireflyIII\Models\PiggyBank');
|
||||
@@ -60,6 +63,9 @@ class PiggyBankControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\PiggyBankController::create
|
||||
*/
|
||||
public function testCreate()
|
||||
{
|
||||
$account = FactoryMuffin::create('FireflyIII\Models\Account');
|
||||
@@ -84,6 +90,9 @@ class PiggyBankControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\PiggyBankController::delete
|
||||
*/
|
||||
public function testDelete()
|
||||
{
|
||||
$piggyBank = FactoryMuffin::create('FireflyIII\Models\PiggyBank');
|
||||
@@ -95,6 +104,9 @@ class PiggyBankControllerTest extends TestCase
|
||||
$this->assertViewHas('subTitle', 'Delete "' . e($piggyBank->name) . '"');
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\PiggyBankController::destroy
|
||||
*/
|
||||
public function testDestroy()
|
||||
{
|
||||
$piggyBank = FactoryMuffin::create('FireflyIII\Models\PiggyBank');
|
||||
@@ -110,6 +122,9 @@ class PiggyBankControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\PiggyBankController::edit
|
||||
*/
|
||||
public function testEdit()
|
||||
{
|
||||
$piggyBank = FactoryMuffin::create('FireflyIII\Models\PiggyBank');
|
||||
@@ -137,6 +152,9 @@ class PiggyBankControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\PiggyBankController::edit
|
||||
*/
|
||||
public function testEditNullDate()
|
||||
{
|
||||
$piggyBank = FactoryMuffin::create('FireflyIII\Models\PiggyBank');
|
||||
@@ -164,6 +182,9 @@ class PiggyBankControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\PiggyBankController::index
|
||||
*/
|
||||
public function testIndex()
|
||||
{
|
||||
$piggyBank1 = FactoryMuffin::create('FireflyIII\Models\PiggyBank');
|
||||
@@ -194,6 +215,9 @@ class PiggyBankControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\PiggyBankController::order
|
||||
*/
|
||||
public function testOrder()
|
||||
{
|
||||
$piggyBank1 = FactoryMuffin::create('FireflyIII\Models\PiggyBank');
|
||||
@@ -214,6 +238,9 @@ class PiggyBankControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\PiggyBankController::postAdd
|
||||
*/
|
||||
public function testPostAdd()
|
||||
{
|
||||
$piggyBank = FactoryMuffin::create('FireflyIII\Models\PiggyBank');
|
||||
@@ -232,6 +259,9 @@ class PiggyBankControllerTest extends TestCase
|
||||
$this->assertResponseStatus(302);
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\PiggyBankController::postAdd
|
||||
*/
|
||||
public function testPostAddOverdraw()
|
||||
{
|
||||
$piggyBank = FactoryMuffin::create('FireflyIII\Models\PiggyBank');
|
||||
@@ -250,6 +280,9 @@ class PiggyBankControllerTest extends TestCase
|
||||
$this->assertResponseStatus(302);
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\PiggyBankController::postRemove
|
||||
*/
|
||||
public function testPostRemove()
|
||||
{
|
||||
$piggyBank = FactoryMuffin::create('FireflyIII\Models\PiggyBank');
|
||||
@@ -286,7 +319,9 @@ class PiggyBankControllerTest extends TestCase
|
||||
$this->assertResponseStatus(302);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\PiggyBankController::remove
|
||||
*/
|
||||
public function testRemove()
|
||||
{
|
||||
$piggyBank = FactoryMuffin::create('FireflyIII\Models\PiggyBank');
|
||||
@@ -300,6 +335,9 @@ class PiggyBankControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\PiggyBankController::show
|
||||
*/
|
||||
public function testShow()
|
||||
{
|
||||
$piggyBank = FactoryMuffin::create('FireflyIII\Models\PiggyBank');
|
||||
@@ -316,6 +354,9 @@ class PiggyBankControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\PiggyBankController::store
|
||||
*/
|
||||
public function testStore()
|
||||
{
|
||||
$piggyBank = FactoryMuffin::create('FireflyIII\Models\PiggyBank');
|
||||
@@ -338,6 +379,9 @@ class PiggyBankControllerTest extends TestCase
|
||||
$this->assertResponseStatus(302);
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\PiggyBankController::store
|
||||
*/
|
||||
public function testStoreCreateAnother()
|
||||
{
|
||||
$piggyBank = FactoryMuffin::create('FireflyIII\Models\PiggyBank');
|
||||
@@ -361,6 +405,9 @@ class PiggyBankControllerTest extends TestCase
|
||||
$this->assertResponseStatus(302);
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\PiggyBankController::update
|
||||
*/
|
||||
public function testUpdate()
|
||||
{
|
||||
$piggyBank = FactoryMuffin::create('FireflyIII\Models\PiggyBank');
|
||||
@@ -383,6 +430,9 @@ class PiggyBankControllerTest extends TestCase
|
||||
$this->assertResponseStatus(302);
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\PiggyBankController::update
|
||||
*/
|
||||
public function testUpdateReturnToEdit()
|
||||
{
|
||||
$piggyBank = FactoryMuffin::create('FireflyIII\Models\PiggyBank');
|
||||
|
||||
@@ -37,6 +37,9 @@ class PreferencesControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\PreferencesController::index
|
||||
*/
|
||||
public function testIndex()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -69,6 +72,9 @@ class PreferencesControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\PreferencesController::postIndex
|
||||
*/
|
||||
public function testPostIndex()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
|
||||
@@ -34,6 +34,9 @@ class ProfileControllerTest extends TestCase
|
||||
parent::tearDown();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\ProfileController::changePassword
|
||||
*/
|
||||
public function testChangePassword()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -43,6 +46,9 @@ class ProfileControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\ProfileController::deleteAccount
|
||||
*/
|
||||
public function testDeleteAccount()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -52,6 +58,9 @@ class ProfileControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\ProfileController::index
|
||||
*/
|
||||
public function testIndex()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -61,6 +70,10 @@ class ProfileControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\ProfileController::postChangePassword
|
||||
* @covers FireflyIII\Http\Controllers\ProfileController::validatePassword
|
||||
*/
|
||||
public function testPostChangePassword()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -83,6 +96,10 @@ class ProfileControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\ProfileController::postChangePassword
|
||||
* @covers FireflyIII\Http\Controllers\ProfileController::validatePassword
|
||||
*/
|
||||
public function testPostChangePasswordInvalidCurrent()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -105,6 +122,10 @@ class ProfileControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\ProfileController::postChangePassword
|
||||
* @covers FireflyIII\Http\Controllers\ProfileController::validatePassword
|
||||
*/
|
||||
public function testPostChangePasswordNoNewPassword()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -128,6 +149,9 @@ class ProfileControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\ProfileController::postDeleteAccount
|
||||
*/
|
||||
public function testPostDeleteAccount()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -147,6 +171,9 @@ class ProfileControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\ProfileController::postDeleteAccount
|
||||
*/
|
||||
public function testPostDeleteAccountInvalidPassword()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
|
||||
@@ -36,6 +36,9 @@ class ReminderControllerTest extends TestCase
|
||||
parent::tearDown();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\ReminderController::act
|
||||
*/
|
||||
public function testAct()
|
||||
{
|
||||
$reminder = FactoryMuffin::create('FireflyIII\Models\Reminder');
|
||||
@@ -47,6 +50,9 @@ class ReminderControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\ReminderController::dismiss
|
||||
*/
|
||||
public function testDismiss()
|
||||
{
|
||||
$reminder = FactoryMuffin::create('FireflyIII\Models\Reminder');
|
||||
@@ -57,6 +63,9 @@ class ReminderControllerTest extends TestCase
|
||||
$this->assertRedirectedTo('/');
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\ReminderController::index
|
||||
*/
|
||||
public function testIndex()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -75,6 +84,9 @@ class ReminderControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\ReminderController::show
|
||||
*/
|
||||
public function testShow()
|
||||
{
|
||||
$reminder = FactoryMuffin::create('FireflyIII\Models\Reminder');
|
||||
@@ -86,6 +98,9 @@ class ReminderControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\ReminderController::show
|
||||
*/
|
||||
public function testShowDismissed()
|
||||
{
|
||||
$reminder = FactoryMuffin::create('FireflyIII\Models\Reminder');
|
||||
|
||||
@@ -37,6 +37,9 @@ class ReportControllerTest extends TestCase
|
||||
parent::tearDown();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\ReportController::index
|
||||
*/
|
||||
public function testIndex()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -66,6 +69,9 @@ class ReportControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\ReportController::month
|
||||
*/
|
||||
public function testMonth()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -93,6 +99,9 @@ class ReportControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\ReportController::month
|
||||
*/
|
||||
public function testMonthShared()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -119,6 +128,9 @@ class ReportControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\ReportController::year
|
||||
*/
|
||||
public function testYear()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
|
||||
@@ -36,6 +36,9 @@ class SearchControllerTest extends TestCase
|
||||
parent::tearDown();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\SearchController::index
|
||||
*/
|
||||
public function testSearch()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
|
||||
@@ -37,6 +37,9 @@ class TagControllerTest extends TestCase
|
||||
parent::tearDown();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\TagController::create
|
||||
*/
|
||||
public function testCreate()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -46,6 +49,9 @@ class TagControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\TagController::delete
|
||||
*/
|
||||
public function testDelete()
|
||||
{
|
||||
$tag = FactoryMuffin::create('FireflyIII\Models\Tag');
|
||||
@@ -55,6 +61,9 @@ class TagControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\TagController::destroy
|
||||
*/
|
||||
public function testDestroy()
|
||||
{
|
||||
$tag = FactoryMuffin::create('FireflyIII\Models\Tag');
|
||||
@@ -66,6 +75,9 @@ class TagControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\TagController::edit
|
||||
*/
|
||||
public function testEdit()
|
||||
{
|
||||
$tag = FactoryMuffin::create('FireflyIII\Models\Tag');
|
||||
@@ -75,6 +87,9 @@ class TagControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\TagController::edit
|
||||
*/
|
||||
public function testEditBalancingAct()
|
||||
{
|
||||
$tag = FactoryMuffin::create('FireflyIII\Models\Tag');
|
||||
@@ -93,6 +108,9 @@ class TagControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\TagController::edit
|
||||
*/
|
||||
public function testEditThreeExpenses()
|
||||
{
|
||||
$tag = FactoryMuffin::create('FireflyIII\Models\Tag');
|
||||
@@ -116,6 +134,9 @@ class TagControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\TagController::hideTagHelp
|
||||
*/
|
||||
public function testHideTagHelp()
|
||||
{
|
||||
$tag = FactoryMuffin::create('FireflyIII\Models\Tag');
|
||||
@@ -125,6 +146,9 @@ class TagControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\TagController::index
|
||||
*/
|
||||
public function testIndex()
|
||||
{
|
||||
$tag = FactoryMuffin::create('FireflyIII\Models\Tag');
|
||||
@@ -134,6 +158,9 @@ class TagControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\TagController::edit
|
||||
*/
|
||||
public function testMultipleDeposits()
|
||||
{
|
||||
$tag = FactoryMuffin::create('FireflyIII\Models\Tag');
|
||||
@@ -156,6 +183,9 @@ class TagControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\TagController::show
|
||||
*/
|
||||
public function testShow()
|
||||
{
|
||||
$tag = FactoryMuffin::create('FireflyIII\Models\Tag');
|
||||
@@ -165,6 +195,9 @@ class TagControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\TagController::store
|
||||
*/
|
||||
public function testStore()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -179,6 +212,9 @@ class TagControllerTest extends TestCase
|
||||
$this->assertResponseStatus(302);
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\TagController::store
|
||||
*/
|
||||
public function testStoreWithLocation()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -214,6 +250,9 @@ class TagControllerTest extends TestCase
|
||||
$this->assertResponseStatus(302);
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\TagController::update
|
||||
*/
|
||||
public function testUpdateWithLocation()
|
||||
{
|
||||
$tag = FactoryMuffin::create('FireflyIII\Models\Tag');
|
||||
|
||||
@@ -39,7 +39,9 @@ class TransactionControllerTest extends TestCase
|
||||
parent::tearDown();
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\TransactionController::create
|
||||
*/
|
||||
public function testCreate()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -57,6 +59,9 @@ class TransactionControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\TransactionController::delete
|
||||
*/
|
||||
public function testDelete()
|
||||
{
|
||||
$journal = FactoryMuffin::create('FireflyIII\Models\TransactionJournal');
|
||||
@@ -66,6 +71,9 @@ class TransactionControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\TransactionController::destroy
|
||||
*/
|
||||
public function testDestroy()
|
||||
{
|
||||
$journal = FactoryMuffin::create('FireflyIII\Models\TransactionJournal');
|
||||
@@ -84,6 +92,7 @@ class TransactionControllerTest extends TestCase
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\TransactionController::edit
|
||||
* @SuppressWarnings(PHPMD.ExcessiveMethodLength)
|
||||
*/
|
||||
public function testEdit()
|
||||
@@ -136,6 +145,9 @@ class TransactionControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\TransactionController::index
|
||||
*/
|
||||
public function testIndexRevenue()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -152,6 +164,9 @@ class TransactionControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\TransactionController::index
|
||||
*/
|
||||
public function testIndexTransfer()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -167,6 +182,9 @@ class TransactionControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\TransactionController::index
|
||||
*/
|
||||
public function testIndexWithdrawal()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -182,6 +200,9 @@ class TransactionControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\TransactionController::reorder
|
||||
*/
|
||||
public function testReorder()
|
||||
{
|
||||
$journal = FactoryMuffin::create('FireflyIII\Models\TransactionJournal');
|
||||
@@ -203,6 +224,9 @@ class TransactionControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\TransactionController::show
|
||||
*/
|
||||
public function testShow()
|
||||
{
|
||||
$journal = FactoryMuffin::create('FireflyIII\Models\TransactionJournal');
|
||||
@@ -231,8 +255,9 @@ class TransactionControllerTest extends TestCase
|
||||
|
||||
/**
|
||||
* @SuppressWarnings(PHPMD.ExcessiveMethodLength)
|
||||
* @covers FireflyIII\Http\Controllers\TransactionController::store
|
||||
*/
|
||||
public function testStore()
|
||||
public function testStoreCreateAnother()
|
||||
{
|
||||
$account = FactoryMuffin::create('FireflyIII\Models\Account');
|
||||
$currency = FactoryMuffin::create('FireflyIII\Models\TransactionCurrency');
|
||||
@@ -254,7 +279,7 @@ class TransactionControllerTest extends TestCase
|
||||
'budget_id' => '0',
|
||||
'create_another' => '1',
|
||||
'category' => '',
|
||||
'tags' => '',
|
||||
'tags' => 'fat-test',
|
||||
'piggy_bank_id' => '0',
|
||||
'_token' => 'replaceMe',
|
||||
];
|
||||
@@ -277,6 +302,53 @@ class TransactionControllerTest extends TestCase
|
||||
|
||||
/**
|
||||
* @SuppressWarnings(PHPMD.ExcessiveMethodLength)
|
||||
* @covers FireflyIII\Http\Controllers\TransactionController::store
|
||||
*/
|
||||
public function testStore()
|
||||
{
|
||||
$account = FactoryMuffin::create('FireflyIII\Models\Account');
|
||||
$currency = FactoryMuffin::create('FireflyIII\Models\TransactionCurrency');
|
||||
$journal = FactoryMuffin::create('FireflyIII\Models\TransactionJournal');
|
||||
FactoryMuffin::create('FireflyIII\Models\TransactionType');
|
||||
FactoryMuffin::create('FireflyIII\Models\TransactionType');
|
||||
FactoryMuffin::create('FireflyIII\Models\TransactionType');
|
||||
$this->be($account->user);
|
||||
|
||||
$data = [
|
||||
'reminder_id' => '',
|
||||
'what' => 'withdrawal',
|
||||
'description' => 'Bla bla bla',
|
||||
'account_id' => $account->id,
|
||||
'expense_account' => 'Bla bla',
|
||||
'amount' => '100',
|
||||
'amount_currency_id' => $currency->id,
|
||||
'date' => '2015-05-05',
|
||||
'budget_id' => '0',
|
||||
'category' => '',
|
||||
'tags' => 'fat-test',
|
||||
'piggy_bank_id' => '0',
|
||||
'_token' => 'replaceMe',
|
||||
];
|
||||
|
||||
// mock!
|
||||
$repository = $this->mock('FireflyIII\Repositories\Journal\JournalRepositoryInterface');
|
||||
|
||||
// fake!
|
||||
$repository->shouldReceive('store')->andReturn($journal);
|
||||
$repository->shouldReceive('deactivateReminder')->andReturnNull();
|
||||
|
||||
|
||||
$this->call('POST', '/transactions/store/withdrawal', $data);
|
||||
|
||||
//$this->assertSessionHas('errors','bla');
|
||||
$this->assertResponseStatus(302);
|
||||
$this->assertSessionHas('success');
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @SuppressWarnings(PHPMD.ExcessiveMethodLength)
|
||||
* @covers FireflyIII\Http\Controllers\TransactionController::store
|
||||
*/
|
||||
public function testStoreTransfer()
|
||||
{
|
||||
@@ -314,7 +386,7 @@ class TransactionControllerTest extends TestCase
|
||||
'budget_id' => '0',
|
||||
'create_another' => '1',
|
||||
'category' => '',
|
||||
'tags' => '',
|
||||
'tags' => 'fat-test',
|
||||
'piggy_bank_id' => $piggy->id,
|
||||
'_token' => 'replaceMe',
|
||||
];
|
||||
@@ -337,6 +409,7 @@ class TransactionControllerTest extends TestCase
|
||||
|
||||
/**
|
||||
* @SuppressWarnings(PHPMD.ExcessiveMethodLength)
|
||||
* @covers FireflyIII\Http\Controllers\TransactionController::update
|
||||
*/
|
||||
public function testUpdate()
|
||||
{
|
||||
@@ -362,7 +435,7 @@ class TransactionControllerTest extends TestCase
|
||||
'date' => '2015-05-31',
|
||||
'budget_id' => '0',
|
||||
'category' => 'Lunch',
|
||||
'tags' => '',
|
||||
'tags' => 'fat-test',
|
||||
'piggy_bank_id' => '0',
|
||||
];
|
||||
|
||||
@@ -385,6 +458,7 @@ class TransactionControllerTest extends TestCase
|
||||
|
||||
/**
|
||||
* @SuppressWarnings(PHPMD.ExcessiveMethodLength)
|
||||
* @covers FireflyIII\Http\Controllers\TransactionController::update
|
||||
*/
|
||||
public function testUpdateWithRedirect()
|
||||
{
|
||||
@@ -411,7 +485,7 @@ class TransactionControllerTest extends TestCase
|
||||
'budget_id' => '0',
|
||||
'category' => 'Lunch',
|
||||
'return_to_edit' => 1,
|
||||
'tags' => '',
|
||||
'tags' => 'fat-test',
|
||||
'piggy_bank_id' => '0',
|
||||
];
|
||||
|
||||
|
||||
@@ -28,6 +28,9 @@ class ChartAccountControllerTest extends TestCase
|
||||
parent::tearDown();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\Chart\AccountController::all
|
||||
*/
|
||||
public function testAll()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -64,6 +67,9 @@ class ChartAccountControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\Chart\AccountController::all
|
||||
*/
|
||||
public function testAllShared()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -93,6 +99,9 @@ class ChartAccountControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\Chart\AccountController::frontpage
|
||||
*/
|
||||
public function testFrontpage()
|
||||
{
|
||||
$accounts = new Collection([FactoryMuffin::create('FireflyIII\Models\Account')]);
|
||||
@@ -110,6 +119,9 @@ class ChartAccountControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\Chart\AccountController::single
|
||||
*/
|
||||
public function testSingle()
|
||||
{
|
||||
$account = FactoryMuffin::create('FireflyIII\Models\Account');
|
||||
|
||||
@@ -30,6 +30,9 @@ class ChartBillControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\Chart\BillController::frontpage
|
||||
*/
|
||||
public function testFrontpage()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -55,7 +58,7 @@ class ChartBillControllerTest extends TestCase
|
||||
$accounts->shouldReceive('getCreditCards')->andReturn($creditCards);
|
||||
$accounts->shouldReceive('getTransfersInRange')->andReturn(new Collection);
|
||||
$repository->shouldReceive('createFakeBill')->andReturn($bills->first());
|
||||
Steam::shouldReceive('balance')->andReturn(-10,0);
|
||||
Steam::shouldReceive('balance')->andReturn(-10, 0);
|
||||
|
||||
|
||||
$this->call('GET', '/chart/bill/frontpage');
|
||||
@@ -63,6 +66,9 @@ class ChartBillControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\Chart\BillController::single
|
||||
*/
|
||||
public function testSingle()
|
||||
{
|
||||
$bill = FactoryMuffin::create('FireflyIII\Models\Bill');
|
||||
|
||||
@@ -27,6 +27,9 @@ class ChartBudgetControllerTest extends TestCase
|
||||
parent::tearDown();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\Chart\BudgetController::budget
|
||||
*/
|
||||
public function testBudget()
|
||||
{
|
||||
$budget = FactoryMuffin::create('FireflyIII\Models\Budget');
|
||||
@@ -38,6 +41,9 @@ class ChartBudgetControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\Chart\BudgetController::budgetLimit
|
||||
*/
|
||||
public function testBudgetLimit()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -68,6 +74,9 @@ class ChartBudgetControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\Chart\BudgetController::frontpage
|
||||
*/
|
||||
public function testFrontpage()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -116,6 +125,9 @@ class ChartBudgetControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\Chart\BudgetController::year
|
||||
*/
|
||||
public function testYear()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -136,6 +148,9 @@ class ChartBudgetControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\Chart\BudgetController::year
|
||||
*/
|
||||
public function testYearShared()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
|
||||
@@ -26,18 +26,24 @@ class ChartCategoryControllerTest extends TestCase
|
||||
parent::tearDown();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\Chart\CategoryController::all
|
||||
*/
|
||||
public function testAll()
|
||||
{
|
||||
|
||||
$category = FactoryMuffin::create('FireflyIII\Models\Category');
|
||||
$this->be($category->user);
|
||||
|
||||
$this->call('GET', '/chart/category/'.$category->id.'/all');
|
||||
$this->call('GET', '/chart/category/' . $category->id . '/all');
|
||||
$this->assertResponseOk();
|
||||
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\Chart\CategoryController::frontpage
|
||||
*/
|
||||
public function testFrontpage()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -62,15 +68,21 @@ class ChartCategoryControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\Chart\CategoryController::month
|
||||
*/
|
||||
public function testMonth()
|
||||
{
|
||||
$category = FactoryMuffin::create('FireflyIII\Models\Category');
|
||||
$this->be($category->user);
|
||||
|
||||
$this->call('GET', '/chart/category/'.$category->id.'/month');
|
||||
$this->call('GET', '/chart/category/' . $category->id . '/month');
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\Chart\CategoryController::year
|
||||
*/
|
||||
public function testYear()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -89,6 +101,9 @@ class ChartCategoryControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\Chart\CategoryController::year
|
||||
*/
|
||||
public function testYearShared()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
|
||||
@@ -25,6 +25,9 @@ class ChartPiggyBankControllerTest extends TestCase
|
||||
parent::tearDown();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\Chart\PiggyBankController::history
|
||||
*/
|
||||
public function testHistory()
|
||||
{
|
||||
$piggy = FactoryMuffin::create('FireflyIII\Models\PiggyBank');
|
||||
|
||||
@@ -25,6 +25,9 @@ class ChartReportControllerTest extends TestCase
|
||||
parent::tearDown();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\Chart\ReportController::yearInOut
|
||||
*/
|
||||
public function testYearInOut()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -35,6 +38,9 @@ class ChartReportControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\Chart\ReportController::yearInOut
|
||||
*/
|
||||
public function testYearInOutShared()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -45,6 +51,9 @@ class ChartReportControllerTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\Chart\ReportController::yearInOutSummarized
|
||||
*/
|
||||
public function testYearInOutSummarized()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -54,6 +63,9 @@ class ChartReportControllerTest extends TestCase
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Http\Controllers\Chart\ReportController::yearInOutSummarized
|
||||
*/
|
||||
public function testYearInOutSummarizedShared()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
|
||||
@@ -192,7 +192,7 @@ FactoryMuffin::define(
|
||||
return RandomString::generateRandomString(3);
|
||||
},
|
||||
'symbol' => function () {
|
||||
return RandomString::generateRandomString(1);
|
||||
return RandomString::generateRandomString(2);
|
||||
},
|
||||
'name' => 'word'
|
||||
]
|
||||
|
||||
@@ -32,6 +32,7 @@ class ConnectJournalToPiggyBankTest extends TestCase
|
||||
|
||||
/**
|
||||
* @SuppressWarnings(PHPMD.ExcessiveMethodLength)
|
||||
* @covers FireflyIII\Handlers\Events\ConnectJournalToPiggyBank::handle
|
||||
*/
|
||||
public function testNoRepetition()
|
||||
{
|
||||
@@ -86,6 +87,9 @@ class ConnectJournalToPiggyBankTest extends TestCase
|
||||
$this->assertFalse($result);
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Handlers\Events\ConnectJournalToPiggyBank::handle
|
||||
*/
|
||||
public function testNoSuchPiggy()
|
||||
{
|
||||
$user = FactoryMuffin::create('FireflyIII\User');
|
||||
@@ -102,6 +106,7 @@ class ConnectJournalToPiggyBankTest extends TestCase
|
||||
|
||||
/**
|
||||
* @SuppressWarnings(PHPMD.ExcessiveMethodLength)
|
||||
* @covers FireflyIII\Handlers\Events\ConnectJournalToPiggyBank::handle
|
||||
*/
|
||||
public function testWithRepetition()
|
||||
{
|
||||
@@ -162,6 +167,7 @@ class ConnectJournalToPiggyBankTest extends TestCase
|
||||
|
||||
/**
|
||||
* @SuppressWarnings(PHPMD.ExcessiveMethodLength)
|
||||
* @covers FireflyIII\Handlers\Events\ConnectJournalToPiggyBank::handle
|
||||
*/
|
||||
public function testWithRepetitionReversed()
|
||||
{
|
||||
|
||||
@@ -38,6 +38,9 @@ class ReminderHelperTest extends TestCase
|
||||
parent::tearDown();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Helpers\Reminders\ReminderHelper::createReminder
|
||||
*/
|
||||
public function testCreateReminder()
|
||||
{
|
||||
$account = FactoryMuffin::create('FireflyIII\Models\Account');
|
||||
@@ -52,6 +55,9 @@ class ReminderHelperTest extends TestCase
|
||||
$this->assertEquals($piggyBank->targetamount, $result->metadata->leftToSave);
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Helpers\Reminders\ReminderHelper::createReminder
|
||||
*/
|
||||
public function testCreateReminderHaveAlready()
|
||||
{
|
||||
$account = FactoryMuffin::create('FireflyIII\Models\Account');
|
||||
@@ -72,6 +78,9 @@ class ReminderHelperTest extends TestCase
|
||||
$this->assertEquals($reminder->id, $result->id);
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Helpers\Reminders\ReminderHelper::createReminder
|
||||
*/
|
||||
public function testCreateReminderNoTarget()
|
||||
{
|
||||
$account = FactoryMuffin::create('FireflyIII\Models\Account');
|
||||
@@ -88,7 +97,7 @@ class ReminderHelperTest extends TestCase
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @covers FireflyIII\Helpers\Reminders\ReminderHelper::createReminders
|
||||
*/
|
||||
public function testCreateReminders()
|
||||
{
|
||||
@@ -108,6 +117,9 @@ class ReminderHelperTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Helpers\Reminders\ReminderHelper::getReminderRanges
|
||||
*/
|
||||
public function testGetReminderRangesNull()
|
||||
{
|
||||
$piggyBank = FactoryMuffin::create('FireflyIII\Models\PiggyBank');
|
||||
@@ -115,6 +127,9 @@ class ReminderHelperTest extends TestCase
|
||||
$this->assertEquals([], $result);
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Helpers\Reminders\ReminderHelper::getReminderRanges
|
||||
*/
|
||||
public function testGetReminderRangesWithTargetDate()
|
||||
{
|
||||
/** @var \FireflyIII\Models\PiggyBank $piggyBank */
|
||||
@@ -131,6 +146,9 @@ class ReminderHelperTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Helpers\Reminders\ReminderHelper::getReminderRanges
|
||||
*/
|
||||
public function testGetReminderRangesWithoutTargetDate()
|
||||
{
|
||||
/** @var \FireflyIII\Models\PiggyBank $piggyBank */
|
||||
@@ -146,6 +164,9 @@ class ReminderHelperTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Helpers\Reminders\ReminderHelper::getReminderText
|
||||
*/
|
||||
public function testGetReminderTextDate()
|
||||
{
|
||||
$piggyBank = FactoryMuffin::create('FireflyIII\Models\PiggyBank');
|
||||
@@ -161,6 +182,9 @@ class ReminderHelperTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Helpers\Reminders\ReminderHelper::getReminderText
|
||||
*/
|
||||
public function testGetReminderTextNoPiggy()
|
||||
{
|
||||
$reminder = FactoryMuffin::create('FireflyIII\Models\Reminder');
|
||||
@@ -169,6 +193,9 @@ class ReminderHelperTest extends TestCase
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FireflyIII\Helpers\Reminders\ReminderHelper::getReminderText
|
||||
*/
|
||||
public function testGetReminderTextNullDate()
|
||||
{
|
||||
$piggyBank = FactoryMuffin::create('FireflyIII\Models\PiggyBank');
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user