コード例 #1
0
    protected void set_targets(RadPanelItemCollection items)
    {
        foreach (RadPanelItem item in items)
        {
            item.Target = rightPane.ClientID;

            set_targets(item.Items);
        }
    }
コード例 #2
0
ファイル: LeftMenu.ascx.cs プロジェクト: hackoose/cfi-team05
        private void BuildPanelbar(RadPanelItemCollection rootCollection)
        {
            qElement temp;
            qElement temp2;
            TabInfo page;
            int pageID;
            int j;
            int iItemIndex;
            while (PagesQueue.Count != 0)
            {
                pageID = Convert.ToInt32(PagesQueue.Dequeue());
                temp = (qElement) AuthPages[pageID];
                page = temp.page;
                temp.radPanelItem.Text = page.TabName;
                if ((!String.IsNullOrEmpty(page.IconFile) && EnablePageIcons))
                {
                    if ((page.IconFile.StartsWith("~")))
                    {
                        temp.radPanelItem.ImageUrl = Page.ResolveUrl(page.IconFile);
                    }
                    else
                    {
                        temp.radPanelItem.ImageUrl = PortalSettings.HomeDirectory + page.IconFile;
                    }
                }
                if ((!page.DisableLink))
                {
                    if ((page.FullUrl.StartsWith("*") && page.FullUrl.IndexOf("*", 1) != -1))
                    {
                        temp.radPanelItem.NavigateUrl = page.FullUrl.Substring(page.FullUrl.IndexOf("*", 1) + 1);
                        temp.radPanelItem.Target = page.FullUrl.Substring(1, page.FullUrl.IndexOf("*", 1) - 1);
                    }
                    else
                    {
                        temp.radPanelItem.NavigateUrl = page.FullUrl;
                    }
                }
                else if ((CopyChildItemLink && page.Level >= MaxLevel))
                {
                    j = 0;
                    //check if there are any child items and use a href from the first one
                    while ((j < AuthPages.Count && (((qElement) AuthPages[j]).page.ParentId != page.TabID || ((qElement) AuthPages[j]).page.DisableLink)))
                    {
                        j = j + 1;
                    }
                    if ((j < AuthPages.Count))
                    {
                        //child item found. use its link
                        temp.radPanelItem.NavigateUrl = ((qElement) AuthPages[j]).page.FullUrl;
                    }
                }
                if ((EnableToolTips && !String.IsNullOrEmpty(page.Description)))
                {
                    temp.radPanelItem.ToolTip = page.Description;
                }

                //set all other item properties
                if ((temp.radPanelItem.Level == 0))
                {
                    SetRootItemProperties(temp.radPanelItem, page.Level, temp.item, page.TabName);
                }
                else
                {
                    SetItemProperties(temp.radPanelItem, page.Level, temp.item, page.TabName);
                }

                //check showpath
                if ((ShowPath))
                {
                    CheckShowPath(page.TabID, temp.radPanelItem, page.TabName);
                }

                //image-only panel check
                if ((ImagesOnlyPanel && temp.radPanelItem.ImageUrl != string.Empty))
                {
                    temp.radPanelItem.Text = string.Empty;
                }

                //attach child items the current one
                if ((page.Level < MaxLevel || MaxLevel < 0))
                {
                    iItemIndex = 0;
                    for (j = 0; j <= AuthPages.Count - 1; j++)
                    {
                        temp2 = (qElement) AuthPages[j];
                        if ((temp2.page.ParentId == page.TabID))
                        {
                            temp.radPanelItem.Items.Add(temp2.radPanelItem);
                            PagesQueue.Enqueue(j);
                            iItemIndex = iItemIndex + 1;
                            temp2.item = iItemIndex;
                            AuthPages[j] = temp2;
                        }
                    }
                }
            }
        }
