📄 awardmedals.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 + -