private async Task <List <Models.Common.EventBase> > GetGoogleEvents(DateTime datetime, Models.Auth.UserBase user) { var events = new List <Models.Common.EventBase>(); var googleClient = new GoogleClient(user); if (AppGlobalVariables.Colors == null) { AppGlobalVariables.Colors = await googleClient.GetColors(); } if (user.Calendars.Count == 0) { var calendars = await googleClient.GetCalendarList(); var calCache = new CalendarCacheHelper(); await calCache.Init(); foreach (var calendar in calendars.items) { calCache.CheckIfEnabled(calendar); } user.Calendars.AddRange(calendars.items); } if (user.Calendars.Count > 0) { foreach (var item in user.Calendars) { if (item.IsEnabled) { try { var tmp = await googleClient.GetEventList(item, datetime); if (tmp != null) { events.AddRange(tmp.items); } } catch (Exception ex) { Debugger.WriteErrorLog("Error occured while retrieving Google Events. User="******". Calendar=" + item.Name + ".", ex); await new MessageDialog(ex.Message + ". User="******". Calendar=" + item.Name + ". Please consider excluding this calendar.", "Error occured while retrieving Google Events.").ShowAsync(); } } } } return(events); }
private async Task <List <Models.Common.EventBase> > GetMicrosoftEvents(DateTime datetime, Models.Auth.UserBase user) { var events = new List <Models.Common.EventBase>(); var msClient = new MicrosoftClient(user); if (user.Calendars.Count == 0) { var calendars = await msClient.GetCalendarList(); var calCache = new CalendarCacheHelper(); await calCache.Init(); foreach (var calendar in calendars.value) { calCache.CheckIfEnabled(calendar); } user.Calendars.AddRange(calendars.value); } if (user.Calendars.Count > 0) { foreach (var calendar in user.Calendars) { if (calendar.IsEnabled) { try { var msevents = await msClient.GetEventList(calendar, datetime); events.AddRange(msevents.value); } catch (Exception ex) { Debugger.WriteErrorLog("Error occured while retrieving Microsoft Events. User="******". Calendar=" + calendar.Name + ".", ex); await new MessageDialog(ex.Message + ". User="******". Calendar=" + calendar.Name + ". Please consider excluding this calendar.", "Error occured while retrieving Microsoft Events.").ShowAsync(); } } } } return(events); }