hook up configuration page, under construction
This commit is contained in:
@ -424,6 +424,11 @@ public class Core {
|
||||
File f = new File(home, "MuWire.properties")
|
||||
f.withPrintWriter("UTF-8", { muOptions.write(it) })
|
||||
}
|
||||
|
||||
public void saveI2PSettings() {
|
||||
File f = new File(home, "i2p.properties")
|
||||
f.withOutputStream { i2pOptions.store(it, "I2P Options") }
|
||||
}
|
||||
|
||||
static main(args) {
|
||||
def home = System.getProperty("user.home") + File.separator + ".MuWire"
|
||||
|
@ -18,31 +18,46 @@ public class ConfigurationServlet extends HttpServlet {
|
||||
|
||||
@Override
|
||||
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
|
||||
|
||||
clearAllBooleans();
|
||||
|
||||
Enumeration<String> patameterNames = req.getParameterNames();
|
||||
while(patameterNames.hasMoreElements()) {
|
||||
String name = patameterNames.nextElement();
|
||||
String value = req.getParameter(name);
|
||||
System.out.println("name "+ name + " value " + value);
|
||||
update(name, value);
|
||||
}
|
||||
core.saveMuSettings();
|
||||
core.saveI2PSettings();
|
||||
resp.sendRedirect("/MuWire/ConfigurationPage");
|
||||
}
|
||||
|
||||
private void clearAllBooleans() {
|
||||
core.getMuOptions().setAllowUntrusted(false);
|
||||
core.getMuOptions().setSearchExtraHop(false);
|
||||
core.getMuOptions().setAllowTrustLists(false);
|
||||
core.getMuOptions().setShareDownloadedFiles(false);
|
||||
core.getMuOptions().setShareHiddenFiles(false);
|
||||
core.getMuOptions().setSearchComments(false);
|
||||
core.getMuOptions().setBrowseFiles(false);
|
||||
}
|
||||
|
||||
private void update(String name, String value) {
|
||||
switch(name) {
|
||||
case "allowUntrusted" : core.getMuOptions().setAllowUntrusted(Boolean.parseBoolean(value)); break;
|
||||
case "searchExtraHop" : core.getMuOptions().setSearchExtraHop(Boolean.parseBoolean(value)); break;
|
||||
case "allowTrustLists": core.getMuOptions().setAllowTrustLists(Boolean.parseBoolean(value)); break;
|
||||
case "allowUntrusted" : core.getMuOptions().setAllowUntrusted(true); break;
|
||||
case "searchExtraHop" : core.getMuOptions().setSearchExtraHop(true); break;
|
||||
case "allowTrustLists": core.getMuOptions().setAllowTrustLists(true); break;
|
||||
case "trustListInterval" : core.getMuOptions().setTrustListInterval(Integer.parseInt(value)); break;
|
||||
case "downloadRetryInterval" : core.getMuOptions().setDownloadRetryInterval(Integer.parseInt(value)); break;
|
||||
case "totalUploadSlots" : core.getMuOptions().setTotalUploadSlots(Integer.parseInt(value)); break;
|
||||
case "uploadSlotsPerUser" : core.getMuOptions().setUploadSlotsPerUser(Integer.parseInt(value)); break;
|
||||
case "downloadLocation" : core.getMuOptions().setDownloadLocation(new File(value)); break;
|
||||
case "incompleteLocation" : core.getMuOptions().setIncompleteLocation(new File(value)); break;
|
||||
case "shareDownloadedFiles" : core.getMuOptions().setShareDownloadedFiles(Boolean.parseBoolean(value)); break;
|
||||
case "shareHiddenFiles" : core.getMuOptions().setShareHiddenFiles(Boolean.parseBoolean(value)); break;
|
||||
case "searchComments" : core.getMuOptions().setSearchComments(Boolean.parseBoolean(value)); break;
|
||||
case "browseFiles" : core.getMuOptions().setBrowseFiles(Boolean.parseBoolean(value)); break;
|
||||
case "shareDownloadedFiles" : core.getMuOptions().setShareDownloadedFiles(true); break;
|
||||
case "shareHiddenFiles" : core.getMuOptions().setShareHiddenFiles(true); break;
|
||||
case "searchComments" : core.getMuOptions().setSearchComments(true); break;
|
||||
case "browseFiles" : core.getMuOptions().setBrowseFiles(true); break;
|
||||
case "speedSmoothSeconds" : core.getMuOptions().setSpeedSmoothSeconds(Integer.parseInt(value)); break;
|
||||
case "inBw" : core.getMuOptions().setInBw(Integer.parseInt(value)); break;
|
||||
case "outBw" : core.getMuOptions().setOutBw(Integer.parseInt(value)); break;
|
||||
|
35
webui/src/main/webapp/ConfigurationPage.jsp
Normal file
35
webui/src/main/webapp/ConfigurationPage.jsp
Normal file
@ -0,0 +1,35 @@
|
||||
<%@ page language="java" contentType="text/html; charset=UTF-8"
|
||||
pageEncoding="UTF-8"%>
|
||||
<%@ page import="java.io.*" %>
|
||||
<%@ page import="java.util.*" %>
|
||||
<%@ page import="com.muwire.webui.*" %>
|
||||
<%@ page import="com.muwire.core.*" %>
|
||||
<%@ page import="com.muwire.core.search.*" %>
|
||||
<%@ page import="net.i2p.data.*" %>
|
||||
|
||||
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
|
||||
<%@include file="initcode.jsi"%>
|
||||
|
||||
<%
|
||||
String pagetitle=Util._t("Configuration");
|
||||
Core core = (Core) application.getAttribute("core");
|
||||
%>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<%@include file="css.jsi"%>
|
||||
</head>
|
||||
<body>
|
||||
<%@include file="header.jsi"%>
|
||||
<aside>
|
||||
<%@include file="searchbox.jsi"%>
|
||||
<%@include file="sidebar.jsi"%>
|
||||
</aside>
|
||||
<section class="main foldermain">
|
||||
<form action="/MuWire/Configuration" method="post">
|
||||
Allow Browsing <input type="checkbox" <% if (core.getMuOptions().getBrowseFiles()) out.write("checked"); %> name="browseFiles" value="true">
|
||||
<input type="submit" value="<%=Util._t("Save")%>">
|
||||
</form>
|
||||
</section>
|
||||
</body>
|
||||
</html>
|
@ -56,7 +56,7 @@
|
||||
<div class="menubox-divider"></div>
|
||||
<div class="menubox">
|
||||
<h2><%=Util._t("Configuration")%></h2>
|
||||
<a class="menuitem settings" href="settings">
|
||||
<a class="menuitem settings" href="ConfigurationPage">
|
||||
<div class="menu-icon"></div>
|
||||
<div class="menu-text"><%=Util._t("Settings")%></div>
|
||||
</a>
|
||||
|
@ -158,4 +158,9 @@ Mappings without the .jsp suffix
|
||||
<url-pattern>/TrustLists</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>com.muwire.webui.ConfigurationPage_jsp</servlet-name>
|
||||
<url-pattern>/ConfigurationPage</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
</web-app>
|
||||
|
Reference in New Issue
Block a user