using System; using System.Data; using System.Collections; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.HtmlControls; using CMS.CMSHelper; using CMS.FormControls; using CMS.FormEngine; using CMS.GlobalHelper; using CMS.Newsletter; public partial class CMSModules_Newsletters_FormControls_NewsletterSelectorSimple : FormEngineUserControl { private string mValue = null; #region "Properties" /// /// Gets Value display name. /// public override string ValueDisplayName { get { return usNewsletters.ValueDisplayName; } } /// /// Gets or sets the enabled state of the control. /// public override bool Enabled { get { return base.Enabled; } set { EnsureChildControls(); base.Enabled = value; usNewsletters.Enabled = value; } } /// /// Gets or sets field value. /// public override object Value { get { return usNewsletters.Value; } set { EnsureChildControls(); mValue = ValidationHelper.GetString(value, String.Empty); try { usNewsletters.Value = mValue; } catch { } } } /// /// Gets ClientID of the dropdownlist with newsletters. /// public override string ValueElementID { get { return usNewsletters.ClientID; } } #endregion #region "Methods" protected override void CreateChildControls() { if (usNewsletters == null) { pnlUpdate.LoadContainer(); } base.CreateChildControls(); if (!StopProcessing) { ReloadData(); } } protected void ReloadData() { usNewsletters.WhereCondition = "NewsletterSiteID = " + CMSContext.CurrentSiteID; usNewsletters.ButtonRemoveSelected.CssClass = "XLongButton"; usNewsletters.ButtonAddItems.CssClass = "XLongButton"; // Return newsletter name or newsletter ID according to type of field (if no field specified newsletter name is returned) if ((FieldInfo != null) && ((FieldInfo.DataType == FormFieldDataTypeEnum.Integer) || (FieldInfo.DataType == FormFieldDataTypeEnum.LongInteger))) { usNewsletters.AllowEmpty = true; usNewsletters.ReturnColumnName = "NewsletterID"; } else { usNewsletters.ReturnColumnName = "NewsletterName"; } try { usNewsletters.Value = mValue; } catch { } } /// /// Returns WHERE condition for selected form. /// public override string GetWhereCondition() { // Return correct WHERE condition for integer if none value is selected if ((FieldInfo != null) && ((FieldInfo.DataType == FormFieldDataTypeEnum.Integer) || (FieldInfo.DataType == FormFieldDataTypeEnum.LongInteger))) { int id = ValidationHelper.GetInteger(usNewsletters.Value, 0); if (id > 0) { return base.GetWhereCondition(); } } return null; } #endregion }