Exemplo n.º 1
0
        private void RenderWebPartWithElevatedPermissions(HtmlTextWriter output)
        {
            var wp = WebPartManager.GetCurrentWebPartManager(Page);

            if (wp != null && ((String.IsNullOrEmpty(PropChartSelectedList.Trim()) && wp.DisplayMode.Name == "Design") || (PropChartSelectedList.Trim() == "<Select List>" && wp.DisplayMode.Name == "Browse")))
            {
                ConfigureChartVerbiageLiteral.RenderControl(output);
            }
            else
            {
                MainTable.RenderControl(output);
            }
        }
Exemplo n.º 2
0
        protected override void CreateChildControls()
        {
            act = new EPMLiveCore.Act(SPContext.Current.Web);
            int activation = act.CheckFeatureLicense(EPMLiveCore.ActFeature.WebParts);

            if (activation != 0)
            {
                return;
            }

            //base.CreateChildControls();
            MainTable = new HtmlTable();
            InitializeBubbleChartInputs();

            // Diagnostics
            Chart.PropTrace            = Page.Request.QueryString["charttrace"] != null;
            Chart.ChartLookupField     = Page.Request.QueryString["lookupfield"];
            Chart.ChartLookupFieldList = Page.Request.QueryString["lookupfieldlist"];

            if (_myProvider != null)
            {
                Chart.ReportFilterWebPartId = _myProvider.ReportID;
            }

            Chart.PropChartWebPartId = ID;

            Chart.BubbleChartUserSettings = GetPersistedBubbleChartPersonalizations();

            _litVfChart = new LiteralControl(Chart.GetHtml(ZoneID + ZoneIndex));

            var currentWebPartManager = WebPartManager.GetCurrentWebPartManager(Page);

            if (currentWebPartManager != null &&
                ((String.IsNullOrEmpty(PropChartSelectedList.Trim()) &&
                  currentWebPartManager.DisplayMode.Name == "Design") ||
                 (PropChartSelectedList.Trim() == "<Select List>" && currentWebPartManager.DisplayMode.Name == "Browse")))
            {
                ConfigureChartVerbiageLiteral.Text =
                    "<P><DIV class=\"UserGeneric\"><br />To configure the EPM Live Chart Web Part <a href=\"javascript:MSOTlPn_ShowToolPane2Wrapper('Edit', this, '" +
                    ID + "')\">click here</a>.<br /><br /></DIV></P>";
                Controls.Add(ConfigureChartVerbiageLiteral);
            }

            if (IsBubbleChart())
            {
                using (var site = new SPSite(SPContext.Current.Site.Url))
                {
                    using (var web = site.OpenWeb(SPContext.Current.Web.ID))
                    {
                        var selectedList = web.Lists[PropChartSelectedList];

                        if (selectedList == null)
                        {
                            return;
                        }
                        PopulateBubbleChartInputsWithInitialValues(selectedList);

                        if (Chart.BubbleChartUserSettings != null && Chart.BubbleChartUserSettings.IsValid && selectedList.ID == Chart.BubbleChartUserSettings.ListId)
                        {
                            SetBubbleChartInputSelectionsBasedOnPersonalizationSettings(Chart.BubbleChartUserSettings, selectedList);
                        }
                        else
                        {
                            SetBubbleChartInputsBasedOnWebPartProperties();
                        }
                    }
                }
            }

            var tableRow  = new HtmlTableRow();
            var chartCell = new HtmlTableCell();

            chartCell.Attributes.Add("valign", "top");

            var userSettingsCell = new HtmlTableCell();

            userSettingsCell.Attributes.Add("valign", "top");
            userSettingsCell.Attributes.Add("style", "padding-top:12px;");

            chartCell.Controls.Add(_litVfChart);

            MainTable.Attributes.Add("width", "100%");

            if (PropChartShowBubbleChartInputsInWebPart)
            {
                chartCell.Attributes.Add("width", "80%");
                userSettingsCell.Controls.Add(UserSettingsTable);
            }

            tableRow.Controls.Add(chartCell);

            if (IsBubbleChart())
            {
                tableRow.Controls.Add(userSettingsCell);
            }

            MainTable.Controls.Add(tableRow);

            Controls.Add(MainTable);
        }