protected void Page_Load(object sender, EventArgs e)
    {
        CurrentMaster.PanelContent.CssClass = "";
        reportHeader.ActionPerformed       += HeaderActions_ActionPerformed;

        statCodeName = QueryHelper.GetString("statCodeName", String.Empty);
        dataCodeName = QueryHelper.GetString("dataCodeName", String.Empty);

        ucDisplayReport = this.LoadUserControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        pnlDisplayReport.Controls.Add((Control)ucDisplayReport);

        CheckWebAnalyticsUI(dataCodeName);

        // Set disabled module info
        ucDisabledModule.SettingsKeys = "CMSAnalyticsEnabled;";
        ucDisabledModule.InfoText     = GetString("WebAnalytics.Disabled");
        ucDisabledModule.ParentPanel  = pnlDisabled;

        CurrentMaster.Title.TitleText = GetString("analytics_codename.campaign") + " - " + GetString("analytics_codename." + statCodeName);

        // Icon
        string iconName = QueryHelper.GetString("icon", String.Empty);
        string imageUrl = GetImageUrl("CMSModules/CMS_WebAnalytics/Details/" + iconName + ".png");

        if (!FileHelper.FileExists(imageUrl))
        {
            imageUrl = GetImageUrl("Objects/Reporting_ReportCategory/object.png");
        }

        CurrentMaster.Title.TitleImage    = imageUrl;
        CurrentMaster.Title.HelpTopicName = Server.UrlEncode(statCodeName).Replace(".", "_");
    }
    protected void Page_Load(object sender, EventArgs e)
    {
        CheckWebAnalyticsUI("ABTest.ConversionsByVariations");
        CurrentMaster.PanelContent.CssClass = "";
        UIHelper.AllowUpdateProgress = false;

        ucDisplayReport = this.LoadUserControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        pnlDisplayReport.Controls.Add((Control)ucDisplayReport);

        reportHeader.ActionPerformed += HeaderActions_ActionPerformed;

        String siteName = CMSContext.CurrentSiteName;

        // Set disabled module info
        ucDisabledModule.SettingsKeys = "CMSAnalyticsEnabled;CMSABTestingEnabled";
        ucDisabledModule.InfoTexts.Add(GetString("WebAnalytics.Disabled") + "</br>");
        ucDisabledModule.InfoTexts.Add(GetString("abtesting.disabled"));
        ucDisabledModule.ParentPanel = pnlDisabled;

        ucABTests.ReturnColumnName = "ABTestName";
        ucABTests.AllowEmpty = false;
        ucABTests.ReloadData(false);
        ucABTests.PostbackOnChange = true;
        ucABTests.UniSelector.OnSelectionChanged += new EventHandler(UniSelector_OnSelectionChanged);
        ucSelectVariation.WhereCondition = GetWhereCondition();
        ucSelectVariation.ShowAllVariations = true;
    }
    protected void Page_Load(object sender, EventArgs e)
    {
        mConversionId = QueryHelper.GetInteger("conversionid", 0);
        CurrentMaster.PanelContent.CssClass = "";
        UIHelper.AllowUpdateProgress        = false;

        reportHeaderActions.ActionPerformed += HeaderActions_ActionPerformed;

        // Set disabled module info
        ucDisabledModule.ParentPanel = pnlDisabled;

        mUcDisplayReport = (IDisplayReport)LoadUserControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx");
        pnlDisplayReport.Controls.Add((Control)mUcDisplayReport);

        mDataCodeName    = QueryHelper.GetString("dataCodeName", String.Empty);
        mReportCodeNames = QueryHelper.GetString("reportCodeName", String.Empty);

        // Control initialization (based on displayed report)
        if (mDataCodeName == "conversion")
        {
            CheckWebAnalyticsUI("Conversion.Overview");
        }
        else if (mDataCodeName == "conversionpropertiesdetail")
        {
            CheckWebAnalyticsUI("Conversions.Detail");
            ucReportHeader.ShowConversionSelector = (mConversionId == 0);
            ucGraphType.ShowIntervalSelector      = false;
            mAllowNoTimeSelection      = true;
            ucGraphType.AllowEmptyDate = true;
        }

        // Set table same first column width for all time
        mUcDisplayReport.TableFirstColumnWidth = Unit.Percentage(20);
    }
Пример #4
0
    protected void Page_Load(object sender, EventArgs e)
    {
        CheckWebAnalyticsUI(QueryHelper.GetString("datacodename", String.Empty));

        ucDisplayReport = LoadControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        pnlDisplayReport.Controls.Add((Control)ucDisplayReport);

        CurrentMaster.PanelContent.CssClass = "";
        UIHelper.AllowUpdateProgress = false;

        String siteName = CMSContext.CurrentSiteName;

        // Text for menu
        mSave = GetString("general.save");
        mPrint = GetString("Analytics_Report.Print");
        mDeleteData = GetString("Analytics_Report.ManageData");

        // Images for menu buttons
        imgSave.ImageUrl = GetImageUrl("CMSModules/CMS_Content/EditMenu/save_small.png");
        imgPrint.ImageUrl = GetImageUrl("General/printSmall.png");
        imgManageData.ImageUrl = GetImageUrl("CMSModules/CMS_Reporting/managedataSmall.png");

        // Check 'ManageData' permission
        if (CMSContext.CurrentUser.IsAuthorizedPerResource("CMS.WebAnalytics", "ManageData"))
        {
            this.lnkDeleteData.OnClientClick = "modalDialog('" +
            ResolveUrl("~/CMSModules/Reporting/WebAnalytics/Analytics_ManageData.aspx") +
            "?statcodename=mvtest', 'AnalyticsManageData', " + AnalyticsHelper.MANAGE_WINDOW_WIDTH + ", " + AnalyticsHelper.MANAGE_WINDOW_HEIGHT + "); return false; ";
            this.lnkDeleteData.Visible = true;
        }

        ScriptHelper.RegisterClientScriptBlock(this, typeof(string), "myModalDialog",
        ScriptHelper.GetScript("function myModalDialog(url, name, width, height) { " +
            "win = window; " +
            "var dHeight = height; var dWidth = width; " +
            "if (( document.all )&&(navigator.appName != 'Opera')) { " +
            "try { win = wopener.window; } catch (e) {} " +
            "if ( parseInt(navigator.appVersion.substr(22, 1)) < 7 ) { dWidth += 4; dHeight += 58; }; " +
            "dialog = win.showModalDialog(url, this, 'dialogWidth:' + dWidth + 'px;dialogHeight:' + dHeight + 'px;resizable:yes;scroll:yes'); " +
            "} else { " +
            "oWindow = win.open(url, name, 'height=' + dHeight + ',width=' + dWidth + ',toolbar=no,directories=no,menubar=no,modal=yes,dependent=yes,resizable=yes,scroll=yes,scrollbars=yes'); oWindow.opener = this; oWindow.focus(); } } "));


        // Display disabled information
        if (!AnalyticsHelper.AnalyticsEnabled(siteName))
        {
            this.pnlDisabled.Visible = true;
            this.lblDisabled.Text = GetString("WebAnalytics.Disabled") + "<br/>";
        }

        if (!MVTestInfoProvider.MVTestingEnabled(siteName))
        {
            this.pnlDisabled.Visible = true;
            this.lblMVTestingDisabled.Text = GetString("mvt.disabled");
        }

        ucMVTests.ReturnColumnName = "MVTestName";
        ucMVTests.AllowEmpty = false;
        ucMVTests.PostbackOnChange = true;
    }
Пример #5
0
    protected void Page_Load(object sender, EventArgs e)
    {
        CheckWebAnalyticsUI("ABTest.ConversionsByVariations");
        CurrentMaster.PanelContent.CssClass = "";
        UIHelper.AllowUpdateProgress        = false;

        ucDisplayReport = this.LoadUserControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        pnlDisplayReport.Controls.Add((Control)ucDisplayReport);

        reportHeader.ActionPerformed += HeaderActions_ActionPerformed;

        String siteName = CMSContext.CurrentSiteName;

        // Set disabled module info
        ucDisabledModule.SettingsKeys = "CMSAnalyticsEnabled;CMSABTestingEnabled";
        ucDisabledModule.InfoTexts.Add(GetString("WebAnalytics.Disabled") + "</br>");
        ucDisabledModule.InfoTexts.Add(GetString("abtesting.disabled"));
        ucDisabledModule.ParentPanel = pnlDisabled;

        ucABTests.ReturnColumnName = "ABTestName";
        ucABTests.AllowEmpty       = false;
        ucABTests.ReloadData(false);
        ucABTests.PostbackOnChange = true;
        ucABTests.UniSelector.OnSelectionChanged += new EventHandler(UniSelector_OnSelectionChanged);
        ucSelectVariation.WhereCondition          = GetWhereCondition();
        ucSelectVariation.ShowAllVariations       = true;
    }
Пример #6
0
    protected void Page_Load(object sender, EventArgs e)
    {
        CheckWebAnalyticsUI(QueryHelper.GetString("datacodename", String.Empty));

        ucDisplayReport = LoadControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        pnlDisplayReport.Controls.Add((Control)ucDisplayReport);

        CurrentMaster.PanelContent.CssClass = "";
        UIHelper.AllowUpdateProgress = false;

        String siteName = CMSContext.CurrentSiteName;

        // Text for menu
        mSave = GetString("general.save");
        mPrint = GetString("Analytics_Report.Print");
        mDeleteData = GetString("Analytics_Report.ManageData");

        // Images for menu buttons
        imgSave.ImageUrl = GetImageUrl("CMSModules/CMS_Content/EditMenu/save_small.png");
        imgPrint.ImageUrl = GetImageUrl("General/printSmall.png");
        imgManageData.ImageUrl = GetImageUrl("CMSModules/CMS_Reporting/managedataSmall.png");

        // Check 'ManageData' permission
        if (CMSContext.CurrentUser.IsAuthorizedPerResource("CMS.WebAnalytics", "ManageData"))
        {
            this.lnkDeleteData.OnClientClick = "modalDialog('" +
            ResolveUrl("~/CMSModules/Reporting/WebAnalytics/Analytics_ManageData.aspx") +
            "?statcodename=mvtest', 'AnalyticsManageData', " + AnalyticsHelper.MANAGE_WINDOW_WIDTH + ", " + AnalyticsHelper.MANAGE_WINDOW_HEIGHT + "); return false; ";
            this.lnkDeleteData.Visible = true;
        }

        ScriptHelper.RegisterClientScriptBlock(this, typeof(string), "myModalDialog",
        ScriptHelper.GetScript("function myModalDialog(url, name, width, height) { " +
            "win = window; " +
            "var dHeight = height; var dWidth = width; " +
            "if (( document.all )&&(navigator.appName != 'Opera')) { " +
            "try { win = wopener.window; } catch (e) {} " +
            "if ( parseInt(navigator.appVersion.substr(22, 1)) < 7 ) { dWidth += 4; dHeight += 58; }; " +
            "dialog = win.showModalDialog(url, this, 'dialogWidth:' + dWidth + 'px;dialogHeight:' + dHeight + 'px;resizable:yes;scroll:yes'); " +
            "} else { " +
            "oWindow = win.open(url, name, 'height=' + dHeight + ',width=' + dWidth + ',toolbar=no,directories=no,menubar=no,modal=yes,dependent=yes,resizable=yes,scroll=yes,scrollbars=yes'); oWindow.opener = this; oWindow.focus(); } } "));

        // Display disabled information
        if (!AnalyticsHelper.AnalyticsEnabled(siteName))
        {
            this.pnlDisabled.Visible = true;
            this.lblDisabled.Text = GetString("WebAnalytics.Disabled") + "<br/>";
        }

        if (!MVTestInfoProvider.MVTestingEnabled(siteName))
        {
            this.pnlDisabled.Visible = true;
            this.lblMVTestingDisabled.Text = GetString("mvt.disabled");
        }

        ucMVTests.ReturnColumnName = "MVTestName";
        ucMVTests.AllowEmpty = false;
        ucMVTests.PostbackOnChange = true;
    }
Пример #7
0
 private void EnsureDisplayReport()
 {
     if (ucDisplayReport == null)
     {
         ucDisplayReport = this.LoadUserControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
         divGraphArea.Controls.Add((Control)ucDisplayReport);
     }
 }
 private void EnsureDisplayReport()
 {
     if (mUcDisplayReport == null)
     {
         mUcDisplayReport = (IDisplayReport)LoadUserControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx");
         divGraphArea.Controls.Add((Control)mUcDisplayReport);
     }
 }
Пример #9
0
    protected void Page_Load(object sender, EventArgs e)
    {
        CurrentMaster.PanelContent.CssClass = "";

        statCodeName = QueryHelper.GetString("statCodeName", String.Empty);
        dataCodeName = QueryHelper.GetString("dataCodeName", String.Empty);

        ucDisplayReport = LoadControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        pnlDisplayReport.Controls.Add((Control)ucDisplayReport);

        CheckWebAnalyticsUI(dataCodeName);

        // Display disabled information
        if (!AnalyticsHelper.AnalyticsEnabled(CMSContext.CurrentSiteName))
        {
            this.pnlDisabled.Visible = true;
            this.lblDisabled.Text    = ResHelper.GetString("WebAnalytics.Disabled");
        }

        // Text for menu buttons
        mSave  = GetString("general.save");
        mPrint = GetString("Analytics_Report.Print");

        // Images for menu buttons
        imgSave.ImageUrl  = GetImageUrl("CMSModules/CMS_Content/EditMenu/save_small.png");
        imgPrint.ImageUrl = GetImageUrl("General/printSmall.png");

        ScriptHelper.RegisterClientScriptBlock(this, typeof(string), "myModalDialog",
                                               ScriptHelper.GetScript("function myModalDialog(url, name, width, height) { " +
                                                                      "win = window; " +
                                                                      "var dHeight = height; var dWidth = width; " +
                                                                      "if (( document.all )&&(navigator.appName != 'Opera')) { " +
                                                                      "try { win = wopener.window; } catch (e) {} " +
                                                                      "if ( parseInt(navigator.appVersion.substr(22, 1)) < 7 ) { dWidth += 4; dHeight += 58; }; " +
                                                                      "dialog = win.showModalDialog(url, this, 'dialogWidth:' + dWidth + 'px;dialogHeight:' + dHeight + 'px;resizable:yes;scroll:yes'); " +
                                                                      "} else { " +
                                                                      "oWindow = win.open(url, name, 'height=' + dHeight + ',width=' + dWidth + ',toolbar=no,directories=no,menubar=no,modal=yes,dependent=yes,resizable=yes,scroll=yes,scrollbars=yes'); oWindow.opener = this; oWindow.focus(); } } "));

        CurrentMaster.Title.TitleText = GetString("analytics_codename.campaign") + " - " + GetString("analytics_codename." + statCodeName);

        // Icon
        string iconName = QueryHelper.GetString("icon", String.Empty);
        string imageUrl = GetImageUrl("CMSModules/CMS_WebAnalytics/Details/" + iconName + ".png");

        if (!FileHelper.FileExists(imageUrl))
        {
            imageUrl = GetImageUrl("Objects/Reporting_ReportCategory/object.png");
        }

        CurrentMaster.Title.TitleImage    = imageUrl;
        CurrentMaster.Title.HelpTopicName = Server.UrlEncode(statCodeName).Replace(".", "_");
    }
    protected void Page_Load(object sender, EventArgs e)
    {
        CurrentMaster.PanelContent.CssClass = "";

        statCodeName = QueryHelper.GetString("statCodeName", String.Empty);
        dataCodeName = QueryHelper.GetString("dataCodeName", String.Empty);

        ucDisplayReport = LoadControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        pnlDisplayReport.Controls.Add((Control)ucDisplayReport);

        CheckWebAnalyticsUI(dataCodeName);

        // Display disabled information
        if (!AnalyticsHelper.AnalyticsEnabled(CMSContext.CurrentSiteName))
        {
            this.pnlDisabled.Visible = true;
            this.lblDisabled.Text = ResHelper.GetString("WebAnalytics.Disabled");
        }

        // Text for menu buttons
        mSave = GetString("general.save");
        mPrint = GetString("Analytics_Report.Print");

        // Images for menu buttons
        imgSave.ImageUrl = GetImageUrl("CMSModules/CMS_Content/EditMenu/save_small.png");
        imgPrint.ImageUrl = GetImageUrl("General/printSmall.png");

        ScriptHelper.RegisterClientScriptBlock(this, typeof(string), "myModalDialog",
        ScriptHelper.GetScript("function myModalDialog(url, name, width, height) { " +
            "win = window; " +
            "var dHeight = height; var dWidth = width; " +
            "if (( document.all )&&(navigator.appName != 'Opera')) { " +
            "try { win = wopener.window; } catch (e) {} " +
            "if ( parseInt(navigator.appVersion.substr(22, 1)) < 7 ) { dWidth += 4; dHeight += 58; }; " +
            "dialog = win.showModalDialog(url, this, 'dialogWidth:' + dWidth + 'px;dialogHeight:' + dHeight + 'px;resizable:yes;scroll:yes'); " +
            "} else { " +
            "oWindow = win.open(url, name, 'height=' + dHeight + ',width=' + dWidth + ',toolbar=no,directories=no,menubar=no,modal=yes,dependent=yes,resizable=yes,scroll=yes,scrollbars=yes'); oWindow.opener = this; oWindow.focus(); } } "));

        CurrentMaster.Title.TitleText = GetString("analytics_codename.campaign") + " - " + GetString("analytics_codename." + statCodeName);

        // Icon
        string iconName = QueryHelper.GetString("icon", String.Empty);
        string imageUrl = GetImageUrl("CMSModules/CMS_WebAnalytics/Details/" + iconName + ".png");

        if (!FileHelper.FileExists(imageUrl))
        {
            imageUrl = GetImageUrl("Objects/Reporting_ReportCategory/object.png");
        }

        CurrentMaster.Title.TitleImage = imageUrl;
        CurrentMaster.Title.HelpTopicName = Server.UrlEncode(statCodeName).Replace(".", "_");
    }
    protected void Page_Load(object sender, EventArgs e)
    {
        ucDisplayReport = LoadControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        pnlDisplayReport.Controls.Add((Control)ucDisplayReport);

        ucABTests.ReturnColumnName = "ABTestName";
        ucABTests.AllowEmpty       = false;
        ucABTests.ReloadData(false);
        ucABTests.PostbackOnChange = true;
        ucABTests.UniSelector.OnSelectionChanged += new EventHandler(UniSelector_OnSelectionChanged);
        ucConversions.ABTestName = ValidationHelper.GetString(ucABTests.Value, String.Empty);
        ucConversions.PostbackOnDropDownChange = true;
    }