コード例 #3
0
ファイル: LeftMenu.ascx.cs プロジェクト: farsica/DnnExpert
        private void BuildPanelbar(RadPanelItemCollection rootCollection)
        {
            qElement temp;
            qElement temp2;
            TabInfo  page;
            int      pageID;
            int      j;
            int      iItemIndex;

            while (PagesQueue.Count != 0)
            {
                pageID = Convert.ToInt32(PagesQueue.Dequeue());
                temp   = (qElement)AuthPages[pageID];
                page   = temp.page;
                temp.radPanelItem.Text = page.TabName;
                if ((!String.IsNullOrEmpty(page.IconFile) && EnablePageIcons))
                {
                    if ((page.IconFile.StartsWith("~")))
                    {
                        temp.radPanelItem.ImageUrl = Page.ResolveUrl(page.IconFile);
                    }
                    else
                    {
                        temp.radPanelItem.ImageUrl = PortalSettings.HomeDirectory + page.IconFile;
                    }
                }
                if ((!page.DisableLink))
                {
                    if ((page.FullUrl.StartsWith("*") && page.FullUrl.IndexOf("*", 1) != -1))
                    {
                        temp.radPanelItem.NavigateUrl = page.FullUrl.Substring(page.FullUrl.IndexOf("*", 1) + 1);
                        temp.radPanelItem.Target      = page.FullUrl.Substring(1, page.FullUrl.IndexOf("*", 1) - 1);
                    }
                    else
                    {
                        temp.radPanelItem.NavigateUrl = page.FullUrl;
                    }
                }
                else if ((CopyChildItemLink && page.Level >= MaxLevel))
                {
                    j = 0;
                    //check if there are any child items and use a href from the first one
                    while ((j < AuthPages.Count && (((qElement)AuthPages[j]).page.ParentId != page.TabID || ((qElement)AuthPages[j]).page.DisableLink)))
                    {
                        j = j + 1;
                    }
                    if ((j < AuthPages.Count))
                    {
                        //child item found. use its link
                        temp.radPanelItem.NavigateUrl = ((qElement)AuthPages[j]).page.FullUrl;
                    }
                }
                if ((EnableToolTips && !String.IsNullOrEmpty(page.Description)))
                {
                    temp.radPanelItem.ToolTip = page.Description;
                }

                //set all other item properties
                if ((temp.radPanelItem.Level == 0))
                {
                    SetRootItemProperties(temp.radPanelItem, page.Level, temp.item, page.TabName);
                }
                else
                {
                    SetItemProperties(temp.radPanelItem, page.Level, temp.item, page.TabName);
                }

                //check showpath
                if ((ShowPath))
                {
                    CheckShowPath(page.TabID, temp.radPanelItem, page.TabName);
                }

                //image-only panel check
                if ((ImagesOnlyPanel && temp.radPanelItem.ImageUrl != string.Empty))
                {
                    temp.radPanelItem.Text = string.Empty;
                }

                //attach child items the current one
                if ((page.Level < MaxLevel || MaxLevel < 0))
                {
                    iItemIndex = 0;
                    for (j = 0; j <= AuthPages.Count - 1; j++)
                    {
                        temp2 = (qElement)AuthPages[j];
                        if ((temp2.page.ParentId == page.TabID))
                        {
                            temp.radPanelItem.Items.Add(temp2.radPanelItem);
                            PagesQueue.Enqueue(j);
                            iItemIndex   = iItemIndex + 1;
                            temp2.item   = iItemIndex;
                            AuthPages[j] = temp2;
                        }
                    }
                }
            }
        }
コード例 #4
0
    private void RecursivePopulatePanelbar(RadPanelBar parent, RadPanelItemCollection items, SiteMapNode node)
    {
        level++;
        imagesBaseDir = ResolveClientUrl("~/App_Shared/themes/glasscyan/Menu/");

        foreach (SiteMapNode child in node.ChildNodes)
        {
            if (child.IsAccessibleToUser(HttpContext.Current))
            {
                var panelItem = new RadPanelItem();

                //
                // The NavigateUrl, are using a replace of "¨" to "&", cause the .NET has a Bug that
                // not allow the SiteMap to have & to concatenate a querystring
                //
                panelItem.NavigateUrl = child.Url.Replace("¨", "&");
                panelItem.Target = "content";
                panelItem.Enabled = true;
                panelItem.Expanded = false;
                panelItem.ImagePosition = RadPanelItemImagePosition.Left;

                panelItem.CssClass = "CssClass";
                panelItem.FocusedCssClass = "FocusedCssClass";
                panelItem.ExpandedCssClass = "ExpandedCssClass";
                panelItem.DisabledCssClass = "DisabledCssClass";
                panelItem.SelectedCssClass = "SelectedCssClass";

                if (String.IsNullOrEmpty(node.Title))
                {
                    panelItem.CssClass = "HeaderCssClass";
                    panelItem.FocusedCssClass = "HeaderFocusedCssClass";
                    panelItem.ExpandedCssClass = "HeaderExpandedCssClass";
                    panelItem.DisabledCssClass = "HeaderDisabledCssClass";
                    panelItem.SelectedCssClass = "HeaderSelectedCssClass";
                }

                if (!String.IsNullOrEmpty(child["ImageCollapsed"]))
                    panelItem.ImageUrl = imagesBaseDir + child["ImageCollapsed"];
                else
                    panelItem.ImageUrl = imagesBaseDir + "blank" + (level - 1) + "x.gif";


                if (!String.IsNullOrEmpty(child["ImageExpanded"]))
                    panelItem.ExpandedImageUrl = imagesBaseDir + child["ImageExpanded"];

                if (!String.IsNullOrEmpty(child["ImageDisabled"]))
                    panelItem.DisabledImageUrl = imagesBaseDir + child["ImageDisabled"];

                if (!String.IsNullOrEmpty(child["ImageHoverCollapsed"]))
                    panelItem.HoveredImageUrl = imagesBaseDir + child["ImageHoverCollapsed"];

                panelItem.Text = child.Title;

                if (!String.IsNullOrEmpty(child["startPageUrl"]))
                    panelItem.Text += "</span></a><a plugin='lightbox' class='startPage' href='" + ResolveClientUrl(child["startPageUrl"]) + "?lightbox[iframe]=true' target='content'><span>";

                items.Add(panelItem);

                RecursivePopulatePanelbar(panelItem.PanelBar, panelItem.Items, child);

                if (String.IsNullOrEmpty(child.Url) && child.ChildNodes.Count > 0 && panelItem.Items.Count == 0)
                    panelItem.Visible = false;
            }
        }
        level--;
    }
