with([ 'meetupEvents', ]) ->findOrFail($request->input('meetup')); $entries = []; foreach ($meetup->meetupEvents as $event) { $entries[] = Event::create() ->name($meetup->name) ->uniqueIdentifier(str($meetup->name)->slug.$event->id) ->address($event->location) ->description(str_replace(["\r", "\n"], '', $event->description).' Link: '.$event->link) ->image($meetup->getFirstMediaUrl('logo')) ->startsAt($event->start) ->alertMinutesBefore(60 * 2); } $calendar = Calendar::create() ->name($meetup->name) ->refreshInterval(5) ->event($entries); return response($calendar->get()) ->header('Content-Type', 'text/calendar; charset=utf-8'); } }