HEX
Server: Microsoft-IIS/8.5
System: Windows NT YDAWBH120 6.3 build 9600 (Windows Server 2012 R2 Standard Edition) AMD64
User: tentjecom_web (0)
PHP: 7.4.14
Disabled: NONE
Upload Files
File: D:/HostingSpaces/RMourik/bassol.nl/CMS/CMSModules/WebAnalytics/Controls/UI/Campaign/Edit.ascx.cs
using System;

using CMS.FormControls;
using CMS.Helpers;
using CMS.PortalEngine;
using CMS.SiteProvider;
using CMS.UIControls;
using CMS.WebAnalytics;

public partial class CMSModules_WebAnalytics_Controls_UI_Campaign_Edit : CMSAdminEditControl
{
    #region "Variables"

    private String formerCodeName = String.Empty;

    #endregion


    #region "Properties"

    /// <summary>
    /// UIForm control used for editing objects properties.
    /// </summary>
    public UIForm UIFormControl
    {
        get
        {
            return EditForm;
        }
    }


    /// <summary>
    /// Indicates if the control should perform the operations.
    /// </summary>
    public override bool StopProcessing
    {
        get
        {
            return base.StopProcessing;
        }
        set
        {
            base.StopProcessing = value;
            EditForm.StopProcessing = value;
        }
    }


    /// <summary>
    /// Indicates if the control is used on the live site.
    /// </summary>
    public override bool IsLiveSite
    {
        get
        {
            return base.IsLiveSite;
        }
        set
        {
            base.IsLiveSite = value;
            EditForm.IsLiveSite = value;
        }
    }

    #endregion


    #region "Page events"

    protected void Page_Load(object sender, EventArgs e)
    {
        if (IsModalDialog())
        {
            EditForm.SubmitButton.Visible = false;
            EditForm.RedirectUrlAfterCreate = "";
        }
        else
        {
            string editUrl = UIContextHelper.GetElementUrl("CMS.WebAnalytics", "CampaignProperties");
            editUrl = URLHelper.AddParameterToUrl(editUrl, "objectId", "{%EditedObject.ID%}");
            editUrl = URLHelper.AddParameterToUrl(editUrl, "saved", "1");
            editUrl = URLHelper.AddParameterToUrl(editUrl, "displayTitle", "0");
            EditForm.RedirectUrlAfterCreate = editUrl;
        }
    }


    protected void EditForm_OnAfterSave(object sender, EventArgs e)
    {
        CampaignInfo ci = EditForm.EditedObject as CampaignInfo;
        // If code name has changed (on existing object) => Rename all analytics statistics data.
        if ((ci != null) && (ci.CampaignName != formerCodeName) && (formerCodeName != String.Empty))
        {
            CampaignInfoProvider.RenameCampaignStatistics(formerCodeName, ci.CampaignName, SiteContext.CurrentSiteID);
        }
    }


    protected void EditForm_OnBeforeSave(object sender, EventArgs e)
    {
        CampaignInfo ci = EditForm.EditedObject as CampaignInfo;
        if (ci != null)
        {
            if (ci.CampaignSiteID == 0)
            {
                ci.CampaignSiteID = SiteContext.CurrentSiteID;
            }

            // Save old codename
            formerCodeName = ci.CampaignName;
        }
    }


    protected void EditForm_OnAfterValidate(object sender, EventArgs e)
    {
        DateTime from = ValidationHelper.GetDateTime(EditForm.GetFieldValue("CampaignOpenFrom"), DateTimeHelper.ZERO_TIME);
        DateTime to = ValidationHelper.GetDateTime(EditForm.GetFieldValue("CampaignOpenTo"), DateTimeHelper.ZERO_TIME);

        // Validate FromDate <= ToDate
        if (!DateTimeHelper.IsValidFromTo(from, to))
        {
            EditForm.StopProcessing = true;
            EditForm.DisplayErrorLabel("CampaignOpenFrom", GetString("campaign.wronginterval"));
        }
    }


    /// <summary>
    /// Saves the data
    /// </summary>
    /// <param name="redirect">If true, use server redirect after successful save</param>
    public bool Save(bool redirect)
    {
        string url = "tab_general.aspx?campaignid={%EditedObject.ID%}&saved=1&modaldialog=true&selectorID={?selectorID?}";
        
        return EditForm.SaveData(redirect ? url : String.Empty);
    }


    /// <summary>
    /// Returns true if control is opened as a modal dialog.
    /// </summary>
    public bool IsModalDialog()
    {
        return QueryHelper.GetBoolean("modaldialog", false);
    }

    #endregion
}