using System; using CMS.ExtendedControls; using CMS.FormControls; using CMS.GlobalHelper; /// /// This form control is used in layout UI to edit styles for specified layout. /// public partial class CMSFormControls_Layouts_CSSStylesEditor : FormEngineUserControl { #region "Properties" /// /// Gets or sets the CSS code. /// public override object Value { get { return txtLayoutCSS.Text; } set { txtLayoutCSS.Text = ValidationHelper.GetString(value, ""); } } /// /// Returns ExtendedArea object for code editing. /// public ExtendedTextArea Editor { get { return txtLayoutCSS; } } /// /// If true, styles for TwoColumn UIForm mode are set. /// public bool TwoColumnMode { get; set; } #endregion #region "Page events" protected override void OnPreRender(EventArgs e) { base.OnPreRender(e); if (Enabled) { string script = @"function ShowCSS_" + ClientID + @"() { document.getElementById('" + pnlEditCSS.ClientID + @"').style.display = 'block'; document.getElementById('" + pnlLink.ClientID + @"').style.display = 'none'; }"; ScriptHelper.RegisterClientScriptBlock(this, typeof(string), "ShowEditCSS_" + ClientID, script, true); lnkStyles.OnClientClick = "ShowCSS_" + ClientID + "(); return false;"; } if (!TwoColumnMode) { pnlWrapper.CssClass = "LayoutCSSControl"; } plcCssLink.Visible = string.IsNullOrEmpty(txtLayoutCSS.Text); if (plcCssLink.Visible) { pnlEditCSS.Attributes.CssStyle.Add("display", "none"); } else { pnlEditCSS.Attributes.CssStyle.Remove("display"); } } #endregion }