⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 systemtoolaction.java

📁 论坛软件系统亦称电子公告板(BBS)系统
💻 JAVA
📖 第 1 页 / 共 5 页
字号:
				}
			}
		}
	}

	@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 + -