From 6340fbb3d4b87b21c8475323ddbaea9bce058990 Mon Sep 17 00:00:00 2001
From: z3d <z3d@mail.i2p>
Date: Sat, 18 Jul 2009 23:39:03 +0000
Subject: [PATCH] Proxy Error visual enhancements, mostly. And a version bump
 we go, to -15!

---
 apps/routerconsole/jsp/configkeyring.jsp      |   4 +-
 .../resources/ahelper-conflict-header.ht      |   5 ++-
 installer/resources/dnf-header.ht             |   5 ++-
 installer/resources/dnfb-header.ht            |   5 ++-
 installer/resources/dnfh-header.ht            |  13 +++---
 installer/resources/dnfp-header.ht            |   5 ++-
 .../resources/themes/console/dark/console.css |  39 +++++++++++-------
 .../console/dark/images/errortriangle.png     | Bin 0 -> 2100 bytes
 .../themes/console/light/console.css          |  13 +++---
 .../console/light/images/errortriangle.png    | Bin 0 -> 2100 bytes
 .../src/net/i2p/router/RouterVersion.java     |   2 +-
 11 files changed, 54 insertions(+), 37 deletions(-)
 create mode 100644 installer/resources/themes/console/dark/images/errortriangle.png
 create mode 100644 installer/resources/themes/console/light/images/errortriangle.png

diff --git a/apps/routerconsole/jsp/configkeyring.jsp b/apps/routerconsole/jsp/configkeyring.jsp
index cc8742a7df..2c2394e769 100644
--- a/apps/routerconsole/jsp/configkeyring.jsp
+++ b/apps/routerconsole/jsp/configkeyring.jsp
@@ -23,7 +23,7 @@
  <jsp:setProperty name="keyringhelper" property="contextId" value="<%=(String)session.getAttribute("i2p.contextId")%>" />
 <div class="configure">
  <p>
- <h2>Keyring</h2>
+ <h3>Keyring</h3>
  The router keyring is used to decrypt encrypted leaseSets.
  The keyring may contain keys for local or remote encrypted destinations.
  <p><jsp:getProperty name="keyringhelper" property="summary" />
@@ -36,7 +36,7 @@
     if (prev != null) System.setProperty("net.i2p.router.web.ConfigKeyringHandler.noncePrev", prev);
     System.setProperty("net.i2p.router.web.ConfigKeyringHandler.nonce", new java.util.Random().nextLong()+""); %>
  <input type="hidden" name="nonce" value="<%=System.getProperty("net.i2p.router.web.ConfigKeyringHandler.nonce")%>" />
- <h2>Manual Keyring Addition</h2>
+ <h3>Manual Keyring Addition</h3>
  Enter keys for encrypted remote destinations here.
  Keys for local destinations must be entered on the <a href="i2ptunnel/index.jsp">I2PTunnel page</a>.
  <p>
diff --git a/installer/resources/ahelper-conflict-header.ht b/installer/resources/ahelper-conflict-header.ht
index 305512bbf3..c41d81655d 100644
--- a/installer/resources/ahelper-conflict-header.ht
+++ b/installer/resources/ahelper-conflict-header.ht
@@ -5,16 +5,17 @@ Connection: close
 Proxy-Connection: close
 
 <html><head>
-<title>Destination key conflict</title>
+<title>I2P Warning: Destination key conflict</title>
 <link rel="shortcut icon" href="http://proxy.i2p/themes/console/images/favicon.ico" />
 <link href="http://proxy.i2p/themes/console/default/console.css" rel="stylesheet" type="text/css" />
 </head>
 <body>
 <div class=logo>
  <a href="http://127.0.0.1:7657/index.jsp" title="Router Console"><img src="http://proxy.i2p/themes/console/images/i2plogo.png" alt="I2P Router Console" border="0"/></a><br />
- [<a href="http://127.0.0.1:7657/config.jsp">configuration</a> | <a href="http://127.0.0.1:7657/help.jsp">help</a>]
+ <a href="http://127.0.0.1:7657/config.jsp">Configuration</a> <a href="http://127.0.0.1:7657/help.jsp">Help</a> <a href="http://127.0.0.1:7657/susidns/">Addressbook</a>
 </div>
 <div class=warning id=warning>
