KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > dotmarketing > portlets > webevents > action > ViewEventsAction


1 /*
2  * Created on 19/10/2004
3  *
4  */

5 package com.dotmarketing.portlets.webevents.action;
6
7 import java.util.ArrayList JavaDoc;
8 import java.util.Collections JavaDoc;
9 import java.util.HashSet JavaDoc;
10 import java.util.List JavaDoc;
11 import java.util.Set JavaDoc;
12
13 import javax.portlet.PortletConfig;
14 import javax.portlet.PortletRequest;
15 import javax.portlet.PortletResponse;
16 import javax.portlet.RenderRequest;
17 import javax.portlet.RenderResponse;
18 import javax.portlet.WindowState;
19
20 import org.apache.struts.action.ActionForm;
21 import org.apache.struts.action.ActionForward;
22 import org.apache.struts.action.ActionMapping;
23
24 import com.dotmarketing.util.UtilMethods;
25 import com.dotmarketing.util.WebKeys;
26 import com.liferay.portal.struts.PortletAction;
27 import com.dotmarketing.portlets.webevents.factories.WebEventFactory;
28
29 /**
30  * @author David Torres
31  *
32  */

33 public class ViewEventsAction extends PortletAction {
34     public ActionForward render(ActionMapping mapping, ActionForm form, PortletConfig config, RenderRequest req,
35             RenderResponse res) throws Exception JavaDoc {
36         if (req.getWindowState().equals(WindowState.NORMAL)) {
37             _viewEvents(mapping, form, config, req, res);
38             return mapping.findForward("portlet.ext.webevents.view");
39         } else {
40             _viewEvents(mapping, form, config, req, res);
41             return mapping.findForward("portlet.ext.webevents.view_events");
42         }
43     }
44
45     private void _viewEvents(ActionMapping mapping, ActionForm form, PortletConfig config, PortletRequest req,
46             PortletResponse res) throws Exception JavaDoc {
47
48         String JavaDoc keywords = req.getParameter("keywords");
49         String JavaDoc showPastEvents = req.getParameter("showPastEvents");
50         List JavaDoc events = new ArrayList JavaDoc();
51         List JavaDoc eventsNoLocations = new ArrayList JavaDoc();
52         
53         if ("true".equals(showPastEvents)) {
54             if (UtilMethods.isSet(keywords)) {
55                 //Get all current events
56
events = WebEventFactory.getAllWebEventsByKeywords(keywords);
57             }
58             else {
59                 //Get all current events
60
events = WebEventFactory.getAllWebEvents();
61             }
62         }
63         else {
64             if (UtilMethods.isSet(keywords)) {
65                 //Get all current events
66
events = WebEventFactory.getUpcomingWebEventsByKeywords(keywords);
67                 eventsNoLocations = WebEventFactory.getEventsWithNoLocationsByKeywords(keywords);
68                 events.addAll(eventsNoLocations);
69             }
70             else {
71                 //Get all current events
72
events = WebEventFactory.getUpcomingWebEvents();
73                 eventsNoLocations = WebEventFactory.getEventsWithNoLocations();
74                 events.addAll(eventsNoLocations);
75             }
76         }
77         Set JavaDoc eventsSet = new HashSet JavaDoc();
78         eventsSet.addAll(events);
79         events = new ArrayList JavaDoc();
80         events.addAll(eventsSet);
81         Collections.sort(events);
82         req.setAttribute(WebKeys.WEBEVENTS_VIEW, events);
83     }
84
85 }
86
Popular Tags