aboutsummaryrefslogtreecommitdiff
path: root/src/java
diff options
context:
space:
mode:
Diffstat (limited to 'src/java')
-rw-r--r--src/java/com/juick/http/www/Discover.java17
-rw-r--r--src/java/com/juick/http/www/User.java4
2 files changed, 13 insertions, 8 deletions
diff --git a/src/java/com/juick/http/www/Discover.java b/src/java/com/juick/http/www/Discover.java
index 747a39470..fec0c117c 100644
--- a/src/java/com/juick/http/www/Discover.java
+++ b/src/java/com/juick/http/www/Discover.java
@@ -38,17 +38,18 @@ public class Discover {
protected void doGet(Connection sql, Connection sqlSearch, HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
com.juick.User visitor = Utils.getVisitorUser(sql, request, response);
- String requesturi = request.getRequestURI();
-
- com.juick.Tag paramTag = null;
- String paramTagStr = null;
- if (requesturi.startsWith("/tag/")) {
- paramTagStr = URLDecoder.decode(request.getRequestURI().substring(5), "UTF-8");
- paramTag = TagQueries.getTag(sql, paramTagStr, false);
- }
+ String paramTagStr = URLDecoder.decode(request.getRequestURI().substring(5), "UTF-8");
+ com.juick.Tag paramTag = TagQueries.getTag(sql, paramTagStr, false);
if (paramTag == null) {
Errors.doGet404(sql, request, response);
return;
+ } else if (!paramTag.Name.equals(paramTagStr)) {
+ String url = "/tag/" + paramTag.Name;
+ if (request.getQueryString() != null) {
+ url += "?" + request.getQueryString();
+ }
+ Utils.sendPermanentRedirect(response, url);
+ return;
}
int paramBefore = 0;
diff --git a/src/java/com/juick/http/www/User.java b/src/java/com/juick/http/www/User.java
index ca5c122f7..b584494e3 100644
--- a/src/java/com/juick/http/www/User.java
+++ b/src/java/com/juick/http/www/User.java
@@ -57,6 +57,10 @@ public class User {
if (paramTag == null) {
Errors.doGet404(sql, request, response);
return;
+ } else if (!paramTag.Name.equals(paramTagStr)) {
+ String url = "/" + user.UName + "/?tag=" + URLEncoder.encode(paramTag.Name, "UTF-8");
+ Utils.sendPermanentRedirect(response, url);
+ return;
}
}