Пример #12
0
    protected void Page_Load(object sender, EventArgs e)
    {
        CheckWebAnalyticsUI("ABTest.Overview");

        ucDisplayReport = LoadControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        pnlOverview.Controls.Add((Control)ucDisplayReport);

        ucConversionRateReport = LoadControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        pnlConversionRate.Controls.Add((Control)ucConversionRateReport);

        ucTestValuesReport = LoadControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        pnlConversionValue.Controls.Add((Control)ucTestValuesReport);

        listElem.ShowObjectMenu             = false;
        CurrentMaster.PanelContent.CssClass = "";
        String siteName = CMSContext.CurrentSiteName;

        UIHelper.AllowUpdateProgress = false;

        // Display disabled information
        if (!AnalyticsHelper.AnalyticsEnabled(siteName))
        {
            this.pnlDisabled.Visible = true;
            this.lblDisabled.Text    = GetString("WebAnalytics.Disabled") + "<br/>";
        }

        if (!ABTestInfoProvider.ABTestingEnabled(siteName))
        {
            this.pnlDisabled.Visible       = true;
            this.lblABTestingDisabled.Text = GetString("abtesting.disabled");
        }

        listElem.ShowFilter    = false;
        listElem.DelayedReload = true;
        listElem.Grid.GridName = "~/CMSModules/OnlineMarketing/Controls/UI/ABTest/ListWithValues.xml";

        lnkTestRate.NavigateUrl            = "#";
        lnkTestValue.NavigateUrl           = "#";
        lnkTestValue.Attributes["OnClick"] = "if (parent.parent.selectTreeNode != null) parent.parent.selectTreeNode('ABTest.ConversionsValue');parent.location=\"abtest_frameset.aspx?page=conversionsvalue&displayTab=abtesting.conversionsvalue\"";
        lnkTestRate.Attributes["OnClick"]  = "if (parent.parent.selectTreeNode != null) parent.parent.selectTreeNode('ABTest.ConversionsRate');parent.location=\"abtest_frameset.aspx?page=conversionsrate&displayTab=abtesting.conversionrate\"";

        ucABTests.AllowAll         = true;
        ucABTests.AllowEmpty       = false;
        ucABTests.IsLiveSite       = false;
        ucABTests.ReturnColumnName = "ABTestName";
        ucABTests.PostbackOnChange = true;
    }
Пример #13
0
    protected void Page_Load(object sender, EventArgs e)
    {
        CheckWebAnalyticsUI("MVT.Overview");
        String siteName = CMSContext.CurrentSiteName;

        CurrentMaster.PanelContent.CssClass = "";

        ucDisplayReport = LoadControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        pnlOverview.Controls.Add((Control)ucDisplayReport);

        ucConversionRateReport = LoadControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        pnlConversionRate.Controls.Add((Control)ucConversionRateReport);

        ucTestValuesReport = LoadControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        pnlConversionValue.Controls.Add((Control)ucTestValuesReport);

        // Display disabled information
        if (!AnalyticsHelper.AnalyticsEnabled(siteName))
        {
            this.pnlDisabled.Visible = true;
            this.lblDisabled.Text    = GetString("WebAnalytics.Disabled") + "<br/>";
        }

        if (!MVTestInfoProvider.MVTestingEnabled(siteName))
        {
            this.pnlDisabled.Visible       = true;
            this.lblMVTestingDisabled.Text = GetString("mvt.disabled");
        }

        listElem.DelayedReload      = true;
        listElem.Grid.GridName      = "~/CMSModules/OnlineMarketing/Controls/UI/MVTest/ListWithValues.xml";
        listElem.Grid.Columns       = "MVTestDisplayName,MVTestID,MVTestCulture,MVTestPage,MVTestOpenFrom,MVTestOpenTo,MVTestEnabled,MVTestConversions,MVTestSiteID,HitsValue";
        listElem.ApplyTimeCondition = false;

        lnkTestRate.NavigateUrl            = "#";
        lnkTestValue.NavigateUrl           = "#";
        lnkTestValue.Attributes["OnClick"] = "if (parent.parent.selectTreeNode != null) parent.parent.selectTreeNode('MVTestConversionValue');parent.location=\"frameset.aspx?page=mvtreport&displayTab=abtesting.conversionsvalue&reportCodeName=mvtestconversionvalue.yearreport;mvtestconversionvalue.monthreport;mvtestconversionvalue.weekreport;mvtestconversionvalue.dayreport;mvtestconversionvalue.hourreport\"";
        lnkTestRate.Attributes["OnClick"]  = "if (parent.parent.selectTreeNode != null) parent.parent.selectTreeNode('MVTestConversionRate');parent.location=\"frameset.aspx?page=mvtreport&displayTab=mvtest.conversionrate&reportCodeName=mvtestconversionrate.yearreport;mvtestconversionrate.monthreport;mvtestconversionrate.weekreport;mvtestconversionrate.dayreport;mvtestconversionrate.hourreport\"";


        ucMVTests.AllowAll         = true;
        ucMVTests.AllowEmpty       = false;
        ucMVTests.IsLiveSite       = false;
        ucMVTests.ReturnColumnName = "MVTestName";
        ucMVTests.PostbackOnChange = true;
    }
Пример #14
0
    protected void Page_Load(object sender, EventArgs e)
    {
        CurrentMaster.PanelContent.CssClass = "";
        reportHeader.ActionPerformed       += HeaderActions_ActionPerformed;

        mStatCodeName = QueryHelper.GetString("statCodeName", String.Empty);
        mDataCodeName = QueryHelper.GetString("dataCodeName", String.Empty);

        mUcDisplayReport = (IDisplayReport)LoadUserControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx");
        pnlDisplayReport.Controls.Add((Control)mUcDisplayReport);

        CheckWebAnalyticsUI(mDataCodeName);

        // Set disabled module info
        ucDisabledModule.SettingsKeys = "CMSAnalyticsEnabled;";
        ucDisabledModule.ParentPanel  = pnlDisabled;

        PageTitle.TitleText = GetString("analytics_codename.campaign") + " - " + GetString("analytics_codename." + HTMLHelper.HTMLEncode(mStatCodeName));
    }
Пример #15
0
    protected void Page_Load(object sender, EventArgs e)
    {
        CheckWebAnalyticsUI("ABTest.Overview");

        ucDisplayReport = this.LoadUserControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        pnlOverview.Controls.Add((Control)ucDisplayReport);

        ucConversionRateReport = this.LoadUserControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        pnlConversionRate.Controls.Add((Control)ucConversionRateReport);

        ucTestValuesReport = this.LoadUserControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        pnlConversionValue.Controls.Add((Control)ucTestValuesReport);

        listElem.ShowObjectMenu             = false;
        CurrentMaster.PanelContent.CssClass = "";
        String siteName = CMSContext.CurrentSiteName;

        UIHelper.AllowUpdateProgress = false;


        // Set disabled module info
        ucDisabledModule.SettingsKeys = "CMSAnalyticsEnabled;CMSABTestingEnabled";
        ucDisabledModule.InfoTexts.Add(GetString("WebAnalytics.Disabled") + "</br>");
        ucDisabledModule.InfoTexts.Add(GetString("abtesting.disabled"));
        ucDisabledModule.ParentPanel = pnlDisabled;

        listElem.ShowFilter    = false;
        listElem.DelayedReload = true;
        listElem.Grid.GridName = "~/CMSModules/OnlineMarketing/Controls/UI/ABTest/ListWithValues.xml";

        lnkTestRate.NavigateUrl            = "#";
        lnkTestValue.NavigateUrl           = "#";
        lnkTestValue.Attributes["OnClick"] = "if (parent.parent.selectTreeNode != null) parent.parent.selectTreeNode('#node_abtestconversionsvalue');parent.location=\"abtest_frameset.aspx?page=conversionsvalue&displayTab=abtesting.conversionsvalue\"";
        lnkTestRate.Attributes["OnClick"]  = "if (parent.parent.selectTreeNode != null) parent.parent.selectTreeNode('#node_abtestconversionsrate');parent.location=\"abtest_frameset.aspx?page=conversionsrate&displayTab=abtesting.conversionrate\"";

        ucABTests.AllowAll         = true;
        ucABTests.AllowEmpty       = false;
        ucABTests.IsLiveSite       = false;
        ucABTests.ReturnColumnName = "ABTestName";
        ucABTests.PostbackOnChange = true;
    }
    /// <summary>
    /// Displays the report using the current graph type.
    /// </summary>
    private void DisplayReport()
    {
        // Create control to display the specified report
        Control        control         = LoadUserControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx");
        IDisplayReport ucDisplayReport = control as IDisplayReport;

        if (ucDisplayReport == null)
        {
            return;
        }
        pnlDisplayReport.Controls.Add(control);

        // Social media insights do not provide hourly reports
        ucGraphType.VisibleGraphTypes = "year;month;week;day";
        ucGraphType.ProcessChartSelectors(false);

        // Choose a report using the current graph type
        string reportName = ucGraphType.GetReportName(ReportCodeNames);

        ucDisplayReport.ReportName = reportName;
        if (!ucDisplayReport.IsReportLoaded())
        {
            ShowError(String.Format(GetString("Analytics_Report.ReportDoesnotExist"), HTMLHelper.HTMLEncode(reportName)));
        }
        else
        {
            ucDisplayReport.LoadFormParameters   = false;
            ucDisplayReport.DisplayFilter        = false;
            ucDisplayReport.ReportParameters     = CreateReportParameters();
            ucDisplayReport.GraphImageWidth      = 100;
            ucDisplayReport.IgnoreWasInit        = true;
            ucDisplayReport.UseExternalReload    = true;
            ucDisplayReport.UseProgressIndicator = true;
            ucDisplayReport.SelectedInterval     = HitsIntervalEnumFunctions.HitsConversionToString(ucGraphType.SelectedInterval);

            ucDisplayReport.ReloadData(true);
        }
    }
Пример #17
0
    protected void Page_Load(object sender, EventArgs e)
    {
        CheckWebAnalyticsUI(QueryHelper.GetString("datacodename", String.Empty));

        reportHeader.ActionPerformed += HeaderActions_ActionPerformed;
        ucDisplayReport = this.LoadUserControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        pnlDisplayReport.Controls.Add((Control)ucDisplayReport);

        CurrentMaster.PanelContent.CssClass = "";
        UIHelper.AllowUpdateProgress        = false;

        String siteName = CMSContext.CurrentSiteName;

        // Set disabled module info
        ucDisabledModule.SettingsKeys = "CMSAnalyticsEnabled;CMSMVTEnabled";
        ucDisabledModule.InfoTexts.Add(GetString("WebAnalytics.Disabled") + "</br>");
        ucDisabledModule.InfoTexts.Add(GetString("mvt.disabled"));
        ucDisabledModule.ParentPanel = pnlDisabled;

        ucMVTests.ReturnColumnName = "MVTestName";
        ucMVTests.AllowEmpty       = false;
        ucMVTests.PostbackOnChange = true;
    }
    protected void Page_Load(object sender, EventArgs e)
    {
        reportHeaderActions.ActionPerformed += HeaderActions_ActionPerformed;
        mUcDisplayReport = (IDisplayReport)LoadUserControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx");
        pnlContent.Controls.Add((Control)mUcDisplayReport);

        CurrentMaster.PanelContent.CssClass = string.Empty;
        UIHelper.AllowUpdateProgress = false;
        ScriptHelper.RegisterDialogScript(Page);

        // Campaign Info
        mCampaignInfo = EditedObject as CampaignInfo;
        if (mCampaignInfo == null)
        {
            return;
        }

        // Validate SiteID for non administrators
        if (!MembershipContext.AuthenticatedUser.IsGlobalAdministrator)
        {
            if (mCampaignInfo.CampaignSiteID != SiteContext.CurrentSiteID)
            {
                RedirectToAccessDenied(GetString("cmsmessages.accessdenied"));
            }
        }

        mCampaignName = mCampaignInfo.CampaignName;

        ucGraphType.ProcessChartSelectors(false);

        if (!RequestHelper.IsPostBack())
        {
            // Check the first radio button
            rbViews.Checked = true;
        }
    }
Пример #19
0
    protected void Page_Load(object sender, EventArgs e)
    {
        reportHeaderActions.ActionPerformed += HeaderActions_ActionPerformed;
        mUcDisplayReport = (IDisplayReport)LoadUserControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx");
        pnlContent.Controls.Add((Control)mUcDisplayReport);

        CurrentMaster.PanelContent.CssClass = string.Empty;
        UIHelper.AllowUpdateProgress        = false;
        ScriptHelper.RegisterDialogScript(Page);

        // Campaign Info
        mCampaignInfo = EditedObject as CampaignInfo;
        if (mCampaignInfo == null)
        {
            return;
        }

        // Validate SiteID for non administrators
        if (!MembershipContext.AuthenticatedUser.IsGlobalAdministrator)
        {
            if (mCampaignInfo.CampaignSiteID != SiteContext.CurrentSiteID)
            {
                RedirectToAccessDenied(GetString("cmsmessages.accessdenied"));
            }
        }

        mCampaignName = mCampaignInfo.CampaignName;

        ucGraphType.ProcessChartSelectors(false);

        if (!RequestHelper.IsPostBack())
        {
            // Check the first radio button
            rbViews.Checked = true;
        }
    }
