public override async Task <ActionResult> IndexAsync(AuthorizationCodeResponseUrl authorizationCode, CancellationToken taskCancellationToken) { if (string.IsNullOrEmpty(authorizationCode.Code)) { var errorResponse = new TokenErrorResponse(authorizationCode); return(OnTokenError(errorResponse)); } var returnUrl = Request.Url.ToString(); returnUrl = returnUrl.Substring(0, returnUrl.IndexOf("?")); await Flow.ExchangeCodeForTokenAsync(UserId, authorizationCode.Code, returnUrl, taskCancellationToken); var success = GoogleCalendarSyncer.SyncToGoogleCalendar(this); if (!success) { return(Json("Token was revoked. Try again.")); } return(Redirect(Url.Content("~/"))); }
public ActionResult GetEvents() { var events = GoogleCalendarSyncer.GetEvents(this); //return Json(events, JsonRequestBehavior.AllowGet); return(View(events)); }
public JsonResult GetNextEvent() { var events = GoogleCalendarSyncer.GetEvents(this); var nextEvent = events.Where(x => x.Start.DateTime.HasValue) .Select(x => new { start = x.Start.DateTimeRaw, title = x.Summary }) .OrderBy(x => x.start).FirstOrDefault(); return(Json(nextEvent, JsonRequestBehavior.AllowGet)); }
public ActionResult SyncToGoogleCalendar() { if (string.IsNullOrWhiteSpace(GoogleOauthTokenService.OauthToken)) { var redirectUri = GoogleCalendarSyncer.GetOauthTokenUri(this); return(Redirect(redirectUri)); } else { var success = GoogleCalendarSyncer.SyncToGoogleCalendar(this); if (!success) { return(Json("Token was revoked. Try again.")); } } return(Redirect("~/")); }
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 ActionResult SyncToGoogleCalendar() { GoogleOauthTokenService.OauthToken = ""; if (string.IsNullOrWhiteSpace(GoogleOauthTokenService.OauthToken)) { var redirectUri = GoogleCalendarSyncer.GetOauthTokenUri(this); return(Redirect(redirectUri)); } /*else * { * var success = GoogleCalendarSyncer.SyncToGoogleCalendar(this); * if (!success) * { * return Json("Token was revoked. Try again.",JsonRequestBehavior.AllowGet); * } * }*/ return(new RedirectResult("~/Home/Login")); }