diff --git a/app/Http/Controllers/Import/IndexController.php b/app/Http/Controllers/Import/IndexController.php index 6216cc0045..3b3c21e48f 100644 --- a/app/Http/Controllers/Import/IndexController.php +++ b/app/Http/Controllers/Import/IndexController.php @@ -28,8 +28,10 @@ use FireflyIII\Http\Middleware\IsDemoUser; use FireflyIII\Import\Routine\RoutineInterface; use FireflyIII\Models\ImportJob; use FireflyIII\Repositories\ImportJob\ImportJobRepositoryInterface; +use Illuminate\Http\Request; use Illuminate\Http\Response as LaravelResponse; use Log; +use Preferences; use View; @@ -132,6 +134,44 @@ class IndexController extends Controller return view('import.index', compact('subTitle', 'subTitleIcon', 'routines')); } + /** + * @param Request $request + * @param string $bank + * + * @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector + */ + public function reset(Request $request, string $bank) + { + if ($bank === 'bunq') { + // remove bunq related preferences. + Preferences::delete('bunq_api_key'); + Preferences::delete('bunq_server_public_key'); + Preferences::delete('bunq_private_key'); + Preferences::delete('bunq_public_key'); + Preferences::delete('bunq_installation_token'); + Preferences::delete('bunq_installation_id'); + Preferences::delete('bunq_device_server_id'); + Preferences::delete('external_ip'); + + } + + if ($bank === 'spectre') { + // remove spectre related preferences: + Preferences::delete('spectre_client_id'); + Preferences::delete('spectre_app_secret'); + Preferences::delete('spectre_service_secret'); + Preferences::delete('spectre_private_key'); + Preferences::delete('spectre_public_key'); + Preferences::delete('spectre_customer'); + } + + Preferences::mark(); + $request->session()->flash('info', (string)trans('firefly.settings_reset_for_' . $bank)); + + return redirect(route('import.index')); + + } + /** * @param ImportJob $job * diff --git a/resources/views/import/index.twig b/resources/views/import/index.twig index c9b5682c9a..02fa364a94 100644 --- a/resources/views/import/index.twig +++ b/resources/views/import/index.twig @@ -64,6 +64,35 @@ +
+ {{ 'reset_import_settings_text'|_ }} +
+