getSetting('radio_auto_dj_detection', '0'); if ($enabled !== '1' && ! $this->option('force')) { $this->info('Auto DJ is uitgeschakeld. Gebruik --force om toch te draaien.'); return Command::SUCCESS; } $currentDjId = $this->getSetting('radio_current_dj_id', ''); $currentDj = $scheduleService->getCurrentDJ($currentDjId ?: null); $track = RadioAutoDjTrack::getNextTrack(); if (! $track) { $this->info('Geen Auto DJ tracks in de playlist.'); return Command::SUCCESS; } if ($currentDj !== null) { Cache::forget('radio_auto_dj_active'); $this->info('DJ is live. Auto DJ niet actief.'); return Command::SUCCESS; } Cache::forever('radio_auto_dj_active', [ 'title' => $track->title, 'artist' => $track->artist, 'is_auto_dj' => true, ]); $track->markPlayed(); $this->info("Auto DJ speelt: {$track->title}" . ($track->artist ? " by {$track->artist}" : '')); return Command::SUCCESS; } private function getSetting(string $key, string $default = ''): string { $setting = WebsiteSetting::where('key', $key)->first(); return $setting !== null && isset($setting->value) ? (string) $setting->value : $default; } }