Add upperCaseUsername option
With that option the username is converted to uppercase when replacing
the ${user} placeholder in the avatar url.
Change-Id: If3d6d28dd7ec827b7d11393255b8774270bc205c
diff --git a/src/main/java/com/googlesource/gerrit/plugins/avatars/external/ExternalUrlAvatarProvider.java b/src/main/java/com/googlesource/gerrit/plugins/avatars/external/ExternalUrlAvatarProvider.java
index dc38718..b2da42b 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/avatars/external/ExternalUrlAvatarProvider.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/avatars/external/ExternalUrlAvatarProvider.java
@@ -38,6 +38,7 @@
private String avatarChangeUrl;
private String sizeParameter;
private boolean lowerCase;
+ private boolean upperCaseUsername;
@Inject
ExternalUrlAvatarProvider(
@@ -50,6 +51,7 @@
avatarChangeUrl = cfg.getString("changeUrl");
sizeParameter = cfg.getString("sizeParameter");
lowerCase = cfg.getBoolean("lowerCase", false);
+ upperCaseUsername = cfg.getBoolean("upperCaseUsername", false);
ssl = canonicalUrl != null && canonicalUrl.startsWith("https://");
}
@@ -113,7 +115,9 @@
if (url == null || replacement == null || !url.contains(placeholder)) {
return url;
}
- if (lowerCase) {
+ if ("${user}".equals(replacement) && upperCaseUsername) {
+ replacement = replacement.toUpperCase();
+ } else if (lowerCase) {
replacement = replacement.toLowerCase();
}
diff --git a/src/main/resources/Documentation/config.md b/src/main/resources/Documentation/config.md
index 0a61965..861a9ab 100644
--- a/src/main/resources/Documentation/config.md
+++ b/src/main/resources/Documentation/config.md
@@ -34,5 +34,9 @@
`plugin.@PLUGIN@.lowerCase`
: Convert the username and email to lower case. Default value = false. Optional.
+<a id="upperCaseUsername">
+`plugin.@PLUGIN@.upperCaseUsername`
+: Convert the username upper case. Default value = false. Optional.
+
Please note that `http://` URLs will be automatically rewritten to
`https://`, if `gerrit.canonicalWebUrl` uses HTTPS.