diff --git a/app/Http/Controllers/ReminderController.php b/app/Http/Controllers/ReminderController.php index 71c229a5d4..ae69d044f9 100644 --- a/app/Http/Controllers/ReminderController.php +++ b/app/Http/Controllers/ReminderController.php @@ -7,6 +7,7 @@ use FireflyIII\Http\Requests; use FireflyIII\Models\Reminder; use Redirect; use URL; +use Session; /** * Class ReminderController @@ -17,6 +18,23 @@ class ReminderController extends Controller { + /** + * @param Reminder $reminder + */ + public function act(Reminder $reminder) + { + $data = [ + 'description' => 'Money for piggy bank "' . $reminder->remindersable->name . '"', + 'amount' => round($reminder->metadata->perReminder, 2), + 'account_to_id' => $reminder->remindersable->account_id, + 'piggy_bank_id' => $reminder->remindersable_id, + 'reminder_id' => $reminder->id, + ]; + Session::flash('_old_input',$data); + + return Redirect::route('transactions.create','transfer'); + } + /** * @param Reminder $reminder */ @@ -92,7 +110,7 @@ class ReminderController extends Controller */ public function show(Reminder $reminder) { - $title = 'Reminder'; + $title = 'Reminder'; $mainTitleIcon = 'fa-clock-o'; if ($reminder->notnow === true) { $subTitle = 'Dismissed reminder'; @@ -102,7 +120,6 @@ class ReminderController extends Controller $subTitle .= ' for piggy bank "' . $reminder->remindersable->name . '"'; - return view('reminders.show', compact('reminder', 'title', 'subTitle', 'mainTitleIcon')); diff --git a/app/Http/Controllers/TransactionController.php b/app/Http/Controllers/TransactionController.php index e492fe899e..10b9ce1b18 100644 --- a/app/Http/Controllers/TransactionController.php +++ b/app/Http/Controllers/TransactionController.php @@ -238,7 +238,6 @@ class TransactionController extends Controller public function store(JournalFormRequest $request, JournalRepositoryInterface $repository) { - $journalData = [ 'what' => $request->get('what'), 'description' => $request->get('description'), @@ -260,6 +259,12 @@ class TransactionController extends Controller event(new JournalSaved($journal)); event(new JournalCreated($journal, intval($request->get('piggy_bank_id')))); + if(intval($request->get('reminder_id')) > 0) { + $reminder = Auth::user()->reminders()->find($request->get('reminder_id')); + $reminder->active = 0; + $reminder->save(); + } + Session::flash('success', 'New transaction "' . $journal->description . '" stored!'); if (intval(Input::get('create_another')) === 1) { diff --git a/app/Http/Requests/JournalFormRequest.php b/app/Http/Requests/JournalFormRequest.php index aefaefb972..038542c0bc 100644 --- a/app/Http/Requests/JournalFormRequest.php +++ b/app/Http/Requests/JournalFormRequest.php @@ -35,6 +35,7 @@ class JournalFormRequest extends Request 'what' => 'required|in:withdrawal,deposit,transfer|exists:transaction_types,type', 'amount' => 'numeric|required|min:0.01', 'date' => 'required|date', + 'reminder_id' => 'numeric|exists:reminders,id', 'amount_currency_id' => 'required|exists:transaction_currencies,id', ]; diff --git a/app/Http/routes.php b/app/Http/routes.php index 8efa3cd6c4..60bc5a6827 100644 --- a/app/Http/routes.php +++ b/app/Http/routes.php @@ -306,6 +306,7 @@ Route::group( */ Route::get('/reminders', ['uses' => 'ReminderController@index', 'as' => 'reminders.index']); Route::get('/reminder/dismiss/{reminder}', ['uses' => 'ReminderController@dismiss', 'as' => 'reminders.dismiss']); + Route::get('/reminder/act/{reminder}', ['uses' => 'ReminderController@act', 'as' => 'reminders.act']); Route::get('/reminder/{reminder}', ['uses' => 'ReminderController@show', 'as' => 'reminders.show']); diff --git a/resources/views/list/reminders.blade.php b/resources/views/list/reminders.blade.php index 78ecbed4f7..4560ec2be7 100644 --- a/resources/views/list/reminders.blade.php +++ b/resources/views/list/reminders.blade.php @@ -26,7 +26,7 @@
@if($reminder->active === true) Dismiss - Act + Act @endif
diff --git a/resources/views/reminders/show.blade.php b/resources/views/reminders/show.blade.php index 82947d478a..ec1811100d 100644 --- a/resources/views/reminders/show.blade.php +++ b/resources/views/reminders/show.blade.php @@ -28,7 +28,7 @@
@if($reminder->active === true) Dismiss - Act + Act @endif
diff --git a/resources/views/transactions/create.blade.php b/resources/views/transactions/create.blade.php index bf115c2dbd..ece7b4478f 100644 --- a/resources/views/transactions/create.blade.php +++ b/resources/views/transactions/create.blade.php @@ -2,7 +2,7 @@ @section('content') {!! Breadcrumbs::renderIfExists(Route::getCurrentRoute()->getName(), $what) !!} {!! Form::open(['class' => 'form-horizontal','id' => 'store','url' => route('transactions.store',$what)]) !!} -{!! Form::hidden('reminder',Input::get('reminder_id')) !!} +{!! Form::hidden('reminder_id',Input::get('reminder_id')) !!} {!! Form::hidden('what',$what) !!}