Package freenet.node.useralerts

Source Code of freenet.node.useralerts.MeaningfulNodeNameUserAlert

/* This code is part of Freenet. It is distributed under the GNU General
* Public License, version 2 (or at your option any later version). See
* http://www.gnu.org/ for further details of the GPL. */
package freenet.node.useralerts;

import freenet.config.Option;
import freenet.config.SubConfig;
import freenet.l10n.NodeL10n;
import freenet.node.Node;
import freenet.support.HTMLNode;

public class MeaningfulNodeNameUserAlert extends AbstractUserAlert {
  private final Node node;

  public MeaningfulNodeNameUserAlert(Node n) {
    super(true, null, null, null, null, UserAlert.WARNING, true, NodeL10n.getBase().getString("UserAlert.hide"), true, null);
    this.node = n;
  }
 
  @Override
  public String getTitle() {
    return l10n("noNodeNickTitle");
  }

  private String l10n(String key) {
    return NodeL10n.getBase().getString("MeaningfulNodeNameUserAlert."+key);
  }

  @Override
  public String getText() {
    return l10n("noNodeNick");
  }
 
  @Override
  public String getShortText() {
    return l10n("noNodeNickShort");
  }

  @Override
  public HTMLNode getHTMLText() {
    SubConfig sc = node.config.get("node");
    Option<?> o = sc.getOption("name");

    HTMLNode alertNode = new HTMLNode("div");
    HTMLNode textNode = alertNode.addChild("div");
    textNode.addChild("#", l10n("noNodeNick"));
    HTMLNode formNode = alertNode.addChild("form", new String[] { "action", "method" }, new String[] { "/config/"+sc.getPrefix(), "post" });
    formNode.addChild("input", new String[] { "type", "name", "value" }, new String[] { "hidden", "formPassword", node.clientCore.formPassword });
    formNode.addChild("input", new String[] { "type", "name", "value" }, new String[] { "hidden", "subconfig", sc.getPrefix() });
    HTMLNode listNode = formNode.addChild("ul", "class", "config");
    HTMLNode itemNode = listNode.addChild("li");
    itemNode.addChild("span", new String[]{ "class", "title", "style" },
        new String[]{ "configshortdesc", NodeL10n.getBase().getString("ConfigToadlet.defaultIs", new String[] { "default" }, new String[] { o.getDefault() }),
        "cursor: help;" }).addChild(o.getShortDescNode());
    itemNode.addChild("input", new String[] { "type", "class", "alt", "name", "value" }, new String[] { "text", "config", o.getShortDesc(), "node.name", o.getValueDisplayString() });
    itemNode.addChild("span", "class", "configlongdesc").addChild(o.getLongDescNode());
    formNode.addChild("input", new String[] { "type", "value" }, new String[] { "submit", NodeL10n.getBase().getString("UserAlert.apply") });
    formNode.addChild("input", new String[] { "type", "value" }, new String[] { "reset", NodeL10n.getBase().getString("UserAlert.reset") });

    return alertNode;
  }

  @Override
  public boolean isValid() {
    return node.peers.anyDarknetPeers();
  }
}
TOP

Related Classes of freenet.node.useralerts.MeaningfulNodeNameUserAlert

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.