private bool ShouldRenderVerb(WebPartVerb verb, WebPart webPart) { if (verb == null) { return(false); } if (!verb.Visible) { return(false); } if ((verb == this.Zone.CloseVerb) && ((!this._personalizationEnabled || !webPart.AllowClose) || !this.Zone.AllowLayoutChange)) { return(false); } if ((verb == this.Zone.ConnectVerb) && (this.WebPartManager != null)) { if (((this.WebPartManager.DisplayMode != System.Web.UI.WebControls.WebParts.WebPartManager.ConnectDisplayMode) || (webPart == this.WebPartManager.SelectedWebPart)) || !webPart.AllowConnect) { return(false); } ConsumerConnectionPointCollection enabledConsumerConnectionPoints = this.WebPartManager.GetEnabledConsumerConnectionPoints(webPart); ProviderConnectionPointCollection enabledProviderConnectionPoints = this.WebPartManager.GetEnabledProviderConnectionPoints(webPart); if (((enabledConsumerConnectionPoints == null) || (enabledConsumerConnectionPoints.Count == 0)) && ((enabledProviderConnectionPoints == null) || (enabledProviderConnectionPoints.Count == 0))) { return(false); } } if ((verb == this.Zone.DeleteVerb) && ((((!this._personalizationEnabled || !this.Zone.AllowLayoutChange) || webPart.IsStatic) || (webPart.IsShared && (this._personalizationScope == PersonalizationScope.User))) || ((this.WebPartManager != null) && !this.WebPartManager.DisplayMode.AllowPageDesign))) { return(false); } if (((verb == this.Zone.EditVerb) && (this.WebPartManager != null)) && ((this.WebPartManager.DisplayMode != System.Web.UI.WebControls.WebParts.WebPartManager.EditDisplayMode) || (webPart == this.WebPartManager.SelectedWebPart))) { return(false); } if ((verb == this.Zone.HelpVerb) && string.IsNullOrEmpty(webPart.HelpUrl)) { return(false); } if ((verb == this.Zone.MinimizeVerb) && ((!this._personalizationEnabled || (webPart.ChromeState == PartChromeState.Minimized)) || (!webPart.AllowMinimize || !this.Zone.AllowLayoutChange))) { return(false); } if ((verb == this.Zone.RestoreVerb) && ((!this._personalizationEnabled || (webPart.ChromeState == PartChromeState.Normal)) || !this.Zone.AllowLayoutChange)) { return(false); } return((verb != this.Zone.ExportVerb) || (this._personalizationEnabled && (webPart.ExportMode != WebPartExportMode.None))); }
private bool ShouldRenderVerb(WebPartVerb verb, WebPart webPart) { // PERF: Consider caching the Zone.*Verb properties // Can have null verbs in the CreateVerbs or WebPart.Verbs collections if (verb == null) { return(false); } if (!verb.Visible) { return(false); } if (verb == Zone.CloseVerb) { if (!_personalizationEnabled || !webPart.AllowClose || !Zone.AllowLayoutChange) { return(false); } } if (verb == Zone.ConnectVerb) { if (WebPartManager != null) { if ((WebPartManager.DisplayMode != WebPartManager.ConnectDisplayMode) || (webPart == WebPartManager.SelectedWebPart) || !webPart.AllowConnect) { return(false); } // Don't render Connect verb if web part has no connection points ConsumerConnectionPointCollection consumerConnectionPoints = WebPartManager.GetEnabledConsumerConnectionPoints(webPart); ProviderConnectionPointCollection providerConnectionPoints = WebPartManager.GetEnabledProviderConnectionPoints(webPart); if ((consumerConnectionPoints == null || consumerConnectionPoints.Count == 0) && (providerConnectionPoints == null || providerConnectionPoints.Count == 0)) { return(false); } } } if (verb == Zone.DeleteVerb) { if (!_personalizationEnabled || !Zone.AllowLayoutChange || webPart.IsStatic || (webPart.IsShared && _personalizationScope == PersonalizationScope.User) || (WebPartManager != null && !WebPartManager.DisplayMode.AllowPageDesign)) { return(false); } } if (verb == Zone.EditVerb) { if (WebPartManager != null && ((WebPartManager.DisplayMode != WebPartManager.EditDisplayMode) || (webPart == WebPartManager.SelectedWebPart))) { return(false); } } if (verb == Zone.HelpVerb) { if (String.IsNullOrEmpty(webPart.HelpUrl)) { return(false); } } if (verb == Zone.MinimizeVerb) { if (!_personalizationEnabled || webPart.ChromeState == PartChromeState.Minimized || !webPart.AllowMinimize || !Zone.AllowLayoutChange) { return(false); } } if (verb == Zone.RestoreVerb) { if (!_personalizationEnabled || webPart.ChromeState == PartChromeState.Normal || !Zone.AllowLayoutChange) { return(false); } } if (verb == Zone.ExportVerb) { if (!_personalizationEnabled || webPart.ExportMode == WebPartExportMode.None) { return(false); } } return(true); }
private void RenderVerb(HtmlTextWriter writer, WebPart webPart, WebPartVerb verb) { WebControl verbControl; bool isEnabled = Zone.IsEnabled && verb.Enabled; ButtonType verbButtonType = Zone.TitleBarVerbButtonType; if (verb == Zone.HelpVerb) { // string resolvedHelpUrl = Zone.ResolveClientUrl(webPart.HelpUrl); // if (verbButtonType == ButtonType.Button) { ZoneButton button = new ZoneButton(Zone, null); if (isEnabled) { if (Zone.RenderClientScript) { button.OnClientClick = "__wpm.ShowHelp('" + Util.QuoteJScriptString(resolvedHelpUrl) + "', " + ((int)webPart.HelpMode).ToString(CultureInfo.InvariantCulture) + ");return;"; } else { if (webPart.HelpMode != WebPartHelpMode.Navigate) { button.OnClientClick = "window.open('" + Util.QuoteJScriptString(resolvedHelpUrl) + "', '_blank', 'scrollbars=yes,resizable=yes,status=no,toolbar=no,menubar=no,location=no');return;"; } else { button.OnClientClick = "window.location.href='" + Util.QuoteJScriptString(resolvedHelpUrl) + "';return;"; } } } button.Text = verb.Text; verbControl = button; } else { HyperLink hyperLink = new HyperLink(); switch (webPart.HelpMode) { case WebPartHelpMode.Modal: if (!Zone.RenderClientScript) { goto case WebPartHelpMode.Modeless; } hyperLink.NavigateUrl = "javascript:__wpm.ShowHelp('" + Util.QuoteJScriptString(resolvedHelpUrl) + "', 0)"; break; case WebPartHelpMode.Modeless: hyperLink.NavigateUrl = resolvedHelpUrl; hyperLink.Target = "_blank"; break; case WebPartHelpMode.Navigate: hyperLink.NavigateUrl = resolvedHelpUrl; break; } hyperLink.Text = verb.Text; if (verbButtonType == ButtonType.Image) { hyperLink.ImageUrl = verb.ImageUrl; } verbControl = hyperLink; } } else if (verb == Zone.ExportVerb) { string exportUrl = _manager.GetExportUrl(webPart); if (verbButtonType == ButtonType.Button) { ZoneButton button = new ZoneButton(Zone, String.Empty); button.Text = verb.Text; if (isEnabled) { if ((webPart.ExportMode == WebPartExportMode.All) && (_personalizationScope == PersonalizationScope.User)) { if (Zone.RenderClientScript) { button.OnClientClick = "__wpm.ExportWebPart('" + Util.QuoteJScriptString(exportUrl) + "', true, false);return false;"; } else { button.OnClientClick = "if(__wpmExportWarning.length == 0 || " + "confirm(__wpmExportWarning)){window.location='" + Util.QuoteJScriptString(exportUrl) + "';}return false;"; } } else { button.OnClientClick = "window.location='" + Util.QuoteJScriptString(exportUrl) + "';return false;"; } } verbControl = button; } else { // Special case for export which must be a plain HyperLink // (href=javascript:void(0) would ruin any redirecting script) HyperLink link = new HyperLink(); link.Text = verb.Text; if (verbButtonType == ButtonType.Image) { link.ImageUrl = verb.ImageUrl; } link.NavigateUrl = exportUrl; if (webPart.ExportMode == WebPartExportMode.All) { // Confirm before exporting if (Zone.RenderClientScript) { link.Attributes.Add("onclick", "return __wpm.ExportWebPart('', true, true)"); } else { string onclick = "return (__wpmExportWarning.length == 0 || confirm(__wpmExportWarning))"; link.Attributes.Add("onclick", onclick); } } verbControl = link; } } else { string eventArgument = verb.GetEventArgument(webPart.ID); string clientClickHandler = verb.ClientClickHandler; if (verbButtonType == ButtonType.Button) { ZoneButton button = new ZoneButton(Zone, eventArgument); button.Text = verb.Text; if (!String.IsNullOrEmpty(clientClickHandler) && isEnabled) { button.OnClientClick = clientClickHandler; } verbControl = button; } else { ZoneLinkButton linkButton = new ZoneLinkButton(Zone, eventArgument); linkButton.Text = verb.Text; if (verbButtonType == ButtonType.Image) { linkButton.ImageUrl = verb.ImageUrl; } if (!String.IsNullOrEmpty(clientClickHandler) && isEnabled) { linkButton.OnClientClick = clientClickHandler; } verbControl = linkButton; } if (_manager != null && isEnabled) { if (verb == Zone.CloseVerb) { // PERF: First check if this WebPart even has provider connection points ProviderConnectionPointCollection connectionPoints = _manager.GetProviderConnectionPoints(webPart); if (connectionPoints != null && connectionPoints.Count > 0 && Connections.ContainsProvider(webPart)) { string onclick = "if (__wpmCloseProviderWarning.length >= 0 && " + "!confirm(__wpmCloseProviderWarning)) { return false; }"; verbControl.Attributes.Add("onclick", onclick); } } else if (verb == Zone.DeleteVerb) { string onclick = "if (__wpmDeleteWarning.length >= 0 && !confirm(__wpmDeleteWarning)) { return false; }"; verbControl.Attributes.Add("onclick", onclick); } } } verbControl.ApplyStyle(Zone.TitleBarVerbStyle); verbControl.ToolTip = String.Format(CultureInfo.CurrentCulture, verb.Description, webPart.DisplayTitle); verbControl.Enabled = verb.Enabled; verbControl.Page = _page; verbControl.RenderControl(writer); }
private void RenderMenuPopup(HtmlTextWriter writer, ICollection verbs, string clientID, WebPart associatedWebPart, WebPartManager webPartManager) { writer.AddAttribute(HtmlTextWriterAttribute.Id, clientID + "Menu"); writer.AddStyleAttribute(HtmlTextWriterStyle.Display, "none"); writer.RenderBeginTag(HtmlTextWriterTag.Div); bool isEmpty = true; WebPartMenuStyle menuPopupStyle = this._menuUser.MenuPopupStyle; if (menuPopupStyle != null) { menuPopupStyle.AddAttributesToRender(writer, this._menuUser as WebControl); isEmpty = menuPopupStyle.Width.IsEmpty; } else { writer.AddAttribute(HtmlTextWriterAttribute.Cellspacing, "0"); writer.AddAttribute(HtmlTextWriterAttribute.Cellpadding, "1"); writer.AddStyleAttribute(HtmlTextWriterStyle.BorderCollapse, "collapse"); } if (isEmpty) { writer.AddStyleAttribute(HtmlTextWriterStyle.Width, "100%"); } writer.RenderBeginTag(HtmlTextWriterTag.Table); writer.RenderBeginTag(HtmlTextWriterTag.Tr); writer.AddStyleAttribute(HtmlTextWriterStyle.WhiteSpace, "nowrap"); writer.RenderBeginTag(HtmlTextWriterTag.Td); bool isEnabled = associatedWebPart.Zone.IsEnabled; foreach (WebPartVerb verb in verbs) { string description; writer.RenderBeginTag(HtmlTextWriterTag.Div); if (associatedWebPart != null) { description = string.Format(CultureInfo.CurrentCulture, verb.Description, new object[] { associatedWebPart.DisplayTitle }); } else { description = verb.Description; } if (description.Length != 0) { writer.AddAttribute(HtmlTextWriterAttribute.Title, description); } bool flag3 = isEnabled && verb.Enabled; if (verb is WebPartHelpVerb) { string str2 = associatedWebPart.ResolveClientUrl(associatedWebPart.HelpUrl); writer.AddAttribute(HtmlTextWriterAttribute.Href, "javascript:void(0)"); if (flag3) { writer.AddAttribute(HtmlTextWriterAttribute.Onclick, "document.body.__wpm.ShowHelp('" + Util.QuoteJScriptString(str2) + "', " + ((int)associatedWebPart.HelpMode).ToString(CultureInfo.InvariantCulture) + ")"); } } else if (verb is WebPartExportVerb) { string exportUrl = webPartManager.GetExportUrl(associatedWebPart); writer.AddAttribute(HtmlTextWriterAttribute.Href, "javascript:void(0)"); if (flag3) { writer.AddAttribute(HtmlTextWriterAttribute.Onclick, "document.body.__wpm.ExportWebPart('" + Util.QuoteJScriptString(exportUrl) + ((associatedWebPart.ExportMode == WebPartExportMode.All) ? "', true, false)" : "', false, false)")); } } else { string postBackTarget = this._menuUser.PostBackTarget; writer.AddAttribute(HtmlTextWriterAttribute.Href, "javascript:void(0)"); if (flag3) { string eventArgument = verb.EventArgument; if (associatedWebPart != null) { eventArgument = verb.GetEventArgument(associatedWebPart.ID); } string str6 = null; if (!string.IsNullOrEmpty(eventArgument)) { str6 = "document.body.__wpm.SubmitPage('" + Util.QuoteJScriptString(postBackTarget) + "', '" + Util.QuoteJScriptString(eventArgument) + "');"; this._menuUser.Page.ClientScript.RegisterForEventValidation(postBackTarget, eventArgument); } string str7 = null; if (!string.IsNullOrEmpty(verb.ClientClickHandler)) { str7 = "document.body.__wpm.Execute('" + Util.QuoteJScriptString(Util.EnsureEndWithSemiColon(verb.ClientClickHandler)) + "')"; } string str8 = string.Empty; if ((str6 != null) && (str7 != null)) { str8 = "if(" + str7 + "){" + str6 + "}"; } else if (str6 != null) { str8 = str6; } else if (str7 != null) { str8 = str7; } if (verb is WebPartCloseVerb) { ProviderConnectionPointCollection providerConnectionPoints = webPartManager.GetProviderConnectionPoints(associatedWebPart); if (((providerConnectionPoints != null) && (providerConnectionPoints.Count > 0)) && webPartManager.Connections.ContainsProvider(associatedWebPart)) { str8 = "if(document.body.__wpmCloseProviderWarning.length == 0 || confirm(document.body.__wpmCloseProviderWarning)){" + str8 + "}"; } } else if (verb is WebPartDeleteVerb) { str8 = "if(document.body.__wpmDeleteWarning.length == 0 || confirm(document.body.__wpmDeleteWarning)){" + str8 + "}"; } writer.AddAttribute(HtmlTextWriterAttribute.Onclick, str8); } } string str9 = "menuItem"; if (!verb.Enabled) { if (associatedWebPart.Zone.RenderingCompatibility < VersionUtil.Framework40) { writer.AddAttribute(HtmlTextWriterAttribute.Disabled, "disabled"); } else if (!string.IsNullOrEmpty(WebControl.DisabledCssClass)) { str9 = WebControl.DisabledCssClass + " " + str9; } } writer.AddAttribute(HtmlTextWriterAttribute.Class, str9); writer.RenderBeginTag(HtmlTextWriterTag.A); string imageUrl = verb.ImageUrl; if (imageUrl.Length != 0) { imageUrl = this._menuUser.UrlResolver.ResolveClientUrl(imageUrl); } else if (verb.Checked) { imageUrl = this._menuUser.CheckImageUrl; if (imageUrl.Length == 0) { imageUrl = DefaultCheckImageUrl; } } else { imageUrl = webPartManager.SpacerImageUrl; } writer.AddAttribute(HtmlTextWriterAttribute.Src, imageUrl); writer.AddAttribute(HtmlTextWriterAttribute.Alt, description, true); writer.AddAttribute(HtmlTextWriterAttribute.Width, "16"); writer.AddAttribute(HtmlTextWriterAttribute.Height, "16"); writer.AddStyleAttribute(HtmlTextWriterStyle.BorderStyle, "none"); writer.AddStyleAttribute("vertical-align", "middle"); if (verb.Checked) { Style checkImageStyle = this._menuUser.CheckImageStyle; if (checkImageStyle != null) { checkImageStyle.AddAttributesToRender(writer, this._menuUser as WebControl); } } writer.RenderBeginTag(HtmlTextWriterTag.Img); writer.RenderEndTag(); writer.Write(" "); writer.Write(verb.Text); writer.Write(" "); writer.RenderEndTag(); writer.RenderEndTag(); } writer.RenderEndTag(); writer.RenderEndTag(); writer.RenderEndTag(); writer.RenderEndTag(); }
private void RenderMenuPopup(HtmlTextWriter writer, ICollection verbs, string clientID, WebPart associatedWebPart, WebPartManager webPartManager) { writer.AddAttribute(HtmlTextWriterAttribute.Id, clientID + "Menu"); writer.AddStyleAttribute(HtmlTextWriterStyle.Display, "none"); writer.RenderBeginTag(HtmlTextWriterTag.Div); bool popupSpansFullExtent = true; WebPartMenuStyle menuStyle = _menuUser.MenuPopupStyle; if (menuStyle != null) { menuStyle.AddAttributesToRender(writer, _menuUser as WebControl); popupSpansFullExtent = menuStyle.Width.IsEmpty; } else { // generate attributes corresponding to defaults on WebPartMenuStyle writer.AddAttribute(HtmlTextWriterAttribute.Cellspacing, "0"); writer.AddAttribute(HtmlTextWriterAttribute.Cellpadding, "1"); writer.AddStyleAttribute(HtmlTextWriterStyle.BorderCollapse, "collapse"); } if (popupSpansFullExtent) { writer.AddStyleAttribute(HtmlTextWriterStyle.Width, "100%"); } writer.RenderBeginTag(HtmlTextWriterTag.Table); writer.RenderBeginTag(HtmlTextWriterTag.Tr); writer.AddStyleAttribute(HtmlTextWriterStyle.WhiteSpace, "nowrap"); writer.RenderBeginTag(HtmlTextWriterTag.Td); bool isParentEnabled = associatedWebPart.Zone.IsEnabled; foreach (WebPartVerb verb in verbs) { Debug.Assert(verb != null); writer.RenderBeginTag(HtmlTextWriterTag.Div); string alt; if (associatedWebPart != null) { alt = String.Format(CultureInfo.CurrentCulture, verb.Description, associatedWebPart.DisplayTitle); } else { alt = verb.Description; } if (alt.Length != 0) { writer.AddAttribute(HtmlTextWriterAttribute.Title, alt); } bool isEnabled = isParentEnabled && verb.Enabled; // Special case help, export, etc. if (verb is WebPartHelpVerb) { Debug.Assert(associatedWebPart != null); string resolvedHelpUrl = ((IUrlResolutionService)associatedWebPart).ResolveClientUrl(associatedWebPart.HelpUrl); writer.AddAttribute(HtmlTextWriterAttribute.Href, "javascript:void(0)"); if (isEnabled) { writer.AddAttribute(HtmlTextWriterAttribute.Onclick, "document.body.__wpm.ShowHelp('" + Util.QuoteJScriptString(resolvedHelpUrl) + "', " + ((int)associatedWebPart.HelpMode).ToString(CultureInfo.InvariantCulture) + ")"); } } else if (verb is WebPartExportVerb) { Debug.Assert(associatedWebPart != null); string exportUrl = webPartManager.GetExportUrl(associatedWebPart); writer.AddAttribute(HtmlTextWriterAttribute.Href, "javascript:void(0)"); if (isEnabled) { writer.AddAttribute(HtmlTextWriterAttribute.Onclick, "document.body.__wpm.ExportWebPart('" + Util.QuoteJScriptString(exportUrl) + ((associatedWebPart.ExportMode == WebPartExportMode.All) ? "', true, false)" : "', false, false)")); } } else { string target = _menuUser.PostBackTarget; writer.AddAttribute(HtmlTextWriterAttribute.Href, "javascript:void(0)"); if (isEnabled) { string eventArgument = verb.EventArgument; if (associatedWebPart != null) { eventArgument = verb.GetEventArgument(associatedWebPart.ID); } string submitScript = null; if (!String.IsNullOrEmpty(eventArgument)) { submitScript = "document.body.__wpm.SubmitPage('" + Util.QuoteJScriptString(target) + "', '" + Util.QuoteJScriptString(eventArgument) + "');"; _menuUser.Page.ClientScript.RegisterForEventValidation(target, eventArgument); } string clientClickScript = null; if (!String.IsNullOrEmpty(verb.ClientClickHandler)) { clientClickScript = "document.body.__wpm.Execute('" + Util.QuoteJScriptString(Util.EnsureEndWithSemiColon(verb.ClientClickHandler)) + "')"; } // There must be either an EventArgument or a ClientClickHandler Debug.Assert(submitScript != null || clientClickScript != null); string onclick = String.Empty; if (submitScript != null && clientClickScript != null) { onclick = "if(" + clientClickScript + "){" + submitScript + "}"; } else if (submitScript != null) { onclick = submitScript; } else if (clientClickScript != null) { onclick = clientClickScript; } if (verb is WebPartCloseVerb) { Debug.Assert(associatedWebPart != null); // PERF: First check if this WebPart even has provider connection points ProviderConnectionPointCollection connectionPoints = webPartManager.GetProviderConnectionPoints(associatedWebPart); if (connectionPoints != null && connectionPoints.Count > 0 && webPartManager.Connections.ContainsProvider(associatedWebPart)) { onclick = "if(document.body.__wpmCloseProviderWarning.length == 0 || " + "confirm(document.body.__wpmCloseProviderWarning)){" + onclick + "}"; } } else if (verb is WebPartDeleteVerb) { onclick = "if(document.body.__wpmDeleteWarning.length == 0 || " + "confirm(document.body.__wpmDeleteWarning)){" + onclick + "}"; } writer.AddAttribute(HtmlTextWriterAttribute.Onclick, onclick); } } string disabledClass = "menuItem"; if (!verb.Enabled) { if (associatedWebPart.Zone.RenderingCompatibility < VersionUtil.Framework40) { writer.AddAttribute(HtmlTextWriterAttribute.Disabled, "disabled"); } else if (!String.IsNullOrEmpty(WebControl.DisabledCssClass)) { disabledClass = WebControl.DisabledCssClass + " " + disabledClass; } } writer.AddAttribute(HtmlTextWriterAttribute.Class, disabledClass); writer.RenderBeginTag(HtmlTextWriterTag.A); string img = verb.ImageUrl; if (img.Length != 0) { img = _menuUser.UrlResolver.ResolveClientUrl(img); } else { if (verb.Checked) { img = _menuUser.CheckImageUrl; if (img.Length == 0) { img = DefaultCheckImageUrl; } } else { img = webPartManager.SpacerImageUrl; } } writer.AddAttribute(HtmlTextWriterAttribute.Src, img); writer.AddAttribute(HtmlTextWriterAttribute.Alt, alt, true); writer.AddAttribute(HtmlTextWriterAttribute.Width, "16"); writer.AddAttribute(HtmlTextWriterAttribute.Height, "16"); writer.AddStyleAttribute(HtmlTextWriterStyle.BorderStyle, "none"); writer.AddStyleAttribute("vertical-align", "middle"); if (verb.Checked) { Style checkImageStyle = _menuUser.CheckImageStyle; if (checkImageStyle != null) { checkImageStyle.AddAttributesToRender(writer, _menuUser as WebControl); } } writer.RenderBeginTag(HtmlTextWriterTag.Img); writer.RenderEndTag(); // Img writer.Write(" "); writer.Write(verb.Text); writer.Write(" "); writer.RenderEndTag(); // A writer.RenderEndTag(); // Div } writer.RenderEndTag(); // Td writer.RenderEndTag(); // Tr writer.RenderEndTag(); // Table writer.RenderEndTag(); // Div }
private void RenderVerb(HtmlTextWriter writer, WebPart webPart, WebPartVerb verb) { WebControl control; bool flag = this.Zone.IsEnabled && verb.Enabled; ButtonType titleBarVerbButtonType = this.Zone.TitleBarVerbButtonType; if (verb != this.Zone.HelpVerb) { if (verb == this.Zone.ExportVerb) { string exportUrl = this._manager.GetExportUrl(webPart); if (titleBarVerbButtonType == ButtonType.Button) { ZoneButton button2 = new ZoneButton(this.Zone, string.Empty) { Text = verb.Text }; if (flag) { if ((webPart.ExportMode == WebPartExportMode.All) && (this._personalizationScope == PersonalizationScope.User)) { if (this.Zone.RenderClientScript) { button2.OnClientClick = "__wpm.ExportWebPart('" + Util.QuoteJScriptString(exportUrl) + "', true, false);return false;"; } else { button2.OnClientClick = "if(__wpmExportWarning.length == 0 || confirm(__wpmExportWarning)){window.location='" + Util.QuoteJScriptString(exportUrl) + "';}return false;"; } } else { button2.OnClientClick = "window.location='" + Util.QuoteJScriptString(exportUrl) + "';return false;"; } } control = button2; } else { HyperLink link2 = new HyperLink { Text = verb.Text }; if (titleBarVerbButtonType == ButtonType.Image) { link2.ImageUrl = verb.ImageUrl; } link2.NavigateUrl = exportUrl; if (webPart.ExportMode == WebPartExportMode.All) { if (this.Zone.RenderClientScript) { link2.Attributes.Add("onclick", "return __wpm.ExportWebPart('', true, true)"); } else { string str3 = "return (__wpmExportWarning.length == 0 || confirm(__wpmExportWarning))"; link2.Attributes.Add("onclick", str3); } } control = link2; } } else { string eventArgument = verb.GetEventArgument(webPart.ID); string clientClickHandler = verb.ClientClickHandler; if (titleBarVerbButtonType == ButtonType.Button) { ZoneButton button3 = new ZoneButton(this.Zone, eventArgument) { Text = verb.Text }; if (!string.IsNullOrEmpty(clientClickHandler) && flag) { button3.OnClientClick = clientClickHandler; } control = button3; } else { ZoneLinkButton button4 = new ZoneLinkButton(this.Zone, eventArgument) { Text = verb.Text }; if (titleBarVerbButtonType == ButtonType.Image) { button4.ImageUrl = verb.ImageUrl; } if (!string.IsNullOrEmpty(clientClickHandler) && flag) { button4.OnClientClick = clientClickHandler; } control = button4; } if ((this._manager != null) && flag) { if (verb == this.Zone.CloseVerb) { ProviderConnectionPointCollection providerConnectionPoints = this._manager.GetProviderConnectionPoints(webPart); if (((providerConnectionPoints != null) && (providerConnectionPoints.Count > 0)) && this.Connections.ContainsProvider(webPart)) { string str6 = "if (__wpmCloseProviderWarning.length >= 0 && !confirm(__wpmCloseProviderWarning)) { return false; }"; control.Attributes.Add("onclick", str6); } } else if (verb == this.Zone.DeleteVerb) { string str7 = "if (__wpmDeleteWarning.length >= 0 && !confirm(__wpmDeleteWarning)) { return false; }"; control.Attributes.Add("onclick", str7); } } } goto Label_040C; } string str = this.Zone.ResolveClientUrl(webPart.HelpUrl); if (titleBarVerbButtonType == ButtonType.Button) { ZoneButton button = new ZoneButton(this.Zone, null); if (flag) { if (this.Zone.RenderClientScript) { button.OnClientClick = "__wpm.ShowHelp('" + Util.QuoteJScriptString(str) + "', " + ((int)webPart.HelpMode).ToString(CultureInfo.InvariantCulture) + ");return;"; } else if (webPart.HelpMode != WebPartHelpMode.Navigate) { button.OnClientClick = "window.open('" + Util.QuoteJScriptString(str) + "', '_blank', 'scrollbars=yes,resizable=yes,status=no,toolbar=no,menubar=no,location=no');return;"; } else { button.OnClientClick = "window.location.href='" + Util.QuoteJScriptString(str) + "';return;"; } } button.Text = verb.Text; control = button; goto Label_040C; } HyperLink link = new HyperLink(); switch (webPart.HelpMode) { case WebPartHelpMode.Modal: if (!this.Zone.RenderClientScript) { break; } link.NavigateUrl = "javascript:__wpm.ShowHelp('" + Util.QuoteJScriptString(str) + "', 0)"; goto Label_0187; case WebPartHelpMode.Modeless: break; case WebPartHelpMode.Navigate: link.NavigateUrl = str; goto Label_0187; default: goto Label_0187; } link.NavigateUrl = str; link.Target = "_blank"; Label_0187: link.Text = verb.Text; if (titleBarVerbButtonType == ButtonType.Image) { link.ImageUrl = verb.ImageUrl; } control = link; Label_040C: control.ApplyStyle(this.Zone.TitleBarVerbStyle); control.ToolTip = string.Format(CultureInfo.CurrentCulture, verb.Description, new object[] { webPart.DisplayTitle }); control.Enabled = verb.Enabled; control.Page = this._page; control.RenderControl(writer); }