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

📄 awardmedals.jsp

📁 论坛软件系统亦称电子公告板(BBS)系统
💻 JSP
字号:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@page import="cn.jsprun.utils.DataParse"%>
<%@page import="cn.jsprun.utils.BeanFactory"%>
<%@page import="cn.jsprun.utils.ForumInit"%>
<%@page import="cn.jsprun.dao.CronsDao"%>
<%@page import="java.sql.Connection"%>
<%@page import="cn.jsprun.utils.Log"%>
<%! 
	private String tablepre = "jrun_"; 
	private CronsDao cronsDao = ((CronsDao)BeanFactory.getBean("cronsSetDao"));
	private DataParse dataParse = (DataParse) BeanFactory.getBean("dataParse");
%>
<%
	int timestamp=(Integer)request.getAttribute("timestamp");
	Connection connection = (Connection)request.getAttribute("connection");
	Map<String,String> settings=ForumInit.settings;
	String honorset = settings.get("honorset");
	if(honorset!=null&&honorset.equals("1")){ 
		String honorvalue = settings.get("honorvalue");
		Map<String,Map<String,String>> honorvalueDP = (Map<String,Map<String,String>>)dataParse.characterParse(honorvalue, false);
	
		List<String> logStringList = new ArrayList<String>();
		String path = application.getRealPath("/") + "forumdata/logs";
		String uids = null;
		for(Map.Entry<String,Map<String,String>> tempMap : honorvalueDP.entrySet()){
			
			Map<String,String> honorvalueIMP = tempMap.getValue();
			String checked = honorvalueIMP.get("checked");
			if("1".equals(checked)){
				String medalId = tempMap.getKey();
				String qualification = honorvalueIMP.get("qualification");
				String reason = honorvalueIMP.get("reason");
				
				qualification = qualification.replace("extcredits", "m.extcredits").replace("oltime", "m.oltime").replace("pageviews", "m.pageviews").replaceAll("posts", "temp").replace("digesttemp", "m.digestposts").replace("temp", "m.posts");
				List<Map<String, String>> memberslist = cronsDao.executeQuery(connection,"select m.uid,m.username,mm.medals from "+tablepre+"members as m left join "+tablepre+"memberfields as mm on m.uid=mm.uid where "+qualification);
				boolean exist = false;
				uids = "0";
				if(memberslist!=null){
					for(Map<String,String> memberIfMap : memberslist){
						String mmMedals = memberIfMap.get("medals");
						exist = false;
						if(mmMedals!=null && !mmMedals.equals("")){
							String[] mmMedalsArray = mmMedals.split("\t");
							for(String mmMedal : mmMedalsArray){
								if(mmMedal.equals(medalId)){
									exist = true;
									break;
								}
							}
						}
						if(!exist){
							uids += ","+memberIfMap.get("uid");
							logStringList.add(timestamp + "\t" + "脚本执行" + "\t" + request.getRemoteAddr() + " " + memberIfMap.get("username") + "\t" + medalId + "\tgrant\t" + reason);
						}
					}
				}
				if(!uids.equals("0")){
					cronsDao.execute(connection,"UPDATE "+tablepre+"memberfields SET medals=concat(medals,'"+medalId+"\t') where uid IN(" + uids+")");
				}
			}
		}
		for(String medalsLog : logStringList ){
			Log.writelog(path,"medalslog",medalsLog);
		}
	}
	

	RequestDispatcher dispatcher = request.getRequestDispatcher("/include/crons/setNextrun.jsp");
	try {
		dispatcher.include(request, response);
	} catch (Exception e) {
		e.printStackTrace();
	} 
	Map<String,String> crons = (Map<String,String>)request.getAttribute("crons");
	if("0".equals(crons.get("available"))){
		cronsDao.execute(connection,"UPDATE "+tablepre+"crons SET available='0' WHERE cronid="+crons.get("cronid"));
	}else{
		cronsDao.execute(connection,"UPDATE "+tablepre+"crons SET lastrun='"+timestamp+"',nextrun='"+crons.get("nextrun")+"' WHERE cronid="+crons.get("cronid"));
	}
%>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -