📄 systemtoolaction.java
字号:
}
}
}
}
@SuppressWarnings("unchecked")
public ActionForward jsforums(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
String inentifier = request.getParameter("inentifier");
request.setAttribute("jsname", inentifier);
Map<String,String> settings = (Map<String,String>)request.getSession().getServletContext().getAttribute("fsmap");
if (inentifier != null) {
inentifier = "jswizard_" + inentifier;
String values = settings.get(inentifier);
Map result = dataParse.characterParse(values,false);
List<Map<String,String>> groups = dataBaseService.executeQuery("select fid,name,status from jrun_forums where type='group'");
request.setAttribute("resultmap", result);
Map forumMap = (Map) ((Map) result.get("parameter")).get("forums_forums");
List<Map<String,String>> groupmaplist = new ArrayList<Map<String,String>>();
for (Map<String,String> forum : groups) {
if (forumMap != null) {
Iterator it = forumMap.keySet().iterator();
while (it.hasNext()) {
Object key = it.next();
String value = forumMap.get(key).toString();
if (value.equals(forum.get("fid"))) {
forum.put("flag", "true");
}
}
}
groupmaplist.add(forum);
}
groups = null;
request.setAttribute("groups", groupmaplist);
Map paramMap = (Map) result.get("parameter");
String orderby = (String) paramMap.get("orderby");
String startrow = (String) paramMap.get("startrow");
String items = (String) paramMap.get("items");
String jstemplate = (String) paramMap.get("jstemplate");
String jscharset = (String)paramMap.get("jscharset");
String jstemplatebody = "";
if(jstemplate.matches(".*\\[node\\].*\\[/node\\].*")){
jstemplatebody = jstemplate;
jstemplate = jstemplate.replaceAll(".*\\[node\\](.+?)\\[/node\\].*", "$1");
}
List<String> forums_forums = null;
Map forumssMap = (Map) paramMap.get("forums_forums");
if (forumssMap != null) {
forums_forums = new ArrayList<String>();
Iterator it = forumssMap.keySet().iterator();
while (it.hasNext()) {
forums_forums.add(forumssMap.get(it.next()).toString());
}
}
StringBuffer sql = new StringBuffer("select fid,name,threads,posts,todayposts from jrun_forums as f ");
String and = "";
String where = " where ";
if (forums_forums != null && !forums_forums.get(0).equals("")
&& !forums_forums.get(0).equals("all")) {
sql.append(where);
where = " ";
sql.append(and);
and = " and ";
String fids = "";
for (String fid : forums_forums) {
fids += fid + ",";
}
fids = fids.substring(0, fids.length() - 1);
sql.append(" f.fup in (" + fids + ") ");
}
if (orderby != null && !orderby.equals("")) {
sql.append(" order by " + orderby);
}
int startrowcount = Common.toDigit(startrow);
int itemscount = Common.toDigit(items);
List<Map<String,String>>forumslist = dataBaseService.executeQuery(sql.toString()+" limit "+startrowcount+","+itemscount);
StringBuffer preebuffer = new StringBuffer();
if (forumslist != null && forumslist.size()>0) {
for (Map<String,String> forums:forumslist) {
String forumsname = forums.get("name");
String threads = forums.get("threads");
String posts = forums.get("posts");
String todayposts = forums.get("todayposts");
String link = "forumdisplay.jsp?fid="+forums.get("fid");
String resultpreview = jstemplate.replaceAll("\\(forumname\\)", "<a href='"+request.getContextPath()+"/forumdisplay.jsp?fid="+forums.get("fid")+"' target=_blank>" + forumsname+ "</a>");
resultpreview = resultpreview.replaceAll("\\(forumname_nolink\\)", forumsname);
resultpreview = resultpreview.replaceAll("\\(threads\\)",threads);
resultpreview = resultpreview.replaceAll("\\(posts\\)",posts);
resultpreview = resultpreview.replaceAll("\\(todayposts\\)", todayposts);
resultpreview = resultpreview.replaceAll("\\(link\\)", link);
preebuffer.append(resultpreview);
}
}
forumslist = null;
String previews = parsenode(jstemplatebody,preebuffer.toString(),jscharset);
request.setAttribute("resultpreview", previews);
request.setAttribute("diaplay", "yes");
} else {
List<Map<String,String>> groups = dataBaseService.executeQuery("select fid,name,status from jrun_forums where type='group'");
request.setAttribute("groups", groups);
String inentname = "forums_" + randomName();
request.setAttribute("inentifier", inentname);
request.setAttribute("diaplay", null);
}
return mapping.findForward("jsforumsetting");
}
@SuppressWarnings("unchecked")
public ActionForward editjsforums(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
String jssubmit = request.getParameter("jssubmit");
if(jssubmit==null){
Common.requestforward(response, "admincp.jsp?action=jswizard");
return null;
}
Map<String,String> settings = (Map<String,String>)request.getSession().getServletContext().getAttribute("fsmap");
String jstemplate = request.getParameter("parameter[jstemplate]");
String jskey = request.getParameter("jskey");
String cachelife = request.getParameter("parameter[cachelife]");
String forums_forums[] = request.getParameterValues("parameter[forums_forums]");
String startrow = request.getParameter("parameter[startrow]");
String items = request.getParameter("parameter[items]");
String orderby = request.getParameter("parameter[orderby]");
String jscharset = request.getParameter("parameter[jscharset]");
String newwindow = request.getParameter("parameter[newwindow]");
String uri = "function=forums&";
if (forums_forums != null) {
String fid = "";
for (String s : forums_forums) {
fid = fid + s + "_";
}
fid = fid.substring(0, fid.length() - 1);
uri = uri + "fups=" + fid + "&startrow=" + startrow + "&items="
+ items;
} else {
uri = uri + "&startrow=" + startrow + "&items=" + items;
}
uri = uri + "&newwindow=" + newwindow + "&orderby=" + orderby
+ "&jscharset=" + jscharset + "&cachelife=" + cachelife
+ "&jstemplate=" + jstemplate;
HashMap resultMap = new HashMap();
HashMap parameterMap = new HashMap();
parameterMap.put("cachelife", cachelife);
resultMap.put("parameter", parameterMap);
parameterMap.put("items", items);
resultMap.put("parameter", parameterMap);
parameterMap.put("jscharset", jscharset);
resultMap.put("parameter", parameterMap);
parameterMap.put("jstemplate", jstemplate);
resultMap.put("parameter", parameterMap);
parameterMap.put("newwindow", newwindow);
resultMap.put("parameter", parameterMap);
parameterMap.put("orderby", orderby);
resultMap.put("parameter", parameterMap);
parameterMap.put("startrow", startrow);
resultMap.put("parameter", parameterMap);
if (forums_forums != null) {
Map forums_forumsubMap = new HashMap();
for (int i = 0; i < forums_forums.length; i++) {
forums_forumsubMap.put(i, forums_forums[i]);
}
parameterMap.put("forums_forums", forums_forumsubMap);
resultMap.put("parameter", parameterMap);
}
resultMap.put("url", uri);
resultMap.put("type", new Integer("1"));
String resultvalue = dataParse.combinationChar(resultMap);
String edit = request.getParameter("edit");
String preview = request.getParameter("preview");
if (preview.equals("1")) {
String jstemplatebody = "";
if(jstemplate.matches(".*\\[node\\].*\\[/node\\].*")){
jstemplatebody = jstemplate;
jstemplate = jstemplate.replaceAll(".*\\[node\\](.+?)\\[/node\\].*", "$1");
}
Map result = dataParse.characterParse(resultvalue, false);
List<Map<String,String>> groups = dataBaseService.executeQuery("select fid,name,status from jrun_forums where type='group'");
request.setAttribute("resultmap", result);
Map forumMap = (Map) ((Map) result.get("parameter")).get("forums_forums");
List<Map<String,String>> groupmaplist = new ArrayList<Map<String,String>>();
for (Map<String,String> forum : groups) {
if (forumMap != null) {
Iterator it = forumMap.keySet().iterator();
while (it.hasNext()) {
Object key = it.next();
String value = forumMap.get(key).toString();
if (value.equals(forum.get("fid"))) {
forum.put("flag", "true");
}
}
}
groupmaplist.add(forum);
}
groups = null;
request.setAttribute("groups", groupmaplist);
StringBuffer sql = new StringBuffer("select fid,name,threads,posts,todayposts from jrun_forums as f ");
String and = "";
String where = " where ";
if (forums_forums != null && !forums_forums[0].equals("") && !forums_forums[0].equals("all")) {
sql.append(where);
where = " ";
sql.append(and);
and = " and ";
String fids = "";
for (String fid : forums_forums) {
fids += fid + ",";
}
fids = fids.substring(0, fids.length() - 1);
sql.append(" f.fup in (" + fids + ") ");
}
if (orderby != null && !orderby.equals("")) {
sql.append(" order by " + orderby);
}
int startrowcount = Common.toDigit(startrow);
int itemscount = Common.toDigit(items);
List<Map<String,String>>forumslist = dataBaseService.executeQuery(sql.toString()+" limit "+startrowcount+","+itemscount);
StringBuffer preebuffer = new StringBuffer();
if (forumslist != null && forumslist.size()>0) {
for (Map<String,String> forums:forumslist) {
String forumsname = forums.get("name");
String threads = forums.get("threads");
String posts = forums.get("posts");
String todayposts = forums.get("todayposts");
String link = "forumdisplay.jsp?fid="+forums.get("fid");
String resultpreview = jstemplate.replaceAll("\\(forumname\\)", "<a href='"+request.getContextPath()+"/forumdisplay.jsp?fid="+forums.get("fid")+"' target=_blank>" + forumsname+ "</a>");
resultpreview = resultpreview.replaceAll("\\(forumname_nolink\\)", forumsname);
resultpreview = resultpreview.replaceAll("\\(threads\\)",threads);
resultpreview = resultpreview.replaceAll("\\(posts\\)",posts);
resultpreview = resultpreview.replaceAll("\\(todayposts\\)", todayposts);
resultpreview = resultpreview.replaceAll("\\(link\\)", link);
preebuffer.append(resultpreview);
}
}
forumslist = null;
String previews = parsenode(jstemplatebody,preebuffer.toString(),jscharset);
request.setAttribute("resultpreview", previews);
request.setAttribute("resultmap", resultMap);
request.setAttribute("jsname", jskey);
request.setAttribute("diaplay", "yes");
return mapping.findForward("jsforumsetting");
} else {
if (edit != null && !edit.equals("")) {
dataBaseService.runQuery("update jrun_settings set value='"+resultvalue.replace("'", "''")+"' where variable='jswizard_"+edit+"'");
settings.put("jswizard_"+edit, resultvalue);
ForumInit.setSettings(servlet.getServletContext(), settings);
String path = servlet.getServletContext().getRealPath("/")+"forumdata/cache/javascript_"+edit+".jsp";
File file = new File(path);
if(file.exists()){
file.delete();
}
request.setAttribute("successInfo", "JS调用成功添加或更新");
request.setAttribute("requestPath", "admincp.jsp?action=jswizard");
return mapping.findForward("success");
} else {
String value = settings.get("jswizard_"+jskey);
if (value == null) {
Settings setting = new Settings();
setting.setVariable("jswizard_" + jskey);
setting.setValue(resultvalue);
systemToolServer.saveSetting(setting);
settings.put("jswizard_"+jskey, resultvalue);
ForumInit.setSettings(servlet.getServletContext(), settings);
request.setAttribute("successInfo", "JS调用成功添加或更新");
request.setAttribute("requestPath", "admincp.jsp?action=jswizard");
return mapping.findForward("success");
} else {
request.setAttribute("errorInfo", "JS 调用唯一标识已经存在,请返回更改。");
return mapping.findForward("error");
}
}
}
}
@SuppressWarnings("unchecked")
public ActionForward jsmemberrank(ActionMapping mapping, ActionForm form,
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -