From c25dbf0bb721bbb6e1c37707d08bec324e1b661b Mon Sep 17 00:00:00 2001
From: Stardrad Yin <yin8086@gmail.com>
Date: Wed, 05 Mar 2014 21:45:43 -0500
Subject: [PATCH] Add Chinese translations for new strings, and fix translations based on online page views of dev.gitblit.com
---
src/main/java/com/gitblit/utils/StringUtils.java | 49 +++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 49 insertions(+), 0 deletions(-)
diff --git a/src/main/java/com/gitblit/utils/StringUtils.java b/src/main/java/com/gitblit/utils/StringUtils.java
index 5e62778..5813c3a 100644
--- a/src/main/java/com/gitblit/utils/StringUtils.java
+++ b/src/main/java/com/gitblit/utils/StringUtils.java
@@ -127,12 +127,26 @@
retStr.append("%2F");
} else if (inStr.charAt(i) == ' ') {
retStr.append("%20");
+ } else if (inStr.charAt(i) == '&') {
+ retStr.append("%26");
} else {
retStr.append(inStr.charAt(i));
}
i++;
}
return retStr.toString();
+ }
+
+ /**
+ * Flatten the list of strings into a single string with the specified
+ * separator.
+ *
+ * @param values
+ * @param separator
+ * @return flattened list
+ */
+ public static String flattenStrings(String[] values, String separator) {
+ return flattenStrings(Arrays.asList(values), separator);
}
/**
@@ -556,6 +570,20 @@
}
/**
+ * Returns the file extension of a path.
+ *
+ * @param path
+ * @return a blank string or a file extension
+ */
+ public static String stripFileExtension(String path) {
+ int lastDot = path.lastIndexOf('.');
+ if (lastDot > -1) {
+ return path.substring(0, lastDot);
+ }
+ return path;
+ }
+
+ /**
* Replace all occurences of a substring within a string with
* another string.
*
@@ -733,4 +761,25 @@
}
return input.replace('\n',' ').replace('\r', ' ').trim();
}
+
+
+ /**
+ * Encode the username for user in an url.
+ *
+ * @param name
+ * @return the encoded name
+ */
+ public static String encodeUsername(String name) {
+ return name.replace("@", "%40").replace(" ", "%20").replace("\\", "%5C");
+ }
+
+ /**
+ * Decode a username from an encoded url.
+ *
+ * @param name
+ * @return the decoded name
+ */
+ public static String decodeUsername(String name) {
+ return name.replace("%40", "@").replace("%20", " ").replace("%5C", "\\");
+ }
}
\ No newline at end of file
--
Gitblit v1.9.1