diff --git a/apps/syndie/java/src/net/i2p/syndie/BlogManager.java b/apps/syndie/java/src/net/i2p/syndie/BlogManager.java
index cc15b6450..d250ea903 100644
--- a/apps/syndie/java/src/net/i2p/syndie/BlogManager.java
+++ b/apps/syndie/java/src/net/i2p/syndie/BlogManager.java
@@ -749,6 +749,8 @@ public class BlogManager {
int split = line.indexOf('=');
int split2 = line.indexOf(':');
if ( (split < 0) || ( (split2 > 0) && (split2 < split) ) ) split = split2;
+ if ( (split < 0) && (split2 < 0) )
+ continue;
String key = line.substring(0,split).trim();
String val = line.substring(split+1).trim();
raw.append(key).append(": ").append(val).append('\n');
diff --git a/apps/syndie/java/src/net/i2p/syndie/sml/ThreadedHTMLRenderer.java b/apps/syndie/java/src/net/i2p/syndie/sml/ThreadedHTMLRenderer.java
index 9c34631b8..fe0da2216 100644
--- a/apps/syndie/java/src/net/i2p/syndie/sml/ThreadedHTMLRenderer.java
+++ b/apps/syndie/java/src/net/i2p/syndie/sml/ThreadedHTMLRenderer.java
@@ -17,6 +17,7 @@ import net.i2p.util.Log;
public class ThreadedHTMLRenderer extends HTMLRenderer {
private Log _log;
private String _baseURI;
+ private boolean _inlineReply;
public ThreadedHTMLRenderer(I2PAppContext ctx) {
super(ctx);
@@ -118,8 +119,11 @@ public class ThreadedHTMLRenderer extends HTMLRenderer {
private static final boolean empty(String val) { return (val == null) || (val.trim().length() <= 0); }
+ /**
+ * @param replyHiddenFields HTML of hidden input fields necessary for the reply form to be honored
+ */
public void render(User user, Writer out, Archive archive, BlogURI post,
- boolean inlineReply, ThreadIndex index, String baseURI,
+ boolean inlineReply, ThreadIndex index, String baseURI, String replyHiddenFields,
String offset, String requestTags, String filteredAuthor) throws IOException {
EntryContainer entry = archive.getEntry(post);
if (entry == null) return;
@@ -131,6 +135,7 @@ public class ThreadedHTMLRenderer extends HTMLRenderer {
_archive = archive;
_cutBody = false;
_showImages = true;
+ _inlineReply = inlineReply;
_headers = new HashMap();
_bodyBuffer = new StringBuffer(1024);
_postBodyBuffer = new StringBuffer(1024);
@@ -192,6 +197,30 @@ public class ThreadedHTMLRenderer extends HTMLRenderer {
out.write("\npermalink\n");
+
+
+ if (!inlineReply) {
+ String refuseReply = (String)_headers.get(HEADER_REFUSE_REPLIES);
+ boolean allowReply = false;
+ if ( (refuseReply != null) && (Boolean.valueOf(refuseReply).booleanValue()) ) {
+ if (_entry == null )
+ allowReply = false;
+ else if ( (_user == null) || (_user.getBlog() == null) )
+ allowReply = false;
+ else if (_entry.getURI().getKeyHash().equals(_user.getBlog()))
+ allowReply = true;
+ else
+ allowReply = false;
+ } else {
+ allowReply = true;
+ }
+ if (allowReply && (_entry != null) ) {
+ out.write("Reply
\n");
+ }
+ }
out.write("\n\n");
out.write("\n");
@@ -229,6 +258,7 @@ public class ThreadedHTMLRenderer extends HTMLRenderer {
(refuseReplies == null) || (!Boolean.valueOf(refuseReplies).booleanValue()) ) {
out.write("\n");
out.write("