示例#1
0
        // Token: 0x06002435 RID: 9269 RVA: 0x000D15D4 File Offset: 0x000CF7D4
        internal static void RenderOtherMailboxFolderTree(TextWriter writer, UserContext userContext, OtherMailboxConfigEntry entry, bool isExpanded)
        {
            MailboxFolderTree mailboxFolderTree = MailboxFolderTree.CreateOtherMailboxFolderTree(userContext, entry, isExpanded);

            if (mailboxFolderTree != null)
            {
                NavigationHost.RenderTreeDivStart(writer, "t" + Convert.ToBase64String(Encoding.UTF8.GetBytes(mailboxFolderTree.RootNode.FolderId.MailboxOwnerLegacyDN)), "othTr");
                mailboxFolderTree.ErrDiv = "divErrMail";
                mailboxFolderTree.Render(writer);
                NavigationHost.RenderTreeDivEnd(writer);
            }
        }
示例#2
0
        public static void CreateFavoriteAndMailboxTreeAndGetBuddyListStatus(UserContext userContext, out NavigationTree favoritesTree, out MailboxFolderTree mailboxFolderTree, out MailboxFolderTree[] archiveFolderTrees, out bool expandBuddyList)
        {
            NavigationTree.NormalAndSearchFolderList   item;
            NavigationTree.NormalAndSearchFolderList[] array;
            NavigationTree.CreateNormalAndSearchFolderLists(userContext, true, true, out item, out array);
            NavigationNodeCollection navigationCollection        = NavigationNodeCollection.TryCreateNavigationNodeCollection(userContext, userContext.MailboxSession, NavigationNodeGroupSection.First);
            List <NavigationTree.NormalAndSearchFolderList> list = new List <NavigationTree.NormalAndSearchFolderList>(1 + array.Length);

            list.Add(item);
            list.AddRange(array);
            favoritesTree     = NavigationTree.CreateFavoriteTreeByFolderLists(userContext, navigationCollection, list.ToArray());
            mailboxFolderTree = MailboxFolderTree.CreateStartPageMailboxFolderTree(userContext, item.DeepHierarchyFolderList, item.SearchFolderList);
            StatusPersistTreeNodeType valueToTest = StatusPersistTreeNodeType.None;
            object folderProperty = item.DeepHierarchyFolderList.GetFolderProperty(userContext.GetRootFolderId(userContext.MailboxSession), ViewStateProperties.TreeNodeCollapseStatus);

            if (folderProperty is int)
            {
                valueToTest = (StatusPersistTreeNodeType)folderProperty;
            }
            expandBuddyList = !Utilities.IsFlagSet((int)valueToTest, 4);
            bool             flag     = !Utilities.IsFlagSet((int)valueToTest, 2);
            bool             flag2    = !Utilities.IsFlagSet((int)valueToTest, 1);
            OwaStoreObjectId folderId = OwaStoreObjectId.CreateFromMailboxFolderId(userContext.InboxFolderId);

            if (!flag || flag2 || !favoritesTree.RootNode.SelectSpecifiedFolder(folderId))
            {
                mailboxFolderTree.RootNode.SelectSpecifiedFolder(folderId);
            }
            archiveFolderTrees = null;
            if (array.Length > 0)
            {
                List <MailboxFolderTree> list2 = new List <MailboxFolderTree>(array.Length);
                for (int i = 0; i < array.Length; i++)
                {
                    list2.Add(MailboxFolderTree.CreateStartPageArchiveMailboxFolderTree(userContext, array[i].DeepHierarchyFolderList, array[i].SearchFolderList));
                }
                archiveFolderTrees = list2.ToArray();
            }
        }
        // Token: 0x06002210 RID: 8720 RVA: 0x000C2794 File Offset: 0x000C0994
        internal static MailboxFolderTree CreateMailboxFolderTree(UserContext userContext, MailboxSession mailboxSession, FolderTreeRenderType renderType, bool selectInbox)
        {
            MailboxFolderTree mailboxFolderTree = new MailboxFolderTree(userContext, mailboxSession, FolderTreeNode.CreateMailboxFolderTreeRootNode(userContext, mailboxSession, renderType), renderType);

            mailboxFolderTree.RootNode.IsExpanded = true;
            FolderTreeNode rootNode = mailboxFolderTree.RootNode;

            rootNode.HighlightClassName += " trNdGpHdHl";
            if (selectInbox)
            {
                StoreObjectId    defaultFolderId = Utilities.GetDefaultFolderId(mailboxSession, DefaultFolderType.Inbox);
                OwaStoreObjectId folderId;
                if (userContext.IsMyMailbox(mailboxSession))
                {
                    folderId = OwaStoreObjectId.CreateFromMailboxFolderId(defaultFolderId);
                }
                else
                {
                    folderId = OwaStoreObjectId.CreateFromOtherUserMailboxFolderId(defaultFolderId, mailboxSession.MailboxOwnerLegacyDN);
                }
                mailboxFolderTree.RootNode.SelectSpecifiedFolder(folderId);
            }
            return(mailboxFolderTree);
        }
