private void doUpdateWidgetSpace() { string title = ""; Ektron.Cms.Personalization.WidgetSpaceScope scope = WidgetSpaceScope.User; Ektron.Cms.Personalization.WidgetSpaceModel model = new Ektron.Cms.Personalization.WidgetSpaceModel(); if (rdoGroupSpace.Checked) { scope = Ektron.Cms.Personalization.WidgetSpaceScope.CommunityGroup; } else if (rdoUserSpace.Checked) { scope = Ektron.Cms.Personalization.WidgetSpaceScope.User; } else scope = Ektron.Cms.Personalization.WidgetSpaceScope.SmartDesktop; title = EkFunctions.HtmlEncode(Request.Form[txtTitle.UniqueID]); Ektron.Cms.Personalization.WidgetSpaceFactory.GetModel().Update(m_id, scope, title); model.RemoveAllWidgetSpaceAssociations(m_id); foreach (string Key in Request.Form.AllKeys) { if (Key.StartsWith("widget")) { try { model.AddWidgetSpaceAssociation(m_id, long.Parse(Key.Substring(6))); } catch (Exception ex) { EkException.ThrowException(ex); } } } Response.Redirect("widgetsettings.aspx?action=widgetspace", false); //ViewAllWidgetSpaces() }
protected void editButton_Click(object sender, System.Web.UI.ImageClickEventArgs e) { m_mode = "edit"; m_id = Convert.ToInt64(((ImageButton)sender).CommandArgument); AddWidgetsSpace(); WidgetSpaceData spaceData = null; Ektron.Cms.Personalization.WidgetSpaceModel model = new Ektron.Cms.Personalization.WidgetSpaceModel(); Ektron.Cms.Widget.WidgetTypeData[] widgetTypes; WidgetSpaceFactory.GetModel().FindByID(m_id, out spaceData); //Get widgets based on scope in Edit Mode if (spaceData.Scope == Ektron.Cms.Personalization.WidgetSpaceScope.SmartDesktop) { tr_groupSpace.Visible = false; widgetTypes = WidgetTypeFactory.GetModel().FindAll(WidgetSpaceScope.SmartDesktop); } else { Ektron.Cms.Widget.WidgetTypeController.SyncWidgetsDirectory(m_refContentApi.RequestInformationRef.WidgetsPath); widgetTypes = WidgetTypeFactory.GetModel().FindAll(); } repWidgetTypes.DataSource = AppendWidgetPath(widgetTypes); repWidgetTypes.DataBind(); if (spaceData != null) { txtTitle.Text = Server.HtmlDecode(spaceData.Title); rdoGroupSpace.Checked = spaceData.Scope == Ektron.Cms.Personalization.WidgetSpaceScope.CommunityGroup ? true : false; rdoUserSpace.Checked = spaceData.Scope == Ektron.Cms.Personalization.WidgetSpaceScope.User ? true : false; ViewSet.SetActiveView(this.ViewAdd); } //Sync earlier selected widgets during edit mode Ektron.Cms.Widget.WidgetTypeData[] selectedWidgets = model.GetAssociatedWidgetTypesByWidgetSpaceID(m_id); List<string> widgetIds = new List<string>(); foreach (Ektron.Cms.Widget.WidgetTypeData widget in selectedWidgets) { if (spaceData.Scope == Ektron.Cms.Personalization.WidgetSpaceScope.SmartDesktop && widget.Scope == Ektron.Cms.Personalization.WidgetSpaceScope.SmartDesktop) { widgetIds.Add(widget.ID.ToString()); } else if (spaceData.Scope != Ektron.Cms.Personalization.WidgetSpaceScope.SmartDesktop) { widgetIds.Add(widget.ID.ToString()); } } System.Web.UI.ScriptManager.RegisterClientScriptBlock(this.Page, this.GetType(), "widgetSpaceSelectedIds", "Ektron.ready(function(){SelectWidgets([" + string.Join(", ", widgetIds.ToArray()) + "]);});", true); }
private void doAddWidgetSpace() { WidgetSpaceData widgetSpace = null; string title = ""; Ektron.Cms.Personalization.WidgetSpaceScope scope = WidgetSpaceScope.User; Ektron.Cms.Personalization.WidgetSpaceModel model = new Ektron.Cms.Personalization.WidgetSpaceModel(); bool widgetSpaceCreated = false; if (rdoGroupSpace.Checked) { scope = Ektron.Cms.Personalization.WidgetSpaceScope.CommunityGroup; } else if (rdoUserSpace.Checked) { scope = Ektron.Cms.Personalization.WidgetSpaceScope.User; } title = EkFunctions.HtmlEncode(Request.Form[txtTitle.UniqueID]); widgetSpaceCreated = System.Convert.ToBoolean(Ektron.Cms.Personalization.WidgetSpaceFactory.GetModel().Create(title, scope, out widgetSpace)); if (widgetSpaceCreated) { //Adding widgetSpace_To_widgets association foreach (string Key in Request.Form.AllKeys) { if (Key.StartsWith("widget")) { try { model.AddWidgetSpaceAssociation(widgetSpace.ID, long.Parse(Key.Substring(6))); } catch (Exception ex) { EkException.ThrowException(ex); } } } } Response.Redirect("widgetsettings.aspx?action=widgetspace", false); //ViewAllWidgetSpaces() }