Example #1
0
 // Token: 0x0600029C RID: 668 RVA: 0x000174B4 File Offset: 0x000156B4
 private void RenderMru(TextWriter writer)
 {
     if (this.mruFolderList.Count > 0)
     {
         writer.Write("<table cellspacing=0 cellpadding=0 class=\"snt\">");
         for (int i = 0; i < this.mruFolderList.Count; i++)
         {
             MruFolderItem       mruFolderItem       = this.mruFolderList[i];
             int                 count               = 0;
             ContentCountDisplay contentCountDisplay = FolderUtility.GetContentCountDisplay(mruFolderItem.ExtendedFolderFlags, mruFolderItem.Id);
             if (contentCountDisplay == ContentCountDisplay.ItemCount)
             {
                 count = mruFolderItem.ItemCount;
             }
             else if (contentCountDisplay == ContentCountDisplay.UnreadCount)
             {
                 count = mruFolderItem.UnreadCount;
             }
             this.RenderFolder(mruFolderItem.Id, mruFolderItem.DisplayName, count, contentCountDisplay, SecondaryNavigationArea.Mru, writer);
         }
         writer.Write("</table>");
         base.RenderHorizontalDivider(writer);
     }
 }
Example #2
0
        // Token: 0x0600029A RID: 666 RVA: 0x00017160 File Offset: 0x00015360
        private void RenderSpecialFolderNavigation(TextWriter writer)
        {
            UserContext userContext = this.owaContext.UserContext;

            writer.Write("<table cellspacing=0 cellpadding=0 class=\"snt\">");
            if (this.folderList != null)
            {
                for (int i = 0; i < this.folderList.Count; i++)
                {
                    StoreObjectId objectId = ((VersionedId)this.folderList.GetPropertyValue(i, FolderSchema.Id)).ObjectId;
                    if (FolderUtility.IsPrimaryMailFolder(objectId, userContext))
                    {
                        ContentCountDisplay contentCountDisplay = FolderUtility.GetContentCountDisplay(this.folderList.GetPropertyValue(i, FolderSchema.ExtendedFolderFlags), objectId);
                        int count = 0;
                        if (contentCountDisplay == ContentCountDisplay.ItemCount)
                        {
                            count = (int)this.folderList.GetPropertyValue(i, FolderSchema.ItemCount);
                        }
                        else if (contentCountDisplay == ContentCountDisplay.UnreadCount)
                        {
                            count = (int)this.folderList.GetPropertyValue(i, FolderSchema.UnreadCount);
                        }
                        this.RenderFolder(objectId, (string)this.folderList.GetPropertyValue(i, FolderSchema.DisplayName), count, contentCountDisplay, SecondaryNavigationArea.Special, writer);
                    }
                }
            }
            else
            {
                Dictionary <PropertyDefinition, int> folderPropertyToIndexInBasic = FolderList.FolderPropertyToIndexInBasic;
                using (Folder folder = Folder.Bind(userContext.MailboxSession, userContext.GetRootFolderId(userContext.MailboxSession)))
                {
                    using (QueryResult queryResult = folder.FolderQuery(FolderQueryFlags.None, null, null, FolderList.FolderPropertiesInBasic))
                    {
                        for (;;)
                        {
                            object[][] rows = queryResult.GetRows(10000);
                            if (rows.Length <= 0)
                            {
                                break;
                            }
                            foreach (object[] array in rows)
                            {
                                StoreObjectId objectId2 = ((VersionedId)array[folderPropertyToIndexInBasic[FolderSchema.Id]]).ObjectId;
                                if (FolderUtility.IsPrimaryMailFolder(objectId2, userContext))
                                {
                                    object extendedFolderFlagValue           = array[folderPropertyToIndexInBasic[FolderSchema.ExtendedFolderFlags]];
                                    ContentCountDisplay contentCountDisplay2 = FolderUtility.GetContentCountDisplay(extendedFolderFlagValue, objectId2);
                                    int count2 = 0;
                                    if (contentCountDisplay2 == ContentCountDisplay.ItemCount)
                                    {
                                        count2 = (int)array[folderPropertyToIndexInBasic[FolderSchema.ItemCount]];
                                    }
                                    else if (contentCountDisplay2 == ContentCountDisplay.UnreadCount)
                                    {
                                        count2 = (int)array[folderPropertyToIndexInBasic[FolderSchema.UnreadCount]];
                                    }
                                    this.RenderFolder(objectId2, (string)array[folderPropertyToIndexInBasic[FolderSchema.DisplayName]], count2, contentCountDisplay2, SecondaryNavigationArea.Special, writer);
                                }
                            }
                        }
                    }
                }
            }
            writer.Write("</table>");
        }