示例#4
0
        // Token: 0x06002434 RID: 9268 RVA: 0x000D1444 File Offset: 0x000CF644
        internal static void RenderMailSecondaryNavigation(TextWriter output, UserContext userContext)
        {
            if (output == null)
            {
                throw new ArgumentNullException("output");
            }
            if (userContext == null)
            {
                throw new ArgumentNullException("userContext");
            }
            output.Write("<div id=\"divMTrR\">");
            Infobar infobar = new Infobar("divErrMail", "infobar");

            infobar.Render(output);
            NavigationHost.RenderTreeRegionDivStart(output, null);
            NavigationTree    navigationTree;
            MailboxFolderTree mailboxFolderTree;

            MailboxFolderTree[] array;
            bool expandBuddyList;

            NavigationTree.CreateFavoriteAndMailboxTreeAndGetBuddyListStatus(userContext, out navigationTree, out mailboxFolderTree, out array, out expandBuddyList);
            NavigationHost.RenderTreeDivStart(output, "favTr");
            navigationTree.ErrDiv = "divErrMail";
            navigationTree.Render(output);
            NavigationHost.RenderTreeDivEnd(output);
            NavigationHost.RenderTreeDivStart(output, "mailtree");
            mailboxFolderTree.ErrDiv = "divErrMail";
            mailboxFolderTree.Render(output);
            NavigationHost.RenderTreeDivEnd(output);
            if (!userContext.IsExplicitLogon)
            {
                if (userContext.HasArchive)
                {
                    NavigationHost.RenderTreeDivStart(output, "archivetree", "othTr");
                    MailboxFolderTree mailboxFolderTree2 = MailboxFolderTree.CreateStartPageDummyArchiveMailboxFolderTree(userContext);
                    mailboxFolderTree2.ErrDiv = "divErrMail";
                    mailboxFolderTree2.Render(output);
                    NavigationHost.RenderTreeDivEnd(output);
                }
                foreach (OtherMailboxConfigEntry entry in OtherMailboxConfiguration.GetOtherMailboxes(userContext))
                {
                    NavigationHost.RenderOtherMailboxFolderTree(output, userContext, entry, false);
                }
            }
            if (userContext.IsInstantMessageEnabled())
            {
                NavigationHost.RenderTreeDivStart(output, "buddytree");
                NavigationHost.RenderBuddyListTreeControl(output, userContext, expandBuddyList);
                NavigationHost.RenderTreeDivEnd(output);
            }
            NavigationHost.RenderTreeRegionDivEnd(output);
            output.Write("</div>");
            ContextMenu contextMenu = new FolderTreeContextMenu(userContext);

            contextMenu.Render(output);
            if (userContext.IsInstantMessageEnabled())
            {
                ContextMenu contextMenu2 = new BuddyTreeContextMenu(userContext);
                contextMenu2.Render(output);
            }
        }