From d364bba4c7db2ac9fc3c7ea2c6a956a6617bb137 Mon Sep 17 00:00:00 2001 From: zzz Date: Wed, 24 Jan 2018 15:35:30 +0000 Subject: [PATCH] i2psnark: Prevent commenting without comment name (ticket #2138) Trim name --- .../src/org/klomp/snark/SnarkManager.java | 4 +- .../org/klomp/snark/web/I2PSnarkServlet.java | 70 ++++++++++--------- history.txt | 1 + .../src/net/i2p/router/RouterVersion.java | 2 +- 4 files changed, 42 insertions(+), 35 deletions(-) diff --git a/apps/i2psnark/java/src/org/klomp/snark/SnarkManager.java b/apps/i2psnark/java/src/org/klomp/snark/SnarkManager.java index 69ca276c42..d9aa5f557f 100644 --- a/apps/i2psnark/java/src/org/klomp/snark/SnarkManager.java +++ b/apps/i2psnark/java/src/org/klomp/snark/SnarkManager.java @@ -1264,13 +1264,13 @@ public class SnarkManager implements CompleteListener, ClientApp { if (commentName == null) { commentName = ""; } else { - commentName = commentName.replaceAll("[\n\r<>#;]", ""); + commentName = commentName.trim().replaceAll("[\n\r<>#;]", ""); if (commentName.length() > Comment.MAX_NAME_LEN) commentName = commentName.substring(0, Comment.MAX_NAME_LEN); } if (!_util.getCommentsName().equals(commentName)) { _config.setProperty(PROP_COMMENTS_NAME, commentName); - addMessage(_t("Comments name set to {0}.", commentName)); + addMessage(_t("Comments name set to {0}.", '"' + commentName + '"')); _util.setCommentsName(commentName); changed = true; } diff --git a/apps/i2psnark/java/src/org/klomp/snark/web/I2PSnarkServlet.java b/apps/i2psnark/java/src/org/klomp/snark/web/I2PSnarkServlet.java index ef99d12d48..45870da91c 100644 --- a/apps/i2psnark/java/src/org/klomp/snark/web/I2PSnarkServlet.java +++ b/apps/i2psnark/java/src/org/klomp/snark/web/I2PSnarkServlet.java @@ -3544,16 +3544,17 @@ public class I2PSnarkServlet extends BasicServlet { Iterator iter = null; int myRating = 0; CommentSet comments = snark.getComments(); + boolean canRate = esc && _manager.util().getCommentsName().length() > 0; buf.append("
\n\n"); // new rating / comment form - buf.append("\n"); - if (er) { - buf.append("\n"); + if (er) { + buf.append(""); + } else { + buf.append(""); } - buf.append("\n"); - } else { - buf.append(""); + if (esc) { + buf.append(""); + } else { + buf.append(""); + } + buf.append("\n"); + buf.append("\n"); } - if (esc) { - buf.append(""); - } else { - buf.append(""); - } - buf.append("\n"); - buf.append("\n"); if (comments != null) { synchronized(comments) { diff --git a/history.txt b/history.txt index a930ab355f..e946141003 100644 --- a/history.txt +++ b/history.txt @@ -1,4 +1,5 @@ 2018-01-24 zzz + * i2psnark: Prevent commenting without comment name (ticket #2138) * SusiMail: Fix header corruption (ticket #2139) 2018-01-19 zzz diff --git a/router/java/src/net/i2p/router/RouterVersion.java b/router/java/src/net/i2p/router/RouterVersion.java index f7d70ed0aa..3c775e75ad 100644 --- a/router/java/src/net/i2p/router/RouterVersion.java +++ b/router/java/src/net/i2p/router/RouterVersion.java @@ -18,7 +18,7 @@ public class RouterVersion { /** deprecated */ public final static String ID = "Monotone"; public final static String VERSION = CoreVersion.VERSION; - public final static long BUILD = 24; + public final static long BUILD = 25; /** for example "-test" */ public final static String EXTRA = "-rc";
") .append(_t("Ratings and Comments")); - if (esc && _manager.util().getCommentsName().length() == 0) { + if (esc && !canRate) { buf.append("   "); buf.append(_t("Author name required to rate or comment")); buf.append("  ["); buf.append(_t("Configure")); buf.append("]"); - } else { + } else if (esc) { buf.append("   "); @@ -3579,39 +3580,44 @@ public class I2PSnarkServlet extends BasicServlet { buf.append("
\n
\n\n