KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > geinuke > module > newsarchive > ShowPeriodModule


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.newsarchive;
24
25 import java.util.ArrayList JavaDoc;
26 import java.util.GregorianCalendar JavaDoc;
27 import java.util.Locale JavaDoc;
28
29 import javax.servlet.http.HttpServletRequest JavaDoc;
30 import javax.servlet.http.HttpServletResponse JavaDoc;
31
32 import org.apache.velocity.context.Context;
33
34 import com.geinuke.common.GlobalConfigurationI;
35 import com.geinuke.common.ModuleWidgetI;
36 import com.geinuke.common.NukeModuleI;
37 import com.geinuke.common.PageTool;
38 import com.geinuke.common.UserI;
39 import com.geinuke.middle.INewsBL;
40 import com.geinuke.module.ModuleWriter;
41 import com.geinuke.servlet.GeiServlet;
42 import com.geinuke.util.NukeResource;
43 import com.geinuke.util.TextUtil;
44 import com.geinuke.vo.ModuleDBVO;
45
46 public class ShowPeriodModule implements ModuleWidgetI{
47
48     
49     protected Long JavaDoc[] getBounds(int year,int mo){
50         
51         int y1=year;
52         int mo1=mo+1;
53         if(mo1==12){
54             mo1=0;
55             y1++;
56         }
57         GregorianCalendar JavaDoc lowBound=new GregorianCalendar JavaDoc(year,mo,1);
58         GregorianCalendar JavaDoc upBound=new GregorianCalendar JavaDoc(y1,mo1,1);
59         Long JavaDoc[] bounds={new Long JavaDoc(lowBound.getTimeInMillis()),
60                 new Long JavaDoc(upBound.getTimeInMillis())};
61         return bounds;
62     }
63
64     
65     
66     public NukeModuleI handleAction(ModuleDBVO module, Context ctx,HttpServletRequest JavaDoc req, HttpServletResponse JavaDoc res, UserI user, GlobalConfigurationI gConf) throws Exception JavaDoc {
67         NukeModuleI mod=null;
68         String JavaDoc moduleTempName=null;
69         ArrayList JavaDoc list=null;
70         INewsBL nbl=(INewsBL)GeiServlet.getBL("INewsBL");
71         String JavaDoc aux=req.getParameter("p");
72         int year=TextUtil.splitAt(aux,1);
73         int mo=TextUtil.splitAt(aux,0);
74         Long JavaDoc [] bounds=this.getBounds(year,mo);
75         list=nbl.getEnabledNewsByPeriod(bounds);
76         
77         ctx.put("list",list);
78         Locale JavaDoc lo=NukeResource.getLocale(req,res);
79         
80         ctx.put("pageTool",new PageTool(lo));
81         
82         
83         moduleTempName=gConf.getModulePage(module.getName(),req);
84         return ModuleWriter.fill(ctx,module,moduleTempName);
85         
86     }
87
88 }
Popular Tags