package freenet.clients.http;
import java.io.File;
import java.util.Hashtable;
import freenet.client.HighLevelSimpleClient;
import freenet.node.NodeClientCore;
import freenet.support.HTMLNode;
/**
* Local file browser for the content filter toadlet.
*/
public class LocalFileFilterToadlet extends LocalFileBrowserToadlet {
public static final String PATH = "/filter-browse/";
public static final String POST_TO = "/filterfile/";
public LocalFileFilterToadlet(NodeClientCore core, HighLevelSimpleClient highLevelSimpleClient) {
super(core, highLevelSimpleClient);
}
@Override
public String path() {
return PATH;
}
@Override
protected String postTo() {
return POST_TO;
}
@Override
protected boolean allowedDir(File path) {
return core.allowUploadFrom(path);
}
@Override
protected void createSelectFileButton(HTMLNode node, String absolutePath, HTMLNode persistence) {
node.addChild("input",
new String[] { "type", "name", "value" },
new String[] { "submit", selectFile, ContentFilterToadlet.l10n("selectFile") });
node.addChild("input",
new String[] { "type", "name", "value" },
new String[] { "hidden", filenameField(), absolutePath });
node.addChild(persistence);
}
@Override
protected void createSelectDirectoryButton(HTMLNode node, String absolutePath, HTMLNode persistence) {
}
@Override
protected Hashtable<String, String> persistenceFields(Hashtable<String, String> set) {
Hashtable<String, String> fieldPairs = new Hashtable<String, String>();
String element = set.get("filter-operation");
if (element != null) {
fieldPairs.put("filter-operation", element);
}
element = set.get("result-handling");
if (element != null) {
fieldPairs.put("result-handling", element);
}
element = set.get("mime-type");
if (element != null) {
fieldPairs.put("mime-type", element);
}
return fieldPairs;
}
@Override
protected String startingDir() {
return defaultUploadDir();
}
}