protected TreeNode Control_OnNodeCreated(UIElementInfo uiElement, TreeNode defaultNode)
    {
        string elementName = uiElement.ElementName.ToLowerCSafe();

        // Add all custom reports
        if (elementName == "custom")
        {
            customWhereCondition = SqlHelper.AddWhereCondition(customWhereCondition, " StatisticsSiteID = " + SiteContext.CurrentSiteID);
            DataSet ds = StatisticsInfoProvider.GetCodeNames(customWhereCondition, "StatisticsCode ASC", 0);

            // If no custom reports found - hide Custom Reports node
            if (DataHelper.DataSourceIsEmpty(ds))
            {
                return(null);
            }

            foreach (DataRow dr in ds.Tables[0].Rows)
            {
                TreeNode childNode = new TreeNode();

                string codeName       = ValidationHelper.GetString(dr["StatisticsCode"], String.Empty).ToLowerCSafe();
                string name           = ResHelper.GetString("analytics_codename." + codeName);
                string dataCodeName   = GetDataCodeName(codeName);
                string reportCodeName = GetReportCodeNames(codeName);

                childNode.Text        = "<span id=\"node_" + codeName + "\" class=\"ContentTreeItem\" name=\"treeNode\"><span class=\"Name\">" + name + "</span></span>";
                childNode.NavigateUrl = "~/CMSModules/WebAnalytics/Tools/Analytics_Report.aspx?statCodeName=" + codeName + "&dataCodeName=" + dataCodeName + "&reportCodeName=" + reportCodeName + "&isCustom=1";
                childNode.Target      = Control.TargetFrame;

                defaultNode.ChildNodes.Add(childNode);
            }
        }

        return(defaultNode);
    }
    private TreeNode menuElem_OnNodeCreated(UIElementInfo uiElement, TreeNode defaultNode)
    {
        String elementName = uiElement.ElementName.ToLowerCSafe();

        // Remove Optimalization node when module OnlineMarketing not present
        if (elementName == "optimalization")
        {
            if (!ModuleEntry.IsModuleLoaded(ModuleEntry.ONLINEMARKETING))
            {
                return(null);
            }
        }

        String imagesUrl = "CMSModules/CMS_WebAnalytics/";

        if (uiElement != null)
        {
            if (!IsToolsUIElementAvailable(uiElement))
            {
                return(null);
            }
        }

        // Add all custom reports
        if (elementName == "custom")
        {
            customWhereCondition = SqlHelperClass.AddWhereCondition(customWhereCondition, " StatisticsSiteID = " + CMSContext.CurrentSiteID);
            DataSet ds = StatisticsInfoProvider.GetCodeNames(customWhereCondition, "StatisticsCode ASC", 0, "StatisticsCode");

            // If no custom reports found - hide Custom Reports node
            if (DataHelper.DataSourceIsEmpty(ds))
            {
                return(null);
            }

            foreach (DataRow dr in ds.Tables[0].Rows)
            {
                TreeNode childNode = new TreeNode();

                string codeName       = ValidationHelper.GetString(dr["StatisticsCode"], String.Empty).ToLowerCSafe();
                string name           = GetString("analytics_codename." + codeName);
                string dataCodeName   = GetDataCodeName(codeName);
                string reportCodeName = GetReportCodeNames(codeName);

                childNode.Text        = "<span id=\"node_" + codeName + "\" class=\"ContentTreeItem\" name=\"treeNode\"><span class=\"Name\">" + name + "</span></span>";
                childNode.NavigateUrl = "~/CMSModules/WebAnalytics/Tools/Analytics_Report.aspx?statCodeName=" + codeName + "&dataCodeName=" + dataCodeName + "&reportCodeName=" + reportCodeName + "&isCustom=1";
                childNode.Target      = treeElem.TargetFrame;

                // Icon
                String iconPath = imagesUrl + codeName.Replace(".", "_") + ".png";
                String corePath = URLHelper.ResolveUrl(UIHelper.GetImagePath(Page, iconPath, false, false));

                if (FileHelper.FileExists(corePath))
                {
                    childNode.ImageUrl = GetImageUrl(iconPath);
                }
                else
                {
                    childNode.ImageUrl = GetImageUrl(imagesUrl + "statistics.png");
                }
                defaultNode.ChildNodes.Add(childNode);
            }
        }
        return(defaultNode);
    }
