listblogmsgtemplateimpl.java
来自「cwbbs 云网论坛源码」· Java 代码 · 共 131 行
JAVA
131 行
package com.redmoon.blog.template;import java.util.*;import javax.servlet.http.*;import cn.js.fan.db.*;import cn.js.fan.util.*;import com.cloudwebsoft.framework.template.*;import com.cloudwebsoft.framework.util.*;import com.redmoon.blog.*;import com.redmoon.forum.MsgDb;import com.redmoon.forum.plugin.DefaultRender;public class ListBlogMsgTemplateImpl extends ListPart { String query = ""; public ListBlogMsgTemplateImpl() { } public String toString(HttpServletRequest request, List params) { if (steps == null) return ""; String searchType = ParamUtil.get(request, "searchType"); String keyword = ParamUtil.get(request, "keyword"); String sql; String dirCode = StrUtil.getNullStr((String) props.get("dirCode")); if (searchType.equals("msgTitle")) { sql = "select id from sq_message where isBlog=1 and check_status=" + MsgDb.CHECK_STATUS_PASS + " and replyid=-1 and title like '%" + keyword + "%' ORDER BY lydate desc"; } else if (searchType.equals("msgContent")) { sql = "select id from sq_message where isBlog=1 and check_status=" + MsgDb.CHECK_STATUS_PASS + " and replyid=-1 and content like '%" + keyword + "%' ORDER BY lydate desc"; } else { if (dirCode != null && dirCode.startsWith("request")) { int p = dirCode.indexOf("."); if (p != -1) { String param = dirCode.substring(p + 1); dirCode = ParamUtil.get(request, param); } } sql = StrUtil.getNullStr((String) props.get("query")); if (dirCode.equals("")) sql = "select id from sq_thread where isBlog=1 and check_status=" + MsgDb.CHECK_STATUS_PASS + " ORDER BY lydate desc"; else sql = "select id from sq_thread where isBlog=1 and check_status=" + MsgDb.CHECK_STATUS_PASS + " and blog_dir_code=" + StrUtil.sqlstr(dirCode) + " ORDER BY lydate desc"; } String ps = (String)props.get("pageSize"); if (ps!=null && !StrUtil.isNumeric(ps)) throw new IllegalArgumentException("pageSize:" + ps + " is not a number"); int pageSize = StrUtil.toInt(ps, 10); int curPage = StrUtil.toInt(ParamUtil.get(request, "CPages"), 1); ListResult lr = null; MsgDb md = new MsgDb(); try { lr = md.list(sql, curPage, pageSize); } catch (ErrMsgException e) { LogUtil.getLog(getClass()).error("toString:" + e.getMessage()); return ""; } paginator = new Paginator(request, lr.getTotal(), pageSize); StringBuffer buf = new StringBuffer(); Iterator ir = lr.getResult().iterator(); while (ir.hasNext()) { md = (MsgDb) ir.next(); int nSteps = steps.size(); for (int i = 0; i < nSteps; i++) { ITemplate step = (ITemplate) steps.get(i); if (step instanceof PaginatorPart) { PaginatorPart pp = (PaginatorPart)step; pp.setUrl("?dirCode=" + StrUtil.UrlEncode(dirCode) + "&searchType=" + searchType + "&keyword=" + StrUtil.UrlEncode(keyword)); String writeCount = (String)request.getAttribute(pp.hashCode() + "_WriteCount"); if ((i==0 || !ir.hasNext()) && writeCount==null) { buf.append(pp.write(request, this)); request.setAttribute(pp.hashCode() + "_WriteCount", "y"); } else continue; } else if (step instanceof FieldPart) { FieldPart fp = (FieldPart)step; if (fp.getName().equals("title")) { buf.append(DefaultRender.RenderFullTitle(request, md)); } else buf.append(((FieldPart) step).write(md)); } else if (step instanceof ListPart) { ListPart listPart = (ListPart) step; String dynName = listPart.getName(); buf.append("<!-- BEGIN:" + dynName + "-->\n"); buf.append(listPart.toString(request, null)); buf.append("<!-- END:" + dynName + "-->\n"); } else { buf.append(step.toString(request, null)); } } } return buf.toString(); }}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?