public function events($company_id, Request $request)
 {
     $google_calendars = [];
     $users = Auth::user();
     if (Auth::user()->role != "worker") {
         $users = User::whereHas('company', function ($q) use($company_id) {
             $q->where('companies.id', '=', $company_id);
         })->select('id', 'events_color')->get();
         $users = array_column($users->toArray(), 'events_color', 'id');
         foreach ($users as $user_id => $event_color) {
             $google_calendars[$user_id] = GoogleUserCalendar::freeBusy($user_id, $request->get('start'), $request->get('end'));
         }
         $jsonResponse = Roster::eventsJSON($company_id, ['start' => $request->get('start'), 'end' => $request->get('end')]);
     } else {
         $jsonResponse = User::events(Auth::user()->id, ['start' => $request->get('start'), 'end' => $request->get('end')]);
         $google_calendars[Auth::user()->id] = GoogleUserCalendar::freeBusy(Auth::user()->id, $request->get('start'), $request->get('end'));
     }
     foreach ($google_calendars as $user_id => $google_calendar_list) {
         foreach ($google_calendar_list as $calendar) {
             $events = $calendar->busy;
             if (count($events) > 0) {
                 foreach ($events as $event) {
                     array_push($jsonResponse, (object) ["id" => "google_" . rand(100, 700), "resourceId" => $user_id, "start" => $event->start, "end" => $event->end, "rendering" => "background", "color" => $users[$user_id]]);
                 }
             }
         }
     }
     return response()->json($jsonResponse);
 }