latency_enabled || blank($settings->latency_schedule)) { return __('No latency tests scheduled.'); } $cronExpression = new CronExpression($settings->latency_schedule); $nextRunDate = Carbon::parse($cronExpression->getNextRunDate()) ->setTimezone(config('app.display_timezone')) ->format(config('app.datetime_format')); return 'Next latency test at: '.$nextRunDate; } public function getData() { // Retrieve distinct target names $target_names = LatencyResult::distinct()->pluck('target_name'); return [ 'target_names' => $target_names, 'filters' => $this->getFilters(), ]; } protected function getHeaderWidgets(): array { // Assuming the settings are being stored in the LatencySettings class $target_urls = app(LatencySettings::class)->target_url; $widgets = []; foreach ($target_urls as $target) { $target_name = $target['target_name']; // Extract target_name from each target // Create a widget for each target_name and pass it as a parameter $widget = RecentLatencyChartWidget::make(['target_name' => $target_name]); $widgets[] = $widget; } return $widgets; } }