using System; using System.Data; using System.Collections; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using CMS.PortalControls; using CMS.GlobalHelper; using CMS.CMSHelper; public partial class CMSWebParts_Text_Link : CMSAbstractWebPart { #region "Properties" /// /// Link text /// public string LinkText { get { return ValidationHelper.GetString(this.GetValue("LinkText"), btnElem.LinkText); } set { this.SetValue("LinkText", value); btnElem.LinkText = value; } } /// /// Link CSS class /// public string LinkCssClass { get { return ValidationHelper.GetString(this.GetValue("LinkCssClass"), btnElem.CssClass); } set { this.SetValue("LinkCssClass", value); btnElem.CssClass = value; } } /// /// Show as button /// public bool ShowAsButton { get { return ValidationHelper.GetBoolean(this.GetValue("ShowAsButton"), btnElem.ShowAsButton); } set { this.SetValue("ShowAsButton", value); btnElem.ShowAsButton = value; } } /// /// Image URL /// public string ImageUrl { get { return ValidationHelper.GetString(this.GetValue("ImageURL"), btnElem.ImageUrl); } set { this.SetValue("ImageURL", value); btnElem.ImageUrl = value; } } /// /// Image alternate text /// public string ImageAltText { get { return ValidationHelper.GetString(this.GetValue("ImageAltText"), btnElem.ImageAltText); } set { this.SetValue("ImageAltText", value); btnElem.ImageAltText = value; } } /// /// Image CSS class /// public string ImageCssClass { get { return ValidationHelper.GetString(this.GetValue("ImageCssClass"), btnElem.ImageCssClass); } set { this.SetValue("ImageCssClass", value); btnElem.ImageCssClass = value; } } /// /// Link URL /// public string LinkUrl { get { return ValidationHelper.GetString(this.GetValue("LinkURL"), btnElem.LinkUrl); } set { this.SetValue("LinkURL", value); btnElem.LinkUrl = value; } } /// /// Link target /// public string LinkTarget { get { return ValidationHelper.GetString(this.GetValue("LinkTarget"), btnElem.LinkTarget); } set { this.SetValue("LinkTarget", value); btnElem.LinkTarget = value; } } /// /// Raise event /// public string LinkEvent { get { return ValidationHelper.GetString(this.GetValue("LinkEvent"), btnElem.LinkEvent); } set { this.SetValue("LinkEvent", value); btnElem.LinkEvent = value; } } /// /// Link javascript /// public string LinkJavascript { get { return ValidationHelper.GetString(this.GetValue("LinkJavascript"), btnElem.OnClientClick); } set { this.SetValue("LinkJavascript", value); btnElem.OnClientClick = value; } } #endregion #region "Methods" /// /// Content loaded event handler /// public override void OnContentLoaded() { base.OnContentLoaded(); SetupControl(); } /// /// Initializes the control properties /// protected void SetupControl() { if (this.StopProcessing) { // Do not process } else { btnElem.LinkText = this.LinkText; btnElem.CssClass = this.LinkCssClass; btnElem.ShowAsButton = this.ShowAsButton; btnElem.ImageUrl = this.ImageUrl; btnElem.ImageAltText = this.ImageAltText; btnElem.ImageCssClass = this.ImageCssClass; btnElem.LinkUrl = this.LinkUrl; btnElem.LinkTarget = this.LinkTarget; btnElem.LinkEvent = this.LinkEvent; string linkJavascript = string.Empty; if (ShowAsButton) { // Ensure that the link will be opened in the specified target linkJavascript = "; window.open('" + LinkUrl + "', '" + LinkTarget + "'); return false;"; } btnElem.OnClientClick = LinkJavascript + linkJavascript; } } /// /// Reloads the control data /// public override void ReloadData() { base.ReloadData(); SetupControl(); } #endregion }