Пример #20
0
    protected void Page_Load(object sender, EventArgs e)
    {
        ucDisplayReport = LoadControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        pnlContent.Controls.Add((Control)ucDisplayReport);

        CurrentMaster.PanelContent.CssClass = "";
        UIHelper.AllowUpdateProgress = false;

        // ABTest Info
        int abTestID = QueryHelper.GetInteger("abtestid", 0);
        ABTestInfo abInfo = ABTestInfoProvider.GetABTestInfo(abTestID);
        if (abInfo == null)
        {
            return;
        }

        String siteName = CMSContext.CurrentSiteName;

        // Display disabled information
        if (!AnalyticsHelper.AnalyticsEnabled(siteName))
        {
            this.pnlWarning.Visible = true;
            this.lblWAWarning.Text = GetString("WebAnalytics.Disabled") + "<br/>";
        }

        if (!ABTestInfoProvider.ABTestingEnabled(siteName))
        {
            this.pnlWarning.Visible = true;
            this.lblABWarning.Text = GetString("abtesting.disabled");
        }

        testName = abInfo.ABTestName;

        // Variants condition
        ucSelectVariation.WhereCondition = "ABVariantTestID  IN ( SELECT ABTestID FROM OM_ABTest WHERE ABTestName = N'" + testName + "')";

        // Text for menu
        mSave = GetString("general.save");
        mPrint = GetString("Analytics_Report.Print");
        mDeleteData = GetString("Analytics_Report.ManageData");

        // Images for menu buttons
        imgSave.ImageUrl = GetImageUrl("CMSModules/CMS_Content/EditMenu/save_small.png");
        imgPrint.ImageUrl = GetImageUrl("General/printSmall.png");
        imgManageData.ImageUrl = GetImageUrl("CMSModules/CMS_Reporting/managedataSmall.png");

        // Check 'ManageData' permission
        if (CMSContext.CurrentUser.IsAuthorizedPerResource("CMS.WebAnalytics", "ManageData"))
        {
            this.lnkDeleteData.OnClientClick = "modalDialog('" +
            ResolveUrl("~/CMSModules/Reporting/WebAnalytics/Analytics_ManageData.aspx") +
            "?statcodename=abconversion;" + testName + ";%', 'AnalyticsManageData', " + AnalyticsHelper.MANAGE_WINDOW_WIDTH + ", " + AnalyticsHelper.MANAGE_WINDOW_HEIGHT + "); return false; ";
            this.lnkDeleteData.Visible = true;
        }

        ScriptHelper.RegisterClientScriptBlock(this, typeof(string), "myModalDialog",
        ScriptHelper.GetScript("function myModalDialog(url, name, width, height) { " +
            "win = window; " +
            "var dHeight = height; var dWidth = width; " +
            "if (( document.all )&&(navigator.appName != 'Opera')) { " +
            "try { win = wopener.window; } catch (e) {} " +
            "if ( parseInt(navigator.appVersion.substr(22, 1)) < 7 ) { dWidth += 4; dHeight += 58; }; " +
            "dialog = win.showModalDialog(url, this, 'dialogWidth:' + dWidth + 'px;dialogHeight:' + dHeight + 'px;resizable:yes;scroll:yes'); " +
            "} else { " +
            "oWindow = win.open(url, name, 'height=' + dHeight + ',width=' + dWidth + ',toolbar=no,directories=no,menubar=no,modal=yes,dependent=yes,resizable=yes,scroll=yes,scrollbars=yes'); oWindow.opener = this; oWindow.focus(); } } "));

        ucGraphType.ProcessChartSelectors(false);

        // Enables/disables radio buttons (based on UI elements)
        CurrentUserInfo ui = CMSContext.CurrentUser;

        if (!RequestHelper.IsPostBack())
        {
            if (!ui.IsGlobalAdministrator)
            {
                rbCount.Enabled = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "ABTest.ConversionsCount");
                rbRate.Enabled = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "ABTest.ConversionsRate");
                rbValue.Enabled = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "ABTest.ConversionsValue");
                rbSourcePages.Enabled = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "ABTest.ConversionsSourcePages");
                rbVariants.Enabled = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "ABTest.ConversionsByVariations");

                bool checkedButton = false;

                // Check first enabled button
                foreach (Control ctrl in pnlRadios.Controls)
                {
                    RadioButton rb = ctrl as RadioButton;
                    if (rb != null)
                    {
                        if (rb.Enabled)
                        {
                            rb.Checked = true;
                            checkedButton = true;
                            break;
                        }
                    }
                }

                // No report avaible -> redirect to access denied
                if (!checkedButton)
                {
                    RedirectToAccessDenied(GetString("abtest.noreportavaible"));
                }
            }
            else
            {
                // Admin check first radio button
                rbCount.Checked = true;
            }
        }
    }
    protected void Page_Load(object sender, EventArgs e)
    {
        reportHeaderActions.ActionPerformed += HeaderActions_ActionPerformed;
        mUcDisplayReport = (IDisplayReport)LoadUserControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx");
        pnlContent.Controls.Add((Control)mUcDisplayReport);

        CurrentMaster.PanelContent.CssClass = string.Empty;
        UIHelper.AllowUpdateProgress = false;
        ScriptHelper.RegisterDialogScript(Page);

        // Campaign Info
        mCampaignInfo = EditedObject as CampaignInfo;
        if (mCampaignInfo == null)
        {
            return;
        }

        // Validate SiteID for non administrators
        if (!MembershipContext.AuthenticatedUser.IsGlobalAdministrator)
        {
            if (mCampaignInfo.CampaignSiteID != SiteContext.CurrentSiteID)
            {
                RedirectToAccessDenied(GetString("cmsmessages.accessdenied"));
            }
        }

        mCampaignName = mCampaignInfo.CampaignName;

        ucGraphType.ProcessChartSelectors(false);

        // Enables/disables radio buttons (based on UI elements)
        var ui = MembershipContext.AuthenticatedUser;
        bool checkedButton = false;

        if (!RequestHelper.IsPostBack())
        {
            if (!ui.IsGlobalAdministrator)
            {
                rbCount.Enabled = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "CampaignConversionCount");
                rbDetail.Enabled = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "CampaignDetails");
                rbGoalCount.Enabled = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "goals.numberofconversions");
                rbGoalValue.Enabled = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "goals.totalvalueofconversions");
                rbGoalView.Enabled = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "goals.numberofvisitors");
                rbValue.Enabled = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "campaignsConversionValue");
                rbValuePerVisitor.Enabled = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "valuepervisitor");
                rbViews.Enabled = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "campaign.overview");

                // Check first enabled button
                foreach (Control ctrl in pnlRadios.Controls)
                {
                    CMSRadioButton rb = ctrl as CMSRadioButton;
                    if (rb != null)
                    {
                        if (rb.Enabled)
                        {
                            rb.Checked = true;
                            checkedButton = true;
                            break;
                        }
                    }
                }

                // No report avaible -> redirect to access denied
                if (!checkedButton)
                {
                    RedirectToAccessDenied(GetString("campaign.noreportavaible"));
                }
            }
            else
            {
                // Admin check first radio button
                rbViews.Checked = true;
            }
        }
    }
Пример #22
0
    protected void Page_Load(object sender, EventArgs e)
    {
        CheckWebAnalyticsUI("ABTest.Overview");

        ucDisplayReport = LoadControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        pnlOverview.Controls.Add((Control)ucDisplayReport);

        ucConversionRateReport = LoadControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        pnlConversionRate.Controls.Add((Control)ucConversionRateReport);

        ucTestValuesReport = LoadControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        pnlConversionValue.Controls.Add((Control)ucTestValuesReport);

        listElem.ShowObjectMenu = false;
        CurrentMaster.PanelContent.CssClass = "";
        String siteName = CMSContext.CurrentSiteName;
        UIHelper.AllowUpdateProgress = false;

        // Display disabled information
        if (!AnalyticsHelper.AnalyticsEnabled(siteName))
        {
            this.pnlDisabled.Visible = true;
            this.lblDisabled.Text = GetString("WebAnalytics.Disabled") + "<br/>";
        }

        if (!ABTestInfoProvider.ABTestingEnabled(siteName))
        {
            this.pnlDisabled.Visible = true;
            this.lblABTestingDisabled.Text = GetString("abtesting.disabled");
        }

        listElem.ShowFilter = false;
        listElem.DelayedReload = true;
        listElem.Grid.GridName = "~/CMSModules/OnlineMarketing/Controls/UI/ABTest/ListWithValues.xml";

        lnkTestRate.NavigateUrl = "#";
        lnkTestValue.NavigateUrl = "#";
        lnkTestValue.Attributes["OnClick"] = "if (parent.parent.selectTreeNode != null) parent.parent.selectTreeNode('ABTest.ConversionsValue');parent.location=\"abtest_frameset.aspx?page=conversionsvalue&displayTab=abtesting.conversionsvalue\"";
        lnkTestRate.Attributes["OnClick"] = "if (parent.parent.selectTreeNode != null) parent.parent.selectTreeNode('ABTest.ConversionsRate');parent.location=\"abtest_frameset.aspx?page=conversionsrate&displayTab=abtesting.conversionrate\"";

        ucABTests.AllowAll = true;
        ucABTests.AllowEmpty = false;
        ucABTests.IsLiveSite = false;
        ucABTests.ReturnColumnName = "ABTestName";
        ucABTests.PostbackOnChange = true;
    }
Пример #23
0
    protected void Page_Load(object sender, EventArgs e)
    {
        CurrentUserInfo cui = CMSContext.CurrentUser;

        // Check UI Permissions
        if ((cui == null) || (!cui.IsAuthorizedPerUIElement("CMS.Content", "OnlineMarketing.MVTests")))
        {
            RedirectToCMSDeskUIElementAccessDenied("CMS.Content", "OnlineMarketing.MVTests");
        }

        reportHeader.ActionPerformed += HeaderActions_ActionPerformed;

        if (DataHelper.GetNotEmpty(URLHelper.GetCurrentDomain(), "") != "")
        {
            LicenseHelper.CheckFeatureAndRedirect(URLHelper.GetCurrentDomain(), FeatureEnum.MVTesting);
        }

        // Set disabled module info
        ucDisabledModule.SettingsKeys = "CMSAnalyticsEnabled;CMSMVTEnabled";
        ucDisabledModule.InfoTexts.Add(GetString("WebAnalytics.Disabled") + "</br>");
        ucDisabledModule.InfoTexts.Add(GetString("mvt.disabled"));
        ucDisabledModule.ParentPanel = pnlWarning;

        // Register actions
        ComponentEvents.RequestEvents.RegisterForEvent(ComponentEvents.SAVE, (s, args) => { Save(); });

        ucDisplayReport = this.LoadUserControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        pnlContent.Controls.Add((Control)ucDisplayReport);

        CurrentMaster.PanelContent.CssClass = "";
        UIHelper.AllowUpdateProgress        = false;

        // MVTest Info
        int        mvTestID = QueryHelper.GetInteger("mvTestID", 0);
        MVTestInfo mvInfo   = MVTestInfoProvider.GetMVTestInfo(mvTestID);

        if (mvInfo == null)
        {
            return;
        }

        // Load combination by current template ID and culture
        if (pnlCombination.Visible)
        {
            int nodeID = QueryHelper.GetInteger("NodeID", 0);

            // Create condition for current template combinations
            TreeProvider tree = new TreeProvider(cui);
            TreeNode     node = tree.SelectSingleNode(nodeID, cui.PreferredCultureCode);

            if (node != null)
            {
                usCombination.DocumentID     = node.DocumentID;
                usCombination.PageTemplateID = node.GetUsedPageTemplateId();
            }

            usCombination.ReloadData(true);
        }

        testName = mvInfo.MVTestName;

        ucGraphType.ProcessChartSelectors(false);

        // Enables/disables radio buttons (based on UI elements)
        CurrentUserInfo ui = CMSContext.CurrentUser;

        if (!RequestHelper.IsPostBack())
        {
            if (!ui.IsGlobalAdministrator)
            {
                rbCount.Enabled        = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "MVTestConversionCount");
                rbRate.Enabled         = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "MVTestConversionRate");
                rbValue.Enabled        = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "MVTestConversionValue");
                rbCombinations.Enabled = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "ConversionsByCombination");

                bool checkedButton = false;

                // Check first enabled button
                foreach (Control ctrl in pnlRadioButtons.Controls)
                {
                    RadioButton rb = ctrl as RadioButton;
                    if (rb != null)
                    {
                        if (rb.Enabled)
                        {
                            rb.Checked    = true;
                            checkedButton = true;
                            break;
                        }
                    }
                }

                // No report avaible -> redirect to access denied
                if (!checkedButton)
                {
                    RedirectToAccessDenied(GetString("mvtest.noreportavaible"));
                }
            }
            else
            {
                // Admin check first radio button
                rbCount.Checked = true;
            }
        }
    }
    protected void Page_Load(object sender, EventArgs e)
    {
        var cui = MembershipContext.AuthenticatedUser;

        reportHeader.ActionPerformed += HeaderActions_ActionPerformed;

        if (DataHelper.GetNotEmpty(RequestContext.CurrentDomain, "") != "")
        {
            LicenseHelper.CheckFeatureAndRedirect(RequestContext.CurrentDomain, FeatureEnum.MVTesting);
        }

        // Set disabled module info
        ucDisabledModule.SettingsKeys = "CMSAnalyticsEnabled;CMSMVTEnabled";
        ucDisabledModule.ParentPanel = pnlWarning;

        // Register actions
        ComponentEvents.RequestEvents.RegisterForEvent(ComponentEvents.SAVE, (s, args) => Save());

        mUcDisplayReport = (IDisplayReport)LoadUserControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx");
        pnlContent.Controls.Add((Control)mUcDisplayReport);

        CurrentMaster.PanelContent.CssClass = String.Empty;
        UIHelper.AllowUpdateProgress = false;

        // MVTest Info
        int mvTestID = QueryHelper.GetInteger("objectID", 0);
        MVTestInfo mvInfo = MVTestInfoProvider.GetMVTestInfo(mvTestID);
        if (mvInfo == null)
        {
            return;
        }

        // Load combination by current template ID and culture
        int nodeID = QueryHelper.GetInteger("NodeID", 0);

        if (nodeID > 0)
        {
            // Create condition for current template combinations
            TreeProvider tree = new TreeProvider(cui);
            TreeNode node = tree.SelectSingleNode(nodeID, LocalizationContext.PreferredCultureCode);

            if (node != null)
            {
                usCombination.DocumentID = node.DocumentID;
                usCombination.PageTemplateID = node.GetUsedPageTemplateId();
            }
        }
        else
        {
            rbCombinations.Visible = false;
        }

        usCombination.ReloadData(true);

        mTestName = mvInfo.MVTestName;

        ucGraphType.ProcessChartSelectors(false);

        // Enables/disables radio buttons (based on UI elements)
        var ui = MembershipContext.AuthenticatedUser;

        if (!RequestHelper.IsPostBack())
        {
            if (!ui.IsGlobalAdministrator)
            {
                bool checkedButton = false;

                // Check first enabled button
                foreach (Control ctrl in pnlRadioButtons.Controls)
                {
                    CMSRadioButton rb = ctrl as CMSRadioButton;
                    if (rb != null)
                    {
                        if (rb.Enabled)
                        {
                            rb.Checked = true;
                            checkedButton = true;
                            break;
                        }
                    }
                }

                // No report avaible -> redirect to access denied
                if (!checkedButton)
                {
                    RedirectToAccessDenied(GetString("mvtest.noreportavaible"));
                }
            }
            else
            {
                // Admin check first radio button
                rbCount.Checked = true;
            }
        }
    }
