KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > geinuke > module > search > SearchAll


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.search;
24
25 import java.util.ArrayList JavaDoc;
26
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.NukeModuleI;
35 import com.geinuke.common.UserI;
36
37 import com.geinuke.middle.ISearchBL;
38
39 import com.geinuke.module.StaticModule;
40 import com.geinuke.servlet.GeiServlet;
41
42 import com.geinuke.util.Paginator;
43 import com.geinuke.util.ServletUtil;
44 import com.geinuke.vo.ModuleDBVO;
45
46
47 public class SearchAll extends StaticModule{
48     
49     public NukeModuleI handleAction(ModuleDBVO module, Context ctx,HttpServletRequest JavaDoc req, HttpServletResponse JavaDoc res, UserI user, GlobalConfigurationI gConf) throws Exception JavaDoc {
50         String JavaDoc mod=req.getParameter("mod");
51         String JavaDoc op=req.getParameter("op");
52         ArrayList JavaDoc resu=null;
53         ArrayList JavaDoc blog=null;
54         ArrayList JavaDoc news=null;
55         ArrayList JavaDoc forum=null;
56         if(op!=null && (op.equals("makeSB") || op.equals("makeSM") )){
57             ISearchBL sbl=(ISearchBL)GeiServlet.getBL("ISearchBL");
58             if(mod.equals("news")){
59                 resu=sbl.searchNewsByTitleOrText(req.getParameter("words"));
60             }else if(mod.equals("forum")){
61                 resu=sbl.searchForumTopicsByText(req.getParameter("words"));
62             }else if(mod.equals("blog")){
63                 resu=sbl.searchBlogPostsByText(req.getParameter("words"));
64             }else if(mod.equals("all")){
65                 ArrayList JavaDoc aux=null;
66                 resu=new ArrayList JavaDoc();
67                 aux=sbl.searchBlogPostsByText(req.getParameter("words"));
68                 resu.addAll(aux);
69                 
70                 aux=sbl.searchForumTopicsByText(req.getParameter("words"));
71                 resu.addAll(aux);
72                 
73                 aux=sbl.searchNewsByTitleOrText(req.getParameter("words"));
74                 resu.addAll(aux);
75             }
76         }
77         
78         if((resu!=null)&& (resu.size()==0) )
79             resu=null;
80         else if(resu!=null)
81             ctx.put("size",resu.size()+"");
82         String JavaDoc pag=req.getParameter("wp");
83         Paginator pager=new Paginator(resu,15,"Search.jhtm?"+ServletUtil.getQueryString(req));
84         if(pag!=null){
85             resu=pager.getPage(Integer.parseInt(pag));
86         }else{
87             resu=pager.getPage(1);
88         }
89         //ctx.put("")
90
ctx.put("pag",pager);
91         ctx.put("res",resu);
92         ctx.put("op",op);
93         ctx.put("words",req.getParameter("words"));
94         ctx.put("mod",req.getParameter("mod"));
95         return super.handleAction(module,ctx,req,res,user,gConf);
96     }
97 }
98
Popular Tags