diff --git a/app/Providers/IntegrationsServiceProvider.php b/app/Providers/IntegrationsServiceProvider.php index baca4d59..71059278 100644 --- a/app/Providers/IntegrationsServiceProvider.php +++ b/app/Providers/IntegrationsServiceProvider.php @@ -9,6 +9,7 @@ use Illuminate\Support\Facades\App; use Illuminate\Support\Facades\Log; use Illuminate\Support\ServiceProvider; use Ramsey\Uuid\Exception\InvalidUuidStringException; +use Schema; /** * This class updates the integrations.php config with the relevant values @@ -33,33 +34,35 @@ class IntegrationsServiceProvider extends ServiceProvider */ public function boot() { - $settings = [ - 'healthchecks_enabled' => (bool)SettingsHelper::get('healthchecks_enabled')->value, - 'healthchecks_uuid' => SettingsHelper::get('healthchecks_uuid')->value, - 'slack_webhook' => SettingsHelper::get('slack_webhook')->value, - 'telegram_bot_token' => SettingsHelper::get('telegram_bot_token')->value, - 'telegram_chat_id' => SettingsHelper::get('telegram_chat_id')->value, - ]; + if(Schema::hasTable('settings')) { + $settings = [ + 'healthchecks_enabled' => (bool)SettingsHelper::get('healthchecks_enabled')->value, + 'healthchecks_uuid' => SettingsHelper::get('healthchecks_uuid')->value, + 'slack_webhook' => SettingsHelper::get('slack_webhook')->value, + 'telegram_bot_token' => SettingsHelper::get('telegram_bot_token')->value, + 'telegram_chat_id' => SettingsHelper::get('telegram_chat_id')->value, + ]; - foreach($settings as $key => $value) { - $key = 'integrations.' . $key; + foreach($settings as $key => $value) { + $key = 'integrations.' . $key; - if($value === "") { - $value = null; + if($value === "") { + $value = null; + } + + config()->set([ $key => $value ]); } - config()->set([ $key => $value ]); - } - - if($settings['healthchecks_enabled']) { - try { - App::bind('healthcheck', function() use ($settings) { - return new Healthchecks($settings['healthchecks_uuid']); - }); - } catch(InvalidUuidStringException $e) { - Log::error('Invalid healthchecks UUID'); - } catch(Exception $e) { - Log::error($e->getMessage()); + if($settings['healthchecks_enabled']) { + try { + App::bind('healthcheck', function() use ($settings) { + return new Healthchecks($settings['healthchecks_uuid']); + }); + } catch(InvalidUuidStringException $e) { + Log::error('Invalid healthchecks UUID'); + } catch(Exception $e) { + Log::error($e->getMessage()); + } } } }