+<h3>Warning: Destination Key Conflict</h3>
 The addresshelper link you followed specifies a different destination key
 than a host entry in your host database.
 Someone could be trying to impersonate another eepsite,
diff --git a/installer/resources/dnf-header.ht b/installer/resources/dnf-header.ht
index c3c1b9f5b1..ca8a4ca6f3 100644
--- a/installer/resources/dnf-header.ht
+++ b/installer/resources/dnf-header.ht
@@ -5,16 +5,17 @@ Connection: close
 Proxy-Connection: close
 
 <html><head>
-<title>Eepsite not reachable</title>
+<title>I2P Warning: Eepsite not reachable</title>
 <link rel="shortcut icon" href="http://proxy.i2p/themes/console/images/favicon.ico" />
 <link href="http://proxy.i2p/themes/console/default/console.css" rel="stylesheet" type="text/css" />
 </head>
 <body>
 <div class=logo>
  <a href="http://127.0.0.1:7657/index.jsp" title="Router Console"><img src="http://proxy.i2p/themes/console/images/i2plogo.png" alt="I2P Router Console" border="0"/></a><br />
- [<a href="http://127.0.0.1:7657/config.jsp">configuration</a> | <a href="http://127.0.0.1:7657/help.jsp">help</a>]
+ <a href="http://127.0.0.1:7657/config.jsp">Configuration</a> <a href="http://127.0.0.1:7657/help.jsp">Help</a> <a href="http://127.0.0.1:7657/susidns/">Addressbook</a>
 </div>
 <div class=warning id=warning>
+<h3>Warning: Eeepsite Unreachable</h3>
 The eepsite was not reachable.
 The eepsite is offline, there is network congestion,
 or your router is not yet well-integrated with peers.
diff --git a/installer/resources/dnfb-header.ht b/installer/resources/dnfb-header.ht
index 3e16430dce..93fc41e3b5 100644
--- a/installer/resources/dnfb-header.ht
+++ b/installer/resources/dnfb-header.ht
@@ -5,16 +5,17 @@ Connection: close
 Proxy-Connection: close
 
 <html><head>
-<title>Invalid eepsite destination</title>
+<title>I2P Warning: Invalid eepsite destination</title>
 <link rel="shortcut icon" href="http://proxy.i2p/themes/console/images/favicon.ico" />
 <link href="http://proxy.i2p/themes/console/default/console.css" rel="stylesheet" type="text/css" />
 </head>
 <body>
 <div class=logo>
  <a href="http://127.0.0.1:7657/index.jsp" title="Router Console"><img src="http://proxy.i2p/themes/console/images/i2plogo.png" alt="I2P Router Console" border="0"/></a><br />
- [<a href="http://127.0.0.1:7657/config.jsp">configuration</a> | <a href="http://127.0.0.1:7657/help.jsp">help</a>]
+ <a href="http://127.0.0.1:7657/config.jsp">Configuration</a> <a href="http://127.0.0.1:7657/help.jsp">Help</a> <a href="http://127.0.0.1:7657/susidns/">Addressbook</a>
 </div>
 <div class=warning id=warning>
+<h3>Warning: Invalid Destination</h3>
 The eepsite destination specified was not valid, or was
 otherwise unreachable.  Perhaps you pasted in the 
 wrong BASE64 string or the link you are following is 
diff --git a/installer/resources/dnfh-header.ht b/installer/resources/dnfh-header.ht
index c65d410218..a9dbc6540a 100644
--- a/installer/resources/dnfh-header.ht
+++ b/installer/resources/dnfh-header.ht
@@ -5,22 +5,23 @@ Connection: close
 Proxy-Connection: close
 
 <html><head>
-<title>Eepsite unknown</title>
+<title>I2P Warning: Eepsite unknown</title>
 <link rel="shortcut icon" href="http://proxy.i2p/themes/console/images/favicon.ico" />
 <link href="http://proxy.i2p/themes/console/default/console.css" rel="stylesheet" type="text/css" />
 </head>
 <body>
 <div class=logo>
