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/TDijk1/erp-apps.eu/wwwroot/CMSModules/BannedIP/Tools/BannedIP_List.aspx.cs
using System;

using CMS.Helpers;
using CMS.Base;
using CMS.SiteProvider;
using CMS.UIControls;
using CMS.Protection;

// Title
[Title("banip.listHeaderCaption")]
// Actions
[Action(0, "banip.NewItemCaption", null, Javascript = "AddNewItem();")]
[UIElement(BannedIPInfo.OBJECT_TYPE, "BannedIP")]
public partial class CMSModules_BannedIP_Tools_BannedIP_List : CMSBannedIPsPage
{
    #region "Page events"

    /// <summary>
    /// Page load.
    /// </summary>
    protected void Page_Load(object sender, EventArgs e)
    {
        if (SiteID > 0)
        {
            // Hide site selector if accessing page from CMSDesk
            plcSites.Visible = false;
        }
        else
        {
            // Show contentplaceholder where site selector can be shown
            CurrentMaster.DisplaySiteSelectorPanel = true;

            // Set site selector
            siteSelector.DropDownSingleSelect.AutoPostBack = true;
            siteSelector.UniSelector.OnSelectionChanged += UniSelector_OnSelectionChanged;

            if (!RequestHelper.IsPostBack())
            {
                // Sites
                siteSelector.Value = SelectedSiteID;
            }
            else
            {
                SelectedSiteID = ValidationHelper.GetInteger(siteSelector.Value, 0);
            }
        }

        UniGrid.EditActionUrl = "BannedIP_Edit.aspx?itemid={0}&selectedsiteid=" + SelectedSiteID + "&siteId=" + SiteID;
        UniGrid.WhereCondition = GenerateWhereCondition();

        UniGrid.OnAction += uniGrid_OnAction;
        UniGrid.OnExternalDataBound += UniGrid_OnExternalDataBound;
        UniGrid.OnBeforeDataReload += UniGrid_OnBeforeDataReload;

        ucDisabledModule.SettingsKeys = "CMSBannedIPEnabled";

        // Set disabled module info
        int currentSiteID = ((SiteID > 0) ? SiteID : SelectedSiteID);

        if (currentSiteID < 0)
        {
            ucDisabledModule.KeyScope = DisabledModuleScope.AllSitesAndGlobal;
        }
        else if (currentSiteID == 0)
        {
            ucDisabledModule.KeyScope = DisabledModuleScope.Global;
        }
        else
        {
            ucDisabledModule.KeyScope = DisabledModuleScope.Site;
            ucDisabledModule.SiteName = SiteInfoProvider.GetSiteName(currentSiteID);
        }

        // Display information about disabled Banned IP module
        ucDisabledModule.InfoText = GetString((currentSiteID > 0) ? "banip.moduleDisabled" : "banip.moduleDisabledglobal");
    }


    /// <summary>
    /// Page pre render.
    /// </summary>
    protected void Page_PreRender(object sender, EventArgs e)
    {
        // Register correct script for new item
        ScriptHelper.RegisterClientScriptBlock(Page, typeof(string), "AddNewItem", ScriptHelper.GetScript(
            "function AddNewItem() { window.location = '" + ResolveUrl("BannedIP_Edit.aspx" + "?selectedsiteid=" + SelectedSiteID + "&siteId=" + SiteID) + "'} "));
    }

    #endregion


    #region "Methods"

    /// <summary>
    /// Generates where condition.
    /// </summary>    
    private string GenerateWhereCondition()
    {
        if (SiteID > 0)
        {
            return "IPAddressSiteID = " + SiteID;
        }
        else if (SelectedSiteID > 0)
        {
            return "IPAddressSiteID = " + SelectedSiteID;
        }
        else if (siteSelector.Value.ToString() == "0")
        {
            return "IPAddressSiteID IS NULL";
        }

        // (all)
        return String.Empty;
    }

    #endregion


    #region "UniSelector events"

    /// <summary>
    /// Handles site selection change event.
    /// </summary>
    protected void UniSelector_OnSelectionChanged(object sender, EventArgs e)
    {
        pnlUpdate.Update();
    }

    #endregion


    #region "UniGrid events"

    /// <summary>
    /// Handles unigrid external fields binding.
    /// </summary>
    protected object UniGrid_OnExternalDataBound(object sender, string sourceName, object parameter)
    {
        switch (sourceName.ToLowerCSafe())
        {
            case "bantype":
                // Ban type
                BanControlEnum banControl = BannedIPInfoProvider.GetBanControlEnum((string)parameter);
                return GetString("banip.bantype" + banControl);
        }

        return parameter;
    }


    /// <summary>
    /// Handles the UniGrid's OnAction event.
    /// </summary>
    /// <param name="actionName">Name of item (button) that throws event</param>
    /// <param name="actionArgument">ID (value of Primary key) of corresponding data row</param>
    protected void uniGrid_OnAction(string actionName, object actionArgument)
    {
        if (actionName == "delete")
        {
            // check 'Modify' permission
            CheckPermissions("Modify");

            // delete BannedIPInfo object from database
            BannedIPInfoProvider.DeleteBannedIPInfo(Convert.ToInt32(actionArgument));
        }
    }


    protected void UniGrid_OnBeforeDataReload()
    {
        // If page is viewed from CMSDesk hide Sitename column
        if ((SiteID > 0) || (SelectedSiteID > 0))
        {
            UniGrid.GridView.Columns[5].Visible = false;
        }
    }

    #endregion
}