Пример #25
0
    protected void Page_Load(object sender, EventArgs e)
    {
        ucDisplayReport = this.LoadUserControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        reportHeader.ActionPerformed += HeaderActions_ActionPerformed;
        pnlContent.Controls.Add((Control)ucDisplayReport);

        // Set disabled module info
        ucDisabledModule.SettingsKeys = "CMSAnalyticsEnabled;CMSABTestingEnabled";
        ucDisabledModule.InfoTexts.Add(GetString("WebAnalytics.Disabled") + "</br>");
        ucDisabledModule.InfoTexts.Add(GetString("abtesting.disabled"));
        ucDisabledModule.ParentPanel = pnlWarning;

        CurrentMaster.PanelContent.CssClass = "";

        UIHelper.AllowUpdateProgress = false;

        // ABTest Info
        int        abTestID = QueryHelper.GetInteger("abtestid", 0);
        ABTestInfo abInfo   = ABTestInfoProvider.GetABTestInfo(abTestID);

        if (abInfo == null)
        {
            return;
        }

        siteName = CMSContext.CurrentSiteName;
        testName = abInfo.ABTestName;

        // Variants condition
        ucSelectVariation.WhereCondition = "ABVariantTestID  IN ( SELECT ABTestID FROM OM_ABTest WHERE ABTestName = N'" + testName + "')";
        ucGraphType.ProcessChartSelectors(false);

        // Enables/disables radio buttons (based on UI elements)
        CurrentUserInfo ui = CMSContext.CurrentUser;

        if (!RequestHelper.IsPostBack())
        {
            if (!ui.IsGlobalAdministrator)
            {
                rbCount.Enabled       = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "ABTest.ConversionsCount");
                rbRate.Enabled        = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "ABTest.ConversionsRate");
                rbValue.Enabled       = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "ABTest.ConversionsValue");
                rbSourcePages.Enabled = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "ABTest.ConversionsSourcePages");
                rbVariants.Enabled    = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "ABTest.ConversionsByVariations");

                bool checkedButton = false;

                // Check first enabled button
                foreach (Control ctrl in pnlRadios.Controls)
                {
                    RadioButton rb = ctrl as RadioButton;
                    if (rb != null)
                    {
                        if (rb.Enabled)
                        {
                            rb.Checked    = true;
                            checkedButton = true;
                            break;
                        }
                    }
                }

                // No report avaible -> redirect to access denied
                if (!checkedButton)
                {
                    RedirectToAccessDenied(GetString("abtest.noreportavaible"));
                }
            }
            else
            {
                // Admin check first radio button
                rbCount.Checked = true;
            }
        }
    }
    protected void Page_Load(object sender, EventArgs e)
    {
        ucDisplayReport = this.LoadUserControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        reportHeader.ActionPerformed += HeaderActions_ActionPerformed;
        pnlContent.Controls.Add((Control)ucDisplayReport);

        // Set disabled module info
        ucDisabledModule.SettingsKeys = "CMSAnalyticsEnabled;CMSABTestingEnabled";
        ucDisabledModule.InfoTexts.Add(GetString("WebAnalytics.Disabled") + "</br>");
        ucDisabledModule.InfoTexts.Add(GetString("abtesting.disabled"));
        ucDisabledModule.ParentPanel = pnlWarning;

        CurrentMaster.PanelContent.CssClass = "";

        UIHelper.AllowUpdateProgress = false;

        // ABTest Info
        int abTestID = QueryHelper.GetInteger("abtestid", 0);
        ABTestInfo abInfo = ABTestInfoProvider.GetABTestInfo(abTestID);
        if (abInfo == null)
        {
            return;
        }

        siteName = CMSContext.CurrentSiteName;
        testName = abInfo.ABTestName;

        // Variants condition
        ucSelectVariation.WhereCondition = "ABVariantTestID  IN ( SELECT ABTestID FROM OM_ABTest WHERE ABTestName = N'" + testName + "')";
        ucGraphType.ProcessChartSelectors(false);

        // Enables/disables radio buttons (based on UI elements)
        CurrentUserInfo ui = CMSContext.CurrentUser;

        if (!RequestHelper.IsPostBack())
        {
            if (!ui.IsGlobalAdministrator)
            {
                rbCount.Enabled = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "ABTest.ConversionsCount");
                rbRate.Enabled = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "ABTest.ConversionsRate");
                rbValue.Enabled = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "ABTest.ConversionsValue");
                rbSourcePages.Enabled = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "ABTest.ConversionsSourcePages");
                rbVariants.Enabled = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "ABTest.ConversionsByVariations");

                bool checkedButton = false;

                // Check first enabled button
                foreach (Control ctrl in pnlRadios.Controls)
                {
                    RadioButton rb = ctrl as RadioButton;
                    if (rb != null)
                    {
                        if (rb.Enabled)
                        {
                            rb.Checked = true;
                            checkedButton = true;
                            break;
                        }
                    }
                }

                // No report avaible -> redirect to access denied
                if (!checkedButton)
                {
                    RedirectToAccessDenied(GetString("abtest.noreportavaible"));
                }
            }
            else
            {
                // Admin check first radio button
                rbCount.Checked = true;
            }
        }
    }
    protected void Page_Load(object sender, EventArgs e)
    {
        CurrentMaster.PanelContent.CssClass = "";
        reportHeader.ActionPerformed += HeaderActions_ActionPerformed;

        mStatCodeName = QueryHelper.GetString("statCodeName", String.Empty);
        mDataCodeName = QueryHelper.GetString("dataCodeName", String.Empty);

        mUcDisplayReport = (IDisplayReport)LoadUserControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx");
        pnlDisplayReport.Controls.Add((Control)mUcDisplayReport);

        CheckWebAnalyticsUI(mDataCodeName);

        // Set disabled module info
        ucDisabledModule.SettingsKeys = "CMSAnalyticsEnabled;";
        ucDisabledModule.ParentPanel = pnlDisabled;

        PageTitle.TitleText = GetString("analytics_codename.campaign") + " - " + GetString("analytics_codename." + HTMLHelper.HTMLEncode(mStatCodeName));
    }
Пример #28
0
    protected void Page_Load(object sender, EventArgs e)
    {
        CurrentMaster.PanelContent.CssClass = "";
        UIHelper.AllowUpdateProgress        = false;

        // Display disabled information
        if (!AnalyticsHelper.AnalyticsEnabled(CMSContext.CurrentSiteName))
        {
            this.pnlDisabled.Visible = true;
            this.lblDisabled.Text    = ResHelper.GetString("WebAnalytics.Disabled");
        }

        ucDisplayReport = LoadControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        pnlDisplayReport.Controls.Add((Control)ucDisplayReport);

        // Text for menu buttons
        mSave       = GetString("general.save");
        mPrint      = GetString("Analytics_Report.Print");
        mDeleteData = GetString("Analytics_Report.ManageData");

        // Images for menu buttons
        imgSave.ImageUrl       = GetImageUrl("CMSModules/CMS_Content/EditMenu/save_small.png");
        imgPrint.ImageUrl      = GetImageUrl("General/printSmall.png");
        imgManageData.ImageUrl = GetImageUrl("CMSModules/CMS_Reporting/managedataSmall.png");

        dataCodeName    = QueryHelper.GetString("dataCodeName", String.Empty);
        reportCodeNames = QueryHelper.GetString("reportCodeName", String.Empty);

        // Control initialization (based on displayed report)
        switch (dataCodeName)
        {
        // Overview
        case "campaign":
            CheckWebAnalyticsUI("campaign.overview");
            ucReportHeader.CampaignAllowAll       = true;
            ucReportHeader.ShowConversionSelector = false;
            break;

        // Conversion count
        case "campconversioncount":
            dataCodeName = "campconversion";
            CheckWebAnalyticsUI("CampaignConversionCount");
            ucReportHeader.CampaignAllowAll = false;
            break;

        // Conversion value
        case "campconversionvalue":
            dataCodeName = "campconversion";
            CheckWebAnalyticsUI("campaignsConversionValue");
            ucReportHeader.CampaignAllowAll = false;
            break;

        // Campaign compare
        case "campaigncompare":
            CheckWebAnalyticsUI("CampaignCompare");
            ucReportHeader.ShowCampaignSelector = false;
            dataCodeName = ucReportHeader.CodeNameByGoal;
            ucReportHeader.ShowGoalSelector = true;
            ucReportHeader.ShowSiteSelector = true;

            // Get table column name
            string name = "analytics.hits";
            switch (ucReportHeader.SelectedGoal.ToLower())
            {
            case "view": name = "analytics.view"; break;

            case "count": name = "conversion.count"; break;

            case "value": name = "om.trackconversionvalue"; break;
            }

            string[,] dynamicMacros = new string[1, 2];
            dynamicMacros[0, 0]     = "ColumnName";
            dynamicMacros[0, 1]     = GetString(name);

            ucDisplayReport.DynamicMacros = dynamicMacros;
            break;

        // Campaign detail
        case "campaigndetails":
            CheckWebAnalyticsUI("CampaignDetails");
            ucReportHeader.ShowConversionSelector = false;
            String selectedCampaign = ValidationHelper.GetString(ucReportHeader.SelectedCampaign, String.Empty);
            reportCodeNames = (selectedCampaign == ucReportHeader.AllRecordValue || selectedCampaign == String.Empty) ? allDetailReport : singleDetailReport;
            ucGraphType.ShowIntervalSelector = false;
            allowNoTimeSelection             = true;
            ucGraphType.AllowEmptyDate       = true;
            break;
        }

        // Set table same first column width for all time
        ucDisplayReport.TableFirstColumnWidth = Unit.Percentage(20);

        // Check 'ManageData' permission
        if (CMSContext.CurrentUser.IsAuthorizedPerResource("CMS.WebAnalytics", "ManageData"))
        {
            this.lnkDeleteData.OnClientClick = "modalDialog('" +
                                               ResolveUrl("~/CMSModules/Reporting/WebAnalytics/Analytics_ManageData.aspx") +
                                               "?statcodename=campaigns', 'AnalyticsManageData'," + AnalyticsHelper.MANAGE_WINDOW_WIDTH + ", " + AnalyticsHelper.MANAGE_WINDOW_HEIGHT + "); return false; ";
            this.lnkDeleteData.Visible = true;
        }

        ScriptHelper.RegisterClientScriptBlock(this, typeof(string), "myModalDialog",
                                               ScriptHelper.GetScript("function myModalDialog(url, name, width, height) { " +
                                                                      "win = window; " +
                                                                      "var dHeight = height; var dWidth = width; " +
                                                                      "if (( document.all )&&(navigator.appName != 'Opera')) { " +
                                                                      "try { win = wopener.window; } catch (e) {} " +
                                                                      "if ( parseInt(navigator.appVersion.substr(22, 1)) < 7 ) { dWidth += 4; dHeight += 58; }; " +
                                                                      "dialog = win.showModalDialog(url, this, 'dialogWidth:' + dWidth + 'px;dialogHeight:' + dHeight + 'px;resizable:yes;scroll:yes'); " +
                                                                      "} else { " +
                                                                      "oWindow = win.open(url, name, 'height=' + dHeight + ',width=' + dWidth + ',toolbar=no,directories=no,menubar=no,modal=yes,dependent=yes,resizable=yes,scroll=yes,scrollbars=yes'); oWindow.opener = this; oWindow.focus(); } } "));
    }
    protected void Page_Load(object sender, EventArgs e)
    {
        CurrentUserInfo cui = CMSContext.CurrentUser;

        // Check UI Permissions
        if ((cui == null) || (!cui.IsAuthorizedPerUIElement("CMS.Content", "OnlineMarketing.MVTests")))
        {
            RedirectToCMSDeskUIElementAccessDenied("CMS.Content", "OnlineMarketing.MVTests");
        }

        reportHeader.ActionPerformed += HeaderActions_ActionPerformed;

        if (DataHelper.GetNotEmpty(URLHelper.GetCurrentDomain(), "") != "")
        {
            LicenseHelper.CheckFeatureAndRedirect(URLHelper.GetCurrentDomain(), FeatureEnum.MVTesting);
        }

        // Set disabled module info
        ucDisabledModule.SettingsKeys = "CMSAnalyticsEnabled;CMSMVTEnabled";
        ucDisabledModule.InfoTexts.Add(GetString("WebAnalytics.Disabled") + "</br>");
        ucDisabledModule.InfoTexts.Add(GetString("mvt.disabled"));
        ucDisabledModule.ParentPanel = pnlWarning;

        // Register actions
        ComponentEvents.RequestEvents.RegisterForEvent(ComponentEvents.SAVE, (s, args) => { Save(); });

        ucDisplayReport = this.LoadUserControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        pnlContent.Controls.Add((Control)ucDisplayReport);

        CurrentMaster.PanelContent.CssClass = "";
        UIHelper.AllowUpdateProgress = false;

        // MVTest Info
        int mvTestID = QueryHelper.GetInteger("mvTestID", 0);
        MVTestInfo mvInfo = MVTestInfoProvider.GetMVTestInfo(mvTestID);
        if (mvInfo == null)
        {
            return;
        }

        // Load combination by current template ID and culture
        if (pnlCombination.Visible)
        {
            int nodeID = QueryHelper.GetInteger("NodeID", 0);

            // Create condition for current template combinations
            TreeProvider tree = new TreeProvider(cui);
            TreeNode node = tree.SelectSingleNode(nodeID, cui.PreferredCultureCode);

            if (node != null)
            {
                usCombination.DocumentID = node.DocumentID;
                usCombination.PageTemplateID = node.GetUsedPageTemplateId();
            }

            usCombination.ReloadData(true);
        }

        testName = mvInfo.MVTestName;

        ucGraphType.ProcessChartSelectors(false);

        // Enables/disables radio buttons (based on UI elements)
        CurrentUserInfo ui = CMSContext.CurrentUser;

        if (!RequestHelper.IsPostBack())
        {
            if (!ui.IsGlobalAdministrator)
            {
                rbCount.Enabled = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "MVTestConversionCount");
                rbRate.Enabled = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "MVTestConversionRate");
                rbValue.Enabled = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "MVTestConversionValue");
                rbCombinations.Enabled = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "ConversionsByCombination");

                bool checkedButton = false;

                // Check first enabled button
                foreach (Control ctrl in pnlRadioButtons.Controls)
                {
                    RadioButton rb = ctrl as RadioButton;
                    if (rb != null)
                    {
                        if (rb.Enabled)
                        {
                            rb.Checked = true;
                            checkedButton = true;
                            break;
                        }
                    }
                }

                // No report avaible -> redirect to access denied
                if (!checkedButton)
                {
                    RedirectToAccessDenied(GetString("mvtest.noreportavaible"));
                }
            }
            else
            {
                // Admin check first radio button
                rbCount.Checked = true;
            }
        }
    }
 private void EnsureDisplayReport()
 {
     if (mUcDisplayReport == null)
     {
         mUcDisplayReport = (IDisplayReport)LoadUserControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx");
         divGraphArea.Controls.Add((Control)mUcDisplayReport);
     }
 }
