diff --git a/apps/routerconsole/java/src/net/i2p/router/web/NewsHelper.java b/apps/routerconsole/java/src/net/i2p/router/web/NewsHelper.java index 3e4bfc19f7..833e197a04 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/NewsHelper.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/NewsHelper.java @@ -20,41 +20,8 @@ public class NewsHelper extends ContentHelper { /** @since 0.9.1 */ public String getNewsHeadings() { - StringBuilder buf = new StringBuilder(512); - String consoleNonce = System.getProperty("router.consoleNonce"); - if (consoleNonce != null) { - // Set up string containing to show news. - String newsUrl = ""; - // Set up title and pre-headings stuff. - buf.append("

").append(_("News & Updates")) - .append("


\n"); - // Get news content. - String newsContent = getContent(); - if (newsContent != "") { - buf.append("\n"); - buf.append(newsUrl).append(Messages.getString("Show news", _context)).append("\n"); - } else { - buf.append("
").append(_("none")).append("
"); - } - // Add post-headings stuff. - buf.append("
\n"); - } - return buf.toString(); + SummaryBarRenderer renderer = new SummaryBarRenderer(_context, this); + return renderer.renderNewsHeadingsHTML(); } /** @since 0.8.12 */ diff --git a/apps/routerconsole/java/src/net/i2p/router/web/SummaryBarRenderer.java b/apps/routerconsole/java/src/net/i2p/router/web/SummaryBarRenderer.java index 86ad131419..2fd6c80732 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/SummaryBarRenderer.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/SummaryBarRenderer.java @@ -14,10 +14,20 @@ import net.i2p.router.RouterContext; public class SummaryBarRenderer { private final RouterContext _context; private final SummaryHelper _helper; + private final NewsHelper _newshelper; public SummaryBarRenderer(RouterContext context, SummaryHelper helper) { + this(context, helper, null); + } + + public SummaryBarRenderer(RouterContext context, NewsHelper newshelper) { + this(context, null, newshelper); + } + + public SummaryBarRenderer(RouterContext context, SummaryHelper helper, NewsHelper newshelper) { _context = context; _helper = helper; + _newshelper = newshelper; } /** @@ -83,7 +93,7 @@ public class SummaryBarRenderer { .append("
\n") .append(renderTunnelStatusHTML()) .append("
\n") - .append(_helper.getDestinations()) + .append(renderDestinationsHTML()) .append("
\n"); out.write(buf.toString()); @@ -213,6 +223,7 @@ public class SummaryBarRenderer { } public String renderGeneralHTML() { + if (_helper == null) return ""; StringBuilder buf = new StringBuilder(512); buf.append("

") .append(_(_helper.getTunnelStatus())) @@ -458,6 +478,61 @@ public class SummaryBarRenderer { return buf.toString(); } + public String renderDestinationsHTML() { + if (_helper == null) return ""; + StringBuilder buf = new StringBuilder(512); + buf.append(_helper.getDestinations()); + return buf.toString(); + } + + /** @since 0.9.1 */ + public String renderNewsHeadingsHTML() { + if (_newshelper == null) return ""; + StringBuilder buf = new StringBuilder(512); + String consoleNonce = System.getProperty("router.consoleNonce"); + if (consoleNonce != null) { + // Set up title and pre-headings stuff. + buf.append("

") + .append(_("News & Updates")) + .append("


\n"); + // Get news content. + String newsContent = _newshelper.getContent(); + if (newsContent != "") { + buf.append("\n"); + // Set up string containing to show news. + buf.append("") + .append(_("Show news")) + .append("\n"); + } else { + buf.append("
") + .append(_("none")) + .append("
"); + } + // Add post-headings stuff. + buf.append("
\n"); + } + return buf.toString(); + } + /** translate a string */ private String _(String s) { return Messages.getString(s, _context);