using System;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using CMS.FormControls;
using CMS.GlobalHelper;
using CMS.SettingsProvider;
using CMS.UIControls;
public partial class CMSModules_Groups_FormControls_MultipleGroupSelector : FormEngineUserControl
{
#region "Private variables"
private int mSiteId = 0;
private bool reloadData = false;
#endregion
#region "Public properties"
///
/// Helper parameter - site ID.
///
public override object FormControlParameter
{
get
{
return mSiteId;
}
set
{
mSiteId = ValidationHelper.GetInteger(value, 0);
}
}
///
/// Gets or sets site ID.
///
public int SiteID
{
get
{
return mSiteId;
}
set
{
mSiteId = value;
}
}
///
/// Gets or sets the enabled state of the control.
///
public override bool Enabled
{
get
{
return base.Enabled;
}
set
{
EnsureChildControls();
base.Enabled = value;
usGroups.Enabled = value;
}
}
///
/// Gets the currene UniSelector instance.
///
public UniSelector CurrentSelector
{
get
{
EnsureChildControls();
return usGroups;
}
}
///
/// Group code name.
///
public string GroupCodeName
{
get
{
EnsureChildControls();
return ValidationHelper.GetString(usGroups.Value, "");
}
set
{
EnsureChildControls();
usGroups.Value = value;
}
}
///
/// Gets the current drop down control.
///
public DropDownList CurrentDropDown
{
get
{
EnsureChildControls();
return usGroups.DropDownSingleSelect;
}
}
///
/// Gets or sets group name.
///
public override object Value
{
get
{
EnsureChildControls();
return usGroups.Value;
}
set
{
EnsureChildControls();
usGroups.Value = value;
}
}
///
/// Gets ClientID of the dropdownlist with groups.
///
public override string ValueElementID
{
get
{
EnsureChildControls();
return usGroups.ClientID;
}
}
///
/// Gets or sets if live iste property.
///
public override bool IsLiveSite
{
get
{
EnsureChildControls();
return base.IsLiveSite;
}
set
{
EnsureChildControls();
base.IsLiveSite = value;
usGroups.IsLiveSite = value;
}
}
#endregion
#region "Methods"
///
/// Page_load event.
///
/// Sender
/// Arguments
protected void Page_Load(object sender, EventArgs e)
{
if (StopProcessing)
{
usGroups.StopProcessing = true;
}
else
{
// Build WHERE condition
usGroups.WhereCondition = "GroupSiteID =" + SiteID;
// Set ReturnColumnName
string returnColumnName = ValidationHelper.GetString(GetValue("ReturnColumnName"), null);
if (!String.IsNullOrEmpty(returnColumnName))
{
usGroups.ReturnColumnName = returnColumnName;
}
}
}
///
/// Reloads the selector's data.
///
/// Indicates whether data should be forcibly reloaded
public void Reload(bool forceReload)
{
usGroups.Reload(forceReload);
}
///
/// On PreRender.
///
protected override void OnPreRender(EventArgs e)
{
if (reloadData)
{
Reload(true);
}
}
public override void SetValue(string propertyName, object value)
{
switch (propertyName.ToLowerCSafe())
{
case "reloaddata":
reloadData = ValidationHelper.GetBoolean(value, false);
return;
}
base.SetValue(propertyName, value);
}
#endregion
}