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/App_Code/CMSModules/Sites/DomainAliasListControlExtender.cs
using System;
using System.Data;

using CMS;
using CMS.Base;
using CMS.ExtendedControls;
using CMS.Helpers;
using CMS.Localization;
using CMS.SiteProvider;
using CMS.UIControls;

[assembly: RegisterCustomClass("DomainAliasListControlExtender", typeof(DomainAliasListControlExtender))]

/// <summary>
/// Domain alias list control extender.
/// </summary>
public class DomainAliasListControlExtender : ControlExtender<UniGrid>
{
    #region "Methods"

    /// <summary>
    /// Initialization.
    /// </summary>
    public override void OnInit()
    {
        Control.OnExternalDataBound += OnExternalDataBound;
        Control.OnAction += Control_OnAction;
    }


    /// <summary>
    /// Handle OnExternalDataBound event of the grid.
    /// </summary>
    /// <param name="sender">Sender object</param>
    /// <param name="sourceName">Event source name</param>
    /// <param name="parameter">Event parameter</param>
    /// <returns></returns>
    private object OnExternalDataBound(object sender, string sourceName, object parameter)
    {
        switch (sourceName.ToLowerCSafe())
        {
            case "sitedefaultvisitorculture":

                // Get visitor culture
                string defaultCulture = DataHelper.GetDataRowViewValue((DataRowView)parameter, "SiteDefaultVisitorCulture") as string;

                // If not set it is Automatic
                if (String.IsNullOrEmpty(defaultCulture))
                {
                    return ResHelper.GetString("Site_Edit.Automatic");
                }
                else
                {
                    CultureInfo ci = CultureInfoProvider.GetCultureInfo(defaultCulture);
                    if (ci != null)
                    {
                        return ci.CultureName;
                    }
                }

                break;
        }

        return String.Empty;
    }


    /// <summary>
    /// UniGrid actions.
    /// </summary>
    protected void Control_OnAction(string actionName, object actionArgument)
    {
        if (actionName == "delete")
        {
            int aliasId = ValidationHelper.GetInteger(actionArgument, 0);
            SiteDomainAliasInfoProvider.DeleteSiteDomainAliasInfo(aliasId);
        }
    }

    #endregion
}