- <a href="http://127.0.0.1:7657/index.jsp" title="Router Console"><img src="http://proxy.i2p/themes/console/images/i2plogo.png" alt="I2P Router Console" border="0"/></a><br />
- [<a href="http://127.0.0.1:7657/config.jsp">configuration</a> | <a href="http://127.0.0.1:7657/help.jsp">help</a>]
+ <a href="http://127.0.0.1:7657/index.jsp" title="Router Console"><img src="http://proxy.i2p/themes/console/images/i2plogo.png" alt="I2P Router Console" border="0"/></a><hr>
+ <a href="http://127.0.0.1:7657/config.jsp">Configuration</a> <a href="http://127.0.0.1:7657/help.jsp">Help</a> <a href="http://127.0.0.1:7657/susidns/">Addressbook</a>
 </div>
 <div class=warning id=warning>
+<h3>Warning: Eeepsite Not Found in Addressbook</h3>
 The eepsite was not found in your router's addressbook.
 Check the link or find a BASE64 address.
 If you have the BASE64 address,  paste it into your userhosts.txt using
 <a href="http://127.0.0.1:7657/susidns/addressbook.jsp?book=master">SusiDNS</a>,
-use a BASE64 address helper, or use a jump service link below.
+use a BASE64 address helper, or use a jump service link below.<br><br>
 Seeing this page often? See <a href="http://www.i2p2.i2p/faq.html#subscriptions">the FAQ</a>
 for help in <a href="http://127.0.0.1:7657/susidns/config.jsp">adding some subscriptions</a>
-to your addressbook.
-<BR><BR>Could not find the following destination:<BR><BR>
+to your addressbook.<hr>
+<b>Could not find the following destination:</b><BR><BR>
diff --git a/installer/resources/dnfp-header.ht b/installer/resources/dnfp-header.ht
index 3e26d8f165..399d1067db 100644
--- a/installer/resources/dnfp-header.ht
+++ b/installer/resources/dnfp-header.ht
@@ -5,16 +5,17 @@ Connection: close
 Proxy-Connection: close
 
 <html><head>
-<title>Outproxy Not Found</title>
+<title>I2P Warning: Outproxy Not Found</title>
 <link rel="shortcut icon" href="http://proxy.i2p/themes/console/images/favicon.ico" />
 <link href="http://proxy.i2p/themes/console/default/console.css" rel="stylesheet" type="text/css" />
 </head>
 <body>
 <div class=logo>
  <a href="http://127.0.0.1:7657/index.jsp" title="Router Console"><img src="http://proxy.i2p/themes/console/images/i2plogo.png" alt="I2P Router Console" border="0"/></a><br />
- [<a href="http://127.0.0.1:7657/config.jsp">configuration</a> | <a href="http://127.0.0.1:7657/help.jsp">help</a>]
+ <a href="http://127.0.0.1:7657/config.jsp">Configuration</a> <a href="http://127.0.0.1:7657/help.jsp">Help</a> <a href="http://127.0.0.1:7657/susidns/">Addressbook</a>
 </div>
 <div class=warning id=warning>
+<h3>Warning: I2P Proxy Not Found</h3>
 The WWW Outproxy was not found. 
 It is offline, there is network congestion,
 or your router is not yet well-integrated with peers.