コード例 #5
0
    private void RecursivePopulatePanelbar(RadPanelBar parent, RadPanelItemCollection items, SiteMapNode node)
    {
        level++;
        imagesBaseDir = ResolveClientUrl("~/App_Shared/themes/glasscyan/Menu/");

        foreach (SiteMapNode child in node.ChildNodes)
        {
            if (child.IsAccessibleToUser(HttpContext.Current))
            {
                var panelItem = new RadPanelItem();

                //
                // The NavigateUrl, are using a replace of "¨" to "&", cause the .NET has a Bug that
                // not allow the SiteMap to have & to concatenate a querystring
                //
                panelItem.NavigateUrl   = child.Url.Replace("¨", "&");
                panelItem.Target        = "content";
                panelItem.Enabled       = true;
                panelItem.Expanded      = false;
                panelItem.ImagePosition = RadPanelItemImagePosition.Left;

                panelItem.CssClass         = "CssClass";
                panelItem.FocusedCssClass  = "FocusedCssClass";
                panelItem.ExpandedCssClass = "ExpandedCssClass";
                panelItem.DisabledCssClass = "DisabledCssClass";
                panelItem.SelectedCssClass = "SelectedCssClass";

                if (String.IsNullOrEmpty(node.Title))
                {
                    panelItem.CssClass         = "HeaderCssClass";
                    panelItem.FocusedCssClass  = "HeaderFocusedCssClass";
                    panelItem.ExpandedCssClass = "HeaderExpandedCssClass";
                    panelItem.DisabledCssClass = "HeaderDisabledCssClass";
                    panelItem.SelectedCssClass = "HeaderSelectedCssClass";
                }

                if (!String.IsNullOrEmpty(child["ImageCollapsed"]))
                {
                    panelItem.ImageUrl = imagesBaseDir + child["ImageCollapsed"];
                }
                else
                {
                    panelItem.ImageUrl = imagesBaseDir + "blank" + (level - 1) + "x.gif";
                }


                if (!String.IsNullOrEmpty(child["ImageExpanded"]))
                {
                    panelItem.ExpandedImageUrl = imagesBaseDir + child["ImageExpanded"];
                }

                if (!String.IsNullOrEmpty(child["ImageDisabled"]))
                {
                    panelItem.DisabledImageUrl = imagesBaseDir + child["ImageDisabled"];
                }

                if (!String.IsNullOrEmpty(child["ImageHoverCollapsed"]))
                {
                    panelItem.HoveredImageUrl = imagesBaseDir + child["ImageHoverCollapsed"];
                }

                panelItem.Text = child.Title;

                if (!String.IsNullOrEmpty(child["startPageUrl"]))
                {
                    panelItem.Text += "</span></a><a plugin='lightbox' class='startPage' href='" + ResolveClientUrl(child["startPageUrl"]) + "?lightbox[iframe]=true' target='content'><span>";
                }

                items.Add(panelItem);

                RecursivePopulatePanelbar(panelItem.PanelBar, panelItem.Items, child);

                if (String.IsNullOrEmpty(child.Url) && child.ChildNodes.Count > 0 && panelItem.Items.Count == 0)
                {
                    panelItem.Visible = false;
                }
            }
        }
        level--;
    }