Пример #31
0
    protected void Page_Load(object sender, EventArgs e)
    {
        var cui = MembershipContext.AuthenticatedUser;

        reportHeader.ActionPerformed += HeaderActions_ActionPerformed;

        if (DataHelper.GetNotEmpty(RequestContext.CurrentDomain, "") != "")
        {
            LicenseHelper.CheckFeatureAndRedirect(RequestContext.CurrentDomain, FeatureEnum.MVTesting);
        }

        // Set disabled module info
        ucDisabledModule.SettingsKeys = "CMSAnalyticsEnabled;CMSMVTEnabled";
        ucDisabledModule.ParentPanel  = pnlWarning;

        // Register actions
        ComponentEvents.RequestEvents.RegisterForEvent(ComponentEvents.SAVE, (s, args) => Save());

        mUcDisplayReport = (IDisplayReport)LoadUserControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx");
        pnlContent.Controls.Add((Control)mUcDisplayReport);

        CurrentMaster.PanelContent.CssClass = String.Empty;
        UIHelper.AllowUpdateProgress        = false;

        // MVTest Info
        int        mvTestID = QueryHelper.GetInteger("objectID", 0);
        MVTestInfo mvInfo   = MVTestInfoProvider.GetMVTestInfo(mvTestID);

        if (mvInfo == null)
        {
            return;
        }

        // Load combination by current template ID and culture
        int nodeID = QueryHelper.GetInteger("NodeID", 0);

        if (nodeID > 0)
        {
            // Create condition for current template combinations
            TreeProvider tree = new TreeProvider(cui);
            TreeNode     node = tree.SelectSingleNode(nodeID, LocalizationContext.PreferredCultureCode);

            if (node != null)
            {
                usCombination.DocumentID     = node.DocumentID;
                usCombination.PageTemplateID = node.GetUsedPageTemplateId();
            }
        }
        else
        {
            rbCombinations.Visible = false;
        }

        usCombination.ReloadData(true);

        mTestName = mvInfo.MVTestName;

        ucGraphType.ProcessChartSelectors(false);

        // Enables/disables radio buttons (based on UI elements)
        var ui = MembershipContext.AuthenticatedUser;

        if (!RequestHelper.IsPostBack())
        {
            if (!ui.IsGlobalAdministrator)
            {
                bool checkedButton = false;

                // Check first enabled button
                foreach (Control ctrl in pnlRadioButtons.Controls)
                {
                    CMSRadioButton rb = ctrl as CMSRadioButton;
                    if (rb != null)
                    {
                        if (rb.Enabled)
                        {
                            rb.Checked    = true;
                            checkedButton = true;
                            break;
                        }
                    }
                }

                // No report avaible -> redirect to access denied
                if (!checkedButton)
                {
                    RedirectToAccessDenied(GetString("mvtest.noreportavaible"));
                }
            }
            else
            {
                // Admin check first radio button
                rbCount.Checked = true;
            }
        }
    }
    protected void Page_Load(object sender, EventArgs e)
    {
        CheckWebAnalyticsUI("ABTest.Overview");

        ucDisplayReport = this.LoadUserControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        pnlOverview.Controls.Add((Control)ucDisplayReport);

        ucConversionRateReport = this.LoadUserControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        pnlConversionRate.Controls.Add((Control)ucConversionRateReport);

        ucTestValuesReport = this.LoadUserControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        pnlConversionValue.Controls.Add((Control)ucTestValuesReport);

        listElem.ShowObjectMenu = false;
        CurrentMaster.PanelContent.CssClass = "";
        String siteName = CMSContext.CurrentSiteName;
        UIHelper.AllowUpdateProgress = false;

        // Set disabled module info
        ucDisabledModule.SettingsKeys = "CMSAnalyticsEnabled;CMSABTestingEnabled";
        ucDisabledModule.InfoTexts.Add(GetString("WebAnalytics.Disabled") + "</br>");
        ucDisabledModule.InfoTexts.Add(GetString("abtesting.disabled"));
        ucDisabledModule.ParentPanel = pnlDisabled;

        listElem.ShowFilter = false;
        listElem.DelayedReload = true;
        listElem.Grid.GridName = "~/CMSModules/OnlineMarketing/Controls/UI/ABTest/ListWithValues.xml";

        lnkTestRate.NavigateUrl = "#";
        lnkTestValue.NavigateUrl = "#";
        lnkTestValue.Attributes["OnClick"] = "if (parent.parent.selectTreeNode != null) parent.parent.selectTreeNode('#node_abtestconversionsvalue');parent.location=\"abtest_frameset.aspx?page=conversionsvalue&displayTab=abtesting.conversionsvalue\"";
        lnkTestRate.Attributes["OnClick"] = "if (parent.parent.selectTreeNode != null) parent.parent.selectTreeNode('#node_abtestconversionsrate');parent.location=\"abtest_frameset.aspx?page=conversionsrate&displayTab=abtesting.conversionrate\"";

        ucABTests.AllowAll = true;
        ucABTests.AllowEmpty = false;
        ucABTests.IsLiveSite = false;
        ucABTests.ReturnColumnName = "ABTestName";
        ucABTests.PostbackOnChange = true;
    }
Пример #33
0
    protected void Page_Load(object sender, EventArgs e)
    {
        ucDisplayReport = LoadControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        pnlContent.Controls.Add((Control)ucDisplayReport);

        CurrentMaster.PanelContent.CssClass = "";
        UIHelper.AllowUpdateProgress        = false;

        // ABTest Info
        int        abTestID = QueryHelper.GetInteger("abtestid", 0);
        ABTestInfo abInfo   = ABTestInfoProvider.GetABTestInfo(abTestID);

        if (abInfo == null)
        {
            return;
        }

        String siteName = CMSContext.CurrentSiteName;

        // Display disabled information
        if (!AnalyticsHelper.AnalyticsEnabled(siteName))
        {
            this.pnlWarning.Visible = true;
            this.lblWAWarning.Text  = GetString("WebAnalytics.Disabled") + "<br/>";
        }

        if (!ABTestInfoProvider.ABTestingEnabled(siteName))
        {
            this.pnlWarning.Visible = true;
            this.lblABWarning.Text  = GetString("abtesting.disabled");
        }

        testName = abInfo.ABTestName;

        // Variants condition
        ucSelectVariation.WhereCondition = "ABVariantTestID  IN ( SELECT ABTestID FROM OM_ABTest WHERE ABTestName = N'" + testName + "')";

        // Text for menu
        mSave       = GetString("general.save");
        mPrint      = GetString("Analytics_Report.Print");
        mDeleteData = GetString("Analytics_Report.ManageData");

        // Images for menu buttons
        imgSave.ImageUrl       = GetImageUrl("CMSModules/CMS_Content/EditMenu/save_small.png");
        imgPrint.ImageUrl      = GetImageUrl("General/printSmall.png");
        imgManageData.ImageUrl = GetImageUrl("CMSModules/CMS_Reporting/managedataSmall.png");

        // Check 'ManageData' permission
        if (CMSContext.CurrentUser.IsAuthorizedPerResource("CMS.WebAnalytics", "ManageData"))
        {
            this.lnkDeleteData.OnClientClick = "modalDialog('" +
                                               ResolveUrl("~/CMSModules/Reporting/WebAnalytics/Analytics_ManageData.aspx") +
                                               "?statcodename=abconversion;" + testName + ";%', 'AnalyticsManageData', " + AnalyticsHelper.MANAGE_WINDOW_WIDTH + ", " + AnalyticsHelper.MANAGE_WINDOW_HEIGHT + "); return false; ";
            this.lnkDeleteData.Visible = true;
        }

        ScriptHelper.RegisterClientScriptBlock(this, typeof(string), "myModalDialog",
                                               ScriptHelper.GetScript("function myModalDialog(url, name, width, height) { " +
                                                                      "win = window; " +
                                                                      "var dHeight = height; var dWidth = width; " +
                                                                      "if (( document.all )&&(navigator.appName != 'Opera')) { " +
                                                                      "try { win = wopener.window; } catch (e) {} " +
                                                                      "if ( parseInt(navigator.appVersion.substr(22, 1)) < 7 ) { dWidth += 4; dHeight += 58; }; " +
                                                                      "dialog = win.showModalDialog(url, this, 'dialogWidth:' + dWidth + 'px;dialogHeight:' + dHeight + 'px;resizable:yes;scroll:yes'); " +
                                                                      "} else { " +
                                                                      "oWindow = win.open(url, name, 'height=' + dHeight + ',width=' + dWidth + ',toolbar=no,directories=no,menubar=no,modal=yes,dependent=yes,resizable=yes,scroll=yes,scrollbars=yes'); oWindow.opener = this; oWindow.focus(); } } "));

        ucGraphType.ProcessChartSelectors(false);

        // Enables/disables radio buttons (based on UI elements)
        CurrentUserInfo ui = CMSContext.CurrentUser;

        if (!RequestHelper.IsPostBack())
        {
            if (!ui.IsGlobalAdministrator)
            {
                rbCount.Enabled       = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "ABTest.ConversionsCount");
                rbRate.Enabled        = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "ABTest.ConversionsRate");
                rbValue.Enabled       = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "ABTest.ConversionsValue");
                rbSourcePages.Enabled = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "ABTest.ConversionsSourcePages");
                rbVariants.Enabled    = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "ABTest.ConversionsByVariations");

                bool checkedButton = false;

                // Check first enabled button
                foreach (Control ctrl in pnlRadios.Controls)
                {
                    RadioButton rb = ctrl as RadioButton;
                    if (rb != null)
                    {
                        if (rb.Enabled)
                        {
                            rb.Checked    = true;
                            checkedButton = true;
                            break;
                        }
                    }
                }

                // No report avaible -> redirect to access denied
                if (!checkedButton)
                {
                    RedirectToAccessDenied(GetString("abtest.noreportavaible"));
                }
            }
            else
            {
                // Admin check first radio button
                rbCount.Checked = true;
            }
        }
    }
Пример #34
0
    protected void Page_Load(object sender, EventArgs e)
    {
        reportHeaderActions.ActionPerformed += HeaderActions_ActionPerformed;
        mUcDisplayReport = (IDisplayReport)LoadUserControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx");
        pnlContent.Controls.Add((Control)mUcDisplayReport);

        CurrentMaster.PanelContent.CssClass = string.Empty;
        UIHelper.AllowUpdateProgress        = false;
        ScriptHelper.RegisterDialogScript(Page);

        // Campaign Info
        mCampaignInfo = EditedObject as CampaignInfo;
        if (mCampaignInfo == null)
        {
            return;
        }

        // Validate SiteID for non administrators
        if (!MembershipContext.AuthenticatedUser.IsGlobalAdministrator)
        {
            if (mCampaignInfo.CampaignSiteID != SiteContext.CurrentSiteID)
            {
                RedirectToAccessDenied(GetString("cmsmessages.accessdenied"));
            }
        }

        mCampaignName = mCampaignInfo.CampaignName;

        ucGraphType.ProcessChartSelectors(false);

        // Enables/disables radio buttons (based on UI elements)
        var  ui            = MembershipContext.AuthenticatedUser;
        bool checkedButton = false;

        if (!RequestHelper.IsPostBack())
        {
            if (!ui.IsGlobalAdministrator)
            {
                rbCount.Enabled           = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "CampaignConversionCount");
                rbDetail.Enabled          = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "CampaignDetails");
                rbGoalCount.Enabled       = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "goals.numberofconversions");
                rbGoalValue.Enabled       = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "goals.totalvalueofconversions");
                rbGoalView.Enabled        = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "goals.numberofvisitors");
                rbValue.Enabled           = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "campaignsConversionValue");
                rbValuePerVisitor.Enabled = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "valuepervisitor");
                rbViews.Enabled           = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "campaign.overview");

                // Check first enabled button
                foreach (Control ctrl in pnlRadios.Controls)
                {
                    CMSRadioButton rb = ctrl as CMSRadioButton;
                    if (rb != null)
                    {
                        if (rb.Enabled)
                        {
                            rb.Checked    = true;
                            checkedButton = true;
                            break;
                        }
                    }
                }

                // No report avaible -> redirect to access denied
                if (!checkedButton)
                {
                    RedirectToAccessDenied(GetString("campaign.noreportavaible"));
                }
            }
            else
            {
                // Admin check first radio button
                rbViews.Checked = true;
            }
        }
    }
Пример #35
0
    protected override void OnPreRender(EventArgs e)
    {
        CurrentUserInfo ui = CMSContext.CurrentUser;

        if (!ui.IsAuthorizedPerUIElement("CMS.Content", "Reports"))
        {
            RedirectToCMSDeskUIElementAccessDenied("CMS.Content", "Reports");
        }

        // Check read for web analytics
        if (!ui.IsAuthorizedPerResource("cms.webanalytics", "Read"))
        {
            RedirectToAccessDenied(String.Format(GetString("general.permissionresource"), "Read", "Web analytics"));
        }

        // Display disabled information
        if (!AnalyticsHelper.AnalyticsEnabled(CMSContext.CurrentSiteName))
        {
            this.pnlWarning.Visible = true;
            this.lblWarning.Text    = ResHelper.GetString("WebAnalytics.Disabled");
        }

        ucDisplayReport = LoadControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        pnlContent.Controls.Add((Control)ucDisplayReport);


        // Check read permission for node
        int          nodeID = QueryHelper.GetInteger("nodeid", 0);
        TreeProvider tree   = new TreeProvider(CMSContext.CurrentUser);
        TreeNode     node   = tree.SelectSingleNode(nodeID, CMSContext.PreferredCultureCode, tree.CombineWithDefaultCulture);

        if (ui.IsAuthorizedPerDocument(node, NodePermissionsEnum.Read) == AuthorizationResultEnum.Denied)
        {
            RedirectToAccessDenied(String.Format(GetString("cmsdesk.notauthorizedtoreaddocument"), node.NodeAliasPath));
        }

        ucGraphType.ProcessChartSelectors(false);
        CurrentMaster.PanelContent.CssClass = String.Empty;
        UIHelper.AllowUpdateProgress        = false;

        // General report data
        ucDisplayReport.ReportName            = rbContent.Checked ? "pagereports.content" : "pagereports.Traffic";
        ucDisplayReport.LoadFormParameters    = false;
        ucDisplayReport.DisplayFilter         = false;
        ucDisplayReport.GraphImageWidth       = 100;
        ucDisplayReport.IgnoreWasInit         = true;
        ucDisplayReport.TableFirstColumnWidth = Unit.Percentage(30);
        ucDisplayReport.UseExternalReload     = true;
        ucDisplayReport.UseProgressIndicator  = true;

        ucDisplayReport.SetDefaultDynamicMacros((int)ucGraphType.SelectedInterval);

        // Resolve report macros
        DataTable dtp = new DataTable();

        dtp.Columns.Add("FromDate", typeof(DateTime));
        dtp.Columns.Add("ToDate", typeof(DateTime));
        dtp.Columns.Add("CodeName", typeof(string));
        dtp.Columns.Add("NodeID", typeof(int));
        dtp.Columns.Add("CultureCode", typeof(string));

        object[] parameters = new object[5];
        parameters[0] = ucGraphType.From;
        parameters[1] = ucGraphType.To;
        parameters[2] = "pageviews";
        parameters[3] = nodeID;
        parameters[4] = CMSContext.PreferredCultureCode;

        dtp.Rows.Add(parameters);
        dtp.AcceptChanges();
        ucDisplayReport.ReportParameters = dtp.Rows[0];

        ucDisplayReport.ReloadData(true);

        base.OnPreRender(e);
    }
