From 3eda53a97fba50eabfab9398645525f9f41deda4 Mon Sep 17 00:00:00 2001
From: jrandom <jrandom>
Date: Thu, 19 Aug 2004 20:26:19 +0000
Subject: [PATCH] ugly pages to display the old console and stats info, linked
 to off the top nav also link to the i2ptunnel from the top nav (in a new
 window).

---
 .../net/i2p/router/web/OldConsoleHelper.java  | 48 +++++++++++++++++++
 apps/routerconsole/jsp/nav.jsp                |  9 ++--
 apps/routerconsole/jsp/oldconsole.jsp         | 21 ++++++++
 apps/routerconsole/jsp/oldstats.jsp           | 21 ++++++++
 4 files changed, 96 insertions(+), 3 deletions(-)
 create mode 100644 apps/routerconsole/java/src/net/i2p/router/web/OldConsoleHelper.java
 create mode 100644 apps/routerconsole/jsp/oldconsole.jsp
 create mode 100644 apps/routerconsole/jsp/oldstats.jsp

diff --git a/apps/routerconsole/java/src/net/i2p/router/web/OldConsoleHelper.java b/apps/routerconsole/java/src/net/i2p/router/web/OldConsoleHelper.java
new file mode 100644
index 0000000000..88f4c86c6e
--- /dev/null
+++ b/apps/routerconsole/java/src/net/i2p/router/web/OldConsoleHelper.java
@@ -0,0 +1,48 @@
+package net.i2p.router.web;
+
+import java.io.ByteArrayOutputStream;
+import java.io.IOException;
+import java.util.List;
+
+import net.i2p.router.RouterContext;
+import net.i2p.router.admin.StatsGenerator;
+
+public class OldConsoleHelper {
+    private RouterContext _context;
+    /**
+     * Configure this bean to query a particular router context
+     *
+     * @param contextId begging few characters of the routerHash, or null to pick
+     *                  the first one we come across.
+     */
+    public void setContextId(String contextId) {
+        try {
+            _context = ContextHelper.getContext(contextId);
+        } catch (Throwable t) {
+            t.printStackTrace();
+        }
+    }
+    
+    public OldConsoleHelper() {}
+    
+    public String getConsole() {
+        try {
+            ByteArrayOutputStream baos = new ByteArrayOutputStream(128*1024);
+            _context.router().renderStatusHTML(baos);
+            return baos.toString();
+        } catch (IOException ioe) {
+            return "<b>Error rending the console</b>";
+        }
+    }
+    
+    public String getStats() {
+        StatsGenerator gen = new StatsGenerator(_context);
+        try {
+            ByteArrayOutputStream baos = new ByteArrayOutputStream(32*1024);
+            gen.generateStatsPage(baos);
+            return baos.toString();
+        } catch (IOException ioe) {
+            return "<b>Error rending the console</b>";
+        }
+    }
+}
diff --git a/apps/routerconsole/jsp/nav.jsp b/apps/routerconsole/jsp/nav.jsp
index 034ab1b5e0..87b04ea906 100644
--- a/apps/routerconsole/jsp/nav.jsp
+++ b/apps/routerconsole/jsp/nav.jsp
@@ -8,11 +8,14 @@
  [<a href="config.jsp">configuration</a> | <a href="help.jsp">help</a>]
 </div>
 
-<h3>
+<h4>
  <a href="profiles.jsp">Profiles</a> |
  <a href="netdb.jsp">Network Database</a> |
- <a href="logs.jsp">Logs</a> 
+ <a href="logs.jsp">Logs</a> |
+ <a href="oldconsole.jsp">Old console</a> |
+ <a href="oldstats.jsp">Stats</a> |
+ <a href="i2ptunnel/" target="_blank">I2PTunnel</a>
  <jsp:useBean class="net.i2p.router.web.NavHelper" id="navhelper" scope="request" />
  <jsp:setProperty name="navhelper" property="contextId" value="<%=(String)session.getAttribute("i2p.contextId")%>" />
  <jsp:getProperty name="navhelper" property="clientAppLinks" />
-</h3>
+</h4>
diff --git a/apps/routerconsole/jsp/oldconsole.jsp b/apps/routerconsole/jsp/oldconsole.jsp
new file mode 100644
index 0000000000..bd501a471a
--- /dev/null
+++ b/apps/routerconsole/jsp/oldconsole.jsp
@@ -0,0 +1,21 @@
+<%@page contentType="text/html"%>
+<%@page pageEncoding="UTF-8"%>
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html><head>
+<title>I2P Router Console - home</title>
+<link rel="stylesheet" href="default.css" type="text/css" />
+</head><body>
+
+<%@include file="nav.jsp" %>
+<%@include file="summary.jsp" %>
+
+<jsp:useBean class="net.i2p.router.web.OldConsoleHelper" id="conhelper" scope="request" />
+<jsp:setProperty name="conhelper" property="contextId" value="<%=(String)session.getAttribute("i2p.contextId")%>" />
+
+<div class="main" id="main">
+ <jsp:getProperty name="conhelper" property="console" />
+</div>
+
+</body>
+</html>
diff --git a/apps/routerconsole/jsp/oldstats.jsp b/apps/routerconsole/jsp/oldstats.jsp
new file mode 100644
index 0000000000..bf19e4cc4d
--- /dev/null
+++ b/apps/routerconsole/jsp/oldstats.jsp
@@ -0,0 +1,21 @@
+<%@page contentType="text/html"%>
+<%@page pageEncoding="UTF-8"%>
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html><head>
+<title>I2P Router Console - home</title>
+<link rel="stylesheet" href="default.css" type="text/css" />
+</head><body>
+
+<%@include file="nav.jsp" %>
+<%@include file="summary.jsp" %>
+
+<jsp:useBean class="net.i2p.router.web.OldConsoleHelper" id="oldhelper" scope="request" />
+<jsp:setProperty name="oldhelper" property="contextId" value="<%=(String)session.getAttribute("i2p.contextId")%>" />
+
+<div class="main" id="main">
+ <jsp:getProperty name="oldhelper" property="stats" />
+</div>
+
+</body>
+</html>
-- 
GitLab