diff --git a/app/controllers/ReminderController.php b/app/controllers/ReminderController.php index f289497e6c..e7862f289a 100644 --- a/app/controllers/ReminderController.php +++ b/app/controllers/ReminderController.php @@ -1,4 +1,5 @@ title; - // $model = null; // related model. - // - // if(isset($reminder->data->model) && isset($reminder->data->type)) { - // switch($reminder->data->type) { - // case 'Test': - // break; - // case 'Piggybank': - // break; - // default: - // throw new FireflyException('Cannot handle model of type '.$reminder->data->model); - // break; - // } - // } else { - // - // } - // + $amount = null; + $actionURL = '#'; if (get_class($reminder->remindersable) == 'Piggybank') { /** @var \FireflyIII\Shared\Toolkit\Reminders $toolkit */ $reminderKit = App::make('FireflyIII\Shared\Toolkit\Reminders'); @@ -45,4 +31,36 @@ class ReminderController extends BaseController return View::make('reminders.show', compact('reminder', 'amount')); } + + public function act(Reminder $reminder) { + /** @var \FireflyIII\Shared\Toolkit\Reminders $toolkit */ + $reminderKit = App::make('FireflyIII\Shared\Toolkit\Reminders'); + + switch(get_class($reminder->remindersable)) { + default: + throw new FireflyException('Cannot act on reminder for ' . get_class($reminder->remindersable)); + break; + break; + case 'Piggybank': + $amount = $reminderKit->amountForReminder($reminder); + $prefilled = [ + 'amount' => round($amount,2), + 'description' => 'Money for ' . $reminder->remindersable->name, + 'piggybank_id' => $reminder->remindersable_id, + 'account_to_id' => $reminder->remindersable->account_id + ]; + Session::flash('prefilled',$prefilled); + return Redirect::route('transactions.create','transfer'); + break; + + } + } + + public function dismiss(Reminder $reminder) { + $reminder->active = 0; + $reminder->save(); + Session::flash('success','Reminder dismissed'); + return Redirect::route('index'); + } + } \ No newline at end of file diff --git a/app/routes.php b/app/routes.php index 0f39c30440..3d113ae59c 100644 --- a/app/routes.php +++ b/app/routes.php @@ -203,6 +203,8 @@ Route::group( // reminder controller Route::get('/reminders/{reminder}',['uses' => 'ReminderController@show','as' => 'reminders.show']); + Route::get('/reminders/{reminder}/dismiss',['uses' => 'ReminderController@dismiss','as' => 'reminders.dismiss']); + Route::get('/reminders/{reminder}/act',['uses' => 'ReminderController@act','as' => 'reminders.act']); // search controller: Route::get('/search', ['uses' => 'SearchController@index', 'as' => 'search']); diff --git a/app/views/reminders/show.blade.php b/app/views/reminders/show.blade.php index 26c2b27b25..30e8f544e7 100644 --- a/app/views/reminders/show.blade.php +++ b/app/views/reminders/show.blade.php @@ -19,9 +19,9 @@
- I want to do this - I already did this - Not this time + I want to do this + I already did this + Not this time
diff --git a/app/views/transactions/create.blade.php b/app/views/transactions/create.blade.php index 456ec7a40f..eed40fd5c2 100644 --- a/app/views/transactions/create.blade.php +++ b/app/views/transactions/create.blade.php @@ -69,7 +69,7 @@ @if($what == 'transfer' && count($piggies) > 0) - {{Form::ffSelect('piggybank_id',$piggies,0)}} + {{Form::ffSelect('piggybank_id',$piggies)}} @endif