public async Task <IActionResult> GetCalendars() { var response = await _gCalendarService.GetListOfCalendars(); if (response.ErrorOccurred) { return(BadRequest(response)); } return(Ok(response)); }
public async Task <ResponseDto <GetEventListDto> > GetListOfEvents(string calendarId) { var response = new ResponseDto <GetEventListDto> { Object = new GetEventListDto() }; var service = await _googleCalendarService.GetCalendarService(); if (service == null) { response.Errors.Add(ServiceErrors.SERVICE_ERROR); return(response); } var calendars = await _gCalendarService.GetListOfCalendars(); if (calendars.ErrorOccurred) { response.Errors.Add(ServiceErrors.STH_WENT_WRONG_ERROR); return(response); } var exist = calendars.Object.CalendarList.Exists(cal => cal.Id == calendarId); if (!exist) { response.Errors.Add(ServiceErrors.CALENDAR_DOES_NOT_EXIST_ERROR); return(response); } string pageToken = null; List <Event> events = new List <Event>(); do { var eventList = service.Events.List(calendarId); eventList.PageToken = pageToken; var result = await eventList.ExecuteAsync(); foreach (var ev in result.Items) { events.Add(ev); } pageToken = result.NextPageToken; } while (pageToken != null); response.Object.EventsList = events; return(response); }