protected void Add(ClientPipelineArgs args) { Assert.ArgumentNotNull((object)args, "args"); if (args.IsPostBack) { if (!args.HasResult) { return; } string[] strArray = args.Result.Split(','); string str1 = strArray[0]; string str2 = strArray[1].Replace("-c-", ","); bool flag = strArray[2] == "1"; LayoutDefinition layoutDefinition = CustomDeviceEditor.GetLayoutDefinition(); DeviceDefinition device = layoutDefinition.GetDevice(this.DeviceID); RenderingDefinition renderingDefinition = new RenderingDefinition() { ItemID = str1, Placeholder = str2 }; device.AddRendering(renderingDefinition); CustomDeviceEditor.SetDefinition(layoutDefinition); this.Refresh(); if (flag) { ArrayList renderings = device.Renderings; if (renderings != null) { this.SelectedIndex = renderings.Count - 1; Context.ClientPage.SendMessage((object)this, "device:edit"); } } Registry.SetString("/Current_User/SelectRendering/Selected", str1); } else { Item itm = UIUtil.GetItemFromQueryString(Sitecore.Client.ContentDatabase); SelectRenderingOptions renderingOptions = new SelectRenderingOptions() { ShowOpenProperties = true, ShowPlaceholderName = true, PlaceholderName = string.Empty }; string @string = Registry.GetString("/Current_User/SelectRendering/Selected"); if (!string.IsNullOrEmpty(@string)) { renderingOptions.SelectedItem = Client.ContentDatabase.GetItem(@string); } //Modify the following line to include id and deviceid parameters SheerResponse.ShowModalDialog(renderingOptions.ToUrlString(Sitecore.Client.ContentDatabase).ToString() + "&ciId=" + System.Web.HttpUtility.UrlEncode(itm.ID.ToString()) + "&deviceid=" + System.Web.HttpUtility.UrlEncode(this.DeviceID), true); //SheerResponse.ShowModalDialog(renderingOptions.ToUrlString(Client.ContentDatabase).ToString(), true); args.WaitForPostBack(); } }
protected void Change(ClientPipelineArgs args) { Assert.ArgumentNotNull(args, "args"); if (this.SelectedIndex < 0) { return; } LayoutDefinition layoutDefinition = DeviceEditorForm.GetLayoutDefinition(); DeviceDefinition device = layoutDefinition.GetDevice(this.DeviceID); System.Collections.ArrayList renderings = device.Renderings; if (renderings == null) { return; } RenderingDefinition renderingDefinition = renderings[this.SelectedIndex] as RenderingDefinition; if (renderingDefinition == null) { return; } if (string.IsNullOrEmpty(renderingDefinition.ItemID)) { return; } if (args.IsPostBack) { if (args.HasResult) { string[] array = args.Result.Split(new char[] { ',' }); renderingDefinition.ItemID = array[0]; bool flag = array[2] == "1"; DeviceEditorForm.SetDefinition(layoutDefinition); this.Refresh(); if (flag) { Context.ClientPage.SendMessage(this, "device:edit"); return; } } } else { SelectRenderingOptions selectRenderingOptions = new SelectRenderingOptions { ShowOpenProperties = true, ShowPlaceholderName = false, PlaceholderName = string.Empty, SelectedItem = Client.ContentDatabase.GetItem(renderingDefinition.ItemID) }; string url = selectRenderingOptions.ToUrlString(Client.ContentDatabase).ToString(); SheerResponse.ShowModalDialog(url, true); args.WaitForPostBack(); } }
protected void Add(ClientPipelineArgs args) { Assert.ArgumentNotNull(args, "args"); if (args.IsPostBack) { if (args.HasResult) { string[] array = args.Result.Split(new char[] { ',' }); string text = array[0]; string placeholder = array[1].Replace("-c-", ","); bool flag = array[2] == "1"; LayoutDefinition layoutDefinition = DeviceEditorForm.GetLayoutDefinition(); DeviceDefinition device = layoutDefinition.GetDevice(this.DeviceID); RenderingDefinition renderingDefinition = new RenderingDefinition { ItemID = text, Placeholder = placeholder }; device.AddRendering(renderingDefinition); DeviceEditorForm.SetDefinition(layoutDefinition); this.Refresh(); if (flag) { System.Collections.ArrayList renderings = device.Renderings; if (renderings != null) { this.SelectedIndex = renderings.Count - 1; Context.ClientPage.SendMessage(this, "device:edit"); } } Registry.SetString("/Current_User/SelectRendering/Selected", text); return; } } else { SelectRenderingOptions selectRenderingOptions = new SelectRenderingOptions { ShowOpenProperties = true, ShowPlaceholderName = true, PlaceholderName = string.Empty }; string @string = Registry.GetString("/Current_User/SelectRendering/Selected"); if (!string.IsNullOrEmpty(@string)) { selectRenderingOptions.SelectedItem = Client.ContentDatabase.GetItem(@string); } string url = selectRenderingOptions.ToUrlString(Client.ContentDatabase).ToString(); SheerResponse.ShowModalDialog(url, true); args.WaitForPostBack(); } }
protected void Change(ClientPipelineArgs args) { Assert.ArgumentNotNull((object)args, "args"); if (this.SelectedIndex < 0) { return; } LayoutDefinition layoutDefinition = CustomDeviceEditor.GetLayoutDefinition(); ArrayList renderings = layoutDefinition.GetDevice(this.DeviceID).Renderings; if (renderings == null) { return; } RenderingDefinition renderingDefinition = renderings[this.SelectedIndex] as RenderingDefinition; if (renderingDefinition == null || string.IsNullOrEmpty(renderingDefinition.ItemID)) { return; } if (args.IsPostBack) { if (!args.HasResult) { return; } string[] strArray = args.Result.Split(','); renderingDefinition.ItemID = strArray[0]; bool flag = strArray[2] == "1"; CustomDeviceEditor.SetDefinition(layoutDefinition); this.Refresh(); if (!flag) { return; } Context.ClientPage.SendMessage((object)this, "device:edit"); } else { SelectRenderingOptions renderingOptions = new SelectRenderingOptions(); renderingOptions.ShowOpenProperties = true; renderingOptions.ShowPlaceholderName = false; renderingOptions.PlaceholderName = string.Empty; renderingOptions.SelectedItem = Client.ContentDatabase.GetItem(renderingDefinition.ItemID); SheerResponse.ShowModalDialog(renderingOptions.ToUrlString(Client.ContentDatabase).ToString(), true); args.WaitForPostBack(); } }
protected override void OnLoad(EventArgs e) { Assert.ArgumentNotNull((object)e, "e"); IsOpenPropertiesChecked = Registry.GetBool("/Current_User/SelectRendering/IsOpenPropertiesChecked"); SelectRenderingOptions renderingOptions = SelectItemOptions.Parse <SelectRenderingOptions>(); base.OnLoad(e); if (Context.ClientPage.IsEvent) { return; } var groupedRenderings = renderingOptions.Items?.GroupBy(i => i.Parent.Name).ToArray() ?? new IGrouping <string, Item> [0]; if (renderingOptions.ShowTree || groupedRenderings.Length == 0) { var gridPanel = Renderings.Parent as GridPanel; gridPanel?.SetExtensibleProperty(Tabs, "class", "scDisplayNone"); } else { foreach (var renderingGroup in groupedRenderings) { var newTab = new Tab { Header = renderingGroup.Key, CssClass = "scTabPage" }; newTab.Controls.Add(new LiteralControl(RenderPreviews(renderingGroup))); Tabs.Controls.Add(newTab); } Renderings.Visible = false; var gridPanel = Renderings.Parent as GridPanel; gridPanel?.SetExtensibleProperty(Renderings, "class", "scDisplayNone"); } }
protected void Change(ClientPipelineArgs args) { Assert.ArgumentNotNull(args, "args"); if (this.SelectedIndex < 0) { return; } LayoutDefinition layoutDefinition = AdvancedDeviceEditorForm.GetLayoutDefinition(); ArrayList renderings = layoutDefinition.GetDevice(this.DeviceID).Renderings; if (renderings == null) { return; } RenderingDefinition item = renderings[this.SelectedIndex] as RenderingDefinition; if (item == null) { return; } if (string.IsNullOrEmpty(item.ItemID)) { return; } if (!args.IsPostBack) { SelectRenderingOptions selectRenderingOption = new SelectRenderingOptions() { ShowOpenProperties = true, ShowPlaceholderName = false, PlaceholderName = string.Empty, SelectedItem = Client.ContentDatabase.GetItem(item.ItemID) }; string str = selectRenderingOption.ToUrlString(Client.ContentDatabase).ToString(); SheerResponse.ShowModalDialog(str, true); args.WaitForPostBack(); } else if (args.HasResult) { string[] strArrays = args.Result.Split(new char[] { ',' }); item.ItemID = strArrays[0]; bool flag = strArrays[2] == "1"; AdvancedDeviceEditorForm.SetDefinition(layoutDefinition); this.Refresh(); if (flag) { Context.ClientPage.SendMessage(this, "device:edit"); return; } } }
protected void Add(ClientPipelineArgs args) { Assert.ArgumentNotNull(args, "args"); if (!args.IsPostBack) { SelectRenderingOptions selectRenderingOption = new SelectRenderingOptions() { ShowOpenProperties = true, ShowPlaceholderName = true, PlaceholderName = string.Empty }; SelectRenderingOptions item = selectRenderingOption; string str = Registry.GetString("/Current_User/SelectRendering/Selected"); if (!string.IsNullOrEmpty(str)) { item.SelectedItem = Client.ContentDatabase.GetItem(str); } string str1 = item.ToUrlString(Client.ContentDatabase).ToString(); SheerResponse.ShowModalDialog(str1, true); args.WaitForPostBack(); } else if (args.HasResult) { string[] strArrays = args.Result.Split(new char[] { ',' }); string str2 = strArrays[0]; string str3 = strArrays[1].Replace("-c-", ","); bool flag = strArrays[2] == "1"; LayoutDefinition layoutDefinition = AdvancedDeviceEditorForm.GetLayoutDefinition(); DeviceDefinition device = layoutDefinition.GetDevice(this.DeviceID); RenderingDefinition renderingDefinition = new RenderingDefinition() { ItemID = str2, Placeholder = str3 }; device.AddRendering(renderingDefinition); AdvancedDeviceEditorForm.SetDefinition(layoutDefinition); this.Refresh(); if (flag) { ArrayList renderings = device.Renderings; if (renderings != null) { this.SelectedIndex = renderings.Count - 1; Context.ClientPage.SendMessage(this, "device:edit"); } } Registry.SetString("/Current_User/SelectRendering/Selected", str2); return; } }
protected override void OnLoad(EventArgs e) { Assert.ArgumentNotNull((object)e, "e"); base.OnLoad(e); if (Context.ClientPage.IsEvent) { return; } IsOpenPropertiesChecked = Registry.GetBool("/Current_User/SelectRendering/IsOpenPropertiesChecked"); SelectRenderingOptions renderingOptions = SelectItemOptions.Parse <SelectRenderingOptions>(); if (renderingOptions.ShowOpenProperties) { OpenPropertiesBorder.Visible = true; OpenProperties.Checked = IsOpenPropertiesChecked; } if (renderingOptions.ShowPlaceholderName) { PlaceholderNameBorder.Visible = true; PlaceholderName.Value = renderingOptions.PlaceholderName; } if (!renderingOptions.ShowTree) { TreeviewContainer.Class = string.Empty; TreeviewContainer.Visible = false; TreeSplitter.Visible = false; GridPanel gridPanel = TreeviewContainer.Parent as GridPanel; if (gridPanel != null) { gridPanel.SetExtensibleProperty(TreeviewContainer, "class", "scDisplayNone"); } //Line of Code that does grouping var gruppedSublayouts = renderingOptions.Items.GroupBy(i => i.Parent.Name); //Add new tab for each folder foreach (IGrouping <string, Item> gruppedSublayout in gruppedSublayouts) { var newTab = new Tab(); newTab.Header = gruppedSublayout.Key; var newScrollbox = new Scrollbox(); newScrollbox.Class = "scScrollbox scFixSize scFixSize4"; newScrollbox.Background = "white"; newScrollbox.Padding = "0px"; newScrollbox.Width = new Unit(100, UnitType.Percentage); newScrollbox.Height = new Unit(100, UnitType.Percentage); newScrollbox.InnerHtml = RenderPreviews(gruppedSublayout); newTab.Controls.Add(newScrollbox); Tabs.Controls.Add(newTab); } gridPanel = Renderings.Parent as GridPanel; if (gridPanel != null) { gridPanel.SetExtensibleProperty(Renderings, "class", "scDisplayNone"); } } else { var gridPanel = Renderings.Parent as GridPanel; if (gridPanel != null) { gridPanel.SetExtensibleProperty(Tabs, "class", "scDisplayNone"); } } //end of new code SetOpenPropertiesState(renderingOptions.SelectedItem); }
/// <summary> /// Raises the load event. /// </summary> /// <param name="e">The <see cref="T:System.EventArgs"/> instance containing the event data.</param> protected override void OnLoad(EventArgs e) { Assert.ArgumentNotNull((object)e, "e"); base.OnLoad(e); if (Context.ClientPage.IsEvent) { return; } this.IsOpenPropertiesChecked = Registry.GetBool("/Current_User/SelectRendering/IsOpenPropertiesChecked"); SelectRenderingOptions renderingOptions = SelectItemOptions.Parse <SelectRenderingOptions>(); if (renderingOptions.ShowOpenProperties) { this.OpenPropertiesBorder.Visible = true; this.OpenProperties.Checked = this.IsOpenPropertiesChecked; } if (renderingOptions.ShowPlaceholderName) { this.PlaceholderNameBorder.Visible = true; this.PlaceholderName.Value = renderingOptions.PlaceholderName; } if (!renderingOptions.ShowTree) { this.TreeviewContainer.Class = string.Empty; this.TreeviewContainer.Visible = false; this.TreeSplitter.Visible = false; GridPanel gridPanel = this.TreeviewContainer.Parent as GridPanel; if (gridPanel != null) { gridPanel.SetExtensibleProperty((System.Web.UI.Control) this.TreeviewContainer, "class", "scDisplayNone"); } this.Renderings.InnerHtml = this.RenderPreviews((IEnumerable <Item>)renderingOptions.Items); // Start custom code this.TabbedGridPanel.Visible = true; this.DefaultGridPanel.Visible = false; var renderingGroups = renderingOptions.Items.GroupBy(i => i.Parent.Name); foreach (IGrouping <string, Item> rendering in renderingGroups) { var newTab = new Tab(); newTab.Header = rendering.Key; var newScrollbox = new Scrollbox(); newScrollbox.Class = "scScrollbox scFixSize scFixSize4"; newScrollbox.Background = "white"; newScrollbox.Padding = "0px"; newScrollbox.Width = new Unit(100, UnitType.Percentage); newScrollbox.Height = new Unit(100, UnitType.Percentage); newScrollbox.InnerHtml = RenderPreviews(rendering); newTab.Controls.Add(newScrollbox); Tabs.Controls.Add(newTab); } gridPanel = Renderings.Parent as GridPanel; if (gridPanel != null) { gridPanel.SetExtensibleProperty(Renderings, "class", "scDisplayNone"); } // End custom code } else { this.MainGridPanel.Controls.RemoveAt(0); this.DefaultGridPanel.Visible = true; this.TabbedGridPanel.Visible = false; } this.SetOpenPropertiesState(renderingOptions.SelectedItem); }