/// <inheritdoc /> /// <summary> /// Create new event /// </summary> /// <param name="evt"></param> /// <returns></returns> public async Task <ResultModel> PushEventAsync(GetEventViewModel evt) { var response = new ResultModel(); if (!Authorized) { return(response); } var googleEvent = GoogleCalendarMapper.Map(evt); try { var request = _calendarService.Events.Insert(googleEvent, CalendarName); var requestResult = await request.ExecuteAsync(); response.IsSuccess = true; response.Result = requestResult.Id; await _settingsService.SetEventAttributeAsync(evt.Id, $"{nameof(GoogleCalendarProvider)}_evtId", requestResult.Id); } catch (Exception e) { response.Errors.Add(new ErrorModel(e.Message)); } return(response); }
/// <inheritdoc /> /// <summary> /// Push event to outlook calendar /// </summary> /// <param name="evt"></param> /// <returns></returns> public virtual async Task <ResultModel> PushEventAsync(GetEventViewModel evt) { var response = new ResultModel(); if (!_isAuthorized) { return(response); } try { var requestResult = await _graphClient.Me.Events .Request() .Header("Prefer", "outlook.timezone=\"Pacific Standard Time\"") .AddAsync(OutlookMapper.Map(evt)); await _settingsService.SetEventAttributeAsync(evt.Id, $"{nameof(OutlookCalendarProvider)}_evtId", requestResult.Id); response.IsSuccess = true; } catch (Exception e) { Console.WriteLine(e); } return(response); }