protected override void OnLoad(EventArgs e) { base.FilteredView = false; base.OnLoad(e); EditCalendarItemHelper.ClearUserContextData(base.UserContext); this.CreateExpiringPasswordNotification(); this.CreateOutOfOfficeNotification(); int num = RequestParser.TryGetIntValueFromQueryString(base.Request, "slUsng", -1); if (num >= 0 && num <= 2) { this.selectedUsing = (SecondaryNavigationArea)num; } if (base.UserContext.IsWebPartRequest) { base.UserContext.LastClientViewState = new WebPartModuleViewState(base.FolderId, base.Folder.ClassName, base.PageNumber, NavigationModule.Mail, base.SortOrder, base.SortedColumn); return; } if (base.FilteredView) { base.UserContext.LastClientViewState = new MessageModuleSearchViewState(base.UserContext.LastClientViewState, base.FolderId, base.OwaContext.FormsRegistryContext.Type, this.selectedUsing, base.PageNumber, base.SearchString, base.SearchScope); return; } base.UserContext.LastClientViewState = new MessageModuleViewState(base.FolderId, base.OwaContext.FormsRegistryContext.Type, this.selectedUsing, base.PageNumber); }
// Token: 0x060004BB RID: 1211 RVA: 0x0002769C File Offset: 0x0002589C private bool LoadCalendarItem(StoreObjectId folderId) { string queryStringParameter = Utilities.GetQueryStringParameter(base.Request, "id", false); string formParameter = Utilities.GetFormParameter(base.Request, "hidid", false); string formParameter2 = Utilities.GetFormParameter(base.Request, "hidchk", false); StoreObjectId storeObjectId = null; if (base.OwaContext.PreFormActionId != null) { storeObjectId = base.OwaContext.PreFormActionId.StoreObjectId; } else if (base.Request.RequestType == "GET" && !string.IsNullOrEmpty(queryStringParameter)) { storeObjectId = Utilities.CreateStoreObjectId(base.UserContext.MailboxSession, queryStringParameter); } else if (Utilities.IsPostRequest(base.Request) && !string.IsNullOrEmpty(formParameter) && !string.IsNullOrEmpty(formParameter2)) { storeObjectId = Utilities.CreateStoreObjectId(base.UserContext.MailboxSession, formParameter); } CalendarItemBase calendarItemBase; EditCalendarItemHelper.GetCalendarItem(base.UserContext, storeObjectId, folderId, formParameter2, true, out calendarItemBase); this.CalendarItemBase = calendarItemBase; return(this.CalendarItemBase != null); }
// Token: 0x060004CB RID: 1227 RVA: 0x00027C85 File Offset: 0x00025E85 protected override void OnUnload(EventArgs e) { if (this.CalendarItemBase != null) { EditCalendarItemHelper.CreateUserContextData(base.UserContext, this.CalendarItemBase); } base.OnUnload(e); }
internal static bool CancelCalendarItem(UserContext userContext, CalendarItemBase calendarItemBase, EditCalendarItemHelper.CancelRangeType cancelRange, ExDateTime cancelFromDateTime, out InfobarMessage infobarMessage) { bool result = true; infobarMessage = null; CalendarItem calendarItem = calendarItemBase as CalendarItem; try { if (calendarItem == null) { StoreObjectId masterStoreObjectId = CalendarUtilities.GetMasterStoreObjectId(calendarItemBase); calendarItem = Utilities.GetItem <CalendarItem>(userContext, masterStoreObjectId, new PropertyDefinition[0]); if (calendarItem != null) { calendarItem.OpenAsReadWrite(); } } if (cancelRange == EditCalendarItemHelper.CancelRangeType.Occurrence || cancelRange == EditCalendarItemHelper.CancelRangeType.None) { EditCalendarItemHelper.CancelCalendarItem(userContext, calendarItemBase); } else if (cancelRange == EditCalendarItemHelper.CancelRangeType.All) { EditCalendarItemHelper.CancelCalendarItem(userContext, calendarItem); } else if (cancelRange == EditCalendarItemHelper.CancelRangeType.FromDate) { int cancelRecurrenceCount = CalendarItemUtilities.GetCancelRecurrenceCount(calendarItem, cancelFromDateTime); if (cancelRecurrenceCount == 0) { EditCalendarItemHelper.CancelCalendarItem(userContext, calendarItem); } else if (cancelRecurrenceCount > 0) { calendarItem.Recurrence = new Recurrence(calendarItem.Recurrence.Pattern, new EndDateRecurrenceRange(calendarItem.Recurrence.Range.StartDate, cancelFromDateTime.IncrementDays(-1))); if (calendarItem.IsMeeting && calendarItem.MeetingRequestWasSent) { result = CalendarUtilities.SendMeetingMessages(userContext, calendarItem, true, out infobarMessage); } else { result = CalendarUtilities.SaveCalendarItem(calendarItem, userContext, out infobarMessage); } } } } finally { if (calendarItem != null && calendarItem != calendarItemBase) { calendarItem.Dispose(); } } return(result); }
// Token: 0x060004BA RID: 1210 RVA: 0x00027480 File Offset: 0x00025680 protected override void OnLoad(EventArgs e) { base.OnLoad(e); string action = this.Action; if (Utilities.IsPostRequest(base.Request) && string.Equals(action, "Delete", StringComparison.Ordinal)) { this.isBeingCanceled = true; } CalendarItemBase calendarItemBase = base.OwaContext.PreFormActionData as CalendarItemBase; this.folderId = EditCalendarItemHelper.GetCalendarFolderId(base.Request, base.UserContext); if (calendarItemBase != null) { this.CalendarItemBase = calendarItemBase; base.OwaContext.PreFormActionData = null; } else { this.LoadCalendarItem(this.folderId); bool flag = string.Equals(action, "New", StringComparison.Ordinal) && string.IsNullOrEmpty(Utilities.GetQueryStringParameter(base.Request, "id", false)); if (flag) { bool isMeeting = Utilities.GetQueryStringParameter(base.Request, "mr", false) != null; this.CalendarItemBase.IsMeeting = isMeeting; } } if (Utilities.GetQueryStringParameter(base.Request, "sndpt", false) != null) { CalendarItemUtilities.BuildSendConfirmDialogPrompt(this.calendarItemBase, out this.sendIssuesPrompt); } if (!this.IsUnsaved && !this.isBeingCanceled) { CalendarUtilities.AddCalendarInfobarMessages(base.Infobar, this.CalendarItemBase, null, base.UserContext); } if (!this.IsUnsaved && this.IsOccurrence && !this.isBeingCanceled && this.CalendarItemBase.IsOrganizer()) { SanitizedHtmlString messageHtml = SanitizedHtmlString.Format(LocalizedStrings.GetHtmlEncoded(538626087), new object[] { "<a href=\"#\" onClick=\"return onClkES()\">", "</a>" }); base.Infobar.AddMessageHtml(messageHtml, InfobarMessageType.Informational); } this.recipientWell = new CalendarItemRecipientWell(base.UserContext, this.CalendarItemBase); this.toolbar = new EditCalendarItemToolbar(this.IsUnsaved, this.IsMeeting, this.CalendarItemBase.MeetingRequestWasSent, this.CalendarItemBase.Importance, this.CalendarItemBase.CalendarItemType, base.Response.Output, true, this.isBeingCanceled); base.CreateAttachmentHelpers(AttachmentWellType.ReadWrite); CalendarModuleViewState calendarModuleViewState = base.UserContext.LastClientViewState as CalendarModuleViewState; if (calendarModuleViewState != null) { this.lastAccessedYear = calendarModuleViewState.DateTime.Year; } }
internal static InfobarMessage BuildCancellationPrompt(CalendarItemBase calendarItemBase, UserContext userContext) { bool flag = calendarItemBase.CalendarItemType != CalendarItemType.Single; bool flag2 = calendarItemBase.IsMeeting && calendarItemBase.MeetingRequestWasSent; if (!flag && !flag2) { throw new ArgumentException("The input calendarItemBase doesn't need a cancellation prompt."); } SanitizedHtmlString bodyHtml = null; SanitizedHtmlString messageHtml; if (flag) { if (calendarItemBase.IsMeeting) { messageHtml = SanitizedHtmlString.FromStringId(-2063563644); } else { messageHtml = SanitizedHtmlString.FromStringId(78467316); } CalendarModuleViewState calendarModuleViewState = userContext.LastClientViewState as CalendarModuleViewState; ExDateTime cancelFromDate; if (calendarModuleViewState != null) { cancelFromDate = calendarModuleViewState.DateTime; } else { cancelFromDate = DateTimeUtilities.GetLocalTime(); } bodyHtml = EditCalendarItemHelper.BuildCancelRecurringTable(calendarItemBase.CalendarItemType, cancelFromDate); } else { messageHtml = SanitizedHtmlString.FromStringId(-240976491); } SanitizedHtmlString footerHtml; if (!calendarItemBase.IsMeeting) { footerHtml = SanitizedHtmlString.FromStringId(2058056132); } else if (!calendarItemBase.MeetingRequestWasSent) { footerHtml = SanitizedHtmlString.FromStringId(2133761911); } else { footerHtml = SanitizedHtmlString.FromStringId(-1210628592); } return(InfobarMessage.CreatePromptHtml(messageHtml, bodyHtml, footerHtml)); }
public static EditCalendarItemHelper.CalendarItemUpdateFlags GetCalendarItem(UserContext userContext, StoreObjectId storeObjectId, StoreObjectId folderId, string changeKey, bool syncCalendarItem, out CalendarItemBase calendarItemBase) { if (userContext == null) { throw new ArgumentNullException("userContext"); } EditCalendarItemHelper.CalendarItemUpdateFlags result = EditCalendarItemHelper.CalendarItemUpdateFlags.None; CalendarItemBaseData calendarItemBaseData = EditCalendarItemHelper.GetUserContextData(userContext); if (calendarItemBaseData != null && !string.IsNullOrEmpty(calendarItemBaseData.ChangeKey) && string.IsNullOrEmpty(changeKey)) { changeKey = calendarItemBaseData.ChangeKey; } calendarItemBase = null; if (storeObjectId != null) { if (!string.IsNullOrEmpty(changeKey)) { calendarItemBase = Utilities.GetItem <CalendarItemBase>(userContext, storeObjectId, changeKey, new PropertyDefinition[0]); } else { calendarItemBase = Utilities.GetItem <CalendarItemBase>(userContext, storeObjectId, new PropertyDefinition[0]); } } if (calendarItemBase == null) { if (calendarItemBaseData != null && calendarItemBaseData.FolderId != null) { calendarItemBase = EditCalendarItemHelper.CreateDraft(userContext, calendarItemBaseData.FolderId); } else { calendarItemBase = EditCalendarItemHelper.CreateDraft(userContext, folderId); } if (calendarItemBaseData != null && calendarItemBaseData.IsMeeting != calendarItemBase.IsMeeting) { calendarItemBase.IsMeeting = calendarItemBaseData.IsMeeting; } } if (calendarItemBaseData != null && syncCalendarItem) { result = calendarItemBaseData.CopyTo(calendarItemBase); } else { if (calendarItemBaseData == null) { calendarItemBaseData = CalendarItemBaseData.Create(calendarItemBase); } EditCalendarItemHelper.SetUserContextData(userContext, calendarItemBaseData); } return(result); }
// Token: 0x0600042F RID: 1071 RVA: 0x00023760 File Offset: 0x00021960 protected override void OnLoad(EventArgs e) { base.OnLoad(e); if (base.OwaContext.FormsRegistryContext.Action != null) { this.action = base.OwaContext.FormsRegistryContext.Action; } if (string.IsNullOrEmpty(this.action)) { this.messageIdString = Utilities.GetQueryStringParameter(base.Request, "id", true); this.changeKeyString = null; } else { this.messageIdString = Utilities.GetFormParameter(base.Request, "hidid", true); this.changeKeyString = Utilities.GetFormParameter(base.Request, "hidchk", true); } this.GetItem(); string a; if ((a = this.action) != null) { if (!(a == "Add")) { if (a == "Del") { if (Utilities.GetFormParameter(base.Request, "dLst", false) != null) { this.RemoveAttachments(); } } } else { this.AddAttachments(); } } this.attachmentList = AttachmentWell.GetAttachmentInformation(base.Item, base.AttachmentLinks, base.UserContext.IsPublicLogon); if (base.Item is Contact) { OwaForm.RemoveContactPhoto(this.attachmentList); } CalendarItemBaseData userContextData = EditCalendarItemHelper.GetUserContextData(base.UserContext); if (userContextData != null && userContextData.Id != null && !string.IsNullOrEmpty("hidchk") && userContextData.Id.Equals(base.Item.Id.ObjectId) && userContextData.ChangeKey != this.changeKeyString) { userContextData.ChangeKey = this.changeKeyString; } this.levelOneFound = AttachmentUtility.IsLevelOneAndBlock(this.attachmentList); }
protected override void OnLoad(EventArgs e) { base.OnLoad(e); string queryStringParameter = Utilities.GetQueryStringParameter(base.Request, "ctx"); int num; if (!int.TryParse(queryStringParameter, out num)) { throw new OwaInvalidRequestException("Context parameter is having invalid format"); } if (num < 0 || num > 4) { throw new OwaInvalidRequestException("Invalid context value in the querystring parameter"); } this.viewMode = (AddressBook.Mode)num; if (this.viewMode == AddressBook.Mode.None) { this.viewMode = AddressBook.Mode.Lookup; } if (base.IsPostFromMyself()) { this.action = Utilities.GetFormParameter(base.Request, "hidcmdpst", false); this.searchString = Utilities.GetFormParameter(base.Request, "hidss", false); this.pageNumber = RequestParser.TryGetIntValueFromForm(base.Request, "hidpg", 1); this.sortColumn = (ColumnId)RequestParser.TryGetIntValueFromForm(base.Request, "hidcid", 11); this.sortOrder = (SortOrder)RequestParser.TryGetIntValueFromForm(base.Request, "hidso", 1); this.addressBookToSearch = Utilities.GetFormParameter(base.Request, "hidAB", false); if (string.IsNullOrEmpty(this.addressBookToSearch)) { throw new OwaInvalidRequestException("addressbookGuid can't be null"); } this.recipientWell = (RecipientItemType)RequestParser.TryGetIntValueFromForm(base.Request, "hidrw", 1); } else { this.searchString = Utilities.GetQueryStringParameter(base.Request, "sch", false); if (!string.IsNullOrEmpty(this.searchString)) { Utilities.VerifySearchCanaryInGetRequest(base.Request); } this.pageNumber = RequestParser.TryGetIntValueFromQueryString(base.Request, "pg", 1); this.sortColumn = (ColumnId)RequestParser.TryGetIntValueFromQueryString(base.Request, "cid", 11); this.sortOrder = (SortOrder)RequestParser.TryGetIntValueFromQueryString(base.Request, "so", 1); this.addressBookToSearch = Utilities.GetQueryStringParameter(base.Request, "ab", false); this.recipientWell = (RecipientItemType)RequestParser.TryGetIntValueFromQueryString(base.Request, "rw", 1); } this.GetSearchLocation(); if (AddressBook.IsEditingMode(this.viewMode)) { if (!base.IsPostFromMyself()) { bool required = this.viewMode != AddressBook.Mode.EditCalendar; StoreObjectId itemId = QueryStringUtilities.CreateItemStoreObjectId(base.UserContext.MailboxSession, base.Request, required); base.Item = AddressBookHelper.GetItem(base.UserContext, this.viewMode, itemId, null); } else { StoreObjectId itemId2 = null; string formParameter = Utilities.GetFormParameter(base.Request, "hidid", true); if (!string.IsNullOrEmpty(formParameter)) { itemId2 = Utilities.CreateStoreObjectId(base.UserContext.MailboxSession, formParameter); } string formParameter2 = Utilities.GetFormParameter(base.Request, "hidchk", true); base.Item = AddressBookHelper.GetItem(base.UserContext, this.viewMode, itemId2, formParameter2); string a; if ((a = this.action) != null) { if (!(a == "addrcp")) { if (a == "rmrcp") { int intValueFromForm = RequestParser.GetIntValueFromForm(base.Request, "hidri"); if (this.viewMode == AddressBook.Mode.EditMessage || this.viewMode == AddressBook.Mode.EditMeetingResponse) { if (intValueFromForm >= 0 && intValueFromForm < this.Message.Recipients.Count) { this.Message.Recipients.RemoveAt(intValueFromForm); AddressBookHelper.SaveItem(base.Item); } } else if (this.viewMode == AddressBook.Mode.EditCalendar) { CalendarUtilities.RemoveAttendeeAt(this.CalendarItemBase, intValueFromForm); EditCalendarItemHelper.CreateUserContextData(base.UserContext, this.CalendarItemBase); } } } else { int num2 = RequestParser.TryGetIntValueFromQueryString(base.Request, "rt", 1); if (num2 == 1) { this.type = RecipientItemType.To; } else if (num2 == 2) { this.type = RecipientItemType.Cc; } else if (num2 == 3) { this.type = RecipientItemType.Bcc; } string text = base.Request.Form["chkRcpt"]; if (!string.IsNullOrEmpty(text)) { this.ids = text.Split(new char[] { ',' }); if (this.searchLocation == AddressBook.SearchLocation.AddressBook) { AddressBookHelper.AddRecipientsToDraft(this.ids, base.Item, this.type, base.UserContext); } else { AddressBookHelper.AddContactsToDraft(base.Item, this.type, base.UserContext, this.ids); } } } } } } if (!string.IsNullOrEmpty(this.searchString)) { this.searchString = this.searchString.Trim(); if (this.searchString.Length > Globals.MaxSearchStringLength) { throw new OwaInvalidRequestException("Search string length is more than 256 characters"); } } if (this.pageNumber == 0) { this.pageNumber = 1; } this.firstItemOnPage = (this.pageNumber - 1) * base.UserContext.UserOptions.BasicViewRowCount + 1; this.lastItemOnPage = this.firstItemOnPage + base.UserContext.UserOptions.BasicViewRowCount - 1; this.CreateListView(); if (AddressBook.IsEditingMode(this.viewMode) || !string.IsNullOrEmpty(this.searchString)) { base.UserContext.LastClientViewState = new AddressBookSearchViewState(base.UserContext.LastClientViewState, this.viewMode, this.addressBookToSearch, this.searchString, this.pageNumber, (base.Item == null || base.Item.Id == null) ? null : base.Item.Id.ObjectId, (base.Item == null || base.Item.Id == null) ? null : base.Item.Id.ChangeKeyAsBase64String(), this.recipientWell, this.sortColumn, this.sortOrder); return; } base.UserContext.LastClientViewState = new AddressBookViewState(base.UserContext.LastClientViewState, this.viewMode, this.pageNumber, (base.Item == null || base.Item.Id == null) ? null : base.Item.Id.ObjectId, (base.Item == null || base.Item.Id == null) ? null : base.Item.Id.ChangeKeyAsBase64String(), this.recipientWell, this.sortColumn, this.sortOrder); }
protected override void OnLoad(EventArgs e) { ExTraceGlobals.CalendarCallTracer.TraceDebug((long)this.GetHashCode(), "Basic.CalendarView.OnLoad"); EditCalendarItemHelper.ClearUserContextData(base.UserContext); this.folderId = QueryStringUtilities.CreateFolderStoreObjectId(base.UserContext.MailboxSession, base.Request, false); if (this.folderId == null) { ExTraceGlobals.CalendarTracer.TraceDebug((long)this.GetHashCode(), "folderId is null, using default folder"); this.folderId = base.UserContext.CalendarFolderId; } if (this.folderId == null) { throw new OwaInvalidRequestException("Invalid folder id"); } StorePropertyDefinition displayName = StoreObjectSchema.DisplayName; PropertyDefinition calendarViewType = ViewStateProperties.CalendarViewType; PropertyDefinition readingPanePosition = ViewStateProperties.ReadingPanePosition; PropertyDefinition readingPanePositionMultiDay = ViewStateProperties.ReadingPanePositionMultiDay; PropertyDefinition viewWidth = ViewStateProperties.ViewWidth; PropertyDefinition dailyViewDays = ViewStateProperties.DailyViewDays; this.viewType = CalendarViewType.Min; string queryStringParameter = Utilities.GetQueryStringParameter(base.Request, "dy", false); string queryStringParameter2 = Utilities.GetQueryStringParameter(base.Request, "mn", false); string queryStringParameter3 = Utilities.GetQueryStringParameter(base.Request, "yr", false); int day; int month; int year; if (!string.IsNullOrEmpty(queryStringParameter) && int.TryParse(queryStringParameter, out day) && !string.IsNullOrEmpty(queryStringParameter2) && int.TryParse(queryStringParameter2, out month) && !string.IsNullOrEmpty(queryStringParameter3) && int.TryParse(queryStringParameter3, out year)) { try { ExDateTime exDateTime = new ExDateTime(base.UserContext.TimeZone, year, month, day); this.days = new ExDateTime[1]; this.days[0] = exDateTime.Date; } catch (ArgumentOutOfRangeException) { base.Infobar.AddMessageLocalized(883484089, InfobarMessageType.Error); } } if (this.days == null) { this.days = new ExDateTime[1]; this.days[0] = DateTimeUtilities.GetLocalTime().Date; } this.calendarAdapter = new CalendarAdapter(base.UserContext, this.folderId); this.calendarAdapter.LoadData(DailyView.QueryProperties, this.days, false, true); this.dailyView = new DailyView(base.UserContext, this.calendarAdapter); base.OnLoad(e); if (base.IsPostFromMyself()) { string formParameter = Utilities.GetFormParameter(base.Request, "hidcmdpst", false); if (string.CompareOrdinal(formParameter, "addjnkeml") == 0) { if (!base.UserContext.IsJunkEmailEnabled) { throw new OwaInvalidRequestException(LocalizedStrings.GetNonEncoded(552277155)); } InfobarMessage infobarMessage = JunkEmailHelper.AddEmailToSendersList(base.UserContext, base.Request); if (infobarMessage != null) { base.Infobar.AddMessage(infobarMessage); } } } base.UserContext.LastClientViewState = new CalendarModuleViewState(this.folderId, this.calendarAdapter.ClassName, this.days[0]); }
public static EditCalendarItemHelper.CalendarItemUpdateFlags UpdateCalendarItemValues(CalendarItemBase calendarItemBase, UserContext userContext, HttpRequest request, out string errorMessage) { errorMessage = null; EditCalendarItemHelper.CalendarItemUpdateFlags calendarItemUpdateFlags = EditCalendarItemHelper.CalendarItemUpdateFlags.None; if (calendarItemBase == null) { throw new ArgumentNullException("calendarItemBase"); } if (userContext == null) { throw new ArgumentNullException("userContext"); } if (request == null) { throw new ArgumentNullException("request"); } string formParameter = Utilities.GetFormParameter(request, "hidmr", false); bool flag = false; if (formParameter != null) { int num; if (int.TryParse(formParameter, out num)) { flag = (num == 1); } if (calendarItemBase.IsMeeting != flag) { calendarItemBase.IsMeeting = flag; calendarItemUpdateFlags |= EditCalendarItemHelper.CalendarItemUpdateFlags.OtherChanged; } } formParameter = Utilities.GetFormParameter(request, "txtsbj", false); if (formParameter != null && !string.Equals(formParameter, calendarItemBase.Subject)) { try { calendarItemBase.Subject = formParameter; } catch (PropertyValidationException ex) { throw new OwaInvalidRequestException(ex.Message); } calendarItemUpdateFlags |= EditCalendarItemHelper.CalendarItemUpdateFlags.OtherChanged; } formParameter = Utilities.GetFormParameter(request, "txtloc", false); if (formParameter != null && !string.Equals(calendarItemBase.Location, formParameter)) { if (formParameter.Length > 255) { throw new OwaInvalidRequestException("Input Location string is too long."); } calendarItemBase.Location = formParameter; calendarItemUpdateFlags |= EditCalendarItemHelper.CalendarItemUpdateFlags.LocationChanged; } bool flag2 = !flag || Utilities.GetFormParameter(request, "cbreqres", false) != null; if (CalendarItemBaseData.GetIsResponseRequested(calendarItemBase) != flag2) { calendarItemBase[ItemSchema.IsResponseRequested] = flag2; calendarItemUpdateFlags |= EditCalendarItemHelper.CalendarItemUpdateFlags.OtherChanged; } bool flag3 = false; if (!string.IsNullOrEmpty(Utilities.GetFormParameter(request, "selSM", false))) { flag3 = (Utilities.GetFormParameter(request, "cballday", false) != null); } else { formParameter = Utilities.GetFormParameter(request, "hidade", false); int num2; if (formParameter != null && int.TryParse(formParameter, out num2)) { flag3 = (num2 == 1); } } formParameter = Utilities.GetFormParameter(request, "selfb", false); if (formParameter != null) { BusyType busyType = (BusyType)int.Parse(formParameter); if (busyType != calendarItemBase.FreeBusyStatus) { calendarItemBase.FreeBusyStatus = busyType; calendarItemUpdateFlags |= EditCalendarItemHelper.CalendarItemUpdateFlags.OtherChanged; } } Sensitivity sensitivity = (Utilities.GetFormParameter(request, "cbprivate", false) != null) ? Sensitivity.Private : Sensitivity.Normal; if ((calendarItemBase.CalendarItemType == CalendarItemType.Single || calendarItemBase.CalendarItemType == CalendarItemType.RecurringMaster) && calendarItemBase.Sensitivity != sensitivity) { calendarItemBase.Sensitivity = sensitivity; calendarItemUpdateFlags |= EditCalendarItemHelper.CalendarItemUpdateFlags.OtherChanged; } calendarItemUpdateFlags |= EditCalendarItemHelper.UpdateImportance(calendarItemBase, request); formParameter = Utilities.GetFormParameter(request, "txtbdy", false); if (formParameter != null && EditCalendarItemHelper.BodyChanged(formParameter, calendarItemBase)) { if (!string.IsNullOrEmpty(formParameter)) { if (calendarItemBase.Body.Format == BodyFormat.TextHtml) { ItemUtility.SetItemBody(calendarItemBase, BodyFormat.TextHtml, formParameter); calendarItemUpdateFlags |= EditCalendarItemHelper.CalendarItemUpdateFlags.OtherChanged; } else if (calendarItemBase.Body.Format == BodyFormat.TextPlain) { ItemUtility.SetItemBody(calendarItemBase, BodyFormat.TextPlain, formParameter); calendarItemUpdateFlags |= EditCalendarItemHelper.CalendarItemUpdateFlags.OtherChanged; } else { if (calendarItemBase.Body.Format != BodyFormat.ApplicationRtf) { throw new ArgumentOutOfRangeException("calendarItemBase", "Unhandled body format type."); } ItemUtility.SetItemBody(calendarItemBase, BodyFormat.TextPlain, formParameter); calendarItemUpdateFlags |= EditCalendarItemHelper.CalendarItemUpdateFlags.OtherChanged; } } else { ItemUtility.SetItemBody(calendarItemBase, BodyFormat.TextPlain, string.Empty); calendarItemUpdateFlags |= EditCalendarItemHelper.CalendarItemUpdateFlags.OtherChanged; } bool flag4 = AttachmentUtility.PromoteInlineAttachments(calendarItemBase); if (flag4) { calendarItemBase.Load(); } } bool flag5 = CalendarUtilities.CheckIsLocationGenerated(calendarItemBase); calendarItemUpdateFlags |= EditCalendarItemHelper.AddAttendees(calendarItemBase.AttendeeCollection, AttendeeType.Required, "txtto", userContext, request); calendarItemUpdateFlags |= EditCalendarItemHelper.AddAttendees(calendarItemBase.AttendeeCollection, AttendeeType.Optional, "txtcc", userContext, request); EditCalendarItemHelper.CalendarItemUpdateFlags calendarItemUpdateFlags2 = EditCalendarItemHelper.AddAttendees(calendarItemBase.AttendeeCollection, AttendeeType.Resource, "txtbcc", userContext, request); calendarItemUpdateFlags |= calendarItemUpdateFlags2; if ((flag5 || string.IsNullOrEmpty(calendarItemBase.Location)) && (calendarItemUpdateFlags2 & EditCalendarItemHelper.CalendarItemUpdateFlags.AttendeesChanged) != EditCalendarItemHelper.CalendarItemUpdateFlags.None && CalendarUtilities.GenerateAndSetLocation(calendarItemBase)) { calendarItemUpdateFlags |= EditCalendarItemHelper.CalendarItemUpdateFlags.LocationChanged; } Exception ex2 = null; try { if (flag3 != calendarItemBase.IsAllDayEvent) { calendarItemBase.IsAllDayEvent = flag3; calendarItemUpdateFlags |= EditCalendarItemHelper.CalendarItemUpdateFlags.TimeChanged; } EditCalendarItemHelper.CalendarItemUpdateFlags calendarItemUpdateFlags3; if (EditCalendarItemHelper.ParseDateTimeRange(request, calendarItemBase, flag3, true, out errorMessage, out calendarItemUpdateFlags3, userContext)) { calendarItemUpdateFlags |= calendarItemUpdateFlags3; } } catch (StoragePermanentException ex3) { ex2 = ex3; } catch (StorageTransientException ex4) { ex2 = ex4; } if (ex2 != null) { ErrorInformation exceptionHandlingInformation = Utilities.GetExceptionHandlingInformation(ex2, userContext.MailboxIdentity); errorMessage = exceptionHandlingInformation.Message; } return(calendarItemUpdateFlags); }