-package mircoders.servlet;\r
-\r
+package mircoders.servlet;
+
+import java.util.Locale;\r
import java.util.Map;\r
-\r
import javax.servlet.http.HttpServletRequest;\r
import javax.servlet.http.HttpServletResponse;\r
\r
import mir.log.LoggerWrapper;\r
import mir.servlet.ServletModule;\r
import mir.servlet.ServletModuleFailure;\r
-import mir.util.URLBuilder;\r
import mir.util.HTTPRequestParser;\r
-import mircoders.global.*;\r
-\r
-public class ServletModuleAbuse extends ServletModule {\r
- private static ServletModuleAbuse instance = new ServletModuleAbuse();\r
- public static ServletModule getInstance() { return instance; }\r
-\r
- private ServletModuleAbuse() {\r
- logger = new LoggerWrapper("ServletModule.Abuse");\r
- defaultAction = "showsettings";\r
- }\r
-\r
- public void editfilter(HttpServletRequest aRequest, HttpServletResponse aResponse) {\r
- HTTPRequestParser requestParser = new HTTPRequestParser(aRequest);\r
-\r
- String type=requestParser.getParameterWithDefault("type", "");\r
- String id=requestParser.getParameterWithDefault("id", "");\r
- String expression=requestParser.getParameterWithDefault("expression", "");\r
-\r
- if (id.equals("")) {\r
- MirGlobal.abuse().addFilter(type, expression);\r
- }\r
- else {\r
- MirGlobal.abuse().setFilter(id, type, expression);\r
- }\r
-\r
- MirGlobal.abuse().save();\r
-\r
- showfilters(aRequest, aResponse);\r
- }\r
-\r
- public void deletefilter(HttpServletRequest aRequest, HttpServletResponse aResponse) {\r
- HTTPRequestParser requestParser = new HTTPRequestParser(aRequest);\r
-\r
- String id=requestParser.getParameterWithDefault("id", "");\r
- MirGlobal.abuse().deleteFilter(id);\r
-\r
- MirGlobal.abuse().save();\r
-\r
- showfilters(aRequest, aResponse);\r
- }\r
-\r
- public void showfilters(HttpServletRequest aRequest, HttpServletResponse aResponse) {\r
- URLBuilder urlBuilder = new URLBuilder();\r
-\r
- try {\r
- Map responseData = ServletHelper.makeGenerationData(getLocale(aRequest));\r
-\r
- urlBuilder.setValue("module", "Abuse");\r
- urlBuilder.setValue("do", "showfilters");\r
- responseData.put("thisurl", urlBuilder.getQuery());\r
-\r
- responseData.put("filters", MirGlobal.abuse().getFilters());\r
- responseData.put("filtertypes", MirGlobal.abuse().getFilterTypes());\r
-\r
- ServletHelper.generateResponse(aResponse.getWriter(), responseData, "abuse.filters.template");\r
- }\r
- catch (Throwable e) {\r
- throw new ServletModuleFailure(e);\r
- }\r
- }\r
-\r
-\r
- public void showsettings(HttpServletRequest aRequest, HttpServletResponse aResponse) {\r
- URLBuilder urlBuilder = new URLBuilder();\r
-\r
- try {\r
- Map responseData = ServletHelper.makeGenerationData(getLocale(aRequest));\r
-\r
- urlBuilder.setValue("module", "Abuse");\r
- urlBuilder.setValue("do", "showsettings");\r
-\r
- responseData.put("thisurl", urlBuilder.getQuery());\r
-\r
- responseData.put("articleactions", MirGlobal.abuse().getArticleActions());\r
- responseData.put("commentactions", MirGlobal.abuse().getCommentActions());\r
-\r
- responseData.put("disableop", new Boolean(MirGlobal.abuse().getOpenPostingDisabled()));\r
- responseData.put("passwordop", new Boolean(MirGlobal.abuse().getOpenPostingPassword()));\r
- responseData.put("logenabled", new Boolean(MirGlobal.abuse().getLogEnabled()));\r
- responseData.put("logsize", Integer.toString(MirGlobal.abuse().getLogSize()));\r
- responseData.put("usecookies", new Boolean(MirGlobal.abuse().getCookieOnBlock()));\r
- responseData.put("articleaction", MirGlobal.abuse().getArticleBlockAction());\r
- responseData.put("commentaction", MirGlobal.abuse().getCommentBlockAction());\r
-\r
- ServletHelper.generateResponse(aResponse.getWriter(), responseData, "abuse.template");\r
- }\r
- catch (Throwable e) {\r
- throw new ServletModuleFailure(e);\r
- }\r
- }\r
-\r
- public void savesettings(HttpServletRequest aRequest, HttpServletResponse aResponse) {\r
- try {\r
- HTTPRequestParser parser = new HTTPRequestParser(aRequest);\r
-\r
- MirGlobal.abuse().setOpenPostingDisabled(parser.getParameterWithDefault("disableop", "").equals("1"));\r
- MirGlobal.abuse().setOpenPostingPassword(parser.getParameterWithDefault("passwordop", "").equals("1"));\r
- MirGlobal.abuse().setLogEnabled(parser.getParameterWithDefault("logenabled", "").equals("1"));\r
-\r
- try {\r
- MirGlobal.abuse().setLogSize(parser.getIntegerWithDefault("logsize", MirGlobal.abuse().getLogSize()));\r
- }\r
- catch (Throwable t) {\r
- }\r
-\r
- MirGlobal.abuse().setCookieOnBlock(parser.getParameterWithDefault("usecookies", "").equals("1"));\r
-\r
- MirGlobal.abuse().setArticleBlockAction(parser.getParameter("articleaction"));\r
- MirGlobal.abuse().setCommentBlockAction(parser.getParameter("commentaction"));\r
-\r
- MirGlobal.abuse().save();\r
-\r
- showsettings(aRequest, aResponse);\r
- }\r
- catch (Throwable e) {\r
- throw new ServletModuleFailure(e);\r
- }\r
- }\r
-\r
- public void showlog(HttpServletRequest aRequest, HttpServletResponse aResponse) {\r
- URLBuilder urlBuilder = new URLBuilder();\r
- int count;\r
-\r
- try {\r
- Map responseData = ServletHelper.makeGenerationData(getLocale(aRequest));\r
- urlBuilder.setValue("module", "Abuse");\r
- urlBuilder.setValue("do", "showlog");\r
- responseData.put("thisurl", urlBuilder.getQuery());\r
-\r
- responseData.put("log", MirGlobal.abuse().getLog());\r
-\r
- ServletHelper.generateResponse(aResponse.getWriter(), responseData, "abuse.log.template");\r
- }\r
- catch (Throwable e) {\r
- throw new ServletModuleFailure(e);\r
- }\r
- }\r
+import mir.util.URLBuilder;\r
+import mircoders.global.MirGlobal;
+
+public class ServletModuleAbuse extends ServletModule {
+ private static ServletModuleAbuse instance = new ServletModuleAbuse();
+ public static ServletModule getInstance() { return instance; }
+
+ private ServletModuleAbuse() {
+ logger = new LoggerWrapper("ServletModule.Abuse");
+ defaultAction = "showsettings";
+ }
+
+ public void editfilter(HttpServletRequest aRequest, HttpServletResponse aResponse) {
+ HTTPRequestParser requestParser = new HTTPRequestParser(aRequest);
+
+ String type=requestParser.getParameterWithDefault("type", "");
+ String id=requestParser.getParameterWithDefault("id", "");
+ String expression=requestParser.getParameterWithDefault("expression", "");
+
+ if (id.equals("")) {
+ MirGlobal.abuse().addFilter(type, expression);
+ }
+ else {
+ MirGlobal.abuse().setFilter(id, type, expression);
+ }
+
+ MirGlobal.abuse().save();
+
+ showfilters(aRequest, aResponse);
+ }
+
+ public void deletefilter(HttpServletRequest aRequest, HttpServletResponse aResponse) {
+ HTTPRequestParser requestParser = new HTTPRequestParser(aRequest);
+
+ String id=requestParser.getParameterWithDefault("id", "");
+ MirGlobal.abuse().deleteFilter(id);
+
+ MirGlobal.abuse().save();
+
+ showfilters(aRequest, aResponse);
+ }
+
+ public void showfilters(HttpServletRequest aRequest, HttpServletResponse aResponse) {
+ URLBuilder urlBuilder = new URLBuilder();
+
+ try {
+ Map responseData = ServletHelper.makeGenerationData(new Locale[] { getLocale(aRequest), getFallbackLocale(aRequest)});
+
+ urlBuilder.setValue("module", "Abuse");
+ urlBuilder.setValue("do", "showfilters");
+ responseData.put("thisurl", urlBuilder.getQuery());
+
+ responseData.put("filters", MirGlobal.abuse().getFilters());
+ responseData.put("filtertypes", MirGlobal.abuse().getFilterTypes());
+
+ ServletHelper.generateResponse(aResponse.getWriter(), responseData, "abuse.filters.template");
+ }
+ catch (Throwable e) {
+ throw new ServletModuleFailure(e);
+ }
+ }
+
+
+ public void showsettings(HttpServletRequest aRequest, HttpServletResponse aResponse) {
+ URLBuilder urlBuilder = new URLBuilder();
+
+ try {
+ Map responseData = ServletHelper.makeGenerationData(new Locale[] { getLocale(aRequest), getFallbackLocale(aRequest)});
+
+ urlBuilder.setValue("module", "Abuse");
+ urlBuilder.setValue("do", "showsettings");
+
+ responseData.put("thisurl", urlBuilder.getQuery());
+
+ responseData.put("articleactions", MirGlobal.abuse().getArticleActions());
+ responseData.put("commentactions", MirGlobal.abuse().getCommentActions());
+
+ responseData.put("disableop", new Boolean(MirGlobal.abuse().getOpenPostingDisabled()));
+ responseData.put("passwordop", new Boolean(MirGlobal.abuse().getOpenPostingPassword()));
+ responseData.put("logenabled", new Boolean(MirGlobal.abuse().getLogEnabled()));
+ responseData.put("logsize", Integer.toString(MirGlobal.abuse().getLogSize()));
+ responseData.put("usecookies", new Boolean(MirGlobal.abuse().getCookieOnBlock()));
+ responseData.put("articleaction", MirGlobal.abuse().getArticleBlockAction());
+ responseData.put("commentaction", MirGlobal.abuse().getCommentBlockAction());
+
+ ServletHelper.generateResponse(aResponse.getWriter(), responseData, "abuse.template");
+ }
+ catch (Throwable e) {
+ throw new ServletModuleFailure(e);
+ }
+ }
+
+ public void savesettings(HttpServletRequest aRequest, HttpServletResponse aResponse) {
+ try {
+ HTTPRequestParser parser = new HTTPRequestParser(aRequest);
+
+ MirGlobal.abuse().setOpenPostingDisabled(parser.getParameterWithDefault("disableop", "").equals("1"));
+ MirGlobal.abuse().setOpenPostingPassword(parser.getParameterWithDefault("passwordop", "").equals("1"));
+ MirGlobal.abuse().setLogEnabled(parser.getParameterWithDefault("logenabled", "").equals("1"));
+
+ try {
+ MirGlobal.abuse().setLogSize(parser.getIntegerWithDefault("logsize", MirGlobal.abuse().getLogSize()));
+ }
+ catch (Throwable t) {
+ }
+
+ MirGlobal.abuse().setCookieOnBlock(parser.getParameterWithDefault("usecookies", "").equals("1"));
+
+ MirGlobal.abuse().setArticleBlockAction(parser.getParameter("articleaction"));
+ MirGlobal.abuse().setCommentBlockAction(parser.getParameter("commentaction"));
+
+ MirGlobal.abuse().save();
+
+ showsettings(aRequest, aResponse);
+ }
+ catch (Throwable e) {
+ throw new ServletModuleFailure(e);
+ }
+ }
+
+ public void showlog(HttpServletRequest aRequest, HttpServletResponse aResponse) {
+ URLBuilder urlBuilder = new URLBuilder();
+ int count;
+
+ try {
+ Map responseData = ServletHelper.makeGenerationData(new Locale[] { getLocale(aRequest), getFallbackLocale(aRequest)});
+ urlBuilder.setValue("module", "Abuse");
+ urlBuilder.setValue("do", "showlog");
+ responseData.put("thisurl", urlBuilder.getQuery());
+
+ responseData.put("log", MirGlobal.abuse().getLog());
+
+ ServletHelper.generateResponse(aResponse.getWriter(), responseData, "abuse.log.template");
+ }
+ catch (Throwable e) {
+ throw new ServletModuleFailure(e);
+ }
+ }
}
\ No newline at end of file