boketemplateimpl.java
来自「cwbbs 云网论坛源码」· Java 代码 · 共 1,112 行 · 第 1/4 页
JAVA
1,112 行
package com.redmoon.blog.template;import java.io.*;import java.net.*;import java.util.*;import javax.servlet.http.*;import javax.servlet.jsp.*;import cn.js.fan.db.*;import cn.js.fan.util.*;import cn.js.fan.web.*;import com.cloudwebsoft.framework.base.*;import com.cloudwebsoft.framework.template.*;import com.cloudwebsoft.framework.util.*;import com.redmoon.blog.*;import com.redmoon.blog.link.*;import com.redmoon.blog.photo.*;import com.redmoon.blog.ui.*;import com.redmoon.forum.*;import com.redmoon.forum.Privilege;import com.redmoon.forum.person.*;import com.redmoon.forum.plugin.*;public class BokeTemplateImpl extends VarPart { public BokeTemplateImpl() { } public static String getTemplateCacheKey(UserConfigDb ucd, String templateType) { if (ucd.isUserCss()) { return BlogUserTemplateDb.getTemplateCacheKey(ucd, templateType); } else { TemplateDb td = new TemplateDb(); td = td.getTemplateDb(StrUtil.toInt(ucd.getSkin())); if (td == null) { td = new TemplateDb(); td = td.getDefaultTemplateDb(); } return td.getCacheKey(templateType); } } public static String getTemplateContent(UserConfigDb ucd, String templateFieldName) { if (ucd.isUserCss()) { BlogUserTemplateDb butd = new BlogUserTemplateDb(); butd = butd.getBlogUserTemplateDb(ucd.getId()); return butd.getString(templateFieldName); } else { TemplateDb td = new TemplateDb(); td = td.getTemplateDb(StrUtil.toInt(ucd.getSkin())); if (td == null) { td = new TemplateDb(); td = td.getDefaultTemplateDb(); } return td.getString(templateFieldName); } } public String renderCalendar(HttpServletRequest request, UserConfigDb ucd) { String str = ""; str += "<div id=div_cal></div>"; str += "<script>\n"; str += "var blogId=\"" + ucd.getId() + "\";\n"; str += "</script>\n"; str += "<script src=\"" + request.getContextPath() + "/blog/inc/calendar.js\">"; str += "</script>\n"; int leftyear, leftmonth; try { leftyear = ParamUtil.getInt(request, "year"); leftmonth = ParamUtil.getInt(request, "month"); } catch (Exception e) { Calendar cal = Calendar.getInstance(); leftyear = cal.get(cal.YEAR); leftmonth = cal.get(cal.MONTH) + 1; } if (leftmonth > 12) leftmonth = 12; if (leftmonth < 1) leftmonth = 1; str += "<script>\n"; str += "newCalendar(\"div_cal\"," + leftyear + "," + leftmonth + ");\n"; str += "</script>\n"; UserBlog bu = new UserBlog(ucd.getId()); int[] dayCountAry = bu.getBlogDayCount(leftyear, leftmonth); int dayLen = dayCountAry.length; str += "<script>\n"; for (int n = 1; n < dayLen; n++) { if (dayCountAry[n] > 0) { String totle_log = cn.js.fan.web.SkinUtil.LoadString(request, "res.label.blog.left", "totle_log"); totle_log = StrUtil.format(totle_log, new Object[] {"" + dayCountAry[n]}); str += "day" + n + ".innerHTML=\"<table width=100% cellSpacing=0 cellPadding=1><tr><td align=center class=dayCell><a href='listdayblog.jsp?blogId=" + ucd.getId() + "&y=" + leftyear + "&m=" + leftmonth + "&d=" + n + "' title='" + totle_log + "'>" + n + "</a></td></tr></table>\";\n"; } } str += "</script>\n"; return str; } public String renderSubShowblog(HttpServletRequest request, UserConfigDb ucd, TemplateDb td) { String str = ""; MsgDb rootMsgDb = (MsgDb) request.getAttribute("rootMsgDb"); try { request.setAttribute("MsgDb", rootMsgDb); TemplateLoader tl = new TemplateLoader(request, getTemplateCacheKey(ucd, TemplateDb. TEMPL_TYPE_SUB), getTemplateContent(ucd, "sub_content")); str += tl.toString(); com.redmoon.forum.Config cfg1 = com.redmoon.forum.Config. getInstance(); if (cfg1.getBooleanProperty("forum.isTag")) { Vector vtag = rootMsgDb.getTags(); str += "<div class='tag'>" + SkinUtil.LoadString(request, "res.label.forum.showtopic", "tag") + ":"; if (vtag.size() > 0) { Iterator irtag = vtag.iterator(); TagDb td2 = new TagDb(); while (irtag.hasNext()) { TagMsgDb tmd = (TagMsgDb) irtag.next(); TagDb tag = td2.getTagDb(tmd.getLong("tag_id")); if (td != null) { str += "<a class=\"linkTag\" target=\"_blank\" href=\""; str += "listtag.jsp?tagId=" + tmd.getLong("tag_id") + ">"; str += tag.getString("name") + "</a> "; } } } str += "</div>"; } str += "<div class='footprintBox'>[<a href=\"javascript:if (confirm('" + SkinUtil.LoadString(request, "res.label.blog.myblog", "confirm_footprint") + "')) window.location.href='../blog/footprint_do.jsp?msgId=" + rootMsgDb.getRootid() + "&blogId=" + ucd.getId() + "'\">" + SkinUtil.LoadString(request, "res.label.blog.user.userconfig", "is_footprint") + "</a>]</div>"; str += "<div class='footprintBox2'>"; UserMgr um = new UserMgr(); com.redmoon.blog.Config bcfg = com.redmoon.blog.Config.getInstance(); FootprintDb fd = new FootprintDb(); String sql = "select msg_id,user_name from " + fd.getTable().getName() + " where msg_id=" + rootMsgDb.getId() + " order by add_date desc"; ListResult lr = fd.listResult(sql, 1, bcfg.getIntProperty("footprintDisplayCount")); Iterator ir = lr.getResult().iterator(); while (ir.hasNext()) { fd = (FootprintDb) ir.next(); UserDb ud = um.getUser(fd.getString("user_name")); if (ud.getGender().equals("M")) { str += "<img src=\"../blog/skin/" + td.getString("code") + "/images/man.gif\">"; } else { str += "<img src=\"../blog/skin/" + td.getString("code") + "/images/woman.gif\">"; } str += " <a href=\"../userinfo.jsp?username=" + StrUtil.UrlEncode(ud.getName()) + "\">" + ud.getNick() + "</a> "; } str += "</div>"; sql = SQLBuilder.getShowtopictreeSql(rootMsgDb.getId()); long totalmsg = rootMsgDb.getMsgCount(sql, rootMsgDb.getboardcode(), rootMsgDb.getId()); int pagesize = 10; String op = ParamUtil.get(request, "op"); if (op.equals("allcomm")) pagesize = (int) totalmsg; Paginator paginator = new Paginator(request, totalmsg, pagesize); int curpage = paginator.getCurPage(); int totalpages = paginator.getTotalPages(); if (totalpages == 0) { curpage = 1; totalpages = 1; } long start = (curpage - 1) * pagesize; long end = curpage * pagesize; MsgBlockIterator irmsg = rootMsgDb.getMsgs(sql, rootMsgDb.getboardcode(), rootMsgDb.getId(), start, end); if (irmsg.hasNext() && curpage == 1) { irmsg.next(); } while (irmsg.hasNext()) { MsgDb msgDb = (MsgDb) irmsg.next(); request.setAttribute("MsgDb", msgDb); try { tl = new TemplateLoader(request, getTemplateCacheKey(ucd, TemplateDb. TEMPL_TYPE_SUB), getTemplateContent(ucd, "sub_content")); str += tl.toString(); } catch (Exception e) { LogUtil.getLog(getClass()).error("renderSubShowblog:" + e.getMessage()); } } if (!op.equals("allcomm")) { str += "<div class='pageBlock'>"; str += paginator.getCurPageBlock("showblog.jsp?boardcode=" + rootMsgDb.getboardcode() + "&rootid=" + rootMsgDb.getId()); str += "</div>"; } str += getAreaReply(request, rootMsgDb.getId()); } catch (Exception e) { LogUtil.getLog(getClass()).error("toString:" + e.getMessage()); } return str; } public String renderNewComment(HttpServletRequest request, UserConfigDb ucd, TemplateDb td) throws ErrMsgException { String str = "<ul>"; String leftsql = SQLBuilder.getNewReplySqlOfBlog(ucd.getId()); MsgDb leftMsgDb = new MsgDb(); cn.js.fan.db.ListResult leftlr = leftMsgDb.list(leftsql, 1, 10); UserMgr leftum = new UserMgr(); if (leftlr != null) { Vector leftv = leftlr.getResult(); Iterator leftir = leftv.iterator(); while (leftir.hasNext()) { leftMsgDb = (MsgDb) leftir.next(); if (leftMsgDb.getMsgDb(leftMsgDb.getRootid()).getCheckStatus() == MsgDb.CHECK_STATUS_PASS) { str += "<li>"; str += "["; if (leftMsgDb.getName().equals("")) { str += cn.js.fan.web.SkinUtil.LoadString(request, "res.label.forum.showtopic", "anonym"); } else { str += "<a href=\"../userinfo.jsp?username=" + leftMsgDb.getName() + "\">" + leftum.getUser(leftMsgDb.getName()). getNick() + "</a>";
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?