Пример #36
0
    protected void Page_Load(object sender, EventArgs e)
    {
        ucDisplayReport = LoadControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        pnlContent.Controls.Add((Control)ucDisplayReport);

        CurrentMaster.PanelContent.CssClass = "";
        UIHelper.AllowUpdateProgress = false;
        ScriptHelper.RegisterDialogScript(Page);

        // Campaign Info
        int campaignID = QueryHelper.GetInteger("campaignID", 0);
        campaignInfo = CampaignInfoProvider.GetCampaignInfo(campaignID);
        if (campaignInfo == null)
        {
            return;
        }

        // Validate SiteID for non administrators
        if (!CMSContext.CurrentUser.IsGlobalAdministrator)
        {
            if (campaignInfo.CampaignSiteID != CMSContext.CurrentSiteID)
            {
                RedirectToAccessDenied(GetString("cmsmessages.accessdenied"));
            }
        }

        campaignName = campaignInfo.CampaignName;

        // Text for menu
        mSave = GetString("general.save");
        mPrint = GetString("Analytics_Report.Print");
        mDeleteData = GetString("Analytics_Report.ManageData");

        // Images for menu buttons
        imgSave.ImageUrl = GetImageUrl("CMSModules/CMS_Content/EditMenu/save_small.png");
        imgPrint.ImageUrl = GetImageUrl("General/printSmall.png");
        imgManageData.ImageUrl = GetImageUrl("CMSModules/CMS_Reporting/managedataSmall.png");

        // Check 'ManageData' permission
        if (CMSContext.CurrentUser.IsAuthorizedPerResource("CMS.WebAnalytics", "ManageData"))
        {
            this.lnkDeleteData.OnClientClick = "modalDialog('" +
                ResolveUrl("~/CMSModules/Reporting/WebAnalytics/Analytics_ManageData.aspx") +
                    "?statcodename=singlecampaign;" + campaignName + "', 'AnalyticsManageData', " + AnalyticsHelper.MANAGE_WINDOW_WIDTH + ", " + AnalyticsHelper.MANAGE_WINDOW_HEIGHT + "); return false; ";
            this.lnkDeleteData.Visible = true;
        }

        ScriptHelper.RegisterClientScriptBlock(this, typeof(string), "myModalDialog",
        ScriptHelper.GetScript("function myModalDialog(url, name, width, height) { " +
            "win = window; " +
            "var dHeight = height; var dWidth = width; " +
            "if (( document.all )&&(navigator.appName != 'Opera')) { " +
            "try { win = wopener.window; } catch (e) {} " +
            "if ( parseInt(navigator.appVersion.substr(22, 1)) < 7 ) { dWidth += 4; dHeight += 58; }; " +
            "dialog = win.showModalDialog(url, this, 'dialogWidth:' + dWidth + 'px;dialogHeight:' + dHeight + 'px;resizable:yes;scroll:yes'); " +
            "} else { " +
            "oWindow = win.open(url, name, 'height=' + dHeight + ',width=' + dWidth + ',toolbar=no,directories=no,menubar=no,modal=yes,dependent=yes,resizable=yes,scroll=yes,scrollbars=yes'); oWindow.opener = this; oWindow.focus(); } } "));

        ucGraphType.ProcessChartSelectors(false);

        // Enables/disables radio buttons (based on UI elements)
        CurrentUserInfo ui = CMSContext.CurrentUser;
        bool checkedButton = false;

        if (!RequestHelper.IsPostBack())
        {
            if (!ui.IsGlobalAdministrator)
            {
                rbCount.Enabled = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "CampaignConversionCount");
                rbDetail.Enabled = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "CampaignDetails");
                rbGoalCount.Enabled = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "goals.numberofconversions");
                rbGoalValue.Enabled = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "goals.totalvalueofconversions");
                rbGoalView.Enabled = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "goals.numberofvisitors");
                rbValue.Enabled = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "campaignsConversionValue");
                rbValuePerVisitor.Enabled = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "valuepervisitor");
                rbViews.Enabled = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "campaign.overview");

                // Check first enabled button
                foreach (Control ctrl in pnlRadios.Controls)
                {
                    RadioButton rb = ctrl as RadioButton;
                    if (rb != null)
                    {
                        if (rb.Enabled)
                        {
                            rb.Checked = true;
                            checkedButton = true;
                            break;
                        }
                    }
                }

                // No report avaible -> redirect to access denied
                if (!checkedButton)
                {
                    RedirectToAccessDenied(GetString("campaign.noreportavaible"));
                }
            }
            else
            {
                // Admin check first radio button
                rbViews.Checked = true;
            }
        }
    }
    protected void Page_Load(object sender, EventArgs e)
    {
        CurrentMaster.PanelContent.CssClass = "";
        reportHeader.ActionPerformed += HeaderActions_ActionPerformed;

        statCodeName = QueryHelper.GetString("statCodeName", String.Empty);
        dataCodeName = QueryHelper.GetString("dataCodeName", String.Empty);

        ucDisplayReport = this.LoadUserControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        pnlDisplayReport.Controls.Add((Control)ucDisplayReport);

        CheckWebAnalyticsUI(dataCodeName);

        // Set disabled module info
        ucDisabledModule.SettingsKeys = "CMSAnalyticsEnabled;";
        ucDisabledModule.InfoText = GetString("WebAnalytics.Disabled");
        ucDisabledModule.ParentPanel = pnlDisabled;

        CurrentMaster.Title.TitleText = GetString("analytics_codename.campaign") + " - " + GetString("analytics_codename." + statCodeName);

        // Icon
        string iconName = QueryHelper.GetString("icon", String.Empty);
        string imageUrl = GetImageUrl("CMSModules/CMS_WebAnalytics/Details/" + iconName + ".png");

        if (!FileHelper.FileExists(imageUrl))
        {
            imageUrl = GetImageUrl("Objects/Reporting_ReportCategory/object.png");
        }

        CurrentMaster.Title.TitleImage = imageUrl;
        CurrentMaster.Title.HelpTopicName = Server.UrlEncode(statCodeName).Replace(".", "_");
    }
Пример #38
0
    protected void Page_Load(object sender, EventArgs e)
    {
        CheckWebAnalyticsUI("MVT.Overview");
        String siteName = CMSContext.CurrentSiteName;
        CurrentMaster.PanelContent.CssClass = "";

        ucDisplayReport = LoadControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        pnlOverview.Controls.Add((Control)ucDisplayReport);

        ucConversionRateReport = LoadControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        pnlConversionRate.Controls.Add((Control)ucConversionRateReport);

        ucTestValuesReport = LoadControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        pnlConversionValue.Controls.Add((Control)ucTestValuesReport);

        // Display disabled information
        if (!AnalyticsHelper.AnalyticsEnabled(siteName))
        {
            this.pnlDisabled.Visible = true;
            this.lblDisabled.Text = GetString("WebAnalytics.Disabled") + "<br/>";
        }

        if (!MVTestInfoProvider.MVTestingEnabled(siteName))
        {
            this.pnlDisabled.Visible = true;
            this.lblMVTestingDisabled.Text = GetString("mvt.disabled");
        }

        listElem.DelayedReload = true;
        listElem.Grid.GridName = "~/CMSModules/OnlineMarketing/Controls/UI/MVTest/ListWithValues.xml";
        listElem.Grid.Columns = "MVTestDisplayName,MVTestID,MVTestCulture,MVTestPage,MVTestOpenFrom,MVTestOpenTo,MVTestEnabled,MVTestConversions,MVTestSiteID,HitsValue";
        listElem.ApplyTimeCondition = false;

        lnkTestRate.NavigateUrl = "#";
        lnkTestValue.NavigateUrl = "#";
        lnkTestValue.Attributes["OnClick"] = "if (parent.parent.selectTreeNode != null) parent.parent.selectTreeNode('MVTestConversionValue');parent.location=\"frameset.aspx?page=mvtreport&displayTab=abtesting.conversionsvalue&reportCodeName=mvtestconversionvalue.yearreport;mvtestconversionvalue.monthreport;mvtestconversionvalue.weekreport;mvtestconversionvalue.dayreport;mvtestconversionvalue.hourreport\"";
        lnkTestRate.Attributes["OnClick"] = "if (parent.parent.selectTreeNode != null) parent.parent.selectTreeNode('MVTestConversionRate');parent.location=\"frameset.aspx?page=mvtreport&displayTab=mvtest.conversionrate&reportCodeName=mvtestconversionrate.yearreport;mvtestconversionrate.monthreport;mvtestconversionrate.weekreport;mvtestconversionrate.dayreport;mvtestconversionrate.hourreport\"";

        ucMVTests.AllowAll = true;
        ucMVTests.AllowEmpty = false;
        ucMVTests.IsLiveSite = false;
        ucMVTests.ReturnColumnName = "MVTestName";
        ucMVTests.PostbackOnChange = true;
    }
Пример #39
0
    protected override void OnPreRender(EventArgs e)
    {
        CurrentUserInfo ui = CMSContext.CurrentUser;
        if (!ui.IsAuthorizedPerUIElement("CMS.Content", "Reports"))
        {
            RedirectToCMSDeskUIElementAccessDenied("CMS.Content", "Reports");
        }

        // Check read for web analytics
        if (!ui.IsAuthorizedPerResource("cms.webanalytics", "Read"))
        {
            RedirectToAccessDenied(String.Format(GetString("general.permissionresource"), "Read", "Web analytics"));
        }

        // Display disabled information
        if (!AnalyticsHelper.AnalyticsEnabled(CMSContext.CurrentSiteName))
        {
            this.pnlWarning.Visible = true;
            this.lblWarning.Text = ResHelper.GetString("WebAnalytics.Disabled");
        }

        ucDisplayReport = LoadControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        pnlContent.Controls.Add((Control)ucDisplayReport);

        // Check read permission for node
        int nodeID = QueryHelper.GetInteger("nodeid", 0);
        TreeProvider tree = new TreeProvider(CMSContext.CurrentUser);
        TreeNode node = tree.SelectSingleNode(nodeID, CMSContext.PreferredCultureCode, tree.CombineWithDefaultCulture);

        if (ui.IsAuthorizedPerDocument(node, NodePermissionsEnum.Read) == AuthorizationResultEnum.Denied)
        {
            RedirectToAccessDenied(String.Format(GetString("cmsdesk.notauthorizedtoreaddocument"), node.NodeAliasPath));
        }

        ucGraphType.ProcessChartSelectors(false);
        CurrentMaster.PanelContent.CssClass = String.Empty;
        UIHelper.AllowUpdateProgress = false;

        // General report data
        ucDisplayReport.ReportName = rbContent.Checked ? "pagereports.content" : "pagereports.Traffic";
        ucDisplayReport.LoadFormParameters = false;
        ucDisplayReport.DisplayFilter = false;
        ucDisplayReport.GraphImageWidth = 100;
        ucDisplayReport.IgnoreWasInit = true;
        ucDisplayReport.TableFirstColumnWidth = Unit.Percentage(30);
        ucDisplayReport.UseExternalReload = true;
        ucDisplayReport.UseProgressIndicator = true;

        ucDisplayReport.SetDefaultDynamicMacros((int)ucGraphType.SelectedInterval);

        // Resolve report macros
        DataTable dtp = new DataTable();
        dtp.Columns.Add("FromDate", typeof(DateTime));
        dtp.Columns.Add("ToDate", typeof(DateTime));
        dtp.Columns.Add("CodeName", typeof(string));
        dtp.Columns.Add("NodeID", typeof(int));
        dtp.Columns.Add("CultureCode", typeof(string));

        object[] parameters = new object[5];
        parameters[0] = ucGraphType.From;
        parameters[1] = ucGraphType.To;
        parameters[2] = "pageviews";
        parameters[3] = nodeID;
        parameters[4] = CMSContext.PreferredCultureCode;

        dtp.Rows.Add(parameters);
        dtp.AcceptChanges();
        ucDisplayReport.ReportParameters = dtp.Rows[0];

        ucDisplayReport.ReloadData(true);

        base.OnPreRender(e);
    }
Пример #40
0
    protected void Page_Load(object sender, EventArgs e)
    {
        CurrentMaster.PanelContent.CssClass = "";
        UIHelper.AllowUpdateProgress = false;

        // Display disabled information
        if (!AnalyticsHelper.AnalyticsEnabled(CMSContext.CurrentSiteName))
        {
            this.pnlDisabled.Visible = true;
            this.lblDisabled.Text = ResHelper.GetString("WebAnalytics.Disabled");
        }

        ucDisplayReport = LoadControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        pnlDisplayReport.Controls.Add((Control)ucDisplayReport);

        // Text for menu buttons
        mSave = GetString("general.save");
        mPrint = GetString("Analytics_Report.Print");
        mDeleteData = GetString("Analytics_Report.ManageData");

        // Images for menu buttons
        imgSave.ImageUrl = GetImageUrl("CMSModules/CMS_Content/EditMenu/save_small.png");
        imgPrint.ImageUrl = GetImageUrl("General/printSmall.png");
        imgManageData.ImageUrl = GetImageUrl("CMSModules/CMS_Reporting/managedataSmall.png");

        dataCodeName = QueryHelper.GetString("dataCodeName", String.Empty);
        reportCodeNames = QueryHelper.GetString("reportCodeName", String.Empty);

        // Control initialization (based on displayed report)
        switch (dataCodeName)
        {
            // Overview
            case "campaign":
                CheckWebAnalyticsUI("campaign.overview");
                ucReportHeader.CampaignAllowAll = true;
                ucReportHeader.ShowConversionSelector = false;
                break;

            // Conversion count
            case "campconversioncount":
                dataCodeName = "campconversion";
                CheckWebAnalyticsUI("CampaignConversionCount");
                ucReportHeader.CampaignAllowAll = false;
                break;

            // Conversion value
            case "campconversionvalue":
                dataCodeName = "campconversion";
                CheckWebAnalyticsUI("campaignsConversionValue");
                ucReportHeader.CampaignAllowAll = false;
                break;

            // Campaign compare
            case "campaigncompare":
                CheckWebAnalyticsUI("CampaignCompare");
                ucReportHeader.ShowCampaignSelector = false;
                dataCodeName = ucReportHeader.CodeNameByGoal;
                ucReportHeader.ShowGoalSelector = true;
                ucReportHeader.ShowSiteSelector = true;

                // Get table column name
                string name = "analytics.hits";
                switch (ucReportHeader.SelectedGoal.ToLower())
                {
                    case "view": name = "analytics.view"; break;
                    case "count": name = "conversion.count"; break;
                    case "value": name = "om.trackconversionvalue"; break;
                }

                string[,] dynamicMacros = new string[1, 2];
                dynamicMacros[0, 0] = "ColumnName";
                dynamicMacros[0, 1] = GetString(name);

                ucDisplayReport.DynamicMacros = dynamicMacros;
                break;

            // Campaign detail
            case "campaigndetails":
                CheckWebAnalyticsUI("CampaignDetails");
                ucReportHeader.ShowConversionSelector = false;
                String selectedCampaign = ValidationHelper.GetString(ucReportHeader.SelectedCampaign, String.Empty);
                reportCodeNames = (selectedCampaign == ucReportHeader.AllRecordValue || selectedCampaign == String.Empty) ? allDetailReport : singleDetailReport;
                ucGraphType.ShowIntervalSelector = false;
                allowNoTimeSelection = true;
                ucGraphType.AllowEmptyDate = true;
                break;
        }

        // Set table same first column width for all time
        ucDisplayReport.TableFirstColumnWidth = Unit.Percentage(20);

        // Check 'ManageData' permission
        if (CMSContext.CurrentUser.IsAuthorizedPerResource("CMS.WebAnalytics", "ManageData"))
        {
            this.lnkDeleteData.OnClientClick = "modalDialog('" +
            ResolveUrl("~/CMSModules/Reporting/WebAnalytics/Analytics_ManageData.aspx") +
            "?statcodename=campaigns', 'AnalyticsManageData'," + AnalyticsHelper.MANAGE_WINDOW_WIDTH + ", " + AnalyticsHelper.MANAGE_WINDOW_HEIGHT + "); return false; ";
            this.lnkDeleteData.Visible = true;
        }

        ScriptHelper.RegisterClientScriptBlock(this, typeof(string), "myModalDialog",
                ScriptHelper.GetScript("function myModalDialog(url, name, width, height) { " +
                    "win = window; " +
                    "var dHeight = height; var dWidth = width; " +
                    "if (( document.all )&&(navigator.appName != 'Opera')) { " +
                    "try { win = wopener.window; } catch (e) {} " +
                    "if ( parseInt(navigator.appVersion.substr(22, 1)) < 7 ) { dWidth += 4; dHeight += 58; }; " +
                    "dialog = win.showModalDialog(url, this, 'dialogWidth:' + dWidth + 'px;dialogHeight:' + dHeight + 'px;resizable:yes;scroll:yes'); " +
                    "} else { " +
                    "oWindow = win.open(url, name, 'height=' + dHeight + ',width=' + dWidth + ',toolbar=no,directories=no,menubar=no,modal=yes,dependent=yes,resizable=yes,scroll=yes,scrollbars=yes'); oWindow.opener = this; oWindow.focus(); } } "));
    }
Пример #41
0
    protected void Page_Load(object sender, EventArgs e)
    {
        // Check UI Permissions
        if ((CMSContext.CurrentUser == null) || (!CMSContext.CurrentUser.IsAuthorizedPerUIElement("CMS.Content", "OnlineMarketing.MVTests")))
        {
            RedirectToCMSDeskUIElementAccessDenied("CMS.Content", "OnlineMarketing.MVTests");
        }

        if (DataHelper.GetNotEmpty(URLHelper.GetCurrentDomain(), "") != "")
        {
            LicenseHelper.CheckFeatureAndRedirect(URLHelper.GetCurrentDomain(), FeatureEnum.MVTesting);
        }

        // Check features and display warning
        String siteName = CMSContext.CurrentSiteName;
        if (!AnalyticsHelper.AnalyticsEnabled(siteName))
        {
            this.pnlWarning.Visible = true;
            this.lblWAWarning.Text = GetString("WebAnalytics.Disabled") + "<br/>";
        }

        if (!MVTestInfoProvider.MVTestingEnabled(siteName))
        {
            this.pnlWarning.Visible = true;
            this.lblMVWarning.Text = GetString("mvt.disabled");
        }

        ucDisplayReport = LoadControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        pnlContent.Controls.Add((Control)ucDisplayReport);

        CurrentMaster.PanelContent.CssClass = "";
        UIHelper.AllowUpdateProgress = false;

        // MVTest Info
        int mvTestID = QueryHelper.GetInteger("mvTestID", 0);
        MVTestInfo mvInfo = MVTestInfoProvider.GetMVTestInfo(mvTestID);
        if (mvInfo == null)
        {
            return;
        }

        // Load combination by current template ID and culture
        if (pnlCombination.Visible)
        {
            int nodeID = QueryHelper.GetInteger("NodeID", 0);

            CurrentUserInfo cui = CMSContext.CurrentUser;

            // Create condition for current template combinations
            TreeProvider tree = new TreeProvider(cui);
            TreeNode node = tree.SelectSingleNode(nodeID, cui.PreferredCultureCode);

            if (node != null)
            {
                usCombination.DocumentID = node.DocumentID;
                usCombination.PageTemplateID = node.DocumentPageTemplateID;
            }

            usCombination.ReloadData(true);
        }

        testName = mvInfo.MVTestName;

        // Text for menu
        mSave = GetString("general.save");
        mPrint = GetString("Analytics_Report.Print");
        mDeleteData = GetString("Analytics_Report.ManageData");

        // Images for menu buttons
        imgSave.ImageUrl = GetImageUrl("CMSModules/CMS_Content/EditMenu/save_small.png");
        imgPrint.ImageUrl = GetImageUrl("General/printSmall.png");
        imgManageData.ImageUrl = GetImageUrl("CMSModules/CMS_Reporting/managedataSmall.png");

        // Check 'ManageData' permission
        if (CMSContext.CurrentUser.IsAuthorizedPerResource("CMS.WebAnalytics", "ManageData"))
        {
            this.lnkDeleteData.OnClientClick = "modalDialog('" +
            ResolveUrl("~/CMSModules/Reporting/WebAnalytics/Analytics_ManageData.aspx") +
            "?statcodename=mvtconversion;" + testName + ";%', 'AnalyticsManageData', " + AnalyticsHelper.MANAGE_WINDOW_WIDTH + ", " + AnalyticsHelper.MANAGE_WINDOW_HEIGHT + "); return false; ";
            this.lnkDeleteData.Visible = true;
        }

        ScriptHelper.RegisterClientScriptBlock(this, typeof(string), "myModalDialog",
        ScriptHelper.GetScript("function myModalDialog(url, name, width, height) { " +
            "win = window; " +
            "var dHeight = height; var dWidth = width; " +
            "if (( document.all )&&(navigator.appName != 'Opera')) { " +
            "try { win = wopener.window; } catch (e) {} " +
            "if ( parseInt(navigator.appVersion.substr(22, 1)) < 7 ) { dWidth += 4; dHeight += 58; }; " +
            "dialog = win.showModalDialog(url, this, 'dialogWidth:' + dWidth + 'px;dialogHeight:' + dHeight + 'px;resizable:yes;scroll:yes'); " +
            "} else { " +
            "oWindow = win.open(url, name, 'height=' + dHeight + ',width=' + dWidth + ',toolbar=no,directories=no,menubar=no,modal=yes,dependent=yes,resizable=yes,scroll=yes,scrollbars=yes'); oWindow.opener = this; oWindow.focus(); } } "));

        ucGraphType.ProcessChartSelectors(false);

        // Enables/disables radio buttons (based on UI elements)
        CurrentUserInfo ui = CMSContext.CurrentUser;

        if (!RequestHelper.IsPostBack())
        {
            if (!ui.IsGlobalAdministrator)
            {
                rbCount.Enabled = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "MVTestConversionCount");
                rbRate.Enabled = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "MVTestConversionRate");
                rbValue.Enabled = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "MVTestConversionValue");
                rbCombinations.Enabled = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "ConversionsByCombination");

                bool checkedButton = false;

                // Check first enabled button
                foreach (Control ctrl in pnlRadioButtons.Controls)
                {
                    RadioButton rb = ctrl as RadioButton;
                    if (rb != null)
                    {
                        if (rb.Enabled)
                        {
                            rb.Checked = true;
                            checkedButton = true;
                            break;
                        }
                    }
                }

                // No report avaible -> redirect to access denied
                if (!checkedButton)
                {
                    RedirectToAccessDenied(GetString("mvtest.noreportavaible"));
                }
            }
            else
            {
                // Admin check first radio button
                rbCount.Checked = true;
            }
        }
    }
