From 46d13fd08a8befb6504638e3dda36e510e6c3bce Mon Sep 17 00:00:00 2001 From: Henry Whitaker Date: Sat, 19 Dec 2020 21:47:27 +0000 Subject: [PATCH] Add setting to enable/disable schedule --- app/Console/Kernel.php | 6 ++- ...19_211232_add_schedule_enabled_setting.php | 38 +++++++++++++++++++ 2 files changed, 42 insertions(+), 2 deletions(-) create mode 100644 database/migrations/2020_12_19_211232_add_schedule_enabled_setting.php diff --git a/app/Console/Kernel.php b/app/Console/Kernel.php index 825fa4ee..44157a7a 100644 --- a/app/Console/Kernel.php +++ b/app/Console/Kernel.php @@ -28,7 +28,9 @@ class Kernel extends ConsoleKernel */ protected function schedule(Schedule $schedule) { - $schedule->job(new SpeedtestJob(true, config('integrations')))->cron(SettingsHelper::get('schedule')['value']); + if ((bool)SettingsHelper::get('schedule_enabled')->value) { + $schedule->job(new SpeedtestJob(true, config('integrations')))->cron(SettingsHelper::get('schedule')['value']); + } $schedule->command('speedtest:overview')->cron('0 ' . SettingsHelper::get('speedtest_overview_time')->value . ' * * *'); $schedule->command('speedtest:clear-sessions')->everyMinute(); } @@ -40,7 +42,7 @@ class Kernel extends ConsoleKernel */ protected function commands() { - $this->load(__DIR__.'/Commands'); + $this->load(__DIR__ . '/Commands'); require base_path('routes/console.php'); } diff --git a/database/migrations/2020_12_19_211232_add_schedule_enabled_setting.php b/database/migrations/2020_12_19_211232_add_schedule_enabled_setting.php new file mode 100644 index 00000000..db78f3b7 --- /dev/null +++ b/database/migrations/2020_12_19_211232_add_schedule_enabled_setting.php @@ -0,0 +1,38 @@ + 'schedule_enabled', + 'value' => true, + 'description' => 'Enable/disable the schedule worker' + ]); + } + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Setting::whereIn('name', [ + 'schedule_enabled', + ])->delete(); + } +}