Author: nextgens
Date: 2006-03-10 11:42:31 +0000 (Fri, 10 Mar 2006)
New Revision: 8209

Modified:
   trunk/freenet/src/freenet/clients/http/ConfigToadlet.java
   trunk/freenet/src/freenet/clients/http/Toadlet.java
   trunk/freenet/src/freenet/node/Version.java
   trunk/freenet/src/freenet/pluginmanager/PproxyToadlet.java
Log:
516:

More work on ConfigToadlet

Modified: trunk/freenet/src/freenet/clients/http/ConfigToadlet.java
===================================================================
--- trunk/freenet/src/freenet/clients/http/ConfigToadlet.java   2006-03-10 
10:40:23 UTC (rev 8208)
+++ trunk/freenet/src/freenet/clients/http/ConfigToadlet.java   2006-03-10 
11:42:31 UTC (rev 8209)
@@ -16,6 +16,7 @@
 import freenet.support.SimpleFieldSet;
 import freenet.node.Node;
 import freenet.node.Version;
+import freenet.pluginmanager.HTTPRequest;

 public class ConfigToadlet extends Toadlet {
        private Config config;
@@ -32,36 +33,68 @@
                SubConfig[] sc = config.getConfigs();

                ctx.getPageMaker().makeHead(buf, "Freenet Node Configuration", 
CSSName);
-               buf.append("<h1 class=\"title\">test</h1>\n");
-               buf.append("<div class=\"config\">\n");
-               buf.append("    <ul class=\"config\">\n");
-               String last = null;
-               
-               for(int i=0; i<sc.length;i++){
-                       Option[] o = sc[i].getOptions();
-                       String prefix = new String(sc[i].getPrefix());
+               HTTPRequest request = new HTTPRequest(uri);
+               if (request.hasParameters() == false) {
+                       buf.append("<h1 class=\"title\">Node 
Configuration</h1>\n");
+                       buf.append("<div class=\"config\">\n");
+                       buf.append("    <ul class=\"config\">\n");
+                       // FIXME: Use POST insteed !
+                       buf.append("<form method=\"get\">");
+                       String last = null;

-                       if(last == null || ! last.equalsIgnoreCase(prefix)){
-                               buf.append("</p>\n");
-                               buf.append("</span>\n");
-                               buf.append("<span id=\""+prefix+"\">\n");
-                               buf.append("<p>\n");
+                       for(int i=0; i<sc.length;i++){
+                               Option[] o = sc[i].getOptions();
+                               String prefix = new String(sc[i].getPrefix());
+                               
+                               if(last == null || ! 
last.equalsIgnoreCase(prefix)){
+                                       buf.append("</p>\n");
+                                       buf.append("</span>\n");
+                                       buf.append("<span 
id=\""+prefix+"\">\n");
+                                       buf.append("<p>\n");
+                               }
+                               
+                               for(int j=0; j<o.length; j++){
+                                       String configName = new 
String(o[j].getName());
+                                       /*
+                                       if(prefix.equals("node") && 
configName.equals("name")){
+                                               buf.append("<form 
method=\"post\"><input alt=\"node name\" class=\"config\"" +
+                                                               " type=\"text\" 
name=\"__node_name\" value=\""+o[j].getValueString()+"\"/></form>\n");
+                                       }
+                                       */
+                                               
+                                       buf.append(o[j].getShortDesc()+":\n");
+                                       buf.append("            
<li>"+prefix+"."+configName+"=><input alt=\""+o[j].getShortDesc()+"\" 
class=\"config\"" +
+                                                       " type=\"text\" 
name=\""+prefix+"."+configName+"\" 
value=\""+o[j].getValueString()+"\"></li>\n");
+                               }
                        }

-                       for(int j=0; j<o.length; j++){
-                               String configName = new String(o[j].getName());
-                               if(prefix.equals("node") && 
configName.equals("name")){
-                                       buf.append("<form 
method=\"post\"><input alt=\"node name\" class=\"config\"" +
-                                                       " type=\"text\" 
name=\"__node_name\" value=\""+o[j].getValueString()+"\"/></form>\n");
+                       buf.append("<hr><br>");
+                       buf.append("<input type=\"submit\" value=\"Apply\">");
+                       buf.append("<input type=\"reset\" value=\"Cancel\">");
+                       buf.append("</form>");
+                       buf.append("    </ul>\n");
+                       buf.append("</div>\n");
+               
+               } else {
+                       buf.append("Applying configuration");
+                       
+                       for(int i=0; i<sc.length ; i++){
+                               Option[] o = sc[i].getOptions();
+                               String prefix = new String(sc[i].getPrefix());
+                               String configName;
+                               
+                               for(int j=0; j<o.length; j++){
+                                       configName=o[j].getName();
+                                       
+                                       // we ignore unreconized parameters 
+                                       
if(request.getParam(prefix+"."+configName) != ""){
+                                               if(o[j].getValueString() != 
request.getParam(prefix+"."+configName))
+                                                       
buf.append(o[j].getShortDesc()+":\n");
+                                       }
                                }
-                                       
-                               buf.append(o[j].getShortDesc()+":\n");
-                               buf.append("            
<li>"+prefix+"."+configName+"=>"+o[j].getValueString()+"</li>\n");
                        }
                }

-               buf.append("    </ul>\n");
-               buf.append("</div>\n");

                ctx.getPageMaker().makeTail(buf);


Modified: trunk/freenet/src/freenet/clients/http/Toadlet.java
===================================================================
--- trunk/freenet/src/freenet/clients/http/Toadlet.java 2006-03-10 10:40:23 UTC 
(rev 8208)
+++ trunk/freenet/src/freenet/clients/http/Toadlet.java 2006-03-10 11:42:31 UTC 
(rev 8209)
@@ -142,6 +142,14 @@
                return client;
        }

+       public String mkForwardPage(String title, String content, String 
nextpage, int interval) {
+               if (content == null) content = "null";
+               return "<html><head><title>" + title + "</title>"+
+               "<META HTTP-EQUIV=Refresh CONTENT=\"" + interval +
+               "; URL="+nextpage+"\"></head><body><h1>" + title +
+               "</h1>" + content.replaceAll("\n", "<br/>\n") + "</body>";
+       }
+       
        public String CSSName;

        public void setCSSName(String name){

Modified: trunk/freenet/src/freenet/node/Version.java
===================================================================
--- trunk/freenet/src/freenet/node/Version.java 2006-03-10 10:40:23 UTC (rev 
8208)
+++ trunk/freenet/src/freenet/node/Version.java 2006-03-10 11:42:31 UTC (rev 
8209)
@@ -20,7 +20,7 @@
        public static final String protocolVersion = "1.0";

        /** The build number of the current revision */
-       private static final int buildNumber = 515;
+       private static final int buildNumber = 516;

        /** Oldest build of Fred we will talk to */
        private static final int lastGoodBuild = 507;

Modified: trunk/freenet/src/freenet/pluginmanager/PproxyToadlet.java
===================================================================
--- trunk/freenet/src/freenet/pluginmanager/PproxyToadlet.java  2006-03-10 
10:40:23 UTC (rev 8208)
+++ trunk/freenet/src/freenet/pluginmanager/PproxyToadlet.java  2006-03-10 
11:42:31 UTC (rev 8209)
@@ -25,14 +25,6 @@
        public String supportedMethods() {
                return "GET";
        }
-
-       private String mkForwardPage(String title, String content, String 
nextpage, int interval) {
-               if (content == null) content = "null";
-               return "<html><head><title>" + title + "</title>"+
-               "<META HTTP-EQUIV=Refresh CONTENT=\"" + interval +
-               "; URL="+nextpage+"\"></head><body><h1>" + title +
-               "</h1>" + content.replaceAll("\n", "<br/>\n") + "</body>";
-       }

        public void handleGet(URI uri, ToadletContext ctx)
                        throws ToadletContextClosedException, IOException {


Reply via email to