/// <summary> /// Adds a widget of the specified type. /// </summary> /// <param name="type">The type of widget.</param> /// <param name="zone">The zone a widget is being added to.</param> private void AddWidget(string type, string zone) { WidgetBase widget = (WidgetBase)LoadControl(Utils.RelativeWebRoot + "widgets/" + type + "/widget.ascx"); widget.WidgetID = Guid.NewGuid(); widget.ID = widget.WidgetID.ToString().Replace("-", string.Empty); widget.Title = type; widget.Zone = zone; widget.ShowTitle = widget.DisplayHeader; widget.LoadWidget(); Response.Clear(); try { using (StringWriter sw = new StringWriter()) { widget.RenderControl(new HtmlTextWriter(sw)); // Using ? as a delimiter. ? is a safe delimiter because it cannot appear in a // zonename because ? is one of the characters removed by Utils.RemoveIllegalCharacters(). Response.Write(zone + "?" + sw); } } catch (System.Web.HttpException) { Response.Write("reload"); } SaveNewWidget(widget, zone); WidgetEditBase.OnSaved(); Response.End(); }
/// <summary> /// Adds a widget of the specified type. /// </summary> /// <param name="type">The type of widget.</param> private void AddWidget(string type) { WidgetBase widget = (WidgetBase)LoadControl(Utils.RelativeWebRoot + "widgets/" + type + "/widget.ascx"); widget.WidgetID = Guid.NewGuid(); widget.ID = widget.WidgetID.ToString().Replace("-", string.Empty); widget.Title = type; widget.ShowTitle = widget.DisplayHeader; widget.LoadWidget(); Response.Clear(); try { using (StringWriter sw = new StringWriter()) { widget.RenderControl(new HtmlTextWriter(sw)); Response.Write(sw); } } catch (System.Web.HttpException) { Response.Write("reload"); } SaveNewWidget(widget); WidgetEditBase.OnSaved(); Response.End(); }