// Token: 0x06001D9B RID: 7579 RVA: 0x000AC294 File Offset: 0x000AA494 internal static AddressBookViewState Load(UserContext userContext, bool isPicker, bool isRoomView) { PropertyDefinition[] propsToReturn = isPicker ? AddressBookViewState.pickerProperties : AddressBookViewState.browseProperties; PropertyDefinition propertyDefinition = isPicker ? ViewStateProperties.AddressBookPickerMultiLine : ViewStateProperties.AddressBookLookupMultiLine; AddressBookViewState addressBookViewState = new AddressBookViewState(); addressBookViewState.isRoomView = isRoomView; if (userContext.IsWebPartRequest) { return(addressBookViewState); } using (Folder folder = Folder.Bind(userContext.MailboxSession, DefaultFolderType.Root, propsToReturn)) { addressBookViewState.isMultiLine = Utilities.GetFolderProperty <bool>(folder, propertyDefinition, !isRoomView); if (isPicker) { return(addressBookViewState); } addressBookViewState.readingPanePosition = Utilities.GetFolderProperty <ReadingPanePosition>(folder, ViewStateProperties.AddressBookLookupReadingPanePosition, ReadingPanePosition.Right); if (!FolderViewStates.ValidateReadingPanePosition(addressBookViewState.readingPanePosition)) { addressBookViewState.readingPanePosition = ReadingPanePosition.Right; } } return(addressBookViewState); }
private static void InternalGetFolderViewStates(UserContext userContext, CalendarFolder folder, ref ExDateTime[] days, ref CalendarViewType viewType, out int viewWidth, out ReadingPanePosition readingPanePosition) { FolderViewStates folderViewStates = userContext.GetFolderViewStates(folder); CalendarUtilities.GetCalendarViewParamsFromViewStates(folderViewStates, out viewWidth, ref viewType, out readingPanePosition); days = CalendarUtilities.GetViewDays(userContext, days, viewType, OwaStoreObjectId.CreateFromStoreObject(folder), folderViewStates); }
private void PersistWidthOrHeight(bool isWidth) { if (!base.UserContext.IsWebPartRequest) { using (Folder calendarFolder = this.GetCalendarFolder(false)) { FolderViewStates folderViewStates = base.UserContext.GetFolderViewStates(calendarFolder); try { if (isWidth) { folderViewStates.ViewWidth = (int)base.GetParameter("w"); } else { folderViewStates.ViewHeight = (int)base.GetParameter("h"); } folderViewStates.Save(); } catch (ArgumentOutOfRangeException ex) { throw new OwaInvalidRequestException(ex.Message, ex); } } } }
// Token: 0x06002FE0 RID: 12256 RVA: 0x001176C7 File Offset: 0x001158C7 public static void GetCalendarViewParamsFromViewStates(FolderViewStates states, out int viewWidth, ref CalendarViewType viewType, out ReadingPanePosition readingPanePosition) { if (viewType == CalendarViewType.None) { viewType = states.CalendarViewType; } viewWidth = states.GetViewWidth(450); if (viewType == CalendarViewType.Monthly) { readingPanePosition = ReadingPanePosition.Off; return; } if (viewType == CalendarViewType.Min) { readingPanePosition = states.ReadingPanePosition; return; } readingPanePosition = states.ReadingPanePositionMultiDay; }
public void PersistReadingPane() { ExTraceGlobals.CalendarCallTracer.TraceDebug((long)this.GetHashCode(), "CalendarViewEventHandler.PersistReadingPane"); using (Folder calendarFolder = this.GetCalendarFolder(false)) { if (Utilities.IsPublic(calendarFolder) || Utilities.IsOtherMailbox(calendarFolder) || Utilities.CanModifyFolderProperties(calendarFolder)) { FolderViewStates folderViewStates = base.UserContext.GetFolderViewStates(calendarFolder); if ((bool)base.GetParameter("isMD")) { folderViewStates.ReadingPanePositionMultiDay = (ReadingPanePosition)base.GetParameter("s"); } else { folderViewStates.ReadingPanePosition = (ReadingPanePosition)base.GetParameter("s"); } folderViewStates.Save(); } } }
// Token: 0x06001F8A RID: 8074 RVA: 0x000B57B8 File Offset: 0x000B39B8 internal void RenderConversationParts(TextWriter writer, OwaStoreObjectId conversationId, Folder contextFolder, Folder dataFolder) { ExDateTime?lastDeliveryTime = ConversationUtilities.GetLastDeliveryTime(this.ConversationPartsDataSource.Conversation); writer.Write("<div id=\""); writer.Write("tblExp"); writer.Write("\" "); writer.Write("expId"); writer.Write("=\""); Utilities.HtmlEncode(conversationId.ToString(), writer); writer.Write("\" "); writer.Write("iGC"); writer.Write("="); writer.Write(ConversationUtilities.GetGlobalCount(this.ConversationPartsDataSource.Conversation)); writer.Write(">"); FolderViewStates folderViewStates = base.UserContext.GetFolderViewStates(contextFolder); ReadingPanePosition readingPanePosition = folderViewStates.ReadingPanePosition; int num; if (readingPanePosition == ReadingPanePosition.Right) { num = folderViewStates.ViewWidth; } else { num = 800; } int num2 = (num - ListViewColumns.GetColumn(ColumnId.DeliveryTime).Width - ListViewColumns.GetColumn(ColumnId.MailIcon).Width - ListViewColumns.GetColumn(ColumnId.From).Width - ListViewColumns.GetColumn(ColumnId.Importance).Width - ListViewColumns.GetColumn(ColumnId.HasAttachment).Width - ListViewColumns.GetColumn(ColumnId.Categories).Width - ListViewColumns.GetColumn(ColumnId.FlagDueDate).Width - 18) / 4; num2 = Math.Max(num2, 0); List <StoreObjectId> localItemIds = ConversationUtilities.GetLocalItemIds(this.ConversationPartsDataSource.Conversation, dataFolder); ConversationUtilities.MarkLocalNodes(this.ConversationPartsDataSource.Conversation, localItemIds); while (this.DataSource.MoveNext()) { this.RenderConversationPartRow(writer, contextFolder, dataFolder, lastDeliveryTime, num2); } writer.Write("</div>"); }
// Token: 0x06002FDB RID: 12251 RVA: 0x00117464 File Offset: 0x00115664 public static ExDateTime[] GetViewDays(UserContext userContext, ExDateTime[] days, CalendarViewType viewType, OwaStoreObjectId folderId, FolderViewStates viewStates) { ExDateTime exDateTime = (days == null || days.Length == 0) ? DateTimeUtilities.GetLocalTime().Date : days[0]; switch (viewType) { case CalendarViewType.Min: if (days == null || days.Length == 0) { int dailyViewDays = viewStates.DailyViewDays; days = new ExDateTime[dailyViewDays]; for (int i = 0; i < dailyViewDays; i++) { days[i] = exDateTime; exDateTime = exDateTime.IncrementDays(1); } } break; case CalendarViewType.Weekly: days = DateTimeUtilities.GetWeekFromDay(exDateTime, userContext.UserOptions.WeekStartDay, 0, false); break; case CalendarViewType.WorkWeek: days = DateTimeUtilities.GetWeekFromDay(exDateTime, userContext.UserOptions.WeekStartDay, CalendarUtilities.GetWorkDays(userContext, folderId), true); break; case CalendarViewType.Monthly: days = CalendarUtilities.GetViewDaysForMonthlyView(userContext, exDateTime); break; case CalendarViewType.WeeklyAgenda: case CalendarViewType.WorkWeeklyAgenda: { ExDateTime firstDay = CalendarUtilities.GetWeekDays(folderId, userContext, exDateTime, false)[0]; int workDays = CalendarUtilities.GetWorkDays(userContext, folderId); days = CalendarUtilities.GetViewDaysForWeeklyAgenda(workDays, firstDay, viewType == CalendarViewType.WorkWeeklyAgenda); break; } } return(days); }
// Token: 0x060021E8 RID: 8680 RVA: 0x000C18B0 File Offset: 0x000BFAB0 protected override void LoadViewState() { OwaStoreObjectId owaStoreObjectId = null; if (base.SerializedContainerId != null) { if (OwaStoreObjectId.IsDummyArchiveFolder(base.SerializedContainerId)) { owaStoreObjectId = base.UserContext.GetArchiveRootFolderId(); this.archiveRootFolderId = owaStoreObjectId.ToString(); } else { owaStoreObjectId = OwaStoreObjectId.CreateFromString(base.SerializedContainerId); } } if (owaStoreObjectId == null) { base.AlgorithmTracer.TraceDebug((long)this.GetHashCode(), "folder Id is null, using default folder"); owaStoreObjectId = OwaStoreObjectId.CreateFromMailboxFolderId(this.DefaultFolderId); } PropertyDefinition[] array = new PropertyDefinition[] { FolderSchema.DisplayName, FolderSchema.ItemCount, FolderSchema.UnreadCount, ViewStateProperties.ReadingPanePosition, ViewStateProperties.ViewWidth, ViewStateProperties.ViewHeight, ViewStateProperties.MultiLine, ViewStateProperties.SortColumn, ViewStateProperties.SortOrder, ViewStateProperties.ViewFilter, ViewStateProperties.FilteredViewLabel, FolderSchema.SearchFolderAllowAgeout, FolderSchema.IsOutlookSearchFolder, FolderSchema.AdminFolderFlags, FolderSchema.FolderQuota, FolderSchema.FolderSize, FolderSchema.ELCFolderComment, FolderSchema.ELCPolicyIds, FolderSchema.ExtendedFolderFlags, StoreObjectSchema.EffectiveRights, FolderSchema.OutlookSearchFolderClsId }; this.folder = Utilities.GetFolderForContent <Folder>(base.UserContext, owaStoreObjectId, array); this.favoritesFilterParameter = Utilities.GetFavoritesFilterViewParameter(base.UserContext, this.Folder); if (this.folder is SearchFolder && this.favoritesFilterParameter != null && !this.favoritesFilterParameter.IsCurrentVersion) { this.favoritesFilterParameter.UpgradeFilter(this.folder as SearchFolder, array); } this.sortOrder = this.DefaultSortOrder; this.sortedColumn = this.DefaultSortedColumn; this.isMultiLine = this.DefaultMultiLineSetting; this.readingPanePosition = this.DefaultReadingPanePosition; FolderViewStates folderViewStates = base.UserContext.GetFolderViewStates(this.folder); if (base.UserContext.IsWebPartRequest) { string queryStringParameter = Utilities.GetQueryStringParameter(base.Request, "view", false); WebPartListView webPartListView = WebPartUtilities.LookUpWebPartView(this.folder.Id.ObjectId.ObjectType, this.folder.ClassName, queryStringParameter); if (webPartListView != null) { if (webPartListView.ColumnId != null) { this.sortedColumn = (ColumnId)webPartListView.ColumnId.Value; } if (webPartListView.SortOrder != null) { this.sortOrder = (SortOrder)webPartListView.SortOrder.Value; } if (webPartListView.IsMultiLine != null) { this.isMultiLine = webPartListView.IsMultiLine.Value; } } } else { this.viewWidth = folderViewStates.ViewWidth; this.viewHeight = folderViewStates.ViewHeight; this.sortOrder = folderViewStates.GetSortOrder(this.DefaultSortOrder); this.isMultiLine = folderViewStates.GetMultiLine(this.DefaultMultiLineSetting); string sortColumn = folderViewStates.GetSortColumn(null); if (sortColumn != null) { ColumnId columnId = ColumnIdParser.Parse(sortColumn); if (columnId < ColumnId.Count && (!this.isMultiLine || ListViewColumns.GetColumn(columnId).SortBoundaries != null)) { this.sortedColumn = columnId; } } } if (ConversationUtilities.IsConversationSortColumn(this.sortedColumn) && !ConversationUtilities.ShouldAllowConversationView(base.UserContext, this.Folder)) { this.sortedColumn = ColumnId.DeliveryTime; } this.readingPanePosition = folderViewStates.GetReadingPanePosition(this.DefaultReadingPanePosition); this.LoadELCData(); }