Beispiel #3
0
    TreeNode menuElem_OnNodeCreated(UIElementInfo uiElement, TreeNode defaultNode)
    {
        String elementName = uiElement.ElementName.ToLower();

        // Remove Optimalization node when module OnlineMarketing not present
        if (elementName == "optimalization")
        {
            if (!ModuleEntry.IsModuleLoaded(ModuleEntry.ONLINEMARKETING))
            {
                return(null);
            }
        }

        // Select first intem under node
        if (!firstElementSelected)
        {
            // Resolve hash
            string url = URLHelper.EnsureHashToQueryParameters(uiElement.ElementTargetURL);

            // Is a page node (with page url)
            if (url != "@")
            {
                firstElementSelected = true;
                SelectItem(uiElement.ElementName, url);
            }
            // Is a category node (without page url)
            else
            {
                // Try to display a child element
                if (uiElement.ElementChildCount > 0)
                {
                    defaultNode.Expanded = true;
                }
            }
        }

        // Preselect node
        if (uiElement.ElementName.ToLower() == this.selectedNode.ToLower())
        {
            this.SelectItem(uiElement.ElementName, URLHelper.EnsureHashToQueryParameters(uiElement.ElementTargetURL));
        }

        String imagesUrl = "CMSModules/CMS_WebAnalytics/";

        if (uiElement != null)
        {
            if (!IsToolsUIElementAvailable(uiElement))
            {
                return(null);
            }
        }

        // Add all custom reports
        if (elementName == "custom")
        {
            customWhereCondition = SqlHelperClass.AddWhereCondition(customWhereCondition, " StatisticsSiteID = " + CMSContext.CurrentSiteID);
            DataSet ds = StatisticsInfoProvider.GetCodeNames(customWhereCondition, "StatisticsCode ASC", 0, "StatisticsCode");

            // If no custom reports found - hide Custom Reports node
            if (DataHelper.DataSourceIsEmpty(ds))
            {
                return(null);
            }

            foreach (DataRow dr in ds.Tables[0].Rows)
            {
                TreeNode childNode = new TreeNode();

                string codeName       = ValidationHelper.GetString(dr["StatisticsCode"], String.Empty).ToLower();
                string name           = GetString("analytics_codename." + codeName);
                string dataCodeName   = GetDataCodeName(codeName);
                string reportCodeName = GetReportCodeNames(codeName);
                string reportUrl      = "Analytics_Report.aspx?statCodeName=" + codeName + "&dataCodeName=" + dataCodeName + "&reportCodeName=" + reportCodeName + "&isCustom=1";

                childNode.Text        = "<span id=\"node_" + codeName + "\" class=\"ContentTreeItem\" name=\"treeNode\" onclick=\"SelectNode('" + codeName + "');parent.frames['analyticsDefault'].location.href = '" + reportUrl + "' ; \"><span class=\"Name\">" + name + "</span></span>";
                childNode.NavigateUrl = "~/CMSModules/WebAnalytics/Tools/Analytics_Statistics.aspx#";

                // Icon
                String imgPath = GetImageUrl(imagesUrl + codeName.Replace(".", "_") + ".png");
                if (FileHelper.FileExists(imgPath))
                {
                    childNode.ImageUrl = imgPath;
                }
                else
                {
                    childNode.ImageUrl = GetImageUrl(imagesUrl + "statistics.png");
                }
                defaultNode.ChildNodes.Add(childNode);
            }
        }
        return(defaultNode);
    }