diff --git a/installer/resources/themes/console/dark/console.css b/installer/resources/themes/console/dark/console.css
index b1b624a507..360ed7c1e4 100644
--- a/installer/resources/themes/console/dark/console.css
+++ b/installer/resources/themes/console/dark/console.css
@@ -25,16 +25,17 @@ pre {
 
 div.logo {
      float: left;
-     left: 10px;
-     top: 0px;
-     padding: 10px 10px 10px 14px;
-     text-align: left;
+     padding: 10px;
+     text-align: center;
      font-color: #fff;
-     border: 0px solid #f00;
-     margin: 0px;
-     background: #003;
-     display: none;
-     border-bottom: 1px solid #eef;
+     margin: 0 20px 0 20px;
+     border: 1px solid #99f;
+     -moz-border-radius: 4px;
+     -khtml-border-radius: 4px;
+     border-radius: 4px;
+     background: #003 url('images/darkbluebg.png');
+     width: 175px;
+     -moz-box-shadow: inset 0px 0px 16px 0px #009;
 }
 
 div.toolbar {
@@ -100,12 +101,12 @@ div.routersummary {
 }
 
 div.warning {
-     margin: 0 20px 10px 224px;
-     padding: 20px 25px 20px 75px;
-     background: #fff;
+     margin: 5px 20px 10px 240px;
+     padding: 0px 25px 20px 75px;
+     background: #005;
      border: 1px solid #d00;
      text-align: left;
-     color: inherit;
+     color: #fff;
      -moz-border-radius: 4px;
      -khtml-border-radius: 4px;
      border-radius: 4px;
@@ -173,7 +174,7 @@ div.configure {
      -khtml-border-radius: 4px;
      border-radius: 4px;
      border: 1px solid #99f;
-     background: url(images/darkbluebg.png);
+     background: #003 url(images/darkbluebg.png);
 }
 
 div.messages {
@@ -479,6 +480,14 @@ textarea {
 form {}
 
 .proxyfooter {
+     margin: 0 20px 10px 240px;
+     padding: 20px 25px 20px 75px;
      font-color: #f00;
      font-size: 7pt;
-}    
\ No newline at end of file
+     text-align: right !important;
+     border-radius: 4px;
+     -moz-border-radius: 4px;
+     -khtml-border-radius: 4px;
+     border: 1px solid #001;
+     display: none;
+}        
\ No newline at end of file
diff --git a/installer/resources/themes/console/dark/images/errortriangle.png b/installer/resources/themes/console/dark/images/errortriangle.png
new file mode 100644
index 0000000000000000000000000000000000000000..f7bb3d3945d7a87ace916d2d90759e724de240a6
GIT binary patch
literal 2100
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

literal 0
HcmV?d00001

diff --git a/installer/resources/themes/console/light/console.css b/installer/resources/themes/console/light/console.css
index 728a858025..5691d8942e 100644
--- a/installer/resources/themes/console/light/console.css
+++ b/installer/resources/themes/console/light/console.css
@@ -25,15 +25,17 @@ pre {
 
 div.logo {
      float: left;
-     padding: 10px 10px 10px 14px;
+     padding: 10px;
      text-align: center;
      font-color: #fff;
-     margin: 0 20px 0 14px;
+     margin: 0 20px 0 20px;
      border: 1px solid #002;
      -moz-border-radius: 4px;
      -khtml-border-radius: 4px;
      border-radius: 4px;
      background: #ddddff url('images/lightbluetile.png');
+     width: 175px;
+     -moz-box-shadow: inset 0px 0px 16px 1px #eef;
 }
 
 div.toolbar {
@@ -100,8 +102,8 @@ div.routersummary {
 }
 
 div.warning {
-     margin: 0 20px 10px 224px;
-     padding: 20px 25px 20px 75px;
+     margin: 5px 20px 10px 240px;
+     padding: 0px 25px 20px 75px;
      background: #fff;
      border: 1px solid #d00;
      text-align: left;
@@ -485,7 +487,7 @@ textarea {
 form {}
 
 .proxyfooter {
-     margin: 0 20px 10px 224px;
+     margin: 0 20px 10px 240px;
      padding: 20px 25px 20px 75px;
      font-color: #f00;
      font-size: 7pt;
@@ -494,4 +496,5 @@ form {}
      -moz-border-radius: 4px;
      -khtml-border-radius: 4px;
      border: 1px solid #001;
+     display: none;
 }    
\ No newline at end of file
diff --git a/installer/resources/themes/console/light/images/errortriangle.png b/installer/resources/themes/console/light/images/errortriangle.png
new file mode 100644
index 0000000000000000000000000000000000000000..f7bb3d3945d7a87ace916d2d90759e724de240a6
GIT binary patch
literal 2100
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

literal 0
HcmV?d00001

diff --git a/router/java/src/net/i2p/router/RouterVersion.java b/router/java/src/net/i2p/router/RouterVersion.java
index 8c1e820358..6d9b6bc650 100644
--- a/router/java/src/net/i2p/router/RouterVersion.java
+++ b/router/java/src/net/i2p/router/RouterVersion.java
@@ -18,7 +18,7 @@ public class RouterVersion {
     /** deprecated */
     public final static String ID = "Monotone";
     public final static String VERSION = CoreVersion.VERSION;
-    public final static long BUILD = 14;
+    public final static long BUILD = 15;
     /** for example "-test" */
     public final static String EXTRA = "";
     public final static String FULL_VERSION = VERSION + "-" + BUILD + EXTRA;
-- 
GitLab