title = Setting::get('app_name'); $feed->description = trans('cachet.feed'); $feed->link = Str::canonicalize(Setting::get('app_domain')); $feed->setDateFormat('datetime'); if ($group->exists) { $group->components->map(function ($component) use ($feed) { $component->incidents()->visible()->orderBy('created_at', 'desc')->get()->map(function ($incident) use ($feed) { $this->feedAddItem($feed, $incident); }); }); } else { Incident::visible()->orderBy('created_at', 'desc')->get()->map(function ($incident) use ($feed) { $this->feedAddItem($feed, $incident); }); } return $feed->render('atom'); } /** * Adds an item to the feed. * * @param \Roumen\Feed\Facades\Feed $feed * @param \CachetHQ\Cachet\Models\Incident $incident * * @return void */ private function feedAddItem(&$feed, $incident) { $feed->add( $incident->name, Setting::get('app_name'), Str::canonicalize(route('incident', ['id' => $incident->id])), $incident->created_at->toAtomString(), Markdown::convertToHtml($incident->message) ); } }