/// <summary> /// Toggles the editor zone. /// </summary> /// <param name="webPart">The selected portlet.</param> /// <param name="page">Running Page instance.</param> internal static void ToggleEditorZone(IWebPart webPart, System.Web.UI.Page page) { var wpm = WebPartManager.GetCurrentWebPartManager(page); if (wpm == null) { return; } var mode = wpm.DisplayMode; var selectedWebPart = wpm.SelectedWebPart; var displaySidePanel = ((mode == WebPartManager.EditDisplayMode && selectedWebPart != null) || (mode == WebPartManager.CatalogDisplayMode) || (mode == WebPartManager.ConnectDisplayMode && selectedWebPart != null)); if (!displaySidePanel) { return; } if (webPart == null) { return; } //var toolPanel = page.Master.FindControl("sndlgToolPanel") as HtmlGenericControl; var toolPanel = page.Master.FindControl("snToolPanel") as HtmlGenericControl; if (toolPanel == null) { throw new ApplicationException("sndlgToolPanel element does not exist in the MasterPage."); } string webPartName = string.Empty; var portletBase = webPart as PortletBase; if (portletBase != null) { webPartName = portletBase.Name; } var webPartTypeName = webPart.GetType().Name; var title = String.Format("{0} portlet properties ({1})", webPartName, webPartTypeName); //var callback = String.Format(@"SN.PortalRemoteControl.showDialog('{0}', {{ autoOpen: true, width: 550, height:600, minWidth: 500, minHeight: 550, resize: SN.PortalRemoteControl.ResizePortletEditorAccordion, title:'{1}' }});", toolPanel.ClientID, title); var callback = String.Format(@"SN.PortalRemoteControl.showDialog('{0}', {{ autoOpen: true, width: 850, height:600, minWidth: 800, minHeight: 550, resize: SN.PortalRemoteControl.ResizePortletEditorAccordion }});", toolPanel.ClientID); var editorZone = page.Master.FindControlRecursive("EditorZone_Editor") as CollapsibleEditorZone; if (editorZone != null) { var p = page.ClientScript.GetPostBackEventReference(editorZone, "cancel"); callback = String.Format( @"SN.PortalRemoteControl.showDialog('{0}', {{ autoOpen: true, width: 850, height:600, minWidth: 800, minHeight: 550, resize: SN.PortalRemoteControl.ResizePortletEditorAccordion, title:'{1}', close: function(event,ui) {{ {2}; }} }} );", toolPanel.ClientID, title, p); } UITools.RegisterStartupScript("PropertyGridEditorShow", callback, page); }
/// <summary> /// Toggles the editor zone. /// </summary> /// <param name="webPart">The selected portlet.</param> /// <param name="page">Running Page instance.</param> internal static void ToggleEditorZone(IWebPart webPart, System.Web.UI.Page page) { var wpm = WebPartManager.GetCurrentWebPartManager(page); if (wpm == null) return; var mode = wpm.DisplayMode; var selectedWebPart = wpm.SelectedWebPart; var displaySidePanel = ((mode == WebPartManager.EditDisplayMode && selectedWebPart != null) || (mode == WebPartManager.CatalogDisplayMode) || (mode == WebPartManager.ConnectDisplayMode && selectedWebPart != null)); if (!displaySidePanel) return; if (webPart == null) return; //var toolPanel = page.Master.FindControl("sndlgToolPanel") as HtmlGenericControl; var toolPanel = page.Master.FindControl("snToolPanel") as HtmlGenericControl; if (toolPanel == null) throw new ApplicationException("sndlgToolPanel element does not exist in the MasterPage."); string webPartName = string.Empty; var portletBase = webPart as PortletBase; if (portletBase != null) webPartName = portletBase.Name; var webPartTypeName = webPart.GetType().Name; var title = String.Format("{0} portlet properties ({1})", webPartName, webPartTypeName); //var callback = String.Format(@"SN.PortalRemoteControl.showDialog('{0}', {{ autoOpen: true, width: 550, height:600, minWidth: 500, minHeight: 550, resize: SN.PortalRemoteControl.ResizePortletEditorAccordion, title:'{1}' }});", toolPanel.ClientID, title); var callback = String.Format(@"SN.PortalRemoteControl.showDialog('{0}', {{ autoOpen: true, width: 850, height:600, minWidth: 800, minHeight: 550, resize: SN.PortalRemoteControl.ResizePortletEditorAccordion }});", toolPanel.ClientID); var editorZone = page.Master.FindControlRecursive("EditorZone_Editor") as CollapsibleEditorZone; if (editorZone != null) { var p = page.ClientScript.GetPostBackEventReference(editorZone, "cancel"); callback = String.Format( @"SN.PortalRemoteControl.showDialog('{0}', {{ autoOpen: true, width: 850, height:600, minWidth: 800, minHeight: 550, resize: SN.PortalRemoteControl.ResizePortletEditorAccordion, title:'{1}', close: function(event,ui) {{ {2}; }} }} );", toolPanel.ClientID, title, p); } UITools.RegisterStartupScript("PropertyGridEditorShow", callback , page); }