mirror of
https://github.com/firefly-iii/firefly-iii.git
synced 2025-11-02 03:51:18 +00:00
Compare commits
186 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
20dfeae653 | ||
|
|
9f8e33a1ec | ||
|
|
0b378b51f8 | ||
|
|
b138812e1a | ||
|
|
dcfd4d6672 | ||
|
|
11b109d425 | ||
|
|
ba1f0d9a24 | ||
|
|
3cdae5a851 | ||
|
|
7c162fe87f | ||
|
|
b4feb27118 | ||
|
|
2e8ea7493a | ||
|
|
d26a5a6e9c | ||
|
|
29dce924cf | ||
|
|
2bd068211b | ||
|
|
c97792d1d1 | ||
|
|
ef23948b41 | ||
|
|
b97988a597 | ||
|
|
2f20bac734 | ||
|
|
4b23ca1186 | ||
|
|
cb7e766321 | ||
|
|
a63f1c30d9 | ||
|
|
9d75ac221c | ||
|
|
e610c3d6ab | ||
|
|
96d70a84ab | ||
|
|
3f6abdb457 | ||
|
|
00d19241d9 | ||
|
|
7c44cae83c | ||
|
|
4e6dc3bcef | ||
|
|
c1cd322f8f | ||
|
|
0995d78506 | ||
|
|
34c9823096 | ||
|
|
040ba2cf8b | ||
|
|
08896c5813 | ||
|
|
ebe67b14c1 | ||
|
|
75ed1fbbfc | ||
|
|
e39c0c8414 | ||
|
|
769fb7c218 | ||
|
|
359a5656e8 | ||
|
|
8e3b5f9cbc | ||
|
|
a9747d668a | ||
|
|
9c815c916f | ||
|
|
faa995fd01 | ||
|
|
be224367bb | ||
|
|
609ff7d2aa | ||
|
|
10544e5fbd | ||
|
|
812e767ba4 | ||
|
|
134f0cfcd1 | ||
|
|
e46adb6539 | ||
|
|
97c1233e89 | ||
|
|
3e0d8e024c | ||
|
|
1f7fbf57af | ||
|
|
ade653c393 | ||
|
|
016395fe8a | ||
|
|
07fe4400ed | ||
|
|
cc7db2b614 | ||
|
|
d3314e0130 | ||
|
|
75b033c563 | ||
|
|
f451efd90c | ||
|
|
81f2c59ae4 | ||
|
|
ef67355e3b | ||
|
|
4201bc16a1 | ||
|
|
14d58c9834 | ||
|
|
8ac9fe7e69 | ||
|
|
0ab92114a5 | ||
|
|
66310b494b | ||
|
|
805d3ec975 | ||
|
|
f83ab0a7dc | ||
|
|
ced55b5065 | ||
|
|
986863f1d2 | ||
|
|
d1529a0cfc | ||
|
|
f3ceba5325 | ||
|
|
711b4c62b5 | ||
|
|
f441f68da6 | ||
|
|
2cf8bb2537 | ||
|
|
bf434e5d42 | ||
|
|
b1ea36ae5b | ||
|
|
5f3524c5aa | ||
|
|
2f75437ac1 | ||
|
|
6c945bfd60 | ||
|
|
82f993f0ff | ||
|
|
08f3f2aeb9 | ||
|
|
099fc49c4b | ||
|
|
6f2c46cb36 | ||
|
|
135424f8b8 | ||
|
|
9534fa59d6 | ||
|
|
51ae15a650 | ||
|
|
29776fa98c | ||
|
|
7ddffb9251 | ||
|
|
069770b39e | ||
|
|
626119d774 | ||
|
|
993d18d508 | ||
|
|
7b84c7c2dc | ||
|
|
76429c923e | ||
|
|
ca1b048758 | ||
|
|
fb11971b84 | ||
|
|
465542b0f5 | ||
|
|
5185a3ed5a | ||
|
|
4d1615197d | ||
|
|
83c6887ed0 | ||
|
|
9d1e20192d | ||
|
|
ad17837593 | ||
|
|
40ec63ddb9 | ||
|
|
bc3c019d03 | ||
|
|
35f8ecf9bf | ||
|
|
4c649a7099 | ||
|
|
1abf214141 | ||
|
|
8cb748745b | ||
|
|
f3df783ed3 | ||
|
|
50d6234089 | ||
|
|
baa1da3e8e | ||
|
|
89af363ba1 | ||
|
|
df5aff279e | ||
|
|
249b2c63d8 | ||
|
|
6d8f5b88fe | ||
|
|
2579750ba3 | ||
|
|
5e7ee8c5bf | ||
|
|
610bc9f4bc | ||
|
|
3d1233314a | ||
|
|
a258b35236 | ||
|
|
51e23dae21 | ||
|
|
13f2e6537e | ||
|
|
cba3590dec | ||
|
|
613a02fa52 | ||
|
|
2b615cf757 | ||
|
|
52a593e2e0 | ||
|
|
cf89d93cec | ||
|
|
295724c4e9 | ||
|
|
39fbd545ad | ||
|
|
3373961143 | ||
|
|
7f5b50d1f6 | ||
|
|
04267f1388 | ||
|
|
cddba20499 | ||
|
|
791833ab61 | ||
|
|
0ad9a75274 | ||
|
|
172d78f810 | ||
|
|
d2018ad3ec | ||
|
|
97124bcbce | ||
|
|
27dd30785f | ||
|
|
093794f7a5 | ||
|
|
a67bad11b2 | ||
|
|
91a53032b9 | ||
|
|
a87ce030d8 | ||
|
|
799da3597f | ||
|
|
663bf22a2a | ||
|
|
5d3abb315c | ||
|
|
a6ce34b67e | ||
|
|
75f5b5b51d | ||
|
|
555b358b80 | ||
|
|
7772190d45 | ||
|
|
311effb518 | ||
|
|
d2ccb33c54 | ||
|
|
5b312708f9 | ||
|
|
f4ae1e6c79 | ||
|
|
a91298d045 | ||
|
|
0fea3a5a85 | ||
|
|
7b830a69d9 | ||
|
|
22af0b373e | ||
|
|
ca34e0ebd5 | ||
|
|
e139cf76de | ||
|
|
50f87a210a | ||
|
|
ac5c11a8d7 | ||
|
|
3813b7a9e8 | ||
|
|
86a6e51ebc | ||
|
|
eb4343407d | ||
|
|
8eb4c64602 | ||
|
|
f033a14bc7 | ||
|
|
59199134a6 | ||
|
|
c6d831fd94 | ||
|
|
a963e1bc03 | ||
|
|
be48d3bea2 | ||
|
|
7d438375c1 | ||
|
|
b20b8868bf | ||
|
|
b4638e1ae5 | ||
|
|
9872c18715 | ||
|
|
e854c1b8ae | ||
|
|
e243ec10ba | ||
|
|
b8f2f0a73f | ||
|
|
8c481e38f2 | ||
|
|
609e911fd6 | ||
|
|
d894ccc9cc | ||
|
|
19d4b6ba86 | ||
|
|
789dba7cf9 | ||
|
|
b6e88a56c5 | ||
|
|
b96a9a359c | ||
|
|
ba64a7d039 | ||
|
|
20c8fea520 |
7
.github/dependabot.yml
vendored
7
.github/dependabot.yml
vendored
@@ -19,3 +19,10 @@ updates:
|
||||
schedule:
|
||||
interval: "weekly"
|
||||
|
||||
- package-ecosystem: "github-actions"
|
||||
directory: "/"
|
||||
target-branch: develop
|
||||
labels: ["bug"]
|
||||
versioning-strategy: increase
|
||||
schedule:
|
||||
interval: "weekly"
|
||||
|
||||
99
.github/workflows/cleanup.yml
vendored
Normal file
99
.github/workflows/cleanup.yml
vendored
Normal file
@@ -0,0 +1,99 @@
|
||||
# This workflow prunes old workflow runs for an entire repository.
|
||||
|
||||
name: Prune old builds
|
||||
|
||||
on:
|
||||
schedule:
|
||||
- cron: '0 0 * * *'
|
||||
workflow_dispatch:
|
||||
jobs:
|
||||
prune:
|
||||
runs-on: ubuntu-latest
|
||||
timeout-minutes: 10
|
||||
steps:
|
||||
- name: Prune cancelled/skipped runs
|
||||
uses: actions/github-script@v4
|
||||
with:
|
||||
github-token: ${{ secrets.GH_ACTIONS_PERSONAL_ACCESS_TOKEN }}
|
||||
script: |
|
||||
const cancelled = await github.actions.listWorkflowRunsForRepo({
|
||||
owner: context.repo.owner,
|
||||
per_page: 100,
|
||||
repo: context.repo.repo,
|
||||
status: 'cancelled',
|
||||
});
|
||||
|
||||
const skipped = await github.actions.listWorkflowRunsForRepo({
|
||||
owner: context.repo.owner,
|
||||
per_page: 100,
|
||||
repo: context.repo.repo,
|
||||
status: 'skipped',
|
||||
});
|
||||
|
||||
for (const response of [cancelled, skipped]) {
|
||||
for (const run of response.data.workflow_runs) {
|
||||
console.log(`Run id ${run.id} of '${run.name}' is a cancelled/skipped run. Deleting...`);
|
||||
await github.actions.deleteWorkflowRun({
|
||||
owner: context.repo.owner,
|
||||
repo: context.repo.repo,
|
||||
run_id: run.id
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
- name: Prune runs older than 3 days
|
||||
uses: actions/github-script@v4
|
||||
with:
|
||||
github-token: ${{ secrets.GH_ACTIONS_PERSONAL_ACCESS_TOKEN }}
|
||||
script: |
|
||||
const days_to_expiration = 3;
|
||||
const ms_in_day = 86400000;
|
||||
const now = Date.now();
|
||||
const pages = 5;
|
||||
|
||||
// we don't want to prune old runs from test.yml
|
||||
// because we track the duration of runs over time
|
||||
|
||||
const workflows = [
|
||||
'build.yml',
|
||||
'cleanup.yml',
|
||||
'depsreview.yaml',
|
||||
'laravel.yml',
|
||||
'lock.yml',
|
||||
'stale.yml'
|
||||
]
|
||||
|
||||
let runs_to_delete = [];
|
||||
|
||||
for (const workflow of workflows) {
|
||||
for (let page = 0; page < pages; page += 1) {
|
||||
let response = await github.actions.listWorkflowRuns({
|
||||
owner: context.repo.owner,
|
||||
page: page,
|
||||
per_page: 100,
|
||||
repo: context.repo.repo,
|
||||
workflow_id: workflow
|
||||
});
|
||||
|
||||
if (response.data.workflow_runs.length > 0) {
|
||||
for (const run of response.data.workflow_runs) {
|
||||
if (now - Date.parse(run.created_at) > ms_in_day * days_to_expiration) {
|
||||
runs_to_delete.push([run.id, run.name]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
for (const run of runs_to_delete) {
|
||||
console.log(`Run id ${run[0]} of '${run[1]}' is older than ${days_to_expiration} days. Deleting...`);
|
||||
try {
|
||||
await github.actions.deleteWorkflowRun({
|
||||
owner: context.repo.owner,
|
||||
repo: context.repo.repo,
|
||||
run_id: run[0]
|
||||
});
|
||||
} catch (error) {
|
||||
// ignore errors
|
||||
}
|
||||
}
|
||||
14
.github/workflows/depsreview.yaml
vendored
Normal file
14
.github/workflows/depsreview.yaml
vendored
Normal file
@@ -0,0 +1,14 @@
|
||||
name: 'Dependency Review'
|
||||
on: [pull_request]
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
dependency-review:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: 'Checkout Repository'
|
||||
uses: actions/checkout@v3
|
||||
- name: 'Dependency Review'
|
||||
uses: actions/dependency-review-action@v1
|
||||
6
.github/workflows/lock.yml
vendored
6
.github/workflows/lock.yml
vendored
@@ -5,8 +5,14 @@ on:
|
||||
schedule:
|
||||
- cron: '0 0 * * *'
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
lock:
|
||||
permissions:
|
||||
issues: write # for dessant/lock-threads to lock issues
|
||||
pull-requests: write # for dessant/lock-threads to lock PRs
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: dessant/lock-threads@v2
|
||||
|
||||
6
.github/workflows/stale.yml
vendored
6
.github/workflows/stale.yml
vendored
@@ -3,8 +3,14 @@ on:
|
||||
schedule:
|
||||
- cron: "30 1 * * *"
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
stale:
|
||||
permissions:
|
||||
issues: write # for actions/stale to close stale issues
|
||||
pull-requests: write # for actions/stale to close stale PRs
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/stale@v3
|
||||
|
||||
@@ -73,7 +73,7 @@ abstract class Controller extends BaseController
|
||||
}
|
||||
|
||||
/**
|
||||
* Method to grab all parameters from the URI.
|
||||
* Method to grab all parameters from the URL.
|
||||
*
|
||||
* @return ParameterBag
|
||||
* @throws ContainerExceptionInterface
|
||||
@@ -148,7 +148,7 @@ abstract class Controller extends BaseController
|
||||
|
||||
|
||||
/**
|
||||
* Method to help build URI's.
|
||||
* Method to help build URL's.
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
|
||||
@@ -125,7 +125,7 @@ class StoreController extends Controller
|
||||
|
||||
$selectedGroup = $collector->getGroups()->first();
|
||||
if (null === $selectedGroup) {
|
||||
throw new FireflyException('Cannot find transaction. Possibly, a rule deleted this transaction after its creation.');
|
||||
throw new FireflyException('200032: Cannot find transaction. Possibly, a rule deleted this transaction after its creation.');
|
||||
}
|
||||
/** @var TransactionGroupTransformer $transformer */
|
||||
$transformer = app(TransactionGroupTransformer::class);
|
||||
|
||||
@@ -103,7 +103,7 @@ class ListController extends Controller
|
||||
{
|
||||
$manager = $this->getManager();
|
||||
|
||||
// read type from URI
|
||||
// read type from URL
|
||||
$type = $request->get('type') ?? 'all';
|
||||
$this->parameters->set('type', $type);
|
||||
|
||||
|
||||
@@ -79,7 +79,7 @@ class ShowController extends Controller
|
||||
{
|
||||
// create some objects:
|
||||
$manager = $this->getManager();
|
||||
// read type from URI
|
||||
// read type from URL
|
||||
$name = $request->get('name');
|
||||
|
||||
// types to get, page size:
|
||||
|
||||
@@ -40,7 +40,7 @@ class AutocompleteRequest extends FormRequest
|
||||
*/
|
||||
public function getData(): array
|
||||
{
|
||||
$types = $this->string('types');
|
||||
$types = $this->convertString('types');
|
||||
$array = [];
|
||||
if ('' !== $types) {
|
||||
$array = explode(',', $types);
|
||||
@@ -53,7 +53,7 @@ class AutocompleteRequest extends FormRequest
|
||||
|
||||
return [
|
||||
'types' => $array,
|
||||
'query' => $this->string('query'),
|
||||
'query' => $this->convertString('query'),
|
||||
'date' => $this->getCarbonDate('date'),
|
||||
'limit' => $limit,
|
||||
];
|
||||
|
||||
@@ -43,9 +43,9 @@ class ExportRequest extends FormRequest
|
||||
$result = [
|
||||
'start' => $this->getCarbonDate('start') ?? Carbon::now()->subYear(),
|
||||
'end' => $this->getCarbonDate('end') ?? Carbon::now(),
|
||||
'type' => $this->string('type'),
|
||||
'type' => $this->convertString('type'),
|
||||
];
|
||||
$parts = explode(',', $this->string('accounts'));
|
||||
$parts = explode(',', $this->convertString('accounts'));
|
||||
$repository = app(AccountRepositoryInterface::class);
|
||||
$repository->setUser(auth()->user());
|
||||
|
||||
|
||||
@@ -56,35 +56,35 @@ class StoreRequest extends FormRequest
|
||||
$includeNetWorth = $this->boolean('include_net_worth');
|
||||
}
|
||||
$data = [
|
||||
'name' => $this->string('name'),
|
||||
'name' => $this->convertString('name'),
|
||||
'active' => $active,
|
||||
'include_net_worth' => $includeNetWorth,
|
||||
'account_type_name' => $this->string('type'),
|
||||
'account_type_name' => $this->convertString('type'),
|
||||
'account_type_id' => null,
|
||||
'currency_id' => $this->integer('currency_id'),
|
||||
'order' => $this->integer('order'),
|
||||
'currency_code' => $this->string('currency_code'),
|
||||
'virtual_balance' => $this->string('virtual_balance'),
|
||||
'iban' => $this->string('iban'),
|
||||
'BIC' => $this->string('bic'),
|
||||
'account_number' => $this->string('account_number'),
|
||||
'account_role' => $this->string('account_role'),
|
||||
'opening_balance' => $this->string('opening_balance'),
|
||||
'currency_code' => $this->convertString('currency_code'),
|
||||
'virtual_balance' => $this->convertString('virtual_balance'),
|
||||
'iban' => $this->convertString('iban'),
|
||||
'BIC' => $this->convertString('bic'),
|
||||
'account_number' => $this->convertString('account_number'),
|
||||
'account_role' => $this->convertString('account_role'),
|
||||
'opening_balance' => $this->convertString('opening_balance'),
|
||||
'opening_balance_date' => $this->getCarbonDate('opening_balance_date'),
|
||||
'cc_type' => $this->string('credit_card_type'),
|
||||
'cc_monthly_payment_date' => $this->string('monthly_payment_date'),
|
||||
'cc_type' => $this->convertString('credit_card_type'),
|
||||
'cc_monthly_payment_date' => $this->convertString('monthly_payment_date'),
|
||||
'notes' => $this->stringWithNewlines('notes'),
|
||||
'interest' => $this->string('interest'),
|
||||
'interest_period' => $this->string('interest_period'),
|
||||
'interest' => $this->convertString('interest'),
|
||||
'interest_period' => $this->convertString('interest_period'),
|
||||
];
|
||||
// append location information.
|
||||
$data = $this->appendLocationData($data, null);
|
||||
|
||||
if ('liability' === $data['account_type_name'] || 'liabilities' === $data['account_type_name']) {
|
||||
$data['opening_balance'] = app('steam')->negative($this->string('liability_amount'));
|
||||
$data['opening_balance'] = app('steam')->negative($this->convertString('liability_amount'));
|
||||
$data['opening_balance_date'] = $this->getCarbonDate('liability_start_date');
|
||||
$data['account_type_name'] = $this->string('liability_type');
|
||||
$data['liability_direction'] = $this->string('liability_direction');
|
||||
$data['account_type_name'] = $this->convertString('liability_type');
|
||||
$data['liability_direction'] = $this->convertString('liability_direction');
|
||||
$data['account_type_id'] = null;
|
||||
}
|
||||
|
||||
@@ -101,7 +101,7 @@ class StoreRequest extends FormRequest
|
||||
$accountRoles = implode(',', config('firefly.accountRoles'));
|
||||
$types = implode(',', array_keys(config('firefly.subTitlesByIdentifier')));
|
||||
$ccPaymentTypes = implode(',', array_keys(config('firefly.ccTypes')));
|
||||
$type = $this->string('type');
|
||||
$type = $this->convertString('type');
|
||||
$rules = [
|
||||
'name' => 'required|min:1|uniqueAccountForUser',
|
||||
'type' => 'required|' . sprintf('in:%s', $types),
|
||||
|
||||
@@ -50,28 +50,28 @@ class UpdateRequest extends FormRequest
|
||||
public function getUpdateData(): array
|
||||
{
|
||||
$fields = [
|
||||
'name' => ['name', 'string'],
|
||||
'name' => ['name', 'convertString'],
|
||||
'active' => ['active', 'boolean'],
|
||||
'include_net_worth' => ['include_net_worth', 'boolean'],
|
||||
'account_type_name' => ['type', 'string'],
|
||||
'virtual_balance' => ['virtual_balance', 'string'],
|
||||
'iban' => ['iban', 'string'],
|
||||
'BIC' => ['bic', 'string'],
|
||||
'account_number' => ['account_number', 'string'],
|
||||
'account_role' => ['account_role', 'string'],
|
||||
'liability_type' => ['liability_type', 'string'],
|
||||
'opening_balance' => ['opening_balance', 'string'],
|
||||
'account_type_name' => ['type', 'convertString'],
|
||||
'virtual_balance' => ['virtual_balance', 'convertString'],
|
||||
'iban' => ['iban', 'convertString'],
|
||||
'BIC' => ['bic', 'convertString'],
|
||||
'account_number' => ['account_number', 'convertString'],
|
||||
'account_role' => ['account_role', 'convertString'],
|
||||
'liability_type' => ['liability_type', 'convertString'],
|
||||
'opening_balance' => ['opening_balance', 'convertString'],
|
||||
'opening_balance_date' => ['opening_balance_date', 'date'],
|
||||
'cc_type' => ['credit_card_type', 'string'],
|
||||
'cc_monthly_payment_date' => ['monthly_payment_date', 'string'],
|
||||
'cc_type' => ['credit_card_type', 'convertString'],
|
||||
'cc_monthly_payment_date' => ['monthly_payment_date', 'convertString'],
|
||||
'notes' => ['notes', 'stringWithNewlines'],
|
||||
'interest' => ['interest', 'string'],
|
||||
'interest_period' => ['interest_period', 'string'],
|
||||
'interest' => ['interest', 'convertString'],
|
||||
'interest_period' => ['interest_period', 'convertString'],
|
||||
'order' => ['order', 'integer'],
|
||||
'currency_id' => ['currency_id', 'integer'],
|
||||
'currency_code' => ['currency_code', 'string'],
|
||||
'liability_direction' => ['liability_direction', 'string'],
|
||||
'liability_amount' => ['liability_amount', 'string'],
|
||||
'currency_code' => ['currency_code', 'convertString'],
|
||||
'liability_direction' => ['liability_direction', 'convertString'],
|
||||
'liability_amount' => ['liability_amount', 'convertString'],
|
||||
'liability_start_date' => ['liability_start_date', 'date'],
|
||||
];
|
||||
/** @var Account $account */
|
||||
@@ -107,9 +107,9 @@ class UpdateRequest extends FormRequest
|
||||
$rules = [
|
||||
'name' => sprintf('min:1|uniqueAccountForUser:%d', $account->id),
|
||||
'type' => sprintf('in:%s', $types),
|
||||
'iban' => ['iban', 'nullable', new UniqueIban($account, $this->string('type'))],
|
||||
'iban' => ['iban', 'nullable', new UniqueIban($account, $this->convertString('type'))],
|
||||
'bic' => 'bic|nullable',
|
||||
'account_number' => ['between:1,255', 'nullable', new UniqueAccountNumber($account, $this->string('type'))],
|
||||
'account_number' => ['between:1,255', 'nullable', new UniqueAccountNumber($account, $this->convertString('type'))],
|
||||
'opening_balance' => 'numeric|required_with:opening_balance_date|nullable',
|
||||
'opening_balance_date' => 'date|required_with:opening_balance|nullable',
|
||||
'virtual_balance' => 'numeric|nullable',
|
||||
|
||||
@@ -45,10 +45,10 @@ class StoreRequest extends FormRequest
|
||||
public function getAll(): array
|
||||
{
|
||||
return [
|
||||
'filename' => $this->string('filename'),
|
||||
'title' => $this->string('title'),
|
||||
'filename' => $this->convertString('filename'),
|
||||
'title' => $this->convertString('title'),
|
||||
'notes' => $this->stringWithNewlines('notes'),
|
||||
'attachable_type' => $this->string('attachable_type'),
|
||||
'attachable_type' => $this->convertString('attachable_type'),
|
||||
'attachable_id' => $this->integer('attachable_id'),
|
||||
];
|
||||
}
|
||||
@@ -68,7 +68,7 @@ class StoreRequest extends FormRequest
|
||||
}, $models
|
||||
);
|
||||
$models = implode(',', $models);
|
||||
$model = $this->string('attachable_type');
|
||||
$model = $this->convertString('attachable_type');
|
||||
|
||||
return [
|
||||
'filename' => 'required|between:1,255',
|
||||
|
||||
@@ -45,10 +45,10 @@ class UpdateRequest extends FormRequest
|
||||
public function getAll(): array
|
||||
{
|
||||
$fields = [
|
||||
'filename' => ['filename', 'string'],
|
||||
'title' => ['title', 'string'],
|
||||
'filename' => ['filename', 'convertString'],
|
||||
'title' => ['title', 'convertString'],
|
||||
'notes' => ['notes', 'stringWithNewlines'],
|
||||
'attachable_type' => ['attachable_type', 'string'],
|
||||
'attachable_type' => ['attachable_type', 'convertString'],
|
||||
'attachable_id' => ['attachable_id', 'integer'],
|
||||
];
|
||||
|
||||
@@ -70,7 +70,7 @@ class UpdateRequest extends FormRequest
|
||||
}, $models
|
||||
);
|
||||
$models = implode(',', $models);
|
||||
$model = $this->string('attachable_type');
|
||||
$model = $this->convertString('attachable_type');
|
||||
|
||||
return [
|
||||
'filename' => 'between:1,255',
|
||||
|
||||
@@ -48,8 +48,8 @@ class Request extends FormRequest
|
||||
// this is the way:
|
||||
$fields = [
|
||||
'currency_id' => ['currency_id', 'integer'],
|
||||
'currency_code' => ['currency_code', 'string'],
|
||||
'amount' => ['amount', 'string'],
|
||||
'currency_code' => ['currency_code', 'convertString'],
|
||||
'amount' => ['amount', 'convertString'],
|
||||
'start' => ['start', 'date'],
|
||||
'end' => ['end', 'date'],
|
||||
];
|
||||
|
||||
@@ -49,21 +49,21 @@ class StoreRequest extends FormRequest
|
||||
{
|
||||
Log::debug('Raw fields in Bill StoreRequest', $this->all());
|
||||
$fields = [
|
||||
'name' => ['name', 'string'],
|
||||
'amount_min' => ['amount_min', 'string'],
|
||||
'amount_max' => ['amount_max', 'string'],
|
||||
'name' => ['name', 'convertString'],
|
||||
'amount_min' => ['amount_min', 'convertString'],
|
||||
'amount_max' => ['amount_max', 'convertString'],
|
||||
'currency_id' => ['currency_id', 'integer'],
|
||||
'currency_code' => ['currency_code', 'string'],
|
||||
'currency_code' => ['currency_code', 'convertString'],
|
||||
'date' => ['date', 'date'],
|
||||
'end_date' => ['end_date', 'date'],
|
||||
'extension_date' => ['extension_date', 'date'],
|
||||
'repeat_freq' => ['repeat_freq', 'string'],
|
||||
'repeat_freq' => ['repeat_freq', 'convertString'],
|
||||
'skip' => ['skip', 'integer'],
|
||||
'active' => ['active', 'boolean'],
|
||||
'order' => ['order', 'integer'],
|
||||
'notes' => ['notes', 'stringWithNewlines'],
|
||||
'object_group_id' => ['object_group_id', 'integer'],
|
||||
'object_group_title' => ['object_group_title', 'string'],
|
||||
'object_group_title' => ['object_group_title', 'convertString'],
|
||||
];
|
||||
|
||||
return $this->getAllData($fields);
|
||||
|
||||
@@ -47,21 +47,21 @@ class UpdateRequest extends FormRequest
|
||||
public function getAll(): array
|
||||
{
|
||||
$fields = [
|
||||
'name' => ['name', 'string'],
|
||||
'amount_min' => ['amount_min', 'string'],
|
||||
'amount_max' => ['amount_max', 'string'],
|
||||
'name' => ['name', 'convertString'],
|
||||
'amount_min' => ['amount_min', 'convertString'],
|
||||
'amount_max' => ['amount_max', 'convertString'],
|
||||
'currency_id' => ['currency_id', 'integer'],
|
||||
'currency_code' => ['currency_code', 'string'],
|
||||
'currency_code' => ['currency_code', 'convertString'],
|
||||
'date' => ['date', 'date'],
|
||||
'end_date' => ['end_date', 'date'],
|
||||
'extension_date' => ['extension_date', 'date'],
|
||||
'repeat_freq' => ['repeat_freq', 'string'],
|
||||
'repeat_freq' => ['repeat_freq', 'convertString'],
|
||||
'skip' => ['skip', 'integer'],
|
||||
'active' => ['active', 'boolean'],
|
||||
'order' => ['order', 'integer'],
|
||||
'notes' => ['notes', 'stringWithNewlines'],
|
||||
'object_group_id' => ['object_group_id', 'integer'],
|
||||
'object_group_title' => ['object_group_title', 'string'],
|
||||
'object_group_title' => ['object_group_title', 'convertString'],
|
||||
];
|
||||
|
||||
return $this->getAllData($fields);
|
||||
|
||||
@@ -47,17 +47,17 @@ class StoreRequest extends FormRequest
|
||||
public function getAll(): array
|
||||
{
|
||||
$fields = [
|
||||
'name' => ['name', 'string'],
|
||||
'name' => ['name', 'convertString'],
|
||||
'active' => ['active', 'boolean'],
|
||||
'order' => ['active', 'integer'],
|
||||
'notes' => ['notes', 'string'],
|
||||
'notes' => ['notes', 'convertString'],
|
||||
|
||||
// auto budget currency:
|
||||
'currency_id' => ['auto_budget_currency_id', 'integer'],
|
||||
'currency_code' => ['auto_budget_currency_code', 'string'],
|
||||
'auto_budget_type' => ['auto_budget_type', 'string'],
|
||||
'auto_budget_amount' => ['auto_budget_amount', 'string'],
|
||||
'auto_budget_period' => ['auto_budget_period', 'string'],
|
||||
'currency_code' => ['auto_budget_currency_code', 'convertString'],
|
||||
'auto_budget_type' => ['auto_budget_type', 'convertString'],
|
||||
'auto_budget_amount' => ['auto_budget_amount', 'convertString'],
|
||||
'auto_budget_period' => ['auto_budget_period', 'convertString'],
|
||||
];
|
||||
|
||||
return $this->getAllData($fields);
|
||||
|
||||
@@ -48,15 +48,15 @@ class UpdateRequest extends FormRequest
|
||||
{
|
||||
// this is the way:
|
||||
$fields = [
|
||||
'name' => ['name', 'string'],
|
||||
'name' => ['name', 'convertString'],
|
||||
'active' => ['active', 'boolean'],
|
||||
'order' => ['order', 'integer'],
|
||||
'notes' => ['notes', 'string'],
|
||||
'notes' => ['notes', 'convertString'],
|
||||
'currency_id' => ['auto_budget_currency_id', 'integer'],
|
||||
'currency_code' => ['auto_budget_currency_code', 'string'],
|
||||
'auto_budget_type' => ['auto_budget_type', 'string'],
|
||||
'auto_budget_amount' => ['auto_budget_amount', 'string'],
|
||||
'auto_budget_period' => ['auto_budget_period', 'string'],
|
||||
'currency_code' => ['auto_budget_currency_code', 'convertString'],
|
||||
'auto_budget_type' => ['auto_budget_type', 'convertString'],
|
||||
'auto_budget_amount' => ['auto_budget_amount', 'convertString'],
|
||||
'auto_budget_period' => ['auto_budget_period', 'convertString'],
|
||||
];
|
||||
$allData = $this->getAllData($fields);
|
||||
if (array_key_exists('auto_budget_type', $allData)) {
|
||||
|
||||
@@ -46,9 +46,9 @@ class StoreRequest extends FormRequest
|
||||
return [
|
||||
'start' => $this->getCarbonDate('start'),
|
||||
'end' => $this->getCarbonDate('end'),
|
||||
'amount' => $this->string('amount'),
|
||||
'amount' => $this->convertString('amount'),
|
||||
'currency_id' => $this->integer('currency_id'),
|
||||
'currency_code' => $this->string('currency_code'),
|
||||
'currency_code' => $this->convertString('currency_code'),
|
||||
];
|
||||
}
|
||||
|
||||
|
||||
@@ -48,9 +48,9 @@ class UpdateRequest extends FormRequest
|
||||
$fields = [
|
||||
'start' => ['start', 'date'],
|
||||
'end' => ['end', 'date'],
|
||||
'amount' => ['amount', 'string'],
|
||||
'amount' => ['amount', 'convertString'],
|
||||
'currency_id' => ['currency_id', 'integer'],
|
||||
'currency_code' => ['currency_code', 'string'],
|
||||
'currency_code' => ['currency_code', 'convertString'],
|
||||
];
|
||||
|
||||
return $this->getAllData($fields);
|
||||
|
||||
@@ -45,7 +45,7 @@ class StoreRequest extends FormRequest
|
||||
public function getAll(): array
|
||||
{
|
||||
return [
|
||||
'name' => $this->string('name'),
|
||||
'name' => $this->convertString('name'),
|
||||
'notes' => $this->stringWithNewlines('notes'),
|
||||
];
|
||||
}
|
||||
|
||||
@@ -44,7 +44,7 @@ class UpdateRequest extends FormRequest
|
||||
public function getAll(): array
|
||||
{
|
||||
$fields = [
|
||||
'name' => ['name', 'string'],
|
||||
'name' => ['name', 'convertString'],
|
||||
'notes' => ['notes', 'stringWithNewlines'],
|
||||
];
|
||||
|
||||
|
||||
@@ -43,7 +43,7 @@ class UpdateRequest extends FormRequest
|
||||
public function getUpdateData(): array
|
||||
{
|
||||
$fields = [
|
||||
'title' => ['title', 'string'],
|
||||
'title' => ['title', 'convertString'],
|
||||
'order' => ['order', 'integer'],
|
||||
];
|
||||
|
||||
|
||||
@@ -47,15 +47,15 @@ class StoreRequest extends FormRequest
|
||||
'order' => ['order', 'integer'],
|
||||
];
|
||||
$data = $this->getAllData($fields);
|
||||
$data['name'] = $this->string('name');
|
||||
$data['name'] = $this->convertString('name');
|
||||
$data['account_id'] = $this->integer('account_id');
|
||||
$data['targetamount'] = $this->string('target_amount');
|
||||
$data['current_amount'] = $this->string('current_amount');
|
||||
$data['targetamount'] = $this->convertString('target_amount');
|
||||
$data['current_amount'] = $this->convertString('current_amount');
|
||||
$data['startdate'] = $this->getCarbonDate('start_date');
|
||||
$data['targetdate'] = $this->getCarbonDate('target_date');
|
||||
$data['notes'] = $this->stringWithNewlines('notes');
|
||||
$data['object_group_id'] = $this->integer('object_group_id');
|
||||
$data['object_group_title'] = $this->string('object_group_title');
|
||||
$data['object_group_title'] = $this->convertString('object_group_title');
|
||||
|
||||
return $data;
|
||||
|
||||
|
||||
@@ -46,15 +46,15 @@ class UpdateRequest extends FormRequest
|
||||
public function getAll(): array
|
||||
{
|
||||
$fields = [
|
||||
'name' => ['name', 'string'],
|
||||
'name' => ['name', 'convertString'],
|
||||
'account_id' => ['account_id', 'integer'],
|
||||
'targetamount' => ['target_amount', 'string'],
|
||||
'current_amount' => ['current_amount', 'string'],
|
||||
'targetamount' => ['target_amount', 'convertString'],
|
||||
'current_amount' => ['current_amount', 'convertString'],
|
||||
'startdate' => ['start_date', 'date'],
|
||||
'targetdate' => ['target_date', 'string'],
|
||||
'targetdate' => ['target_date', 'convertString'],
|
||||
'notes' => ['notes', 'stringWithNewlines'],
|
||||
'order' => ['order', 'integer'],
|
||||
'object_group_title' => ['object_group_title', 'string'],
|
||||
'object_group_title' => ['object_group_title', 'convertString'],
|
||||
'object_group_id' => ['object_group_id', 'integer'],
|
||||
];
|
||||
|
||||
|
||||
@@ -49,9 +49,9 @@ class StoreRequest extends FormRequest
|
||||
public function getAll(): array
|
||||
{
|
||||
$fields = [
|
||||
'type' => ['type', 'string'],
|
||||
'title' => ['title', 'string'],
|
||||
'description' => ['description', 'string'],
|
||||
'type' => ['type', 'convertString'],
|
||||
'title' => ['title', 'convertString'],
|
||||
'description' => ['description', 'convertString'],
|
||||
'first_date' => ['first_date', 'date'],
|
||||
'repeat_until' => ['repeat_until', 'date'],
|
||||
'nr_of_repetitions' => ['nr_of_repetitions', 'integer'],
|
||||
|
||||
@@ -51,14 +51,14 @@ class UpdateRequest extends FormRequest
|
||||
{
|
||||
// this is the way:
|
||||
$fields = [
|
||||
'title' => ['title', 'string'],
|
||||
'description' => ['description', 'string'],
|
||||
'title' => ['title', 'convertString'],
|
||||
'description' => ['description', 'convertString'],
|
||||
'first_date' => ['first_date', 'date'],
|
||||
'repeat_until' => ['repeat_until', 'date'],
|
||||
'nr_of_repetitions' => ['nr_of_repetitions', 'integer'],
|
||||
'apply_rules' => ['apply_rules', 'boolean'],
|
||||
'active' => ['active', 'boolean'],
|
||||
'notes' => ['notes', 'string'],
|
||||
'notes' => ['notes', 'convertString'],
|
||||
];
|
||||
$reps = $this->getRepetitionData();
|
||||
$transactions = $this->getTransactionData();
|
||||
|
||||
@@ -46,12 +46,12 @@ class StoreRequest extends FormRequest
|
||||
public function getAll(): array
|
||||
{
|
||||
$fields = [
|
||||
'title' => ['title', 'string'],
|
||||
'description' => ['description', 'string'],
|
||||
'title' => ['title', 'convertString'],
|
||||
'description' => ['description', 'convertString'],
|
||||
'rule_group_id' => ['rule_group_id', 'integer'],
|
||||
'order' => ['order', 'integer'],
|
||||
'rule_group_title' => ['rule_group_title', 'string'],
|
||||
'trigger' => ['trigger', 'string'],
|
||||
'rule_group_title' => ['rule_group_title', 'convertString'],
|
||||
'trigger' => ['trigger', 'convertString'],
|
||||
'strict' => ['strict', 'boolean'],
|
||||
'stop_processing' => ['stop_processing', 'boolean'],
|
||||
'active' => ['active', 'boolean'],
|
||||
|
||||
@@ -46,10 +46,10 @@ class UpdateRequest extends FormRequest
|
||||
public function getAll(): array
|
||||
{
|
||||
$fields = [
|
||||
'title' => ['title', 'string'],
|
||||
'title' => ['title', 'convertString'],
|
||||
'description' => ['description', 'stringWithNewlines'],
|
||||
'rule_group_id' => ['rule_group_id', 'integer'],
|
||||
'trigger' => ['trigger', 'string'],
|
||||
'trigger' => ['trigger', 'convertString'],
|
||||
'strict' => ['strict', 'boolean'],
|
||||
'stop_processing' => ['stop_processing', 'boolean'],
|
||||
'active' => ['active', 'boolean'],
|
||||
|
||||
@@ -53,8 +53,8 @@ class StoreRequest extends FormRequest
|
||||
}
|
||||
|
||||
return [
|
||||
'title' => $this->string('title'),
|
||||
'description' => $this->string('description'),
|
||||
'title' => $this->convertString('title'),
|
||||
'description' => $this->convertString('description'),
|
||||
'active' => $active,
|
||||
'order' => $order,
|
||||
];
|
||||
|
||||
@@ -45,7 +45,7 @@ class UpdateRequest extends FormRequest
|
||||
{
|
||||
// This is the way.
|
||||
$fields = [
|
||||
'title' => ['title', 'string'],
|
||||
'title' => ['title', 'convertString'],
|
||||
'description' => ['description', 'stringWithNewlines'],
|
||||
'active' => ['active', 'boolean'],
|
||||
'order' => ['order', 'integer'],
|
||||
|
||||
@@ -46,9 +46,9 @@ class StoreRequest extends FormRequest
|
||||
public function getAll(): array
|
||||
{
|
||||
$data = [
|
||||
'tag' => $this->string('tag'),
|
||||
'tag' => $this->convertString('tag'),
|
||||
'date' => $this->getCarbonDate('date'),
|
||||
'description' => $this->string('description'),
|
||||
'description' => $this->convertString('description'),
|
||||
'has_location' => true,
|
||||
];
|
||||
|
||||
|
||||
@@ -48,9 +48,9 @@ class UpdateRequest extends FormRequest
|
||||
{
|
||||
// This is the way.
|
||||
$fields = [
|
||||
'tag' => ['tag', 'string'],
|
||||
'tag' => ['tag', 'convertString'],
|
||||
'date' => ['date', 'date'],
|
||||
'description' => ['description', 'string'],
|
||||
'description' => ['description', 'convertString'],
|
||||
];
|
||||
$data = $this->getAllData($fields);
|
||||
|
||||
|
||||
@@ -55,7 +55,7 @@ class StoreRequest extends FormRequest
|
||||
Log::debug('get all data in TransactionStoreRequest');
|
||||
|
||||
return [
|
||||
'group_title' => $this->string('group_title'),
|
||||
'group_title' => $this->convertString('group_title'),
|
||||
'error_if_duplicate_hash' => $this->boolean('error_if_duplicate_hash'),
|
||||
'apply_rules' => $this->boolean('apply_rules', true),
|
||||
'fire_webhooks' => $this->boolean('fire_webhooks', true),
|
||||
|
||||
@@ -84,7 +84,7 @@ class UpdateRequest extends FormRequest
|
||||
'notes',
|
||||
];
|
||||
|
||||
$this->stringFields = [
|
||||
$this->convertStringFields = [
|
||||
'type',
|
||||
'currency_code',
|
||||
'foreign_currency_code',
|
||||
@@ -133,7 +133,7 @@ class UpdateRequest extends FormRequest
|
||||
$data['fire_webhooks'] = $this->boolean('fire_webhooks', true);
|
||||
}
|
||||
if ($this->has('group_title')) {
|
||||
$data['group_title'] = $this->string('group_title');
|
||||
$data['group_title'] = $this->convertString('group_title');
|
||||
}
|
||||
|
||||
return $data;
|
||||
@@ -196,7 +196,7 @@ class UpdateRequest extends FormRequest
|
||||
*/
|
||||
private function getStringData(array $current, array $transaction): array
|
||||
{
|
||||
foreach ($this->stringFields as $fieldName) {
|
||||
foreach ($this->convertStringFields as $fieldName) {
|
||||
if (array_key_exists($fieldName, $transaction)) {
|
||||
$current[$fieldName] = $this->clearString((string) $transaction[$fieldName], false);
|
||||
}
|
||||
|
||||
@@ -54,9 +54,9 @@ class StoreRequest extends FormRequest
|
||||
}
|
||||
|
||||
return [
|
||||
'name' => $this->string('name'),
|
||||
'code' => $this->string('code'),
|
||||
'symbol' => $this->string('symbol'),
|
||||
'name' => $this->convertString('name'),
|
||||
'code' => $this->convertString('code'),
|
||||
'symbol' => $this->convertString('symbol'),
|
||||
'decimal_places' => $this->integer('decimal_places'),
|
||||
'default' => $default,
|
||||
'enabled' => $enabled,
|
||||
|
||||
@@ -46,9 +46,9 @@ class UpdateRequest extends FormRequest
|
||||
{
|
||||
// return nothing that isn't explicitely in the array:
|
||||
$fields = [
|
||||
'name' => ['name', 'string'],
|
||||
'code' => ['code', 'string'],
|
||||
'symbol' => ['symbol', 'string'],
|
||||
'name' => ['name', 'convertString'],
|
||||
'code' => ['code', 'convertString'],
|
||||
'symbol' => ['symbol', 'convertString'],
|
||||
'decimal_places' => ['decimal_places', 'integer'],
|
||||
'default' => ['default', 'boolean'],
|
||||
'enabled' => ['enabled', 'boolean'],
|
||||
|
||||
@@ -47,7 +47,7 @@ class StoreRequest extends FormRequest
|
||||
{
|
||||
return [
|
||||
'link_type_id' => $this->integer('link_type_id'),
|
||||
'link_type_name' => $this->string('link_type_name'),
|
||||
'link_type_name' => $this->convertString('link_type_name'),
|
||||
'inward_id' => $this->integer('inward_id'),
|
||||
'outward_id' => $this->integer('outward_id'),
|
||||
'notes' => $this->stringWithNewlines('notes'),
|
||||
|
||||
@@ -47,7 +47,7 @@ class UpdateRequest extends FormRequest
|
||||
{
|
||||
return [
|
||||
'link_type_id' => $this->integer('link_type_id'),
|
||||
'link_type_name' => $this->string('link_type_name'),
|
||||
'link_type_name' => $this->convertString('link_type_name'),
|
||||
'inward_id' => $this->integer('inward_id'),
|
||||
'outward_id' => $this->integer('outward_id'),
|
||||
'notes' => $this->stringWithNewlines('notes'),
|
||||
|
||||
@@ -44,9 +44,9 @@ class StoreRequest extends FormRequest
|
||||
public function getAll(): array
|
||||
{
|
||||
return [
|
||||
'name' => $this->string('name'),
|
||||
'outward' => $this->string('outward'),
|
||||
'inward' => $this->string('inward'),
|
||||
'name' => $this->convertString('name'),
|
||||
'outward' => $this->convertString('outward'),
|
||||
'inward' => $this->convertString('inward'),
|
||||
];
|
||||
}
|
||||
|
||||
|
||||
@@ -45,9 +45,9 @@ class UpdateRequest extends FormRequest
|
||||
public function getAll(): array
|
||||
{
|
||||
return [
|
||||
'name' => $this->string('name'),
|
||||
'outward' => $this->string('outward'),
|
||||
'inward' => $this->string('inward'),
|
||||
'name' => $this->convertString('name'),
|
||||
'outward' => $this->convertString('outward'),
|
||||
'inward' => $this->convertString('inward'),
|
||||
];
|
||||
}
|
||||
|
||||
|
||||
@@ -45,12 +45,12 @@ class CreateRequest extends FormRequest
|
||||
$deliveries = array_flip(config('firefly.webhooks.deliveries'));
|
||||
|
||||
$fields = [
|
||||
'title' => ['title', 'string'],
|
||||
'title' => ['title', 'convertString'],
|
||||
'active' => ['active', 'boolean'],
|
||||
'trigger' => ['trigger', 'string'],
|
||||
'response' => ['response', 'string'],
|
||||
'delivery' => ['delivery', 'string'],
|
||||
'url' => ['url', 'string'],
|
||||
'trigger' => ['trigger', 'convertString'],
|
||||
'response' => ['response', 'convertString'],
|
||||
'delivery' => ['delivery', 'convertString'],
|
||||
'url' => ['url', 'convertString'],
|
||||
];
|
||||
|
||||
// this is the way.
|
||||
|
||||
@@ -45,12 +45,12 @@ class UpdateRequest extends FormRequest
|
||||
$deliveries = array_flip(config('firefly.webhooks.deliveries'));
|
||||
|
||||
$fields = [
|
||||
'title' => ['title', 'string'],
|
||||
'title' => ['title', 'convertString'],
|
||||
'active' => ['active', 'boolean'],
|
||||
'trigger' => ['trigger', 'string'],
|
||||
'response' => ['response', 'string'],
|
||||
'delivery' => ['delivery', 'string'],
|
||||
'url' => ['url', 'string'],
|
||||
'trigger' => ['trigger', 'convertString'],
|
||||
'response' => ['response', 'convertString'],
|
||||
'delivery' => ['delivery', 'convertString'],
|
||||
'url' => ['url', 'convertString'],
|
||||
];
|
||||
|
||||
// this is the way.
|
||||
@@ -66,7 +66,7 @@ class UpdateRequest extends FormRequest
|
||||
}
|
||||
$return['secret'] = null !== $this->get('secret');
|
||||
if (null !== $this->get('title')) {
|
||||
$return['title'] = $this->string('title');
|
||||
$return['title'] = $this->convertString('title');
|
||||
}
|
||||
|
||||
return $return;
|
||||
|
||||
@@ -57,7 +57,7 @@ class UpdateRequest extends FormRequest
|
||||
return ['value' => $this->integer('value')];
|
||||
}
|
||||
|
||||
return ['value' => $this->string('value')];
|
||||
return ['value' => $this->convertString('value')];
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -59,10 +59,10 @@ class UserStoreRequest extends FormRequest
|
||||
}
|
||||
|
||||
return [
|
||||
'email' => $this->string('email'),
|
||||
'email' => $this->convertString('email'),
|
||||
'blocked' => $blocked,
|
||||
'blocked_code' => $this->string('blocked_code'),
|
||||
'role' => $this->string('role'),
|
||||
'blocked_code' => $this->convertString('blocked_code'),
|
||||
'role' => $this->convertString('role'),
|
||||
];
|
||||
}
|
||||
|
||||
|
||||
@@ -60,10 +60,10 @@ class UserUpdateRequest extends FormRequest
|
||||
}
|
||||
|
||||
return [
|
||||
'email' => $this->string('email'),
|
||||
'email' => $this->convertString('email'),
|
||||
'blocked' => $blocked,
|
||||
'blocked_code' => $this->string('blocked_code'),
|
||||
'role' => $this->string('role'),
|
||||
'blocked_code' => $this->convertString('blocked_code'),
|
||||
'role' => $this->convertString('role'),
|
||||
];
|
||||
}
|
||||
|
||||
|
||||
@@ -37,7 +37,7 @@ class PreferenceStoreRequest extends FormRequest
|
||||
public function getAll(): array
|
||||
{
|
||||
$array = [
|
||||
'name' => $this->string('name'),
|
||||
'name' => $this->convertString('name'),
|
||||
'data' => $this->get('data'),
|
||||
];
|
||||
if ('true' === $array['data']) {
|
||||
|
||||
@@ -38,7 +38,7 @@ class PreferenceUpdateRequest extends FormRequest
|
||||
public function getAll(): array
|
||||
{
|
||||
$array = [
|
||||
'name' => $this->string('name'),
|
||||
'name' => $this->convertString('name'),
|
||||
'data' => $this->get('data'),
|
||||
];
|
||||
if ('true' === $array['data']) {
|
||||
|
||||
@@ -108,7 +108,11 @@ class FixTransactionTypes extends Command
|
||||
}
|
||||
$expectedType = (string) config(sprintf('firefly.account_to_transaction.%s.%s', $source->accountType->type, $destination->accountType->type));
|
||||
if ($expectedType !== $type) {
|
||||
$this->line(sprintf('Transaction journal #%d was of type "%s" but is corrected to "%s"', $journal->id, $type, $expectedType));
|
||||
$this->line(
|
||||
sprintf('Transaction journal #%d was of type "%s" but is corrected to "%s" (%s -> %s)',
|
||||
$journal->id, $type, $expectedType,
|
||||
$source->accountType->type, $destination->accountType->type,
|
||||
));
|
||||
$this->changeJournal($journal, $expectedType);
|
||||
|
||||
return true;
|
||||
|
||||
@@ -36,20 +36,14 @@ class RegisteredUser extends Event
|
||||
{
|
||||
use SerializesModels;
|
||||
|
||||
/** @var string The users IP address */
|
||||
public $ipAddress;
|
||||
/** @var User The user */
|
||||
public $user;
|
||||
public User $user;
|
||||
|
||||
/**
|
||||
* Create a new event instance. This event is triggered when a new user registers.
|
||||
*
|
||||
* @param User $user
|
||||
* @param string $ipAddress
|
||||
* @param User $user
|
||||
*/
|
||||
public function __construct(User $user, string $ipAddress)
|
||||
public function __construct(User $user)
|
||||
{
|
||||
$this->user = $user;
|
||||
$this->ipAddress = $ipAddress;
|
||||
$this->user = $user;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -171,6 +171,7 @@ class Handler extends ExceptionHandler
|
||||
'url' => request()->fullUrl(),
|
||||
'userAgent' => request()->userAgent(),
|
||||
'json' => request()->acceptsJson(),
|
||||
'method' => request()->method(),
|
||||
'headers' => $headers,
|
||||
];
|
||||
|
||||
|
||||
@@ -36,10 +36,8 @@ use Log;
|
||||
*/
|
||||
class TransactionGroupFactory
|
||||
{
|
||||
/** @var TransactionJournalFactory */
|
||||
private $journalFactory;
|
||||
/** @var User The user */
|
||||
private $user;
|
||||
private TransactionJournalFactory $journalFactory;
|
||||
private User $user;
|
||||
|
||||
/**
|
||||
* TransactionGroupFactory constructor.
|
||||
|
||||
@@ -230,9 +230,9 @@ class UserEventHandler
|
||||
$oldEmail = $event->oldEmail;
|
||||
$user = $event->user;
|
||||
$token = app('preferences')->getForUser($user, 'email_change_confirm_token', 'invalid');
|
||||
$uri = route('profile.confirm-email-change', [$token->data]);
|
||||
$url = route('profile.confirm-email-change', [$token->data]);
|
||||
try {
|
||||
Mail::to($newEmail)->send(new ConfirmEmailChangeMail($newEmail, $oldEmail, $uri));
|
||||
Mail::to($newEmail)->send(new ConfirmEmailChangeMail($newEmail, $oldEmail, $url));
|
||||
|
||||
} catch (Exception $e) { // @phpstan-ignore-line
|
||||
Log::error($e->getMessage());
|
||||
@@ -256,9 +256,9 @@ class UserEventHandler
|
||||
$user = $event->user;
|
||||
$token = app('preferences')->getForUser($user, 'email_change_undo_token', 'invalid');
|
||||
$hashed = hash('sha256', sprintf('%s%s', (string) config('app.key'), $oldEmail));
|
||||
$uri = route('profile.undo-email-change', [$token->data, $hashed]);
|
||||
$url = route('profile.undo-email-change', [$token->data, $hashed]);
|
||||
try {
|
||||
Mail::to($oldEmail)->send(new UndoEmailChangeMail($newEmail, $oldEmail, $uri));
|
||||
Mail::to($oldEmail)->send(new UndoEmailChangeMail($newEmail, $oldEmail, $url));
|
||||
|
||||
} catch (Exception $e) { // @phpstan-ignore-line
|
||||
Log::error($e->getMessage());
|
||||
@@ -308,8 +308,7 @@ class UserEventHandler
|
||||
if ($sendMail) {
|
||||
// get the email address
|
||||
$email = $event->user->email;
|
||||
$uri = route('index');
|
||||
$ipAddress = $event->ipAddress;
|
||||
$url = route('index');
|
||||
|
||||
// see if user has alternative email address:
|
||||
$pref = app('preferences')->getForUser($event->user, 'remote_guard_alt_email');
|
||||
@@ -319,7 +318,7 @@ class UserEventHandler
|
||||
|
||||
// send email.
|
||||
try {
|
||||
Mail::to($email)->send(new RegisteredUserMail($uri, $ipAddress));
|
||||
Mail::to($email)->send(new RegisteredUserMail($url));
|
||||
|
||||
} catch (Exception $e) { // @phpstan-ignore-line
|
||||
Log::error($e->getMessage());
|
||||
@@ -339,6 +338,12 @@ class UserEventHandler
|
||||
Log::debug('Now in storeUserIPAddress');
|
||||
$user = $event->user;
|
||||
/** @var array $preference */
|
||||
|
||||
if($user->hasRole('demo')) {
|
||||
Log::debug('Do not log demo user logins');
|
||||
return;
|
||||
}
|
||||
|
||||
try {
|
||||
$preference = app('preferences')->getForUser($user, 'login_ip_history', [])->data;
|
||||
} catch (FireflyException $e) {
|
||||
|
||||
@@ -27,6 +27,7 @@ namespace FireflyIII\Helpers\Collector\Extensions;
|
||||
use FireflyIII\Helpers\Collector\GroupCollectorInterface;
|
||||
use FireflyIII\Models\Attachment;
|
||||
use FireflyIII\Models\TransactionJournal;
|
||||
use Illuminate\Database\Eloquent\Builder;
|
||||
use Illuminate\Database\Eloquent\Builder as EloquentBuilder;
|
||||
use Log;
|
||||
|
||||
@@ -299,7 +300,19 @@ trait AttachmentCollection
|
||||
{
|
||||
Log::debug('Add filter on no attachments.');
|
||||
$this->joinAttachmentTables();
|
||||
$this->query->whereNull('attachments.attachable_id');
|
||||
|
||||
$this->query->where(function (Builder $q1) {
|
||||
$q1
|
||||
->whereNull('attachments.attachable_id')
|
||||
->orWhere(function (Builder $q2) {
|
||||
$q2
|
||||
->whereNotNull('attachments.attachable_id')
|
||||
->whereNotNull('attachments.deleted_at');
|
||||
// id is not null
|
||||
// deleted at is not null.
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
return $this;
|
||||
}
|
||||
|
||||
@@ -33,6 +33,7 @@ use Illuminate\Database\Eloquent\Relations\HasMany;
|
||||
trait CollectorProperties
|
||||
{
|
||||
private array $fields;
|
||||
private array $stringFields;
|
||||
private bool $hasAccountInfo;
|
||||
private bool $hasBillInformation;
|
||||
private bool $hasBudgetInformation;
|
||||
|
||||
@@ -555,7 +555,9 @@ trait TimeCollection
|
||||
*/
|
||||
public function setObjectBefore(Carbon $date, string $field): GroupCollectorInterface
|
||||
{
|
||||
die('a');
|
||||
$afterStr = $date->format('Y-m-d 00:00:00');
|
||||
$this->query->where(sprintf('transaction_journals.%s', $field), '<=', $afterStr);
|
||||
return $this;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -87,6 +87,7 @@ class GroupCollector implements GroupCollectorInterface
|
||||
'category_id',
|
||||
'budget_id',
|
||||
];
|
||||
$this->stringFields = ['amount', 'foreign_amount'];
|
||||
$this->total = 0;
|
||||
$this->fields = [
|
||||
# group
|
||||
@@ -375,6 +376,9 @@ class GroupCollector implements GroupCollectorInterface
|
||||
// convert values to integers:
|
||||
$result = $this->convertToInteger($result);
|
||||
|
||||
// convert back to strings because SQLite is dumb like that.
|
||||
$result = $this->convertToStrings($result);
|
||||
|
||||
$result['reconciled'] = 1 === (int) $result['reconciled'];
|
||||
if (array_key_exists('tag_id', $result) && null !== $result['tag_id']) { // assume the other fields are present as well.
|
||||
$tagId = (int) $augumentedJournal['tag_id'];
|
||||
@@ -506,7 +510,7 @@ class GroupCollector implements GroupCollectorInterface
|
||||
$groups[$groudId]['sums'][$currencyId]['currency_decimal_places'] = $transaction['currency_decimal_places'];
|
||||
$groups[$groudId]['sums'][$currencyId]['amount'] = '0';
|
||||
}
|
||||
$groups[$groudId]['sums'][$currencyId]['amount'] = bcadd($groups[$groudId]['sums'][$currencyId]['amount'], $transaction['amount'] ?? '0');
|
||||
$groups[$groudId]['sums'][$currencyId]['amount'] = bcadd($groups[$groudId]['sums'][$currencyId]['amount'], $transaction['amount']);
|
||||
|
||||
if (null !== $transaction['foreign_amount'] && null !== $transaction['foreign_currency_id']) {
|
||||
$currencyId = (int) $transaction['foreign_currency_id'];
|
||||
@@ -815,4 +819,17 @@ class GroupCollector implements GroupCollectorInterface
|
||||
|
||||
return $this;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param array $array
|
||||
* @return array
|
||||
*/
|
||||
private function convertToStrings(array $array): array
|
||||
{
|
||||
foreach ($this->stringFields as $field) {
|
||||
$array[$field] = array_key_exists($field, $array) && null !== $array[$field] ? (string) $array[$field] : null;
|
||||
}
|
||||
|
||||
return $array;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -119,7 +119,7 @@ class CreateController extends Controller
|
||||
|
||||
// put previous url in session if not redirect from store (not "create another").
|
||||
if (true !== session('accounts.create.fromStore')) {
|
||||
$this->rememberPreviousUri('accounts.create.uri');
|
||||
$this->rememberPreviousUrl('accounts.create.url');
|
||||
}
|
||||
$request->session()->forget('accounts.create.fromStore');
|
||||
Log::channel('audit')->info('Creating new account.');
|
||||
@@ -171,7 +171,7 @@ class CreateController extends Controller
|
||||
}
|
||||
|
||||
// redirect to previous URL.
|
||||
$redirect = redirect($this->getPreviousUri('accounts.create.uri'));
|
||||
$redirect = redirect($this->getPreviousUrl('accounts.create.url'));
|
||||
if (1 === (int) $request->get('create_another')) {
|
||||
// set value so create routine will not overwrite URL:
|
||||
$request->session()->put('accounts.create.fromStore', true);
|
||||
|
||||
@@ -82,7 +82,7 @@ class DeleteController extends Controller
|
||||
unset($accountList[$account->id]);
|
||||
|
||||
// put previous url in session
|
||||
$this->rememberPreviousUri('accounts.delete.uri');
|
||||
$this->rememberPreviousUrl('accounts.delete.url');
|
||||
|
||||
return view('accounts.delete', compact('account', 'subTitle', 'accountList', 'objectType'));
|
||||
}
|
||||
@@ -111,7 +111,7 @@ class DeleteController extends Controller
|
||||
$request->session()->flash('success', (string) trans(sprintf('firefly.%s_deleted', $typeName), ['name' => $name]));
|
||||
app('preferences')->mark();
|
||||
|
||||
return redirect($this->getPreviousUri('accounts.delete.uri'));
|
||||
return redirect($this->getPreviousUrl('accounts.delete.url'));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -118,7 +118,7 @@ class EditController extends Controller
|
||||
|
||||
// put previous url in session if not redirect from store (not "return_to_edit").
|
||||
if (true !== session('accounts.edit.fromUpdate')) {
|
||||
$this->rememberPreviousUri('accounts.edit.uri');
|
||||
$this->rememberPreviousUrl('accounts.edit.url');
|
||||
}
|
||||
$request->session()->forget('accounts.edit.fromUpdate');
|
||||
|
||||
@@ -211,7 +211,7 @@ class EditController extends Controller
|
||||
}
|
||||
|
||||
// redirect
|
||||
$redirect = redirect($this->getPreviousUri('accounts.edit.uri'));
|
||||
$redirect = redirect($this->getPreviousUrl('accounts.edit.url'));
|
||||
if (1 === (int) $request->get('return_to_edit')) {
|
||||
// set value so edit routine will not overwrite URL:
|
||||
$request->session()->put('accounts.edit.fromUpdate', true);
|
||||
|
||||
@@ -134,9 +134,9 @@ class ReconcileController extends Controller
|
||||
$subTitle = (string) trans('firefly.reconcile_account', ['account' => $account->name]);
|
||||
|
||||
// various links
|
||||
$transactionsUri = route('accounts.reconcile.transactions', [$account->id, '%start%', '%end%']);
|
||||
$overviewUri = route('accounts.reconcile.overview', [$account->id, '%start%', '%end%']);
|
||||
$indexUri = route('accounts.reconcile', [$account->id, '%start%', '%end%']);
|
||||
$transactionsUrl = route('accounts.reconcile.transactions', [$account->id, '%start%', '%end%']);
|
||||
$overviewUrl = route('accounts.reconcile.overview', [$account->id, '%start%', '%end%']);
|
||||
$indexUrl = route('accounts.reconcile', [$account->id, '%start%', '%end%']);
|
||||
$objectType = 'asset';
|
||||
|
||||
return view(
|
||||
@@ -151,9 +151,9 @@ class ReconcileController extends Controller
|
||||
'subTitle',
|
||||
'startBalance',
|
||||
'endBalance',
|
||||
'transactionsUri',
|
||||
'overviewUri',
|
||||
'indexUri'
|
||||
'transactionsUrl',
|
||||
'overviewUrl',
|
||||
'indexUrl'
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
@@ -114,7 +114,7 @@ class ShowController extends Controller
|
||||
$fStart = $start->isoFormat($this->monthAndDayFormat);
|
||||
$fEnd = $end->isoFormat($this->monthAndDayFormat);
|
||||
$subTitle = (string) trans('firefly.journals_in_period_for_account', ['name' => $account->name, 'start' => $fStart, 'end' => $fEnd]);
|
||||
$chartUri = route('chart.account.period', [$account->id, $start->format('Y-m-d'), $end->format('Y-m-d')]);
|
||||
$chartUrl = route('chart.account.period', [$account->id, $start->format('Y-m-d'), $end->format('Y-m-d')]);
|
||||
$firstTransaction = $this->repository->oldestJournalDate($account) ?? $start;
|
||||
$periods = $this->getAccountPeriodOverview($account, $firstTransaction, $end);
|
||||
|
||||
@@ -152,7 +152,7 @@ class ShowController extends Controller
|
||||
'subTitle',
|
||||
'start',
|
||||
'end',
|
||||
'chartUri',
|
||||
'chartUrl',
|
||||
'location',
|
||||
'balance'
|
||||
)
|
||||
@@ -194,7 +194,7 @@ class ShowController extends Controller
|
||||
$collector->setAccounts(new Collection([$account]))->setLimit($pageSize)->setPage($page)->withAccountInformation()->withCategoryInformation();
|
||||
$groups = $collector->getPaginatedGroups();
|
||||
$groups->setPath(route('accounts.show.all', [$account->id]));
|
||||
$chartUri = route('chart.account.period', [$account->id, $start->format('Y-m-d'), $end->format('Y-m-d')]);
|
||||
$chartUrl = route('chart.account.period', [$account->id, $start->format('Y-m-d'), $end->format('Y-m-d')]);
|
||||
$showAll = true;
|
||||
$balance = app('steam')->balance($account, $end);
|
||||
|
||||
@@ -209,7 +209,7 @@ class ShowController extends Controller
|
||||
'attachments',
|
||||
'currency',
|
||||
'today',
|
||||
'chartUri',
|
||||
'chartUrl',
|
||||
'periods',
|
||||
'subTitleIcon',
|
||||
'groups',
|
||||
|
||||
@@ -76,7 +76,7 @@ class LinkController extends Controller
|
||||
|
||||
// put previous url in session if not redirect from store (not "create another").
|
||||
if (true !== session('link-types.create.fromStore')) {
|
||||
$this->rememberPreviousUri('link-types.create.uri');
|
||||
$this->rememberPreviousUrl('link-types.create.url');
|
||||
}
|
||||
|
||||
return view('admin.link.create', compact('subTitle', 'subTitleIcon'));
|
||||
@@ -113,7 +113,7 @@ class LinkController extends Controller
|
||||
}
|
||||
|
||||
// put previous url in session
|
||||
$this->rememberPreviousUri('link-types.delete.uri');
|
||||
$this->rememberPreviousUrl('link-types.delete.url');
|
||||
|
||||
return view('admin.link.delete', compact('linkType', 'subTitle', 'moveTo', 'count'));
|
||||
}
|
||||
@@ -136,7 +136,7 @@ class LinkController extends Controller
|
||||
$request->session()->flash('success', (string) trans('firefly.deleted_link_type', ['name' => $name]));
|
||||
app('preferences')->mark();
|
||||
|
||||
return redirect($this->getPreviousUri('link-types.delete.uri'));
|
||||
return redirect($this->getPreviousUrl('link-types.delete.url'));
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -161,7 +161,7 @@ class LinkController extends Controller
|
||||
|
||||
// put previous url in session if not redirect from store (not "return_to_edit").
|
||||
if (true !== session('link-types.edit.fromUpdate')) {
|
||||
$this->rememberPreviousUri('link-types.edit.uri');
|
||||
$this->rememberPreviousUrl('link-types.edit.url');
|
||||
}
|
||||
$request->session()->forget('link-types.edit.fromUpdate');
|
||||
|
||||
@@ -217,16 +217,16 @@ class LinkController extends Controller
|
||||
public function store(LinkTypeFormRequest $request)
|
||||
{
|
||||
$data = [
|
||||
'name' => $request->string('name'),
|
||||
'inward' => $request->string('inward'),
|
||||
'outward' => $request->string('outward'),
|
||||
'name' => $request->convertString('name'),
|
||||
'inward' => $request->convertString('inward'),
|
||||
'outward' => $request->convertString('outward'),
|
||||
];
|
||||
$linkType = $this->repository->store($data);
|
||||
|
||||
Log::channel('audit')->info('User stored new link type.', $linkType->toArray());
|
||||
|
||||
$request->session()->flash('success', (string) trans('firefly.stored_new_link_type', ['name' => $linkType->name]));
|
||||
$redirect = redirect($this->getPreviousUri('link-types.create.uri'));
|
||||
$redirect = redirect($this->getPreviousUrl('link-types.create.url'));
|
||||
if (1 === (int) $request->get('create_another')) {
|
||||
// set value so create routine will not overwrite URL:
|
||||
$request->session()->put('link-types.create.fromStore', true);
|
||||
@@ -255,9 +255,9 @@ class LinkController extends Controller
|
||||
}
|
||||
|
||||
$data = [
|
||||
'name' => $request->string('name'),
|
||||
'inward' => $request->string('inward'),
|
||||
'outward' => $request->string('outward'),
|
||||
'name' => $request->convertString('name'),
|
||||
'inward' => $request->convertString('inward'),
|
||||
'outward' => $request->convertString('outward'),
|
||||
];
|
||||
$this->repository->update($linkType, $data);
|
||||
|
||||
@@ -265,7 +265,7 @@ class LinkController extends Controller
|
||||
|
||||
$request->session()->flash('success', (string) trans('firefly.updated_link_type', ['name' => $linkType->name]));
|
||||
app('preferences')->mark();
|
||||
$redirect = redirect($this->getPreviousUri('link-types.edit.uri'));
|
||||
$redirect = redirect($this->getPreviousUrl('link-types.edit.url'));
|
||||
if (1 === (int) $request->get('return_to_edit')) {
|
||||
// set value so edit routine will not overwrite URL:
|
||||
$request->session()->put('link-types.edit.fromUpdate', true);
|
||||
|
||||
@@ -117,7 +117,7 @@ class UserController extends Controller
|
||||
}
|
||||
// put previous url in session if not redirect from store (not "return_to_edit").
|
||||
if (true !== session('users.edit.fromUpdate')) {
|
||||
$this->rememberPreviousUri('users.edit.uri');
|
||||
$this->rememberPreviousUrl('users.edit.url');
|
||||
}
|
||||
session()->forget('users.edit.fromUpdate');
|
||||
|
||||
@@ -217,7 +217,7 @@ class UserController extends Controller
|
||||
|
||||
session()->flash('success', (string) trans('firefly.updated_user', ['email' => $user->email]));
|
||||
app('preferences')->mark();
|
||||
$redirect = redirect($this->getPreviousUri('users.edit.uri'));
|
||||
$redirect = redirect($this->getPreviousUrl('users.edit.url'));
|
||||
if (1 === (int) $request->get('return_to_edit')) {
|
||||
|
||||
session()->put('users.edit.fromUpdate', true);
|
||||
|
||||
@@ -77,7 +77,7 @@ class AttachmentController extends Controller
|
||||
$subTitle = (string) trans('firefly.delete_attachment', ['name' => $attachment->filename]);
|
||||
|
||||
// put previous url in session
|
||||
$this->rememberPreviousUri('attachments.delete.uri');
|
||||
$this->rememberPreviousUrl('attachments.delete.url');
|
||||
|
||||
return view('attachments.delete', compact('attachment', 'subTitle'));
|
||||
}
|
||||
@@ -99,7 +99,7 @@ class AttachmentController extends Controller
|
||||
$request->session()->flash('success', (string) trans('firefly.attachment_deleted', ['name' => $name]));
|
||||
app('preferences')->mark();
|
||||
|
||||
return redirect($this->getPreviousUri('attachments.delete.uri'));
|
||||
return redirect($this->getPreviousUrl('attachments.delete.url'));
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -150,7 +150,7 @@ class AttachmentController extends Controller
|
||||
|
||||
// put previous url in session if not redirect from store (not "return_to_edit").
|
||||
if (true !== session('attachments.edit.fromUpdate')) {
|
||||
$this->rememberPreviousUri('attachments.edit.uri');
|
||||
$this->rememberPreviousUrl('attachments.edit.url');
|
||||
}
|
||||
$request->session()->forget('attachments.edit.fromUpdate');
|
||||
$preFilled = [
|
||||
@@ -196,7 +196,7 @@ class AttachmentController extends Controller
|
||||
$request->session()->flash('success', (string) trans('firefly.attachment_updated', ['name' => $attachment->filename]));
|
||||
app('preferences')->mark();
|
||||
|
||||
$redirect = redirect($this->getPreviousUri('attachments.edit.uri'));
|
||||
$redirect = redirect($this->getPreviousUrl('attachments.edit.url'));
|
||||
if (1 === (int) $request->get('return_to_edit')) {
|
||||
|
||||
$request->session()->put('attachments.edit.fromUpdate', true);
|
||||
|
||||
@@ -169,11 +169,11 @@ class LoginController extends Controller
|
||||
public function logout(Request $request)
|
||||
{
|
||||
$authGuard = config('firefly.authentication_guard');
|
||||
$logoutUri = config('firefly.custom_logout_url');
|
||||
if ('remote_user_guard' === $authGuard && '' !== $logoutUri) {
|
||||
return redirect($logoutUri);
|
||||
$logoutUrl = config('firefly.custom_logout_url');
|
||||
if ('remote_user_guard' === $authGuard && '' !== $logoutUrl) {
|
||||
return redirect($logoutUrl);
|
||||
}
|
||||
if ('remote_user_guard' === $authGuard && '' === $logoutUri) {
|
||||
if ('remote_user_guard' === $authGuard && '' === $logoutUrl) {
|
||||
session()->flash('error', trans('firefly.cant_logout_guard'));
|
||||
}
|
||||
|
||||
|
||||
@@ -84,7 +84,7 @@ class CreateController extends Controller
|
||||
|
||||
// put previous url in session if not redirect from store (not "create another").
|
||||
if (true !== session('bills.create.fromStore')) {
|
||||
$this->rememberPreviousUri('bills.create.uri');
|
||||
$this->rememberPreviousUrl('bills.create.url');
|
||||
}
|
||||
$request->session()->forget('bills.create.fromStore');
|
||||
|
||||
|
||||
@@ -72,7 +72,7 @@ class DeleteController extends Controller
|
||||
public function delete(Bill $bill)
|
||||
{
|
||||
// put previous url in session
|
||||
$this->rememberPreviousUri('bills.delete.uri');
|
||||
$this->rememberPreviousUrl('bills.delete.url');
|
||||
$subTitle = (string) trans('firefly.delete_bill', ['name' => $bill->name]);
|
||||
|
||||
return view('bills.delete', compact('bill', 'subTitle'));
|
||||
@@ -94,6 +94,6 @@ class DeleteController extends Controller
|
||||
$request->session()->flash('success', (string) trans('firefly.deleted_bill', ['name' => $name]));
|
||||
app('preferences')->mark();
|
||||
|
||||
return redirect($this->getPreviousUri('bills.delete.uri'));
|
||||
return redirect($this->getPreviousUrl('bills.delete.url'));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -85,7 +85,7 @@ class EditController extends Controller
|
||||
|
||||
// put previous url in session if not redirect from store (not "return_to_edit").
|
||||
if (true !== session('bills.edit.fromUpdate')) {
|
||||
$this->rememberPreviousUri('bills.edit.uri');
|
||||
$this->rememberPreviousUrl('bills.edit.url');
|
||||
}
|
||||
|
||||
$currency = app('amount')->getDefaultCurrency();
|
||||
@@ -141,7 +141,7 @@ class EditController extends Controller
|
||||
if (count($this->attachments->getMessages()->get('attachments')) > 0) {
|
||||
$request->session()->flash('info', $this->attachments->getMessages()->get('attachments'));
|
||||
}
|
||||
$redirect = redirect($this->getPreviousUri('bills.edit.uri'));
|
||||
$redirect = redirect($this->getPreviousUrl('bills.edit.url'));
|
||||
|
||||
if (1 === (int) $request->get('return_to_edit')) {
|
||||
|
||||
|
||||
@@ -98,7 +98,7 @@ class CreateController extends Controller
|
||||
|
||||
// put previous url in session if not redirect from store (not "create another").
|
||||
if (true !== session('budgets.create.fromStore')) {
|
||||
$this->rememberPreviousUri('budgets.create.uri');
|
||||
$this->rememberPreviousUrl('budgets.create.url');
|
||||
}
|
||||
$request->session()->forget('budgets.create.fromStore');
|
||||
$subTitle = (string) trans('firefly.create_new_budget');
|
||||
@@ -136,7 +136,7 @@ class CreateController extends Controller
|
||||
$request->session()->flash('info', $this->attachments->getMessages()->get('attachments'));
|
||||
}
|
||||
|
||||
$redirect = redirect($this->getPreviousUri('budgets.create.uri'));
|
||||
$redirect = redirect($this->getPreviousUrl('budgets.create.url'));
|
||||
|
||||
if (1 === (int) $request->get('create_another')) {
|
||||
|
||||
|
||||
@@ -73,7 +73,7 @@ class DeleteController extends Controller
|
||||
$subTitle = (string) trans('firefly.delete_budget', ['name' => $budget->name]);
|
||||
|
||||
// put previous url in session
|
||||
$this->rememberPreviousUri('budgets.delete.uri');
|
||||
$this->rememberPreviousUrl('budgets.delete.url');
|
||||
|
||||
return view('budgets.delete', compact('budget', 'subTitle'));
|
||||
}
|
||||
@@ -93,7 +93,7 @@ class DeleteController extends Controller
|
||||
$request->session()->flash('success', (string) trans('firefly.deleted_budget', ['name' => $name]));
|
||||
app('preferences')->mark();
|
||||
|
||||
return redirect($this->getPreviousUri('budgets.delete.uri'));
|
||||
return redirect($this->getPreviousUrl('budgets.delete.url'));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -108,7 +108,7 @@ class EditController extends Controller
|
||||
|
||||
// put previous url in session if not redirect from store (not "return_to_edit").
|
||||
if (true !== session('budgets.edit.fromUpdate')) {
|
||||
$this->rememberPreviousUri('budgets.edit.uri');
|
||||
$this->rememberPreviousUrl('budgets.edit.url');
|
||||
}
|
||||
$request->session()->forget('budgets.edit.fromUpdate');
|
||||
$request->session()->flash('preFilled', $preFilled);
|
||||
@@ -133,7 +133,7 @@ class EditController extends Controller
|
||||
$this->repository->cleanupBudgets();
|
||||
app('preferences')->mark();
|
||||
|
||||
$redirect = redirect($this->getPreviousUri('budgets.edit.uri'));
|
||||
$redirect = redirect($this->getPreviousUrl('budgets.edit.url'));
|
||||
|
||||
// store new attachment(s):
|
||||
$files = $request->hasFile('attachments') ? $request->file('attachments') : null;
|
||||
|
||||
@@ -73,7 +73,7 @@ class CreateController extends Controller
|
||||
public function create(Request $request)
|
||||
{
|
||||
if (true !== session('categories.create.fromStore')) {
|
||||
$this->rememberPreviousUri('categories.create.uri');
|
||||
$this->rememberPreviousUrl('categories.create.url');
|
||||
}
|
||||
$request->session()->forget('categories.create.fromStore');
|
||||
$subTitle = (string) trans('firefly.create_new_category');
|
||||
|
||||
@@ -72,7 +72,7 @@ class DeleteController extends Controller
|
||||
$subTitle = (string) trans('firefly.delete_category', ['name' => $category->name]);
|
||||
|
||||
// put previous url in session
|
||||
$this->rememberPreviousUri('categories.delete.uri');
|
||||
$this->rememberPreviousUrl('categories.delete.url');
|
||||
|
||||
return view('categories.delete', compact('category', 'subTitle'));
|
||||
}
|
||||
@@ -93,6 +93,6 @@ class DeleteController extends Controller
|
||||
$request->session()->flash('success', (string) trans('firefly.deleted_category', ['name' => $name]));
|
||||
app('preferences')->mark();
|
||||
|
||||
return redirect($this->getPreviousUri('categories.delete.uri'));
|
||||
return redirect($this->getPreviousUrl('categories.delete.url'));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -78,7 +78,7 @@ class EditController extends Controller
|
||||
|
||||
// put previous url in session if not redirect from store (not "return_to_edit").
|
||||
if (true !== session('categories.edit.fromUpdate')) {
|
||||
$this->rememberPreviousUri('categories.edit.uri');
|
||||
$this->rememberPreviousUrl('categories.edit.url');
|
||||
}
|
||||
$request->session()->forget('categories.edit.fromUpdate');
|
||||
|
||||
@@ -117,7 +117,7 @@ class EditController extends Controller
|
||||
if (count($this->attachments->getMessages()->get('attachments')) > 0) {
|
||||
$request->session()->flash('info', $this->attachments->getMessages()->get('attachments'));
|
||||
}
|
||||
$redirect = redirect($this->getPreviousUri('categories.edit.uri'));
|
||||
$redirect = redirect($this->getPreviousUrl('categories.edit.url'));
|
||||
|
||||
if (1 === (int) $request->get('return_to_edit')) {
|
||||
|
||||
|
||||
@@ -105,7 +105,7 @@ class NoCategoryController extends Controller
|
||||
->withAccountInformation()->withBudgetInformation()
|
||||
->setTypes([TransactionType::WITHDRAWAL, TransactionType::DEPOSIT, TransactionType::TRANSFER]);
|
||||
$groups = $collector->getPaginatedGroups();
|
||||
$groups->setPath(route('categories.no-category'));
|
||||
$groups->setPath(route('categories.no-category', [$start->format('Y-m-d'), $end->format('Y-m-d')]));
|
||||
|
||||
return view('categories.no-category', compact('groups', 'subTitle', 'periods', 'start', 'end'));
|
||||
}
|
||||
|
||||
@@ -41,7 +41,7 @@ abstract class Controller extends BaseController
|
||||
protected string $dateTimeFormat;
|
||||
protected string $monthAndDayFormat;
|
||||
protected string $monthFormat;
|
||||
protected string $redirectUri = '/';
|
||||
protected string $redirectUrl = '/';
|
||||
|
||||
/**
|
||||
* Controller constructor.
|
||||
@@ -63,10 +63,10 @@ abstract class Controller extends BaseController
|
||||
|
||||
// share custom auth guard info.
|
||||
$authGuard = config('firefly.authentication_guard');
|
||||
$logoutUri = config('firefly.custom_logout_url');
|
||||
$logoutUrl = config('firefly.custom_logout_url');
|
||||
|
||||
app('view')->share('authGuard', $authGuard);
|
||||
app('view')->share('logoutUri', $logoutUri);
|
||||
app('view')->share('logoutUrl', $logoutUrl);
|
||||
|
||||
// upload size
|
||||
$maxFileSize = app('steam')->phpBytes(ini_get('upload_max_filesize'));
|
||||
|
||||
@@ -88,7 +88,7 @@ class CurrencyController extends Controller
|
||||
|
||||
// put previous url in session if not redirect from store (not "create another").
|
||||
if (true !== session('currencies.create.fromStore')) {
|
||||
$this->rememberPreviousUri('currencies.create.uri');
|
||||
$this->rememberPreviousUrl('currencies.create.url');
|
||||
}
|
||||
$request->session()->forget('currencies.create.fromStore');
|
||||
|
||||
@@ -157,7 +157,7 @@ class CurrencyController extends Controller
|
||||
}
|
||||
|
||||
// put previous url in session
|
||||
$this->rememberPreviousUri('currencies.delete.uri');
|
||||
$this->rememberPreviousUrl('currencies.delete.url');
|
||||
$subTitle = (string) trans('form.delete_currency', ['name' => $currency->name]);
|
||||
Log::channel('audit')->info(sprintf('Visit page to delete currency %s.', $currency->code));
|
||||
|
||||
@@ -204,7 +204,7 @@ class CurrencyController extends Controller
|
||||
|
||||
$request->session()->flash('success', (string) trans('firefly.deleted_currency', ['name' => $currency->name]));
|
||||
|
||||
return redirect($this->getPreviousUri('currencies.delete.uri'));
|
||||
return redirect($this->getPreviousUrl('currencies.delete.url'));
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -297,7 +297,7 @@ class CurrencyController extends Controller
|
||||
|
||||
// put previous url in session if not redirect from store (not "return_to_edit").
|
||||
if (true !== session('currencies.edit.fromUpdate')) {
|
||||
$this->rememberPreviousUri('currencies.edit.uri');
|
||||
$this->rememberPreviousUrl('currencies.edit.url');
|
||||
}
|
||||
$request->session()->forget('currencies.edit.fromUpdate');
|
||||
|
||||
@@ -375,7 +375,7 @@ class CurrencyController extends Controller
|
||||
Log::error('User ' . auth()->user()->id . ' is not admin, but tried to store a currency.');
|
||||
Log::channel('audit')->info('Tried to create (POST) currency without admin rights.', $data);
|
||||
|
||||
return redirect($this->getPreviousUri('currencies.create.uri'));
|
||||
return redirect($this->getPreviousUrl('currencies.create.url'));
|
||||
|
||||
}
|
||||
|
||||
@@ -388,7 +388,7 @@ class CurrencyController extends Controller
|
||||
$request->session()->flash('error', (string) trans('firefly.could_not_store_currency'));
|
||||
$currency = null;
|
||||
}
|
||||
$redirect = redirect($this->getPreviousUri('currencies.create.uri'));
|
||||
$redirect = redirect($this->getPreviousUrl('currencies.create.url'));
|
||||
|
||||
if (null !== $currency) {
|
||||
$request->session()->flash('success', (string) trans('firefly.created_currency', ['name' => $currency->name]));
|
||||
@@ -443,6 +443,6 @@ class CurrencyController extends Controller
|
||||
|
||||
}
|
||||
|
||||
return redirect($this->getPreviousUri('currencies.edit.uri'));
|
||||
return redirect($this->getPreviousUrl('currencies.edit.url'));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -168,7 +168,7 @@ class ReconcileController extends Controller
|
||||
}
|
||||
|
||||
$return = [
|
||||
'post_uri' => $route,
|
||||
'post_url' => $route,
|
||||
'html' => $view,
|
||||
];
|
||||
|
||||
|
||||
@@ -92,7 +92,7 @@ class NewUserController extends Controller
|
||||
*/
|
||||
public function submit(NewUserFormRequest $request, CurrencyRepositoryInterface $currencyRepository)
|
||||
{
|
||||
$language = $request->string('language');
|
||||
$language = $request->convertString('language');
|
||||
if (!array_key_exists($language, config('firefly.languages'))) {
|
||||
$language = 'en_US';
|
||||
|
||||
|
||||
@@ -72,7 +72,7 @@ class DeleteController extends Controller
|
||||
$piggyBanks = $objectGroup->piggyBanks()->count();
|
||||
|
||||
// put previous url in session
|
||||
$this->rememberPreviousUri('object-groups.delete.uri');
|
||||
$this->rememberPreviousUrl('object-groups.delete.url');
|
||||
|
||||
return view('object-groups.delete', compact('objectGroup', 'subTitle', 'piggyBanks'));
|
||||
}
|
||||
@@ -90,7 +90,7 @@ class DeleteController extends Controller
|
||||
app('preferences')->mark();
|
||||
$this->repository->destroy($objectGroup);
|
||||
|
||||
return redirect($this->getPreviousUri('object-groups.delete.uri'));
|
||||
return redirect($this->getPreviousUrl('object-groups.delete.url'));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -75,7 +75,7 @@ class EditController extends Controller
|
||||
$subTitleIcon = 'fa-pencil';
|
||||
|
||||
if (true !== session('object-groups.edit.fromUpdate')) {
|
||||
$this->rememberPreviousUri('object-groups.edit.uri');
|
||||
$this->rememberPreviousUrl('object-groups.edit.url');
|
||||
}
|
||||
session()->forget('object-groups.edit.fromUpdate');
|
||||
|
||||
@@ -98,7 +98,7 @@ class EditController extends Controller
|
||||
session()->flash('success', (string) trans('firefly.updated_object_group', ['title' => $objectGroup->title]));
|
||||
app('preferences')->mark();
|
||||
|
||||
$redirect = redirect($this->getPreviousUri('object-groups.edit.uri'));
|
||||
$redirect = redirect($this->getPreviousUrl('object-groups.edit.url'));
|
||||
|
||||
if (1 === (int) $request->get('return_to_edit')) {
|
||||
|
||||
|
||||
@@ -76,7 +76,7 @@ class CreateController extends Controller
|
||||
|
||||
// put previous url in session if not redirect from store (not "create another").
|
||||
if (true !== session('piggy-banks.create.fromStore')) {
|
||||
$this->rememberPreviousUri('piggy-banks.create.uri');
|
||||
$this->rememberPreviousUrl('piggy-banks.create.url');
|
||||
}
|
||||
session()->forget('piggy-banks.create.fromStore');
|
||||
|
||||
@@ -115,7 +115,7 @@ class CreateController extends Controller
|
||||
if (count($this->attachments->getMessages()->get('attachments')) > 0) {
|
||||
$request->session()->flash('info', $this->attachments->getMessages()->get('attachments'));
|
||||
}
|
||||
$redirect = redirect($this->getPreviousUri('piggy-banks.create.uri'));
|
||||
$redirect = redirect($this->getPreviousUrl('piggy-banks.create.url'));
|
||||
|
||||
if (1 === (int) $request->get('create_another')) {
|
||||
|
||||
|
||||
@@ -72,7 +72,7 @@ class DeleteController extends Controller
|
||||
$subTitle = (string) trans('firefly.delete_piggy_bank', ['name' => $piggyBank->name]);
|
||||
|
||||
// put previous url in session
|
||||
$this->rememberPreviousUri('piggy-banks.delete.uri');
|
||||
$this->rememberPreviousUrl('piggy-banks.delete.url');
|
||||
|
||||
return view('piggy-banks.delete', compact('piggyBank', 'subTitle'));
|
||||
}
|
||||
@@ -90,6 +90,6 @@ class DeleteController extends Controller
|
||||
app('preferences')->mark();
|
||||
$this->piggyRepos->destroy($piggyBank);
|
||||
|
||||
return redirect($this->getPreviousUri('piggy-banks.delete.uri'));
|
||||
return redirect($this->getPreviousUrl('piggy-banks.delete.url'));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -102,7 +102,7 @@ class EditController extends Controller
|
||||
|
||||
// put previous url in session if not redirect from store (not "return_to_edit").
|
||||
if (true !== session('piggy-banks.edit.fromUpdate')) {
|
||||
$this->rememberPreviousUri('piggy-banks.edit.uri');
|
||||
$this->rememberPreviousUrl('piggy-banks.edit.url');
|
||||
}
|
||||
session()->forget('piggy-banks.edit.fromUpdate');
|
||||
|
||||
@@ -138,7 +138,7 @@ class EditController extends Controller
|
||||
if (count($this->attachments->getMessages()->get('attachments')) > 0) {
|
||||
$request->session()->flash('info', $this->attachments->getMessages()->get('attachments'));
|
||||
}
|
||||
$redirect = redirect($this->getPreviousUri('piggy-banks.edit.uri'));
|
||||
$redirect = redirect($this->getPreviousUrl('piggy-banks.edit.url'));
|
||||
|
||||
if (1 === (int) $request->get('return_to_edit')) {
|
||||
|
||||
|
||||
@@ -410,7 +410,7 @@ class ProfileController extends Controller
|
||||
|
||||
/** @var User $user */
|
||||
$user = auth()->user();
|
||||
$newEmail = $request->string('email');
|
||||
$newEmail = $request->convertString('email');
|
||||
$oldEmail = $user->email;
|
||||
if ($newEmail === $user->email) {
|
||||
session()->flash('error', (string) trans('firefly.email_not_changed'));
|
||||
|
||||
@@ -94,7 +94,7 @@ class CreateController extends Controller
|
||||
|
||||
// put previous url in session if not redirect from store (not "create another").
|
||||
if (true !== session('recurring.create.fromStore')) {
|
||||
$this->rememberPreviousUri('recurring.create.uri');
|
||||
$this->rememberPreviousUrl('recurring.create.url');
|
||||
}
|
||||
$request->session()->forget('recurring.create.fromStore');
|
||||
$repetitionEnds = [
|
||||
@@ -132,6 +132,7 @@ class CreateController extends Controller
|
||||
public function createFromJournal(Request $request, TransactionJournal $journal)
|
||||
{
|
||||
$budgets = app('expandedform')->makeSelectListWithEmpty($this->budgetRepos->getActiveBudgets());
|
||||
$bills = app('expandedform')->makeSelectListWithEmpty($this->billRepository->getActiveBills());
|
||||
$defaultCurrency = app('amount')->getDefaultCurrency();
|
||||
$tomorrow = today(config('app.timezone'));
|
||||
$oldRepetitionType = $request->old('repetition_type');
|
||||
@@ -139,7 +140,7 @@ class CreateController extends Controller
|
||||
|
||||
// put previous url in session if not redirect from store (not "create another").
|
||||
if (true !== session('recurring.create.fromStore')) {
|
||||
$this->rememberPreviousUri('recurring.create.uri');
|
||||
$this->rememberPreviousUrl('recurring.create.url');
|
||||
}
|
||||
$request->session()->forget('recurring.create.fromStore');
|
||||
$repetitionEnds = [
|
||||
@@ -213,7 +214,7 @@ class CreateController extends Controller
|
||||
|
||||
return view(
|
||||
'recurring.create',
|
||||
compact('tomorrow', 'oldRepetitionType', 'weekendResponses', 'preFilled', 'repetitionEnds', 'defaultCurrency', 'budgets')
|
||||
compact('tomorrow', 'oldRepetitionType', 'bills', 'weekendResponses', 'preFilled', 'repetitionEnds', 'defaultCurrency', 'budgets')
|
||||
);
|
||||
}
|
||||
|
||||
@@ -253,7 +254,7 @@ class CreateController extends Controller
|
||||
$request->session()->flash('info', $this->attachments->getMessages()->get('attachments'));
|
||||
}
|
||||
|
||||
$redirect = redirect($this->getPreviousUri('recurring.create.uri'));
|
||||
$redirect = redirect($this->getPreviousUrl('recurring.create.url'));
|
||||
if (1 === (int) $request->get('create_another')) {
|
||||
// set value so create routine will not overwrite URL:
|
||||
$request->session()->put('recurring.create.fromStore', true);
|
||||
|
||||
@@ -73,7 +73,7 @@ class DeleteController extends Controller
|
||||
{
|
||||
$subTitle = (string) trans('firefly.delete_recurring', ['title' => $recurrence->title]);
|
||||
// put previous url in session
|
||||
$this->rememberPreviousUri('recurrences.delete.uri');
|
||||
$this->rememberPreviousUrl('recurrences.delete.url');
|
||||
|
||||
$journalsCreated = $this->recurring->getTransactions($recurrence)->count();
|
||||
|
||||
@@ -95,7 +95,7 @@ class DeleteController extends Controller
|
||||
$request->session()->flash('success', (string) trans('firefly.' . 'recurrence_deleted', ['title' => $recurrence->title]));
|
||||
app('preferences')->mark();
|
||||
|
||||
return redirect($this->getPreviousUri('recurrences.delete.uri'));
|
||||
return redirect($this->getPreviousUrl('recurrences.delete.url'));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -112,7 +112,7 @@ class EditController extends Controller
|
||||
|
||||
// put previous url in session if not redirect from store (not "return_to_edit").
|
||||
if (true !== session('recurrences.edit.fromUpdate')) {
|
||||
$this->rememberPreviousUri('recurrences.edit.uri');
|
||||
$this->rememberPreviousUrl('recurrences.edit.url');
|
||||
}
|
||||
$request->session()->forget('recurrences.edit.fromUpdate');
|
||||
|
||||
@@ -186,7 +186,7 @@ class EditController extends Controller
|
||||
$request->session()->flash('info', $this->attachments->getMessages()->get('attachments'));
|
||||
}
|
||||
app('preferences')->mark();
|
||||
$redirect = redirect($this->getPreviousUri('recurrences.edit.uri'));
|
||||
$redirect = redirect($this->getPreviousUrl('recurrences.edit.url'));
|
||||
if (1 === (int) $request->get('return_to_edit')) {
|
||||
// set value so edit routine will not overwrite URL:
|
||||
$request->session()->put('recurrences.edit.fromUpdate', true);
|
||||
|
||||
@@ -377,7 +377,7 @@ class ReportController extends Controller
|
||||
return view('error')->with('message', (string) trans('firefly.end_after_start_date'));
|
||||
}
|
||||
|
||||
$uri = match ($reportType) {
|
||||
$url = match ($reportType) {
|
||||
default => route('reports.report.default', [$accounts, $start, $end]),
|
||||
'category' => route('reports.report.category', [$accounts, $categories, $start, $end]),
|
||||
'audit' => route('reports.report.audit', [$accounts, $start, $end]),
|
||||
@@ -386,7 +386,7 @@ class ReportController extends Controller
|
||||
'double' => route('reports.report.double', [$accounts, $double, $start, $end]),
|
||||
};
|
||||
|
||||
return redirect($uri);
|
||||
return redirect($url);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -122,7 +122,7 @@ class CreateController extends Controller
|
||||
|
||||
// put previous url in session if not redirect from store (not "create another").
|
||||
if (true !== session('rules.create.fromStore')) {
|
||||
$this->rememberPreviousUri('rules.create.uri');
|
||||
$this->rememberPreviousUrl('rules.create.url');
|
||||
}
|
||||
session()->forget('rules.create.fromStore');
|
||||
|
||||
@@ -175,7 +175,7 @@ class CreateController extends Controller
|
||||
|
||||
// put previous url in session if not redirect from store (not "create another").
|
||||
if (true !== session('rules.create.fromStore')) {
|
||||
$this->rememberPreviousUri('rules.create.uri');
|
||||
$this->rememberPreviousUrl('rules.create.url');
|
||||
}
|
||||
session()->forget('rules.create.fromStore');
|
||||
|
||||
@@ -225,7 +225,7 @@ class CreateController extends Controller
|
||||
|
||||
// put previous url in session if not redirect from store (not "create another").
|
||||
if (true !== session('rules.create.fromStore')) {
|
||||
$this->rememberPreviousUri('rules.create.uri');
|
||||
$this->rememberPreviousUrl('rules.create.url');
|
||||
}
|
||||
session()->forget('rules.create.fromStore');
|
||||
|
||||
@@ -272,10 +272,10 @@ class CreateController extends Controller
|
||||
|
||||
// redirect to new bill creation.
|
||||
if ((int) $request->get('bill_id') > 0) {
|
||||
return redirect($this->getPreviousUri('bills.create.uri'));
|
||||
return redirect($this->getPreviousUrl('bills.create.url'));
|
||||
}
|
||||
|
||||
$redirect = redirect($this->getPreviousUri('rules.create.uri'));
|
||||
$redirect = redirect($this->getPreviousUrl('rules.create.url'));
|
||||
|
||||
if (1 === (int) $request->get('create_another')) {
|
||||
|
||||
|
||||
@@ -71,7 +71,7 @@ class DeleteController extends Controller
|
||||
$subTitle = (string) trans('firefly.delete_rule', ['title' => $rule->title]);
|
||||
|
||||
// put previous url in session
|
||||
$this->rememberPreviousUri('rules.delete.uri');
|
||||
$this->rememberPreviousUrl('rules.delete.url');
|
||||
|
||||
return view('rules.rule.delete', compact('rule', 'subTitle'));
|
||||
}
|
||||
@@ -91,7 +91,7 @@ class DeleteController extends Controller
|
||||
session()->flash('success', (string) trans('firefly.deleted_rule', ['title' => $title]));
|
||||
app('preferences')->mark();
|
||||
|
||||
return redirect($this->getPreviousUri('rules.delete.uri'));
|
||||
return redirect($this->getPreviousUrl('rules.delete.url'));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -127,7 +127,7 @@ class EditController extends Controller
|
||||
|
||||
// put previous url in session if not redirect from store (not "return_to_edit").
|
||||
if (true !== session('rules.edit.fromUpdate')) {
|
||||
$this->rememberPreviousUri('rules.edit.uri');
|
||||
$this->rememberPreviousUrl('rules.edit.url');
|
||||
}
|
||||
session()->forget('rules.edit.fromUpdate');
|
||||
|
||||
@@ -193,7 +193,7 @@ class EditController extends Controller
|
||||
|
||||
session()->flash('success', (string) trans('firefly.updated_rule', ['title' => $rule->title]));
|
||||
app('preferences')->mark();
|
||||
$redirect = redirect($this->getPreviousUri('rules.edit.uri'));
|
||||
$redirect = redirect($this->getPreviousUrl('rules.edit.url'));
|
||||
if (1 === (int) $request->get('return_to_edit')) {
|
||||
|
||||
session()->put('rules.edit.fromUpdate', true);
|
||||
|
||||
@@ -72,7 +72,7 @@ class CreateController extends Controller
|
||||
|
||||
// put previous url in session if not redirect from store (not "create another").
|
||||
if (true !== session('rule-groups.create.fromStore')) {
|
||||
$this->rememberPreviousUri('rule-groups.create.uri');
|
||||
$this->rememberPreviousUrl('rule-groups.create.url');
|
||||
}
|
||||
session()->forget('rule-groups.create.fromStore');
|
||||
|
||||
@@ -94,7 +94,7 @@ class CreateController extends Controller
|
||||
session()->flash('success', (string) trans('firefly.created_new_rule_group', ['title' => $ruleGroup->title]));
|
||||
app('preferences')->mark();
|
||||
|
||||
$redirect = redirect($this->getPreviousUri('rule-groups.create.uri'));
|
||||
$redirect = redirect($this->getPreviousUrl('rule-groups.create.url'));
|
||||
if (1 === (int) $request->get('create_another')) {
|
||||
|
||||
session()->put('rule-groups.create.fromStore', true);
|
||||
|
||||
@@ -73,7 +73,7 @@ class DeleteController extends Controller
|
||||
$subTitle = (string) trans('firefly.delete_rule_group', ['title' => $ruleGroup->title]);
|
||||
|
||||
// put previous url in session
|
||||
$this->rememberPreviousUri('rule-groups.delete.uri');
|
||||
$this->rememberPreviousUrl('rule-groups.delete.url');
|
||||
|
||||
return view('rules.rule-group.delete', compact('ruleGroup', 'subTitle'));
|
||||
}
|
||||
@@ -97,7 +97,7 @@ class DeleteController extends Controller
|
||||
session()->flash('success', (string) trans('firefly.deleted_rule_group', ['title' => $title]));
|
||||
app('preferences')->mark();
|
||||
|
||||
return redirect($this->getPreviousUri('rule-groups.delete.uri'));
|
||||
return redirect($this->getPreviousUrl('rule-groups.delete.url'));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -80,7 +80,7 @@ class EditController extends Controller
|
||||
];
|
||||
// put previous url in session if not redirect from store (not "return_to_edit").
|
||||
if (true !== session('rule-groups.edit.fromUpdate')) {
|
||||
$this->rememberPreviousUri('rule-groups.edit.uri');
|
||||
$this->rememberPreviousUrl('rule-groups.edit.url');
|
||||
}
|
||||
session()->forget('rule-groups.edit.fromUpdate');
|
||||
session()->flash('preFilled', $preFilled);
|
||||
@@ -131,7 +131,7 @@ class EditController extends Controller
|
||||
public function update(RuleGroupFormRequest $request, RuleGroup $ruleGroup)
|
||||
{
|
||||
$data = [
|
||||
'title' => $request->string('title'),
|
||||
'title' => $request->convertString('title'),
|
||||
'description' => $request->stringWithNewlines('description'),
|
||||
'active' => 1 === (int) $request->input('active'),
|
||||
];
|
||||
@@ -140,7 +140,7 @@ class EditController extends Controller
|
||||
|
||||
session()->flash('success', (string) trans('firefly.updated_rule_group', ['title' => $ruleGroup->title]));
|
||||
app('preferences')->mark();
|
||||
$redirect = redirect($this->getPreviousUri('rule-groups.edit.uri'));
|
||||
$redirect = redirect($this->getPreviousUrl('rule-groups.edit.url'));
|
||||
if (1 === (int) $request->get('return_to_edit')) {
|
||||
|
||||
session()->put('rule-groups.edit.fromUpdate', true);
|
||||
|
||||
@@ -52,7 +52,7 @@ class TagController extends Controller
|
||||
public function __construct()
|
||||
{
|
||||
parent::__construct();
|
||||
$this->redirectUri = route('tags.index');
|
||||
$this->redirectUrl = route('tags.index');
|
||||
|
||||
$this->middleware(
|
||||
function ($request, $next) {
|
||||
@@ -90,7 +90,7 @@ class TagController extends Controller
|
||||
|
||||
// put previous url in session if not redirect from store (not "create another").
|
||||
if (true !== session('tags.create.fromStore')) {
|
||||
$this->rememberPreviousUri('tags.create.uri');
|
||||
$this->rememberPreviousUrl('tags.create.url');
|
||||
}
|
||||
session()->forget('tags.create.fromStore');
|
||||
|
||||
@@ -109,7 +109,7 @@ class TagController extends Controller
|
||||
$subTitle = (string) trans('breadcrumbs.delete_tag', ['tag' => $tag->tag]);
|
||||
|
||||
// put previous url in session
|
||||
$this->rememberPreviousUri('tags.delete.uri');
|
||||
$this->rememberPreviousUrl('tags.delete.url');
|
||||
|
||||
return view('tags.delete', compact('tag', 'subTitle'));
|
||||
}
|
||||
@@ -129,7 +129,7 @@ class TagController extends Controller
|
||||
session()->flash('success', (string) trans('firefly.deleted_tag', ['tag' => $tagName]));
|
||||
app('preferences')->mark();
|
||||
|
||||
return redirect($this->getPreviousUri('tags.delete.uri'));
|
||||
return redirect($this->getPreviousUrl('tags.delete.url'));
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -160,7 +160,7 @@ class TagController extends Controller
|
||||
|
||||
// put previous url in session if not redirect from store (not "return_to_edit").
|
||||
if (true !== session('tags.edit.fromUpdate')) {
|
||||
$this->rememberPreviousUri('tags.edit.uri');
|
||||
$this->rememberPreviousUrl('tags.edit.url');
|
||||
}
|
||||
session()->forget('tags.edit.fromUpdate');
|
||||
|
||||
@@ -333,7 +333,7 @@ class TagController extends Controller
|
||||
if (count($this->attachmentsHelper->getMessages()->get('attachments')) > 0) {
|
||||
$request->session()->flash('info', $this->attachmentsHelper->getMessages()->get('attachments'));
|
||||
}
|
||||
$redirect = redirect($this->getPreviousUri('tags.create.uri'));
|
||||
$redirect = redirect($this->getPreviousUrl('tags.create.url'));
|
||||
if (1 === (int) $request->get('create_another')) {
|
||||
|
||||
session()->put('tags.create.fromStore', true);
|
||||
@@ -374,7 +374,7 @@ class TagController extends Controller
|
||||
if (count($this->attachmentsHelper->getMessages()->get('attachments')) > 0) {
|
||||
$request->session()->flash('info', $this->attachmentsHelper->getMessages()->get('attachments'));
|
||||
}
|
||||
$redirect = redirect($this->getPreviousUri('tags.edit.uri'));
|
||||
$redirect = redirect($this->getPreviousUrl('tags.edit.url'));
|
||||
if (1 === (int) $request->get('return_to_edit')) {
|
||||
|
||||
session()->put('tags.edit.fromUpdate', true);
|
||||
|
||||
@@ -76,7 +76,7 @@ class BulkController extends Controller
|
||||
{
|
||||
$subTitle = (string) trans('firefly.mass_bulk_journals');
|
||||
|
||||
$this->rememberPreviousUri('transactions.bulk-edit.uri');
|
||||
$this->rememberPreviousUrl('transactions.bulk-edit.url');
|
||||
|
||||
// make amounts positive.
|
||||
|
||||
@@ -110,8 +110,8 @@ class BulkController extends Controller
|
||||
$journal = $this->repository->find($journalId);
|
||||
if (null !== $journal) {
|
||||
$resultA = $this->updateJournalBudget($journal, $ignoreBudget, $request->integer('budget_id'));
|
||||
$resultB = $this->updateJournalTags($journal, $tagsAction, explode(',', $request->string('tags')));
|
||||
$resultC = $this->updateJournalCategory($journal, $ignoreCategory, $request->string('category'));
|
||||
$resultB = $this->updateJournalTags($journal, $tagsAction, explode(',', $request->convertString('tags')));
|
||||
$resultC = $this->updateJournalCategory($journal, $ignoreCategory, $request->convertString('category'));
|
||||
if ($resultA || $resultB || $resultC) {
|
||||
$count++;
|
||||
}
|
||||
@@ -121,7 +121,7 @@ class BulkController extends Controller
|
||||
$request->session()->flash('success', (string) trans_choice('firefly.mass_edited_transactions_success', $count));
|
||||
|
||||
// redirect to previous URL:
|
||||
return redirect($this->getPreviousUri('transactions.bulk-edit.uri'));
|
||||
return redirect($this->getPreviousUrl('transactions.bulk-edit.url'));
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user