diff --git a/apps/routerconsole/java/src/net/i2p/router/web/ConfigClientsHelper.java b/apps/routerconsole/java/src/net/i2p/router/web/ConfigClientsHelper.java index 18e746644..d6441736a 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/ConfigClientsHelper.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/ConfigClientsHelper.java @@ -79,7 +79,7 @@ public class ConfigClientsHelper { } buf.append("/> "); if (!enabled) { - buf.append(""); + buf.append(""); } buf.append(" ").append(desc).append("\n"); } diff --git a/apps/routerconsole/java/src/net/i2p/router/web/ConfigRestartBean.java b/apps/routerconsole/java/src/net/i2p/router/web/ConfigRestartBean.java index 2b8817a31..3c9fe1bbf 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/ConfigRestartBean.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/ConfigRestartBean.java @@ -1,5 +1,7 @@ package net.i2p.router.web; +import java.util.StringTokenizer; + import net.i2p.data.DataHelper; import net.i2p.router.Router; import net.i2p.router.RouterContext; @@ -47,27 +49,35 @@ public class ConfigRestartBean { return "Shutdown imminent"; } else { return "Shutdown in " + DataHelper.formatDuration(timeRemaining) + "
" - + "Shutdown immediately
" - + "Cancel shutdown "; + + buttons(urlBase, systemNonce, "shutdownImmediate,Shutdown immediately,cancelShutdown,Cancel shutdown"); } } else if (restarting) { if (timeRemaining <= 0) { return "Restart imminent"; } else { return "Restart in " + DataHelper.formatDuration(timeRemaining) + "
" - + "Restart immediately
" - + "Cancel restart "; + + buttons(urlBase, systemNonce, "restartImmediate,Restart immediately,cancelShutdown,Cancel restart"); } } else { - String shutdown = "Shutdown"; if (System.getProperty("wrapper.version") != null) - return "Restart " - + shutdown; + return buttons(urlBase, systemNonce, "restart,Restart,shutdown,Shutdown"); else - return shutdown; + return buttons(urlBase, systemNonce, "shutdown,Shutdown"); } } + /** @param s value,label,... pairs */ + private static String buttons(String url, String nonce, String s) { + StringBuffer buf = new StringBuffer(128); + StringTokenizer tok = new StringTokenizer(s, ","); + buf.append("
\n"); + buf.append("\n"); + while (tok.hasMoreTokens()) + buf.append("\n"); + buf.append("
\n"); + return buf.toString(); + } + private static boolean isShuttingDown(RouterContext ctx) { return Router.EXIT_GRACEFUL == ctx.router().scheduledGracefulExitCode(); } diff --git a/apps/routerconsole/jsp/summary.jsp b/apps/routerconsole/jsp/summary.jsp index 308088914..6668683e6 100644 --- a/apps/routerconsole/jsp/summary.jsp +++ b/apps/routerconsole/jsp/summary.jsp @@ -7,6 +7,9 @@ " /> + + +" />
General
@@ -25,15 +28,15 @@ if (prev != null) System.setProperty("net.i2p.router.web.UpdateHandler.noncePrev", prev); System.setProperty("net.i2p.router.web.UpdateHandler.nonce", nonce+""); String uri = request.getRequestURI(); - if (uri.indexOf('?') > 0) - uri = uri + "&updateNonce=" + nonce; - else - uri = uri + "?updateNonce=" + nonce; - out.print("
Update available"); + out.print("

\n"); + out.print("\n"); + out.print("

\n"); } } %> -
<%=net.i2p.router.web.ConfigRestartBean.renderStatus(request.getRequestURI(), request.getParameter("action"), request.getParameter("consoleNonce"))%> +

+ <%=net.i2p.router.web.ConfigRestartBean.renderStatus(request.getRequestURI(), request.getParameter("action"), request.getParameter("consoleNonce"))%> +


Peers