1 2 23 package com.geinuke.module.blog; 24 25 import java.util.ArrayList ; 26 import java.util.Locale ; 27 28 import javax.servlet.http.HttpServletRequest ; 29 import javax.servlet.http.HttpServletResponse ; 30 31 import org.apache.velocity.context.Context; 32 33 import com.geinuke.common.GlobalConfigurationI; 34 import com.geinuke.common.ModuleWidgetI; 35 import com.geinuke.common.NukeModuleI; 36 import com.geinuke.common.PageTool; 37 import com.geinuke.common.UserI; 38 import com.geinuke.middle.IBlogBL; 39 import com.geinuke.module.ModuleWriter; 40 import com.geinuke.servlet.GeiServlet; 41 import com.geinuke.util.NukeResource; 42 import com.geinuke.util.Paginator; 43 import com.geinuke.util.ServletUtil; 44 import com.geinuke.vo.ModuleDBVO; 45 46 public class SearchBlogPosts implements ModuleWidgetI{ 47 48 protected ArrayList getResults(HttpServletRequest req,HttpServletResponse res)throws Exception { 49 ArrayList resp=null; 50 IBlogBL bbl=(IBlogBL)GeiServlet.getBL("IBlogBL"); 51 String words=req.getParameter("words"); 52 GeiServlet.intLog("SearchBlogPosts.getResults(...), req.getParameter(words)="+words); 53 String mod=req.getParameter("mod"); 54 if(words==null || words.trim().equals("")){ 55 56 return new ArrayList (); 57 }else if(mod.equals("text")){ 58 resp=bbl.getBlogPostsByText(words); 59 }else if(mod.equals("title")){ 60 resp=bbl.getBlogPostsByTitle(words); 61 }else if(mod.equals("tt")){ 62 resp=bbl.getBlogPostsByTitleOrText(words); 63 } 64 65 return resp; 66 } 67 68 public NukeModuleI handleAction(ModuleDBVO module, Context ctx,HttpServletRequest req, HttpServletResponse res, UserI user, GlobalConfigurationI gConf) throws Exception { 69 String moduleTempName=null; 70 ArrayList posts=null; 71 72 posts=this.getResults(req,res); 73 74 GeiServlet.intLog(""+posts); 75 76 77 String pag=req.getParameter("wp"); 78 79 Paginator pager=new Paginator(posts,5,"BlogViewer.jhtm?"+ServletUtil.getQueryString(req)); 80 if(pag!=null){ 81 posts=pager.getPage(Integer.parseInt(pag)); 82 }else{ 83 posts=pager.getPage(1); 84 } 85 Locale lo=NukeResource.getLocale(req,res); 86 87 ctx.put("pageTool",new PageTool(lo)); 88 89 ctx.put("posts",posts); 90 ctx.put("pag",pager); 91 moduleTempName=gConf.getModulePage(module.getName(),req); 92 return ModuleWriter.fill(ctx,module,moduleTempName); 93 } 94 95 } 96 | Popular Tags |