diff --git a/apps/syndie/java/src/net/i2p/syndie/sml/Address.java b/apps/syndie/java/src/net/i2p/syndie/sml/Address.java
new file mode 100644
index 000000000..ef2d1cc5c
--- /dev/null
+++ b/apps/syndie/java/src/net/i2p/syndie/sml/Address.java
@@ -0,0 +1,17 @@
+package net.i2p.syndie.sml;
+
+import java.util.*;
+import net.i2p.data.DataHelper;
+
+/** contains intermediary rendering state */
+class Address {
+ public String name;
+ public String schema;
+ public String location;
+ public String protocol;
+ public int hashCode() { return -1; }
+ public boolean equals(Object o) {
+ Address a = (Address)o;
+ return DataHelper.eq(schema, a.schema) && DataHelper.eq(location, a.location) && DataHelper.eq(protocol, a.protocol) && DataHelper.eq(name, a.name);
+ }
+}
diff --git a/apps/syndie/java/src/net/i2p/syndie/sml/ArchiveRef.java b/apps/syndie/java/src/net/i2p/syndie/sml/ArchiveRef.java
new file mode 100644
index 000000000..650b7b36e
--- /dev/null
+++ b/apps/syndie/java/src/net/i2p/syndie/sml/ArchiveRef.java
@@ -0,0 +1,19 @@
+package net.i2p.syndie.sml;
+
+import java.util.*;
+import net.i2p.data.DataHelper;
+
+/** contains intermediary rendering state */
+class ArchiveRef {
+ public String name;
+ public String description;
+ public String locationSchema;
+ public String location;
+ public int hashCode() { return -1; }
+ public boolean equals(Object o) {
+ ArchiveRef a = (ArchiveRef)o;
+ return DataHelper.eq(name, a.name) && DataHelper.eq(description, a.description)
+ && DataHelper.eq(locationSchema, a.locationSchema)
+ && DataHelper.eq(location, a.location);
+ }
+}
diff --git a/apps/syndie/java/src/net/i2p/syndie/sml/Blog.java b/apps/syndie/java/src/net/i2p/syndie/sml/Blog.java
new file mode 100644
index 000000000..325a0db11
--- /dev/null
+++ b/apps/syndie/java/src/net/i2p/syndie/sml/Blog.java
@@ -0,0 +1,19 @@
+package net.i2p.syndie.sml;
+
+import java.util.*;
+import net.i2p.data.DataHelper;
+
+/** contains intermediary rendering state */
+class Blog {
+ public String name;
+ public String hash;
+ public String tag;
+ public long entryId;
+ public List locations;
+ public int hashCode() { return -1; }
+ public boolean equals(Object o) {
+ Blog b = (Blog)o;
+ return DataHelper.eq(hash, b.hash) && DataHelper.eq(tag, b.tag) && DataHelper.eq(name, b.name)
+ && DataHelper.eq(entryId, b.entryId) && DataHelper.eq(locations, b.locations);
+ }
+}
\ No newline at end of file
diff --git a/apps/syndie/java/src/net/i2p/syndie/sml/BlogPostInfoRenderer.java b/apps/syndie/java/src/net/i2p/syndie/sml/BlogPostInfoRenderer.java
index c47aabb49..1acf6a4d7 100644
--- a/apps/syndie/java/src/net/i2p/syndie/sml/BlogPostInfoRenderer.java
+++ b/apps/syndie/java/src/net/i2p/syndie/sml/BlogPostInfoRenderer.java
@@ -76,97 +76,103 @@ public class BlogPostInfoRenderer extends EventReceiverImpl {
}
private void renderAttachments(BlogURI postURI, Attachment attachments[]) {
+ renderAttachments(postURI, "syndieBlogPostInfo", attachments, _bodyBuffer);
+ }
+ public static void renderAttachments(BlogURI postURI, String baseStyleName, Attachment attachments[], StringBuffer out) {
if ( (attachments != null) && (attachments.length > 0) ) {
- _bodyBuffer.append("
\n");
- _bodyBuffer.append("
Attachments\n
");
+ out.append("\n");
+ out.append("
Attachments\n
");
// for each attachment:
// - $name\n($size of type $type)
for (int i = 0; i < attachments.length; i++) {
- _bodyBuffer.append("- ");
+ out.append("
- ");
String name = attachments[i].getName();
if ( (name == null) && (name.trim().length() <= 0) )
name = "Attachment " + i;
if (postURI != null) {
- _bodyBuffer.append("");
+ out.append("");
}
- _bodyBuffer.append(HTMLRenderer.sanitizeString(name, 40));
+ out.append(HTMLRenderer.sanitizeString(name, 40));
if (postURI != null)
- _bodyBuffer.append("");
+ out.append("");
- _bodyBuffer.append("\n(");
+ out.append("\n(");
int bytes = attachments[i].getDataLength();
if (bytes > 10*1024*1024)
- _bodyBuffer.append(bytes/(1024*1024)).append("MBytes");
+ out.append(bytes/(1024*1024)).append("MBytes");
else if (bytes > 10*1024)
- _bodyBuffer.append(bytes/(10*1024)).append("KBytes");
+ out.append(bytes/(10*1024)).append("KBytes");
else
- _bodyBuffer.append(bytes).append("Bytes");
+ out.append(bytes).append("Bytes");
String type = attachments[i].getMimeType();
if (type != null) {
if ("application/octet-stream".equals(type)) {
- _bodyBuffer.append(", binary");
+ out.append(", binary");
} else {
int split = type.lastIndexOf('/');
if (split > 0)
- _bodyBuffer.append(", ").append(HTMLRenderer.sanitizeString(type.substring(split+1), 30));
+ out.append(", ").append(HTMLRenderer.sanitizeString(type.substring(split+1), 30));
else
- _bodyBuffer.append(", ").append(HTMLRenderer.sanitizeString(type, 30));
+ out.append(", ").append(HTMLRenderer.sanitizeString(type, 30));
}
}
- _bodyBuffer.append(")");
+ out.append(")");
String desc = attachments[i].getDescription();
if ( (desc != null) && (desc.trim().length() > 0) )
- _bodyBuffer.append("
\n").append(HTMLRenderer.sanitizeString(desc, 120));
+ out.append("
\n").append(HTMLRenderer.sanitizeString(desc, 120));
- _bodyBuffer.append(" \n");
+ out.append("\n");
}
- _bodyBuffer.append("
\n");
- _bodyBuffer.append("
\n");
+ out.append("
\n");
+ out.append("
\n");
}
}
private void renderBlogs(BlogURI postURI) {
- if ( (_blogs != null) && (_blogs.size() > 0) ) {
- _bodyBuffer.append("\n");
- _bodyBuffer.append("
Blogs\n
");
+ renderBlogs(postURI, _user, "syndieBlogPostInfo", _blogs, _bodyBuffer);
+ }
+ public static void renderBlogs(BlogURI postURI, User user, String baseStyleName, List blogs, StringBuffer out) {
+ if ( (blogs != null) && (blogs.size() > 0) ) {
+ out.append("\n");
+ out.append("
\n");
}
}
- private final SimpleDateFormat _dateFormat = new SimpleDateFormat("yyyy/MM/dd", Locale.UK);
- private final String getEntryDate(long when) {
+ private static final SimpleDateFormat _dateFormat = new SimpleDateFormat("yyyy/MM/dd", Locale.UK);
+ private static final String getEntryDate(long when) {
synchronized (_dateFormat) {
try {
String str = _dateFormat.format(new Date(when));
@@ -207,73 +213,79 @@ public class BlogPostInfoRenderer extends EventReceiverImpl {
}
private void renderLinks(BlogURI postURI) {
- if ( (_links != null) && (_links.size() > 0) ) {
- _bodyBuffer.append("\n");
- _bodyBuffer.append("
Links\n
");
+ renderLinks(postURI, _user, "syndieBlogPostInfo", _links, _bodyBuffer);
+ }
+ public static void renderLinks(BlogURI postURI, User user, String baseStyleName, List links, StringBuffer out) {
+ if ( (links != null) && (links.size() > 0) ) {
+ out.append("\n");
+ out.append("
Links\n
");
// for each link:
// - $location
- for (int i = 0; i < _links.size(); i++) {
- _bodyBuffer.append("- ");
+ for (int i = 0; i < links.size(); i++) {
+ out.append("
- ");
- Link l = (Link)_links.get(i);
+ Link l = (Link)links.get(i);
String schema = l.schema;
- _bodyBuffer.append("").append(HTMLRenderer.sanitizeString(l.location, 40)).append(" (");
- _bodyBuffer.append(HTMLRenderer.sanitizeString(l.schema, 10)).append(")");
+ out.append("location=").append(HTMLRenderer.sanitizeURL(l.location)).append("&");
+ out.append("\">").append(HTMLRenderer.sanitizeString(l.location, 30)).append(" (");
+ out.append(HTMLRenderer.sanitizeString(l.schema, 6)).append(")");
- _bodyBuffer.append("
\n");
+ out.append("\n");
}
- _bodyBuffer.append("
\n");
+ out.append("
\n");
}
}
private void renderAddresses(BlogURI postURI) {
- if ( (_addresses != null) && (_addresses.size() > 0) ) {
- _bodyBuffer.append("\n");
- _bodyBuffer.append("
Addresses\n
");
+ renderAddresses(postURI, _user, "syndieBlogPostInfo", _addresses, _bodyBuffer);
+ }
+ public static void renderAddresses(BlogURI postURI, User user, String baseStyleName, List addresses, StringBuffer out) {
+ if ( (addresses != null) && (addresses.size() > 0) ) {
+ out.append("\n");
+ out.append("
Addresses\n
");
// for each address:
// - $name
- for (int i = 0; i < _addresses.size(); i++) {
- _bodyBuffer.append("- ");
- Address a = (Address)_addresses.get(i);
- importAddress(a);
+ for (int i = 0; i < addresses.size(); i++) {
+ out.append("
- ");
+ Address a = (Address)addresses.get(i);
+ importAddress(a, user);
PetName pn = null;
- if (_user != null)
- pn = _user.getPetNameDB().getByLocation(a.location);
+ if (user != null)
+ pn = user.getPetNameDB().getByLocation(a.location);
if (pn != null) {
- _bodyBuffer.append(HTMLRenderer.sanitizeString(pn.getName()));
+ out.append(HTMLRenderer.sanitizeString(pn.getName()));
} else {
- _bodyBuffer.append("").append(HTMLRenderer.sanitizeString(a.name)).append("");
+ out.append(AddressesServlet.PARAM_PROTO).append("=").append(HTMLRenderer.sanitizeTagParam(a.protocol)).append("&");
+ out.append("\" title=\"Add this address to your addressbook\">").append(HTMLRenderer.sanitizeString(a.name)).append("");
}
- _bodyBuffer.append("
\n");
+ out.append("\n");
}
- _bodyBuffer.append("
\n");
+ out.append("
\n");
}
}
- public void importAddress(Address a) {
- if (_user != null && _user.getImportAddresses() && !_user.getPetNameDB().containsName(a.name)) {
+ public static void importAddress(Address a, User user) {
+ if (user != null && user.getImportAddresses() && !user.getPetNameDB().containsName(a.name)) {
PetName pn = new PetName(a.name, a.schema, a.protocol, a.location);
- _user.getPetNameDB().add(pn);
+ user.getPetNameDB().add(pn);
try {
- _user.getPetNameDB().store(_user.getAddressbookLocation());
+ user.getPetNameDB().store(user.getAddressbookLocation());
} catch (IOException ioe) {
//ignore
}
@@ -292,38 +304,41 @@ public class BlogPostInfoRenderer extends EventReceiverImpl {
}
private void renderArchives(BlogURI postURI) {
- if ( (_archives != null) && (_archives.size() > 0) ) {
- _bodyBuffer.append("\n");
- _bodyBuffer.append("
Archives\n
");
+ renderArchives(postURI, _user, "syndieBlogPostInfo", _archives, _bodyBuffer);
+ }
+ public static void renderArchives(BlogURI postURI, User user, String baseStyleName, List archives, StringBuffer out) {
+ if ( (archives != null) && (archives.size() > 0) ) {
+ out.append("\n");
+ out.append("
Archives\n
");
// for each archive:
// - $name :)
$description
- for (int i = 0; i < _archives.size(); i++) {
- _bodyBuffer.append("- ");
- ArchiveRef a = (ArchiveRef)_archives.get(i);
- boolean authRemote = BlogManager.instance().authorizeRemote(_user);
+ for (int i = 0; i < archives.size(); i++) {
+ out.append("
- ");
+ ArchiveRef a = (ArchiveRef)archives.get(i);
+ boolean authRemote = BlogManager.instance().authorizeRemote(user);
if (authRemote) {
- _bodyBuffer.append("");
+ out.append("");
}
- _bodyBuffer.append(HTMLRenderer.sanitizeString(a.name));
+ out.append(HTMLRenderer.sanitizeString(a.name));
if (authRemote) {
- _bodyBuffer.append("");
+ out.append("");
}
if ( (a.description != null) && (a.description.trim().length() > 0) )
- _bodyBuffer.append(" ").append(HTMLRenderer.sanitizeString(a.description, 64));
-
+ out.append(" ").append(HTMLRenderer.sanitizeString(a.description, 64));
+ /*
_bodyBuffer.append(" bookmark it");
-
- _bodyBuffer.append("
\n");
+ */
+ out.append("\n");
}
- _bodyBuffer.append("
\n");
+ out.append("
\n");
}
}
@@ -371,19 +386,6 @@ public class BlogPostInfoRenderer extends EventReceiverImpl {
public void receiveLeftBracket() { }
public void receiveRightBracket() { }
- protected static class Blog {
- public String name;
- public String hash;
- public String tag;
- public long entryId;
- public List locations;
- public int hashCode() { return -1; }
- public boolean equals(Object o) {
- Blog b = (Blog)o;
- return DataHelper.eq(hash, b.hash) && DataHelper.eq(tag, b.tag) && DataHelper.eq(name, b.name)
- && DataHelper.eq(entryId, b.entryId) && DataHelper.eq(locations, b.locations);
- }
- }
/**
* when we see a link to a blog, we may want to:
* = view the blog entry
@@ -414,19 +416,6 @@ public class BlogPostInfoRenderer extends EventReceiverImpl {
_blogs.add(b);
}
- protected static class ArchiveRef {
- public String name;
- public String description;
- public String locationSchema;
- public String location;
- public int hashCode() { return -1; }
- public boolean equals(Object o) {
- ArchiveRef a = (ArchiveRef)o;
- return DataHelper.eq(name, a.name) && DataHelper.eq(description, a.description)
- && DataHelper.eq(locationSchema, a.locationSchema)
- && DataHelper.eq(location, a.location);
- }
- }
public void receiveArchive(String name, String description, String locationSchema, String location,
String postingKey, String anchorText) {
ArchiveRef a = new ArchiveRef();
@@ -438,15 +427,6 @@ public class BlogPostInfoRenderer extends EventReceiverImpl {
_archives.add(a);
}
- protected static class Link {
- public String schema;
- public String location;
- public int hashCode() { return -1; }
- public boolean equals(Object o) {
- Link l = (Link)o;
- return DataHelper.eq(schema, l.schema) && DataHelper.eq(location, l.location);
- }
- }
public void receiveLink(String schema, String location, String text) {
Link l = new Link();
l.schema = schema;
@@ -455,17 +435,6 @@ public class BlogPostInfoRenderer extends EventReceiverImpl {
_links.add(l);
}
- protected static class Address {
- public String name;
- public String schema;
- public String location;
- public String protocol;
- public int hashCode() { return -1; }
- public boolean equals(Object o) {
- Address a = (Address)o;
- return DataHelper.eq(schema, a.schema) && DataHelper.eq(location, a.location) && DataHelper.eq(protocol, a.protocol) && DataHelper.eq(name, a.name);
- }
- }
public void receiveAddress(String name, String schema, String protocol, String location, String anchorText) {
Address a = new Address();
a.name = name;
diff --git a/apps/syndie/java/src/net/i2p/syndie/sml/BlogRenderer.java b/apps/syndie/java/src/net/i2p/syndie/sml/BlogRenderer.java
index c03c96d1b..75ee5b6e7 100644
--- a/apps/syndie/java/src/net/i2p/syndie/sml/BlogRenderer.java
+++ b/apps/syndie/java/src/net/i2p/syndie/sml/BlogRenderer.java
@@ -7,6 +7,7 @@ import net.i2p.client.naming.PetName;
import net.i2p.data.*;
import net.i2p.syndie.data.*;
import net.i2p.syndie.web.*;
+import net.i2p.syndie.*;
/**
* Renders posts for display within the blog view
@@ -15,10 +16,21 @@ import net.i2p.syndie.web.*;
public class BlogRenderer extends HTMLRenderer {
private BlogInfo _blog;
private BlogInfoData _data;
+ private boolean _isComment;
public BlogRenderer(I2PAppContext ctx, BlogInfo info, BlogInfoData data) {
super(ctx);
_blog = info;
_data = data;
+ _isComment = false;
+ }
+
+ public void renderPost(User user, Archive archive, EntryContainer entry, Writer out, boolean cutBody, boolean showImages) throws IOException {
+ _isComment = false;
+ render(user, archive, entry, out, cutBody, showImages);
+ }
+ public void renderComment(User user, Archive archive, EntryContainer entry, Writer out) throws IOException {
+ _isComment = true;
+ render(user, archive, entry, out, false, true);
}
public void receiveHeaderEnd() {
@@ -64,9 +76,26 @@ public class BlogRenderer extends HTMLRenderer {
}
_postBodyBuffer.append("Leave a comment\n");
+ if (_isComment)
+ renderCommentMeta();
_postBodyBuffer.append("\n");
_postBodyBuffer.append("\n\n");
}
+
+ private void renderCommentMeta() {
+ BlogURI postURI = null;
+ Attachment attachments[] = null;
+ if (_entry != null) {
+ postURI = _entry.getURI();
+ attachments = _entry.getAttachments();
+ }
+ BlogPostInfoRenderer.renderAttachments(postURI, "syndieBlogCommentInfo", attachments, _postBodyBuffer);
+ BlogPostInfoRenderer.renderBlogs(postURI, _user, "syndieBlogCommentInfo", _blogs, _postBodyBuffer);
+ BlogPostInfoRenderer.renderLinks(postURI, _user, "syndieBlogCommentInfo", _links, _postBodyBuffer);
+ BlogPostInfoRenderer.renderAddresses(postURI, _user, "syndieBlogCommentInfo", _addresses, _postBodyBuffer);
+ BlogPostInfoRenderer.renderArchives(postURI, _user, "syndieBlogCommentInfo", _archives, _postBodyBuffer);
+ }
+
private int getChildCount(ThreadNode node) {
int nodes = 0;
for (int i = 0; i < node.getChildCount(); i++) {
diff --git a/apps/syndie/java/src/net/i2p/syndie/sml/HTMLRenderer.java b/apps/syndie/java/src/net/i2p/syndie/sml/HTMLRenderer.java
index f308cbf91..c1d90428f 100644
--- a/apps/syndie/java/src/net/i2p/syndie/sml/HTMLRenderer.java
+++ b/apps/syndie/java/src/net/i2p/syndie/sml/HTMLRenderer.java
@@ -274,19 +274,6 @@ public class HTMLRenderer extends EventReceiverImpl {
_bodyBuffer.append(getSpan("rb")).append("]");
}
- protected static class Blog {
- public String name;
- public String hash;
- public String tag;
- public long entryId;
- public List locations;
- public int hashCode() { return -1; }
- public boolean equals(Object o) {
- Blog b = (Blog)o;
- return DataHelper.eq(hash, b.hash) && DataHelper.eq(tag, b.tag) && DataHelper.eq(name, b.name)
- && DataHelper.eq(entryId, b.entryId) && DataHelper.eq(locations, b.locations);
- }
- }
/**
* when we see a link to a blog, we may want to:
* = view the blog entry
@@ -370,19 +357,6 @@ public class HTMLRenderer extends EventReceiverImpl {
_bodyBuffer.append("] ");
}
- protected static class ArchiveRef {
- public String name;
- public String description;
- public String locationSchema;
- public String location;
- public int hashCode() { return -1; }
- public boolean equals(Object o) {
- ArchiveRef a = (ArchiveRef)o;
- return DataHelper.eq(name, a.name) && DataHelper.eq(description, a.description)
- && DataHelper.eq(locationSchema, a.locationSchema)
- && DataHelper.eq(location, a.location);
- }
- }
public void receiveArchive(String name, String description, String locationSchema, String location,
String postingKey, String anchorText) {
ArchiveRef a = new ArchiveRef();
@@ -419,15 +393,6 @@ public class HTMLRenderer extends EventReceiverImpl {
_bodyBuffer.append("]");
}
- protected static class Link {
- public String schema;
- public String location;
- public int hashCode() { return -1; }
- public boolean equals(Object o) {
- Link l = (Link)o;
- return DataHelper.eq(schema, l.schema) && DataHelper.eq(location, l.location);
- }
- }
public void receiveLink(String schema, String location, String text) {
Link l = new Link();
l.schema = schema;
@@ -446,39 +411,8 @@ public class HTMLRenderer extends EventReceiverImpl {
append("");
}
- protected static class Address {
- public String name;
- public String schema;
- public String location;
- public String protocol;
- public int hashCode() { return -1; }
- public boolean equals(Object o) {
- Address a = (Address)o;
- return DataHelper.eq(schema, a.schema) && DataHelper.eq(location, a.location) && DataHelper.eq(protocol, a.protocol) && DataHelper.eq(name, a.name);
- }
- }
-
public void importAddress(Address a) {
- if (_user != null && _user.getImportAddresses() && !_user.getPetNameDB().containsName(a.name)) {
- PetName pn = new PetName(a.name, a.schema, a.protocol, a.location);
- _user.getPetNameDB().add(pn);
- try {
- _user.getPetNameDB().store(_user.getAddressbookLocation());
- } catch (IOException ioe) {
- //ignore
- }
- }
- if (BlogManager.instance().getImportAddresses()
- && I2PAppContext.getGlobalContext().namingService().lookup(a.name) == null
- && a.schema.equalsIgnoreCase("i2p")) {
- PetName pn = new PetName(a.name, a.schema, a.protocol, a.location);
- I2PAppContext.getGlobalContext().petnameDb().add(pn);
- try {
- I2PAppContext.getGlobalContext().petnameDb().store();
- } catch (IOException ioe) {
- //ignore
- }
- }
+ BlogPostInfoRenderer.importAddress(a, _user);
}
public void receiveAddress(String name, String schema, String protocol, String location, String anchorText) {
diff --git a/apps/syndie/java/src/net/i2p/syndie/sml/Link.java b/apps/syndie/java/src/net/i2p/syndie/sml/Link.java
new file mode 100644
index 000000000..291c83c4b
--- /dev/null
+++ b/apps/syndie/java/src/net/i2p/syndie/sml/Link.java
@@ -0,0 +1,15 @@
+package net.i2p.syndie.sml;
+
+import java.util.*;
+import net.i2p.data.DataHelper;
+
+/** contains intermediary rendering state */
+class Link {
+ public String schema;
+ public String location;
+ public int hashCode() { return -1; }
+ public boolean equals(Object o) {
+ Link l = (Link)o;
+ return DataHelper.eq(schema, l.schema) && DataHelper.eq(location, l.location);
+ }
+}
diff --git a/apps/syndie/java/src/net/i2p/syndie/web/BaseServlet.java b/apps/syndie/java/src/net/i2p/syndie/web/BaseServlet.java
index f82db02ee..cb0ff42b7 100644
--- a/apps/syndie/java/src/net/i2p/syndie/web/BaseServlet.java
+++ b/apps/syndie/java/src/net/i2p/syndie/web/BaseServlet.java
@@ -558,7 +558,9 @@ public abstract class BaseServlet extends HttpServlet {
}
protected void renderBegin(User user, HttpServletRequest req, PrintWriter out, ThreadIndex index) throws IOException {
- out.write("\n" + getTitle() + "\n");
+ out.write("\n");
+ out.write("\n");
+ out.write("\n\n" + getTitle() + "\n");
out.write("");
out.write("");
out.write("");
@@ -381,13 +383,13 @@ public class ViewBlogServlet extends BaseServlet {
if ( (posts.size() == 1) && (req.getParameter(PARAM_ENTRY) != null) ) {
BlogURI uri = (BlogURI)posts.get(0);
EntryContainer entry = archive.getEntry(uri);
- renderer.render(user, archive, entry, out, false, true);
+ renderer.renderPost(user, archive, entry, out, false, true);
renderComments(user, out, info, data, entry, archive, renderer);
} else {
for (int i = offset; i < posts.size() && i < offset + POSTS_PER_PAGE; i++) {
BlogURI uri = (BlogURI)posts.get(i);
EntryContainer entry = archive.getEntry(uri);
- renderer.render(user, archive, entry, out, true, true);
+ renderer.renderPost(user, archive, entry, out, true, true);
}
renderNav(out, info, data, posts, offset, archive, req);
@@ -412,7 +414,7 @@ public class ViewBlogServlet extends BaseServlet {
out.write("");
if (!shouldIgnore(user, uri)) {
EntryContainer cur = archive.getEntry(uri);
- renderer.render(user, archive, cur, out, false, true);
+ renderer.renderComment(user, archive, cur, out);
// recurse
renderComments(user, out, uri, archive, index, renderer);
}
@@ -618,12 +620,18 @@ public class ViewBlogServlet extends BaseServlet {
}
private static final String CSS =
-"