private static Event GetCalendarEvent(GoogleEventInfo info) { var result = new Event(); result.Summary = info.Title; result.Description = info.Description; result.Sequence = 1; var eventDateStart = new EventDateTime(); eventDateStart.DateTime = info.StartDate + info.StartTime; result.Start = eventDateStart; var eventDateEnd = new EventDateTime(); eventDateEnd.DateTime = info.EndDate + info.EndTime; result.End = eventDateEnd; return(result); }
public ActionResult AddEvent(GoogleEventInfo info) { if (string.IsNullOrWhiteSpace(GoogleOauthTokenService.OauthToken)) { var redirectUri = GoogleCalendarSyncer.GetOauthTokenUri(this); return(Redirect(redirectUri)); } else { var success = GoogleCalendarSyncer.AddToGoogleCalendar(this, info); if (!success) { return(RedirectToAction("_SyncToGoogleCalendarError")); //return Json("Token was revoked. Try again."); } } return(RedirectToAction("GetEvents")); }
public static bool AddToGoogleCalendar(Controller controller, GoogleEventInfo info) { try { var authResult = GetAuthResult(controller); var service = InitializeService(authResult); var calendarId = GetMainCalendarId(service); var calendarEvent = GetCalendarEvent(info); SyncCalendarEventToCalendar(service, calendarEvent, calendarId); return(true); } catch (Exception ex) { GoogleOauthTokenService.OauthToken = null; return(false); } }