From c93aca84c5bda483ebf03a72f814336e27f0198f Mon Sep 17 00:00:00 2001 From: James Moger <james.moger@gitblit.com> Date: Wed, 28 Nov 2012 17:54:53 -0500 Subject: [PATCH] Show a confirmation prompt on first startup of GCA if Unlimited Strength is unavailable --- src/com/gitblit/wicket/panels/GravatarImage.java | 23 ++++++++++++++--------- 1 files changed, 14 insertions(+), 9 deletions(-) diff --git a/src/com/gitblit/wicket/panels/GravatarImage.java b/src/com/gitblit/wicket/panels/GravatarImage.java index 0dc0502..7f1874f 100644 --- a/src/com/gitblit/wicket/panels/GravatarImage.java +++ b/src/com/gitblit/wicket/panels/GravatarImage.java @@ -17,19 +17,17 @@ import java.text.MessageFormat; -import org.apache.wicket.AttributeModifier; import org.apache.wicket.behavior.SimpleAttributeModifier; -import org.apache.wicket.markup.html.image.Image; import org.apache.wicket.markup.html.link.BookmarkablePageLink; import org.apache.wicket.markup.html.link.Link; import org.apache.wicket.markup.html.panel.Panel; -import org.apache.wicket.model.Model; import org.eclipse.jgit.lib.PersonIdent; import com.gitblit.GitBlit; import com.gitblit.Keys; import com.gitblit.utils.ActivityUtils; import com.gitblit.utils.StringUtils; +import com.gitblit.wicket.ExternalImage; import com.gitblit.wicket.WicketUtils; import com.gitblit.wicket.pages.GravatarProfilePage; @@ -46,23 +44,30 @@ public GravatarImage(String id, PersonIdent person) { this(id, person, 0); } - + public GravatarImage(String id, PersonIdent person, int width) { + this(id, person, width, true); + } + + public GravatarImage(String id, PersonIdent person, int width, boolean linked) { super(id); - String email = person.getEmailAddress().toLowerCase(); + String email = person.getEmailAddress() == null ? person.getName().toLowerCase() : person.getEmailAddress().toLowerCase(); String hash = StringUtils.getMD5(email); Link<Void> link = new BookmarkablePageLink<Void>("link", GravatarProfilePage.class, WicketUtils.newObjectParameter(hash)); link.add(new SimpleAttributeModifier("target", "_blank")); String url = ActivityUtils.getGravatarThumbnailUrl(email, width); - Image image = new Image("image"); - image.add(new AttributeModifier("src", true, new Model<String>(url))); + ExternalImage image = new ExternalImage("image", url); WicketUtils.setCssClass(image, "gravatar"); link.add(image); - WicketUtils.setHtmlTooltip(link, + if (linked) { + WicketUtils.setHtmlTooltip(link, MessageFormat.format("View Gravatar profile for {0}", person.getName())); - add(link); + } else { + WicketUtils.setHtmlTooltip(link, person.getName()); + } + add(link.setEnabled(linked)); setVisible(GitBlit.getBoolean(Keys.web.allowGravatar, true)); } } \ No newline at end of file -- Gitblit v1.9.1