Пример #42
0
    protected void Page_Load(object sender, EventArgs e)
    {
        // Check UI Permissions
        if ((CMSContext.CurrentUser == null) || (!CMSContext.CurrentUser.IsAuthorizedPerUIElement("CMS.Content", "OnlineMarketing.MVTests")))
        {
            RedirectToCMSDeskUIElementAccessDenied("CMS.Content", "OnlineMarketing.MVTests");
        }

        if (DataHelper.GetNotEmpty(URLHelper.GetCurrentDomain(), "") != "")
        {
            LicenseHelper.CheckFeatureAndRedirect(URLHelper.GetCurrentDomain(), FeatureEnum.MVTesting);
        }

        // Check features and display warning
        String siteName = CMSContext.CurrentSiteName;

        if (!AnalyticsHelper.AnalyticsEnabled(siteName))
        {
            this.pnlWarning.Visible = true;
            this.lblWAWarning.Text  = GetString("WebAnalytics.Disabled") + "<br/>";
        }

        if (!MVTestInfoProvider.MVTestingEnabled(siteName))
        {
            this.pnlWarning.Visible = true;
            this.lblMVWarning.Text  = GetString("mvt.disabled");
        }

        ucDisplayReport = LoadControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        pnlContent.Controls.Add((Control)ucDisplayReport);

        CurrentMaster.PanelContent.CssClass = "";
        UIHelper.AllowUpdateProgress        = false;

        // MVTest Info
        int        mvTestID = QueryHelper.GetInteger("mvTestID", 0);
        MVTestInfo mvInfo   = MVTestInfoProvider.GetMVTestInfo(mvTestID);

        if (mvInfo == null)
        {
            return;
        }

        // Load combination by current template ID and culture
        if (pnlCombination.Visible)
        {
            int nodeID = QueryHelper.GetInteger("NodeID", 0);

            CurrentUserInfo cui = CMSContext.CurrentUser;

            // Create condition for current template combinations
            TreeProvider tree = new TreeProvider(cui);
            TreeNode     node = tree.SelectSingleNode(nodeID, cui.PreferredCultureCode);

            if (node != null)
            {
                usCombination.DocumentID     = node.DocumentID;
                usCombination.PageTemplateID = node.DocumentPageTemplateID;
            }

            usCombination.ReloadData(true);
        }

        testName = mvInfo.MVTestName;

        // Text for menu
        mSave       = GetString("general.save");
        mPrint      = GetString("Analytics_Report.Print");
        mDeleteData = GetString("Analytics_Report.ManageData");

        // Images for menu buttons
        imgSave.ImageUrl       = GetImageUrl("CMSModules/CMS_Content/EditMenu/save_small.png");
        imgPrint.ImageUrl      = GetImageUrl("General/printSmall.png");
        imgManageData.ImageUrl = GetImageUrl("CMSModules/CMS_Reporting/managedataSmall.png");

        // Check 'ManageData' permission
        if (CMSContext.CurrentUser.IsAuthorizedPerResource("CMS.WebAnalytics", "ManageData"))
        {
            this.lnkDeleteData.OnClientClick = "modalDialog('" +
                                               ResolveUrl("~/CMSModules/Reporting/WebAnalytics/Analytics_ManageData.aspx") +
                                               "?statcodename=mvtconversion;" + testName + ";%', 'AnalyticsManageData', " + AnalyticsHelper.MANAGE_WINDOW_WIDTH + ", " + AnalyticsHelper.MANAGE_WINDOW_HEIGHT + "); return false; ";
            this.lnkDeleteData.Visible = true;
        }

        ScriptHelper.RegisterClientScriptBlock(this, typeof(string), "myModalDialog",
                                               ScriptHelper.GetScript("function myModalDialog(url, name, width, height) { " +
                                                                      "win = window; " +
                                                                      "var dHeight = height; var dWidth = width; " +
                                                                      "if (( document.all )&&(navigator.appName != 'Opera')) { " +
                                                                      "try { win = wopener.window; } catch (e) {} " +
                                                                      "if ( parseInt(navigator.appVersion.substr(22, 1)) < 7 ) { dWidth += 4; dHeight += 58; }; " +
                                                                      "dialog = win.showModalDialog(url, this, 'dialogWidth:' + dWidth + 'px;dialogHeight:' + dHeight + 'px;resizable:yes;scroll:yes'); " +
                                                                      "} else { " +
                                                                      "oWindow = win.open(url, name, 'height=' + dHeight + ',width=' + dWidth + ',toolbar=no,directories=no,menubar=no,modal=yes,dependent=yes,resizable=yes,scroll=yes,scrollbars=yes'); oWindow.opener = this; oWindow.focus(); } } "));

        ucGraphType.ProcessChartSelectors(false);

        // Enables/disables radio buttons (based on UI elements)
        CurrentUserInfo ui = CMSContext.CurrentUser;

        if (!RequestHelper.IsPostBack())
        {
            if (!ui.IsGlobalAdministrator)
            {
                rbCount.Enabled        = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "MVTestConversionCount");
                rbRate.Enabled         = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "MVTestConversionRate");
                rbValue.Enabled        = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "MVTestConversionValue");
                rbCombinations.Enabled = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "ConversionsByCombination");

                bool checkedButton = false;

                // Check first enabled button
                foreach (Control ctrl in pnlRadioButtons.Controls)
                {
                    RadioButton rb = ctrl as RadioButton;
                    if (rb != null)
                    {
                        if (rb.Enabled)
                        {
                            rb.Checked    = true;
                            checkedButton = true;
                            break;
                        }
                    }
                }

                // No report avaible -> redirect to access denied
                if (!checkedButton)
                {
                    RedirectToAccessDenied(GetString("mvtest.noreportavaible"));
                }
            }
            else
            {
                // Admin check first radio button
                rbCount.Checked = true;
            }
        }
    }
    protected void Page_Load(object sender, EventArgs e)
    {
        conversionID = QueryHelper.GetInteger("conversionid", 0);
        CurrentMaster.PanelContent.CssClass = "";
        UIHelper.AllowUpdateProgress = false;

        reportHeaderActions.ActionPerformed += HeaderActions_ActionPerformed;

        // Set disabled module info
        ucDisabledModule.SettingsKeys = "CMSAnalyticsEnabled;";
        ucDisabledModule.InfoText = GetString("WebAnalytics.Disabled");
        ucDisabledModule.ParentPanel = pnlDisabled;

        ucDisplayReport = this.LoadUserControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        pnlDisplayReport.Controls.Add((Control)ucDisplayReport);

        dataCodeName = QueryHelper.GetString("dataCodeName", String.Empty);
        reportCodeNames = QueryHelper.GetString("reportCodeName", String.Empty);

        // Control initialization (based on displayed report)
        switch (dataCodeName)
        {
            // Overview
            case "campaign":
                CheckWebAnalyticsUI("campaign.overview");
                ucReportHeader.CampaignAllowAll = true;
                ucReportHeader.ShowConversionSelector = false;
                break;

            // Conversion count
            case "campconversioncount":
                dataCodeName = "campconversion";
                CheckWebAnalyticsUI("CampaignConversionCount");
                ucReportHeader.CampaignAllowAll = false;
                break;

            // Conversion value
            case "campconversionvalue":
                dataCodeName = "campconversion";
                CheckWebAnalyticsUI("campaignsConversionValue");
                ucReportHeader.CampaignAllowAll = false;
                break;

            // Campaign compare
            case "campaigncompare":
                CheckWebAnalyticsUI("CampaignCompare");
                ucReportHeader.ShowCampaignSelector = false;
                dataCodeName = ucReportHeader.CodeNameByGoal;
                ucReportHeader.ShowGoalSelector = true;
                ucReportHeader.ShowSiteSelector = true;

                // Get table column name
                string name = "analytics.hits";
                switch (ucReportHeader.SelectedGoal.ToLowerCSafe())
                {
                    case "view":
                        name = "analytics.view";
                        break;
                    case "count":
                        name = "conversion.count";
                        break;
                    case "value":
                        name = "om.trackconversionvalue";
                        break;
                }

                string[,] dynamicMacros = new string[1, 2];
                dynamicMacros[0, 0] = "ColumnName";
                dynamicMacros[0, 1] = GetString(name);

                ucDisplayReport.DynamicMacros = dynamicMacros;
                break;

            // Campaign detail
            case "campaigndetails":
                CheckWebAnalyticsUI("CampaignDetails");
                ucReportHeader.ShowConversionSelector = false;
                String selectedCampaign = ValidationHelper.GetString(ucReportHeader.SelectedCampaign, String.Empty);
                reportCodeNames = (selectedCampaign == ucReportHeader.AllRecordValue || selectedCampaign == String.Empty) ? allDetailReport : singleDetailReport;
                ucGraphType.ShowIntervalSelector = false;
                allowNoTimeSelection = true;
                ucGraphType.AllowEmptyDate = true;
                break;

            case "conversion":
                CheckWebAnalyticsUI("Conversion.Overview");
                ucReportHeader.ShowCampaignSelector = false;
                ucReportHeader.ShowGoalSelector = true;
                ucReportHeader.ShowVisitsInGoalSelector = false;
                deleteParam = "conversion";
                break;

            case "conversiondetail":
                CheckWebAnalyticsUI("Conversion.Details");
                ucReportHeader.ShowCampaignSelector = false;
                ucReportHeader.ShowConversionSelector = (conversionID != 0) ? false : true;
                ucGraphType.ShowIntervalSelector = false;
                allowNoTimeSelection = true;
                ucGraphType.AllowEmptyDate = true;
                deleteParam = "conversion";
                break;
        }

        // Set table same first column width for all time
        ucDisplayReport.TableFirstColumnWidth = Unit.Percentage(20);
    }
    protected void Page_Load(object sender, EventArgs e)
    {
        string uiTrace = QueryHelper.GetString("ui", string.Empty);

        if (uiTrace == "omanalytics")
        {
            // Check UI elements
            if (!CurrentUser.IsAuthorizedPerUIElement("CMS.WebAnalytics", "Analytics.Campaigns.Overview"))
            {
                RedirectToUIElementAccessDenied("CMS.WebAnalytics", "Analytics.Campaigns.Overview");
            }

            if (!CurrentUser.IsAuthorizedPerUIElement("CMS.WebAnalytics", "Campaigns"))
            {
                RedirectToUIElementAccessDenied("CMS.WebAnalytics", "Campaigns");
            }
        }

        conversionID = QueryHelper.GetInteger("conversionid", 0);
        CurrentMaster.PanelContent.CssClass = "";
        UIHelper.AllowUpdateProgress        = false;

        reportHeaderActions.ActionPerformed += HeaderActions_ActionPerformed;

        // Set disabled module info
        ucDisabledModule.SettingsKeys = "CMSAnalyticsEnabled;";
        ucDisabledModule.InfoText     = GetString("WebAnalytics.Disabled");
        ucDisabledModule.ParentPanel  = pnlDisabled;

        mUcDisplayReport = (IDisplayReport)LoadUserControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx");
        pnlDisplayReport.Controls.Add((Control)mUcDisplayReport);

        dataCodeName    = QueryHelper.GetString("dataCodeName", String.Empty);
        reportCodeNames = QueryHelper.GetString("reportCodeName", String.Empty);

        // Control initialization (based on displayed report)
        switch (dataCodeName)
        {
        // Overview
        case "campaign":
            CheckWebAnalyticsUI("campaign.overview");
            ucReportHeader.CampaignAllowAll       = true;
            ucReportHeader.ShowConversionSelector = false;
            break;

        // Conversion count
        case "campconversioncount":
            dataCodeName = "campconversion";
            CheckWebAnalyticsUI("CampaignConversionCount");
            ucReportHeader.CampaignAllowAll = false;
            break;

        // Conversion value
        case "campconversionvalue":
            dataCodeName = "campconversion";
            CheckWebAnalyticsUI("campaignsConversionValue");
            ucReportHeader.CampaignAllowAll = false;
            break;

        // Campaign compare
        case "campaigncompare":
            CheckWebAnalyticsUI("CampaignCompare");
            ucReportHeader.ShowCampaignSelector = false;
            dataCodeName = ucReportHeader.CodeNameByGoal;
            ucReportHeader.ShowGoalSelector = true;
            ucReportHeader.ShowSiteSelector = true;

            // Get table column name
            string name = "analytics.hits";
            switch (ucReportHeader.SelectedGoal.ToLowerCSafe())
            {
            case "view":
                name = "analytics.view";
                break;

            case "count":
                name = "conversion.count";
                break;

            case "value":
                name = "om.trackconversionvalue";
                break;
            }

            string[,] dynamicMacros = new string[1, 2];
            dynamicMacros[0, 0]     = "ColumnName";
            dynamicMacros[0, 1]     = GetString(name);

            mUcDisplayReport.DynamicMacros = dynamicMacros;
            break;

        // Campaign detail
        case "campaigndetails":
            CheckWebAnalyticsUI("CampaignDetails");
            ucReportHeader.ShowConversionSelector = false;
            String selectedCampaign = ValidationHelper.GetString(ucReportHeader.SelectedCampaign, String.Empty);
            reportCodeNames = (selectedCampaign == ucReportHeader.AllRecordValue || selectedCampaign == String.Empty) ? allDetailReport : singleDetailReport;
            ucGraphType.ShowIntervalSelector = false;
            mAllowNoTimeSelection            = true;
            ucGraphType.AllowEmptyDate       = true;
            break;

        case "conversion":
            CheckWebAnalyticsUI("Conversion.Overview");
            ucReportHeader.ShowCampaignSelector     = false;
            ucReportHeader.ShowGoalSelector         = true;
            ucReportHeader.ShowVisitsInGoalSelector = false;
            mDeleteParam = "conversion";
            break;

        case "conversiondetail":
            CheckWebAnalyticsUI("Conversion.Details");
            ucReportHeader.ShowCampaignSelector   = false;
            ucReportHeader.ShowConversionSelector = (conversionID == 0);
            ucGraphType.ShowIntervalSelector      = false;
            mAllowNoTimeSelection      = true;
            ucGraphType.AllowEmptyDate = true;
            mDeleteParam = "conversion";
            break;

        case "conversionpropertiesdetail":
            CheckWebAnalyticsUI("Conversions.Detail");
            ucReportHeader.ShowCampaignSelector   = false;
            ucReportHeader.ShowConversionSelector = (conversionID == 0);
            ucGraphType.ShowIntervalSelector      = false;
            mAllowNoTimeSelection      = true;
            ucGraphType.AllowEmptyDate = true;
            mDeleteParam = "conversion";
            break;
        }

        // Set table same first column width for all time
        mUcDisplayReport.TableFirstColumnWidth = Unit.Percentage(20);
    }
 private void EnsureDisplayReport()
 {
     if (ucDisplayReport == null)
     {
         ucDisplayReport = LoadControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
         divGraphArea.Controls.Add((Control)ucDisplayReport);
     }
 }
    protected override void OnPreRender(EventArgs e)
    {
        CurrentUserInfo ui = CMSContext.CurrentUser;
        if (!ui.IsAuthorizedPerUIElement("CMS.Content", "Reports"))
        {
            RedirectToCMSDeskUIElementAccessDenied("CMS.Content", "Reports");
        }

        // Check read for web analytics
        if (!ui.IsAuthorizedPerResource("cms.webanalytics", "Read"))
        {
            RedirectToAccessDenied(String.Format(GetString("general.permissionresource"), "Read", "Web analytics"));
        }

        // Set disabled module info
        ucDisabledModule.InfoText= GetString("WebAnalytics.Disabled");
        ucDisabledModule.ParentPanel = pnlDisabled;

        ucDisplayReport = this.LoadUserControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        pnlContent.Controls.Add((Control)ucDisplayReport);

        ucGraphType.ProcessChartSelectors(false);
        CurrentMaster.PanelContent.CssClass = String.Empty;
        UIHelper.AllowUpdateProgress = false;

        // General report data
        ucDisplayReport.ReportName = rbContent.Checked ? "pagereports.content" : "pagereports.Traffic";
        ucDisplayReport.LoadFormParameters = false;
        ucDisplayReport.DisplayFilter = false;
        ucDisplayReport.GraphImageWidth = 100;
        ucDisplayReport.IgnoreWasInit = true;
        ucDisplayReport.TableFirstColumnWidth = Unit.Percentage(30);
        ucDisplayReport.UseExternalReload = true;
        ucDisplayReport.UseProgressIndicator = true;

        ucDisplayReport.SetDefaultDynamicMacros((int)ucGraphType.SelectedInterval);

        EditedObject = Node;

        // Resolve report macros
        DataTable dtp = new DataTable();
        dtp.Columns.Add("FromDate", typeof(DateTime));
        dtp.Columns.Add("ToDate", typeof(DateTime));
        dtp.Columns.Add("CodeName", typeof(string));
        dtp.Columns.Add("NodeID", typeof(int));
        dtp.Columns.Add("CultureCode", typeof(string));

        object[] parameters = new object[5];
        parameters[0] = ucGraphType.From;
        parameters[1] = ucGraphType.To;
        parameters[2] = "pageviews";
        parameters[3] = Node.NodeID;
        parameters[4] = Node.DocumentCulture;

        dtp.Rows.Add(parameters);
        dtp.AcceptChanges();
        ucDisplayReport.ReportParameters = dtp.Rows[0];
        ucDisplayReport.SelectedInterval = HitsIntervalEnumFunctions.HitsConversionToString(ucGraphType.SelectedInterval);

        ucDisplayReport.ReloadData(true);

        base.OnPreRender(e);
    }
    protected override void OnPreRender(EventArgs e)
    {
        var ui = MembershipContext.AuthenticatedUser;

        if (!ui.IsAuthorizedPerUIElement("CMS.Content", "Reports"))
        {
            RedirectToUIElementAccessDenied("CMS.Content", "Reports");
        }

        // Check read for web analytics
        if (!ui.IsAuthorizedPerResource("cms.webanalytics", "Read"))
        {
            RedirectToAccessDenied(String.Format(GetString("general.permissionresource"), "Read", "Web analytics"));
        }

        // Set disabled module info
        ucDisabledModule.ParentPanel = pnlDisabled;

        mUcDisplayReport = (IDisplayReport)LoadUserControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx");
        pnlContent.Controls.Add((Control)mUcDisplayReport);

        ucGraphType.ProcessChartSelectors(false);
        CurrentMaster.PanelContent.CssClass = String.Empty;
        UIHelper.AllowUpdateProgress        = false;

        // General report data
        if (IsFilePageType(Node.NodeClassName))
        {
            reportTypePnl.Visible       = false;
            mUcDisplayReport.ReportName = "pagereports.file";
        }
        else
        {
            mUcDisplayReport.ReportName = rbContent.Checked ? "pagereports.content" : "pagereports.Traffic";
        }

        mUcDisplayReport.LoadFormParameters    = false;
        mUcDisplayReport.DisplayFilter         = false;
        mUcDisplayReport.GraphImageWidth       = 100;
        mUcDisplayReport.IgnoreWasInit         = true;
        mUcDisplayReport.TableFirstColumnWidth = Unit.Percentage(30);
        mUcDisplayReport.UseExternalReload     = true;
        mUcDisplayReport.UseProgressIndicator  = true;

        mUcDisplayReport.SetDefaultDynamicMacros((int)ucGraphType.SelectedInterval);

        EditedObject = Node;

        // Resolve report macros
        DataTable dtp = new DataTable();

        dtp.Columns.Add("FromDate", typeof(DateTime));
        dtp.Columns.Add("ToDate", typeof(DateTime));
        dtp.Columns.Add("CodeName", typeof(string));
        dtp.Columns.Add("NodeID", typeof(int));
        dtp.Columns.Add("CultureCode", typeof(string));

        object[] parameters = new object[5];
        parameters[0] = ucGraphType.From;
        parameters[1] = ucGraphType.To;
        parameters[2] = "pageviews";
        parameters[3] = Node.NodeID;
        parameters[4] = Node.DocumentCulture;

        dtp.Rows.Add(parameters);
        dtp.AcceptChanges();
        mUcDisplayReport.ReportParameters = dtp.Rows[0];
        mUcDisplayReport.SelectedInterval = HitsIntervalEnumFunctions.HitsConversionToString(ucGraphType.SelectedInterval);

        mUcDisplayReport.ReloadData(true);

        DocumentManager.RegisterSaveChangesScript = false;

        base.OnPreRender(e);
    }
    protected void Page_Load(object sender, EventArgs e)
    {
        ucDisplayReport = LoadControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        pnlDisplayReport.Controls.Add((Control)ucDisplayReport);

        ucABTests.ReturnColumnName = "ABTestName";
        ucABTests.AllowEmpty = false;
        ucABTests.ReloadData(false);
        ucABTests.PostbackOnChange = true;
        ucABTests.UniSelector.OnSelectionChanged += new EventHandler(UniSelector_OnSelectionChanged);
        ucConversions.ABTestName = ValidationHelper.GetString(ucABTests.Value, String.Empty);
        ucConversions.PostbackOnDropDownChange = true;
    }
Пример #49
0
    protected void Page_Load(object sender, EventArgs e)
    {
        ucDisplayReport = LoadControl("~/CMSModules/Reporting/Controls/DisplayReport.ascx") as IDisplayReport;
        pnlContent.Controls.Add((Control)ucDisplayReport);

        CurrentMaster.PanelContent.CssClass = "";
        UIHelper.AllowUpdateProgress        = false;
        ScriptHelper.RegisterDialogScript(Page);

        // Campaign Info
        int campaignID = QueryHelper.GetInteger("campaignID", 0);

        campaignInfo = CampaignInfoProvider.GetCampaignInfo(campaignID);
        if (campaignInfo == null)
        {
            return;
        }

        // Validate SiteID for non administrators
        if (!CMSContext.CurrentUser.IsGlobalAdministrator)
        {
            if (campaignInfo.CampaignSiteID != CMSContext.CurrentSiteID)
            {
                RedirectToAccessDenied(GetString("cmsmessages.accessdenied"));
            }
        }

        campaignName = campaignInfo.CampaignName;

        // Text for menu
        mSave       = GetString("general.save");
        mPrint      = GetString("Analytics_Report.Print");
        mDeleteData = GetString("Analytics_Report.ManageData");

        // Images for menu buttons
        imgSave.ImageUrl       = GetImageUrl("CMSModules/CMS_Content/EditMenu/save_small.png");
        imgPrint.ImageUrl      = GetImageUrl("General/printSmall.png");
        imgManageData.ImageUrl = GetImageUrl("CMSModules/CMS_Reporting/managedataSmall.png");

        // Check 'ManageData' permission
        if (CMSContext.CurrentUser.IsAuthorizedPerResource("CMS.WebAnalytics", "ManageData"))
        {
            this.lnkDeleteData.OnClientClick = "modalDialog('" +
                                               ResolveUrl("~/CMSModules/Reporting/WebAnalytics/Analytics_ManageData.aspx") +
                                               "?statcodename=singlecampaign;" + campaignName + "', 'AnalyticsManageData', " + AnalyticsHelper.MANAGE_WINDOW_WIDTH + ", " + AnalyticsHelper.MANAGE_WINDOW_HEIGHT + "); return false; ";
            this.lnkDeleteData.Visible = true;
        }

        ScriptHelper.RegisterClientScriptBlock(this, typeof(string), "myModalDialog",
                                               ScriptHelper.GetScript("function myModalDialog(url, name, width, height) { " +
                                                                      "win = window; " +
                                                                      "var dHeight = height; var dWidth = width; " +
                                                                      "if (( document.all )&&(navigator.appName != 'Opera')) { " +
                                                                      "try { win = wopener.window; } catch (e) {} " +
                                                                      "if ( parseInt(navigator.appVersion.substr(22, 1)) < 7 ) { dWidth += 4; dHeight += 58; }; " +
                                                                      "dialog = win.showModalDialog(url, this, 'dialogWidth:' + dWidth + 'px;dialogHeight:' + dHeight + 'px;resizable:yes;scroll:yes'); " +
                                                                      "} else { " +
                                                                      "oWindow = win.open(url, name, 'height=' + dHeight + ',width=' + dWidth + ',toolbar=no,directories=no,menubar=no,modal=yes,dependent=yes,resizable=yes,scroll=yes,scrollbars=yes'); oWindow.opener = this; oWindow.focus(); } } "));

        ucGraphType.ProcessChartSelectors(false);

        // Enables/disables radio buttons (based on UI elements)
        CurrentUserInfo ui            = CMSContext.CurrentUser;
        bool            checkedButton = false;

        if (!RequestHelper.IsPostBack())
        {
            if (!ui.IsGlobalAdministrator)
            {
                rbCount.Enabled           = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "CampaignConversionCount");
                rbDetail.Enabled          = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "CampaignDetails");
                rbGoalCount.Enabled       = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "goals.numberofconversions");
                rbGoalValue.Enabled       = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "goals.totalvalueofconversions");
                rbGoalView.Enabled        = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "goals.numberofvisitors");
                rbValue.Enabled           = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "campaignsConversionValue");
                rbValuePerVisitor.Enabled = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "valuepervisitor");
                rbViews.Enabled           = ui.IsAuthorizedPerUIElement("cms.WebAnalytics", "campaign.overview");

                // Check first enabled button
                foreach (Control ctrl in pnlRadios.Controls)
                {
                    RadioButton rb = ctrl as RadioButton;
                    if (rb != null)
                    {
                        if (rb.Enabled)
                        {
                            rb.Checked    = true;
                            checkedButton = true;
                            break;
                        }
                    }
                }

                // No report avaible -> redirect to access denied
                if (!checkedButton)
                {
                    RedirectToAccessDenied(GetString("campaign.noreportavaible"));
                }
            }
            else
            {
                // Admin check first radio button
                rbViews.Checked = true;
            }
        }
    }