diff --git a/app/Exceptions/Handler.php b/app/Exceptions/Handler.php
index a747e31b8..28d29a8f2 100644
--- a/app/Exceptions/Handler.php
+++ b/app/Exceptions/Handler.php
@@ -56,6 +56,9 @@ class Handler extends ExceptionHandler
*/
protected function unauthenticated($request, AuthenticationException $exception)
{
+ // Store the current uri in the session
+ session(['url.intended' => $request->url()]);
+
if ($request->expectsJson()) {
return response()->json(['error' => 'Unauthenticated.'], 401);
}
diff --git a/app/Http/Controllers/Auth/Login.php b/app/Http/Controllers/Auth/Login.php
index fdad97374..f3639a60a 100644
--- a/app/Http/Controllers/Auth/Login.php
+++ b/app/Http/Controllers/Auth/Login.php
@@ -84,7 +84,7 @@ class Login extends Controller
return redirect('wizard');
}
- return redirect('/');
+ return redirect()->intended('/');
}
public function destroy()
diff --git a/app/Http/Controllers/Reports/ExpenseSummary.php b/app/Http/Controllers/Reports/ExpenseSummary.php
index 151873539..d3d5ea2fe 100644
--- a/app/Http/Controllers/Reports/ExpenseSummary.php
+++ b/app/Http/Controllers/Reports/ExpenseSummary.php
@@ -112,6 +112,8 @@ class ExpenseSummary extends Controller
$view_template = 'reports.expense_summary.index';
}
+ $print_url = $this->getPrintUrl($year);
+
// Expenses chart
$chart = Charts::multi('line', 'chartjs')
->dimensions(0, 300)
@@ -121,7 +123,17 @@ class ExpenseSummary extends Controller
->credits(false)
->view($chart_template);
- return view($view_template, compact('chart', 'dates', 'categories', 'statuses', 'accounts', 'vendors', 'expenses', 'totals'));
+ return view($view_template, compact(
+ 'chart',
+ 'dates',
+ 'categories',
+ 'statuses',
+ 'accounts',
+ 'vendors',
+ 'expenses',
+ 'totals',
+ 'print_url'
+ ));
}
private function setAmount(&$graph, &$totals, &$expenses, $items, $type, $date_field)
@@ -175,4 +187,25 @@ class ExpenseSummary extends Controller
$totals[$month]['amount'] += $amount;
}
}
+
+ private function getPrintUrl($year)
+ {
+ $print_url = 'reports/expense-summary?print=1'
+ . '&status=' . request('status')
+ . '&year='. request('year', $year);
+
+ collect(request('accounts'))->each(function($item) use(&$print_url) {
+ $print_url .= '&accounts[]=' . $item;
+ });
+
+ collect(request('vendors'))->each(function($item) use(&$print_url) {
+ $print_url .= '&vendors[]=' . $item;
+ });
+
+ collect(request('categories'))->each(function($item) use(&$print_url) {
+ $print_url .= '&categories[]=' . $item;
+ });
+
+ return $print_url;
+ }
}
diff --git a/app/Http/Controllers/Reports/IncomeExpenseSummary.php b/app/Http/Controllers/Reports/IncomeExpenseSummary.php
index 2362551ec..0f80a0bbd 100644
--- a/app/Http/Controllers/Reports/IncomeExpenseSummary.php
+++ b/app/Http/Controllers/Reports/IncomeExpenseSummary.php
@@ -153,6 +153,8 @@ class IncomeExpenseSummary extends Controller
$view_template = 'reports.income_expense_summary.index';
}
+ $print_url = $this->getPrintUrl($year);
+
// Profit chart
$chart = Charts::multi('line', 'chartjs')
->dimensions(0, 300)
@@ -162,7 +164,20 @@ class IncomeExpenseSummary extends Controller
->credits(false)
->view($chart_template);
- return view($view_template, compact('chart', 'dates', 'income_categories', 'expense_categories', 'categories', 'statuses', 'accounts', 'customers', 'vendors', 'compares', 'totals'));
+ return view($view_template, compact(
+ 'chart',
+ 'dates',
+ 'income_categories',
+ 'expense_categories',
+ 'categories',
+ 'statuses',
+ 'accounts',
+ 'customers',
+ 'vendors',
+ 'compares',
+ 'totals',
+ 'print_url'
+ ));
}
private function setAmount(&$graph, &$totals, &$compares, $items, $type, $date_field)
@@ -242,4 +257,29 @@ class IncomeExpenseSummary extends Controller
}
}
}
+
+ private function getPrintUrl($year)
+ {
+ $print_url = 'reports/income-expense-summary?print=1'
+ . '&status=' . request('status')
+ . '&year='. request('year', $year);
+
+ collect(request('accounts'))->each(function($item) use(&$print_url) {
+ $print_url .= '&accounts[]=' . $item;
+ });
+
+ collect(request('customers'))->each(function($item) use(&$print_url) {
+ $print_url .= '&customers[]=' . $item;
+ });
+
+ collect(request('vendors'))->each(function($item) use(&$print_url) {
+ $print_url .= '&vendors[]=' . $item;
+ });
+
+ collect(request('categories'))->each(function($item) use(&$print_url) {
+ $print_url .= '&categories[]=' . $item;
+ });
+
+ return $print_url;
+ }
}
diff --git a/app/Http/Controllers/Reports/IncomeSummary.php b/app/Http/Controllers/Reports/IncomeSummary.php
index a6b37ab28..50a02a5f4 100644
--- a/app/Http/Controllers/Reports/IncomeSummary.php
+++ b/app/Http/Controllers/Reports/IncomeSummary.php
@@ -112,6 +112,8 @@ class IncomeSummary extends Controller
$view_template = 'reports.income_summary.index';
}
+ $print_url = $this->getPrintUrl($year);
+
// Incomes chart
$chart = Charts::multi('line', 'chartjs')
->dimensions(0, 300)
@@ -121,7 +123,17 @@ class IncomeSummary extends Controller
->credits(false)
->view($chart_template);
- return view($view_template, compact('chart', 'dates', 'categories', 'statuses', 'accounts', 'customers', 'incomes', 'totals'));
+ return view($view_template, compact(
+ 'chart',
+ 'dates',
+ 'categories',
+ 'statuses',
+ 'accounts',
+ 'customers',
+ 'incomes',
+ 'totals',
+ 'print_url'
+ ));
}
private function setAmount(&$graph, &$totals, &$incomes, $items, $type, $date_field)
@@ -175,4 +187,25 @@ class IncomeSummary extends Controller
$totals[$month]['amount'] += $amount;
}
}
+
+ private function getPrintUrl($year)
+ {
+ $print_url = 'reports/income-summary?print=1'
+ . '&status=' . request('status')
+ . '&year='. request('year', $year);
+
+ collect(request('accounts'))->each(function($item) use(&$print_url) {
+ $print_url .= '&accounts[]=' . $item;
+ });
+
+ collect(request('customers'))->each(function($item) use(&$print_url) {
+ $print_url .= '&customers[]=' . $item;
+ });
+
+ collect(request('categories'))->each(function($item) use(&$print_url) {
+ $print_url .= '&categories[]=' . $item;
+ });
+
+ return $print_url;
+ }
}
diff --git a/app/Http/ViewComposers/All.php b/app/Http/ViewComposers/All.php
index 4dcaabe7b..86093ec29 100644
--- a/app/Http/ViewComposers/All.php
+++ b/app/Http/ViewComposers/All.php
@@ -18,7 +18,7 @@ class All
public function compose(View $view)
{
// Make sure it's installed
- if (!env('APP_INSTALLED')) {
+ if (!env('APP_INSTALLED') && (env('APP_ENV') !== 'testing')) {
return;
}
diff --git a/resources/views/reports/expense_summary/index.blade.php b/resources/views/reports/expense_summary/index.blade.php
index 7014b1b5b..bc2cada3e 100644
--- a/resources/views/reports/expense_summary/index.blade.php
+++ b/resources/views/reports/expense_summary/index.blade.php
@@ -3,7 +3,7 @@
@section('title', trans('reports.summary.expense'))
@section('new_button')
- {{ trans('general.print') }}
+ {{ trans('general.print') }}
@endsection
@section('content')
diff --git a/resources/views/reports/income_expense_summary/index.blade.php b/resources/views/reports/income_expense_summary/index.blade.php
index 8b5ad9c16..39b278854 100644
--- a/resources/views/reports/income_expense_summary/index.blade.php
+++ b/resources/views/reports/income_expense_summary/index.blade.php
@@ -3,7 +3,7 @@
@section('title', trans('reports.summary.income_expense'))
@section('new_button')
- {{ trans('general.print') }}
+ {{ trans('general.print') }}
@endsection
@section('content')
diff --git a/resources/views/reports/income_summary/index.blade.php b/resources/views/reports/income_summary/index.blade.php
index 46ffa5ae8..629bad120 100644
--- a/resources/views/reports/income_summary/index.blade.php
+++ b/resources/views/reports/income_summary/index.blade.php
@@ -3,7 +3,7 @@
@section('title', trans('reports.summary.income'))
@section('new_button')
- {{ trans('general.print') }}
+ {{ trans('general.print') }}
@endsection
@section('content')
diff --git a/tests/Feature/Banking/Transaction.php b/tests/Feature/Banking/Transaction.php
deleted file mode 100644
index 75465d7f4..000000000
--- a/tests/Feature/Banking/Transaction.php
+++ /dev/null
@@ -1,92 +0,0 @@
-get();
-
- foreach ($bills as $bill) {
- $bill_payments = $bill->payments;
-
- if ($bill_payments) {
- foreach ($bill_payments as $bill_payment) {
- $transactions[] = (object) [
- 'date' => $bill_payment->paid_at,
- 'account' => $bill_payment->account->name,
- 'type' => trans('invoices.status.partial'),
- 'category' => trans_choice('general.invoices', 1),
- 'description' => $bill_payment->description,
- 'amount' => $bill_payment->amount,
- 'currency_code' => $bill_payment->currency_code,
- ];
- }
- }
- }
-
- $payments = Payment::where('vendor_id', $user_id)->get();
-
- foreach ($payments as $payment) {
- $transactions[] = (object) [
- 'date' => $payment->paid_at,
- 'account' => $payment->account->name,
- 'type' => 'Expense',
- 'category' => $payment->category->name,
- 'description' => $payment->description,
- 'amount' => $payment->amount,
- 'currency_code' => $payment->currency_code,
- ];
- }
- break;
- case 'revenues':
- $invoices = Invoice::where('customer_id', $user_id)->get();
-
- foreach ($invoices as $invoice) {
- $invoice_payments = $invoice->payments;
-
- if ($invoice_payments) {
- foreach ($invoice_payments as $invoice_payment) {
- $transactions[] = (object) [
- 'date' => $invoice_payment->paid_at,
- 'account' => $invoice_payment->account->name,
- 'type' => trans('invoices.status.partial'),
- 'category' => trans_choice('general.invoices', 1),
- 'description' => $invoice_payment->description,
- 'amount' => $invoice_payment->amount,
- 'currency_code' => $invoice_payment->currency_code,
- ];
- }
- }
- }
-
- $revenues = Revenue::where('customer_id', $user_id)->get();
-
- foreach ($revenues as $revenue) {
- $transactions[] = (object) [
- 'date' => $revenue->paid_at,
- 'account' => $revenue->account->name,
- 'type' => trans_choice('general.payments', 1),
- 'category' => $revenue->category->name,
- 'description' => $revenue->description,
- 'amount' => $revenue->amount,
- 'currency_code' => $revenue->currency_code,
- ];
- }
- break;
- }
-
- return $transactions;
- }
-}