KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > geinuke > module > blog > SearchBlogPosts


1
2  /*
3  -- GeiNuke --
4 Copyright (c) 2005 by Roberto Sidoti [geinuke@users.sourceforge.net]
5  http://www.hostingjava.it/-geinuke/
6
7 This file is part of GeiNuke.
8
9     GeiNuke is free software; you can redistribute it and/or modify
10     it under the terms of the GNU General Public License as published by
11     the Free Software Foundation; either version 2 of the License, or
12     (at your option) any later version.
13
14     GeiNuke is distributed in the hope that it will be useful,
15     but WITHOUT ANY WARRANTY; without even the implied warranty of
16     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17     GNU General Public License for more details.
18
19     You should have received a copy of the GNU General Public License
20     along with GeiNuke; if not, write to the Free Software
21     Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
22 */

23 package com.geinuke.module.blog;
24
25 import java.util.ArrayList JavaDoc;
26 import java.util.Locale JavaDoc;
27
28 import javax.servlet.http.HttpServletRequest JavaDoc;
29 import javax.servlet.http.HttpServletResponse JavaDoc;
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 JavaDoc getResults(HttpServletRequest JavaDoc req,HttpServletResponse JavaDoc res)throws Exception JavaDoc{
49         ArrayList JavaDoc resp=null;
50         IBlogBL bbl=(IBlogBL)GeiServlet.getBL("IBlogBL");
51         String JavaDoc words=req.getParameter("words");
52         GeiServlet.intLog("SearchBlogPosts.getResults(...), req.getParameter(words)="+words);
53         String JavaDoc mod=req.getParameter("mod");
54         if(words==null || words.trim().equals("")){
55             
56             return new ArrayList JavaDoc();
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 JavaDoc req, HttpServletResponse JavaDoc res, UserI user, GlobalConfigurationI gConf) throws Exception JavaDoc {
69         String JavaDoc moduleTempName=null;
70         ArrayList JavaDoc posts=null;
71         
72         posts=this.getResults(req,res);
73                 
74         GeiServlet.intLog(""+posts);
75         
76         
77         String JavaDoc 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 JavaDoc 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