📄 javascriptaction.java
字号:
sql.append(and);
sql.append("t.blog = " + blog);
}
if (special != null && !special.equals("")) {
sql.append(and);
String specialids = "";
for (String specialid : special) {
specialids += specialid + ",";
}
specialids = specialids.substring(0, specialids.length() - 1);
sql.append(" t.special in (" + specialids + ") ");
}
if(rewardstatus!=null && !rewardstatus.equals("")){
if(rewardstatus.equals("2")){
sql.append(and);
sql.append(" t.price>0 ");
}else if(rewardstatus.equals("1")){
sql.append(and);
sql.append(" t.price<0 ");
}
}
if (digest != null && !digest.equals("")) {
sql.append(and);
String digests = "";
for (String digestid : digest) {
digests += digestid + ",";
}
digests = digests.substring(0, digests.length() - 1);
sql.append(" t.digest in (" + digests + ") ");
}
if (stick != null && !stick.equals("")) {
sql.append(and);
String sticks = "";
for (String stickid : stick) {
sticks += stickid + ",";
}
sticks = sticks.substring(0, sticks.length() - 1);
sql.append(" t.displayorder in (" + sticks + ") ");
}
if (orderby != null && !orderby.equals("")) {
sql.append(" order by " + orderby);
}
int startrowcount = Common.toDigit(startrow);
int itemscount = Common.toDigit(items);
List<Map<String,String>> threadlist = dataBaseService.executeQuery(sql.toString()+" limit "+startrowcount+","+itemscount);
StringBuffer preebuffer = new StringBuffer();
if (threadlist != null && threadlist.size()>0) {
for (Map<String,String> thread:threadlist) {
String subject = thread.get("subject");
if (convertInt(maxlength) < subject.length()) {
subject = subject.substring(0, Common.toDigit(maxlength))+ "...";
}
if (threadtype != null && threadtype.equals("1")) {
subject = "[" + thread.get("typename") + "]" + subject;
}
String message = thread.get("message");
String forumss = thread.get("name");
String author = thread.get("author");
String datetime = Common.gmdate(dateformat+" "+timeformat, (int)(Common.toDigit(thread.get("dateline"))+timeoffset));
String lastpost = Common.gmdate(dateformat+" "+timeformat, (int)(Common.toDigit(thread.get("lastpost"))+timeoffset));
String lastposter = thread.get("lastposter");
String replices = thread.get("replies");
String views = thread.get("views");
String link = boardurl+"viewthread.jsp?tid="+thread.get("tid");
String resultpreview = "";
if (highlight != null && highlight.equals("1")) {
if (Common.toDigit(thread.get("highlight")) > 0) {
resultpreview = jstemplate.replaceAll("\\(subject\\)","<a href='"+boardurl+"viewthread.jsp?tid="+thread.get("tid")+"' target=_blanck><font color='red'>" + subject+ "</font></a>");
resultpreview = resultpreview.replaceAll("\\(subject_nolink\\)","<font color='red'>" + subject + "</font>");
resultpreview = resultpreview.replaceAll("\\(subject_full\\)", "<font color='red'>"+ subject + "</font>");
} else {
resultpreview = jstemplate.replaceAll("\\(subject\\)", "<a href='"+boardurl+"viewthread.jsp?tid="+thread.get("tid")+"' target=_blanck>" + subject+ "</a>");
resultpreview = resultpreview.replaceAll("\\(subject_nolink\\)", subject);
resultpreview = resultpreview.replaceAll("\\(subject_full\\)", subject);
}
} else {
resultpreview = jstemplate.replaceAll("\\(subject\\)","<a href='"+boardurl+"viewthread.jsp?tid="+thread.get("tid")+"' target=_blanck>" + subject + "</a>");
resultpreview = resultpreview.replaceAll("\\(subject_nolink\\)", subject);
resultpreview = resultpreview.replaceAll("\\(subject_full\\)", subject);
}
if (picpre != null && !picpre.equals("")) {
resultpreview = resultpreview.replaceAll("\\(prefix\\)", "<img src='" + picpre + "'>");
} else {
resultpreview = resultpreview.replaceAll("\\(prefix\\)", "");
}
resultpreview = resultpreview.replaceAll("\\(message\\)",message);
resultpreview = resultpreview.replaceAll("\\(forum\\)","<a href='"+boardurl+"forumdisplay?fid="+thread.get("fid")+"' target=_blanck>" + forumss + "</a>");
resultpreview = resultpreview.replaceAll("\\(author\\)","<a href='"+boardurl+"space.jsp?uid="+thread.get("authorid")+"' target=_blanck>" + author + "</a>");
resultpreview = resultpreview.replaceAll("\\(dateline\\)",datetime);
resultpreview = resultpreview.replaceAll("\\(lastposter\\)", "<a href='"+boardurl+"space.jsp?action=viewpro&username="+Common.encode(lastposter)+"' target=_blanck>" + lastposter+ "</a>");
resultpreview = resultpreview.replaceAll("\\(lastpost\\)",lastpost);
resultpreview = resultpreview.replaceAll("\\(replies\\)",replices);
resultpreview = resultpreview.replaceAll("\\(views\\)",views);
resultpreview = resultpreview.replaceAll("\\(link\\)", link);
preebuffer.append(resultpreview);
}
}
threadlist = null;
datalist = preebuffer.toString();
}else if(function.startsWith("function=forums")){
String orderby = (String) paramMap.get("orderby");
String startrow = (String) paramMap.get("startrow");
String items = (String) paramMap.get("items");
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 = boardurl+"forumdisplay.jsp?fid="+forums.get("fid");
String resultpreview = jstemplate.replaceAll("\\(forumname\\)", "<a href='"+boardurl+"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;
datalist = preebuffer.toString();
}else if(function.startsWith("function=memberrank")){
StringBuffer sql = new StringBuffer("select m.username,m.uid,m.regdate,m.credits,mm.avatar from jrun_members as m left join jrun_memberfields as mm on m.uid=mm.uid");
String orderby = (String) paramMap.get("orderby");
String startrow = (String) paramMap.get("startrow");
String items = (String) paramMap.get("items");
if (orderby != null && !orderby.equals("")) {
sql.append(" order by " + orderby + " desc");
}
int startrowcount = Common.toDigit(startrow);
int itemscount = Common.toDigit(items);
List<Map<String,String>> memberlist = dataBaseService.executeQuery(sql.toString()+" limit "+startrowcount+","+itemscount);
StringBuffer preebuffer = new StringBuffer();
if (memberlist != null&&memberlist.size()>0) {
for (Map<String,String> member:memberlist) {
String membername = member.get("username");
String values = member.get("credits");
String today = Common.gmdate(dateformat, (int)(Common.toDigit(member.get("regdate"))+timeoffset));
String resultpreview = jstemplate.replaceAll("\\(member\\)", "<a href='"+boardurl+"space.jsp?uid="+member.get("uid")+"'>" + membername+ "</a>");
String avatar = member.get("avatar");
resultpreview = resultpreview.replaceAll("\\(avatar\\)", "<img src='" + avatar + "'>");
resultpreview = resultpreview.replaceAll("\\(regdate\\)",today);
resultpreview = resultpreview.replaceAll("\\(value\\)",values);
preebuffer.append(resultpreview);
}
}
memberlist = null;
datalist = preebuffer.toString();
}else if(function.startsWith("function=stats")){
Map forumsMap = (Map) paramMap.get("forums");
Map membersMap = (Map) paramMap.get("members");
Map onlineMap = (Map) paramMap.get("online");
Map onlinemembersMap = (Map) paramMap.get("onlinemembers");
Map postsMap = (Map) paramMap.get("posts");
Map threadsMap = (Map) paramMap.get("threads");
StringBuffer preebuffer = new StringBuffer();
if (forumsMap.get("display") != null) {
String resultpreview = jstemplate.replaceAll("\\(name\\)",forumsMap.get("title").toString());
int forumscount = systemToolServer.findFourmsCount();
resultpreview = resultpreview.replaceAll("\\(value\\)",forumscount + "");
preebuffer.append(resultpreview);
}
if (threadsMap.get("display") != null) {
String resultpreview = jstemplate.replaceAll("\\(name\\)",threadsMap.get("title").toString());
int threadcount = systemToolServer.findThreadCount();
resultpreview = resultpreview.replaceAll("\\(value\\)", threadcount + "");
preebuffer.append(resultpreview);
}
if (postsMap.get("display") != null) {
String resultpreview = jstemplate.replaceAll("\\(name\\)",postsMap.get("title").toString());
int postcount = systemToolServer.findPostCount();
resultpreview = resultpreview.replaceAll("\\(value\\)",postcount + "");
preebuffer.append(resultpreview);
}
if (membersMap.get("display") != null) {
String resultpreview = jstemplate.replaceAll("\\(name\\)",membersMap.get("title").toString());
int membercount = systemToolServer.findMembersCount();
resultpreview = resultpreview.replaceAll("\\(value\\)", membercount + "");
preebuffer.append(resultpreview);
}
if (onlineMap.get("display") != null) {
String resultpreview = jstemplate.replaceAll("\\(name\\)",onlineMap.get("title").toString());
int onlinecount = systemToolServer.findSessionsCountByType(false);
resultpreview = resultpreview.replaceAll("\\(value\\)",onlinecount + "");
preebuffer.append(resultpreview);
}
if (onlinemembersMap.get("display") != null) {
String resultpreview = jstemplate.replaceAll("\\(name\\)",onlinemembersMap.get("title").toString());
int onlinememcount = systemToolServer.findSessionsCountByType(true);
resultpreview = resultpreview.replaceAll("\\(value\\)", onlinememcount + "");
preebuffer.append(resultpreview);
}
datalist = preebuffer.toString();
}else if(function.startsWith("function=images")){
Map images_forumsMap = (Map) paramMap.get("images_forums");
Map digestMap = (Map) paramMap.get("digest");
List<String> images_forums = null;
if (images_forumsMap != null) {
images_forums = new ArrayList<String>();
Iterator it = images_forumsMap.keySet().iterator();
while (it.hasNext()) {
images_forums.add(images_forumsMap.get(it.next()).toString());
}
}
List<String> digest = null;
if (digestMap != null) {
digest = new ArrayList<String>();
Iterator it = digestMap.keySet().iterator();
while (it.hasNext()) {
digest.add(it.next().toString());
}
}
String blog = (String) paramMap.get("blog");
String startrow = (String) paramMap.get("startrow");
String items = (String) paramMap.get("items");
String maxheight = (String) paramMap.get("maxheight");
String maxwidth = (String) paramMap.get("maxwidth");
StringBuffer sql = new StringBuffer("select a.tid,a.filename,a.attachment,t.subject,a.remote,a.thumb,t.author,t.dateline from jrun_attachments as a left join jrun_threads as t on a.tid=t.tid ");
String and = " ";
String where = " where ";
if (images_forums != null && !images_forums.get(0).equals("")&& !images_forums.get(0).equals("all")) {
sql.append(where);
where = " ";
sql.append(and);
and = " and ";
String fids = "";
for (String fid : images_forums) {
fids += fid + ",";
}
fids = fids.substring(0, fids.length() - 1);
sql.append(" t.fid in (" + fids + ") ");
}
if (blog != null && !blog.equals("")) {
sql.append(where);
where = " ";
sql.append(and);
and = " and ";
sql.append("t.blog = " + blog);
}
if (digest != null && !digest.equals("")) {
sql.append(where);
where = " ";
sql.append(and);
and = " and ";
String digests = "";
for (String digestid : digest) {
digests += digestid + ",";
}
digests = digests.substring(0, digests.length() - 1);
sql.append(" t.digest in (" + digests + ") ");
}
sql.append(" and a.isimage = 1");
int startrowcount = Common.toDigit(startrow);
int itemscount = Common.toDigit(items);
List<Map<String,String>> acctchmentlist = dataBaseService.executeQuery(sql.toString()+" limit "+startrowcount+","+itemscount);
StringBuffer preebuffer = new StringBuffer();
if (acctchmentlist != null && acctchmentlist.size()>0) {
Map<String,String> ftpmap = dataParse.characterParse(settings.get("ftp"), false);
String attachurl = boardurl+settings.get("attachurl");
for (Map<String,String> attach:acctchmentlist) {
String subject = attach.get("subject");
String dateline = Common.gmdate(dateformat+" "+timeformat, (int)(Common.toDigit(attach.get("dateline"))+timeoffset));
String image = attach.get("remote").equals("1")?ftpmap.get("attachurl")+"/"+attach.get("attachment"):attachurl+"/"+attach.get("attachment");
image = attach.get("thumb").equals("1")?image+".thumb.jpg":image;
String link = boardurl+"viewthread.jsp?tid="+attach.get("tid");
String resultpreview = jstemplate.replaceAll("\\(image\\)", "<a href="+link+"><img src='" + image + "' height=" + maxheight+ " width=" + maxwidth + " border='0' alt='"+subject+"
"+attach.get("author")+dateline+"'></a>");
resultpreview = resultpreview.replaceAll("\\(imgfile\\)",image);
resultpreview = resultpreview.replaceAll("\\(subject\\)",subject);
resultpreview = resultpreview.replaceAll("\\(link\\)", link);
preebuffer.append(resultpreview);
}
}
acctchmentlist = null;
datalist = preebuffer.toString();
}else{
return null;
}
if(!jstemplatebody.equals("")){
jstemplatebody = jstemplatebody.replaceFirst("\\[node\\](.+?)\\[/node\\]", datalist);
datalist = jstemplatebody.replaceAll("\\[node\\](.+?)\\[/node\\]", "");
}
if(jscharset==1){
try {
datalist = new String(datalist.getBytes("gbk"));
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
}
return datalist;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -