KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > dotmarketing > portlets > event_registrations > factories > WebEventRegistrationFactory


1 package com.dotmarketing.portlets.event_registrations.factories;
2
3 import java.util.Date JavaDoc;
4 import java.util.GregorianCalendar JavaDoc;
5 import java.util.List JavaDoc;
6
7 import com.dotmarketing.db.DbConnectionFactory;
8 import com.dotmarketing.db.DotHibernate;
9 import com.dotmarketing.factories.InodeFactory;
10 import com.dotmarketing.portlets.event_registrations.model.WebEventAttendee;
11 import com.dotmarketing.portlets.event_registrations.model.WebEventRegistration;
12 import com.dotmarketing.portlets.event_registrations.struts.ViewRegistrationsForm;
13 import com.dotmarketing.portlets.event_registrations.struts.WebEventRegistrationForm;
14 import com.dotmarketing.portlets.webevents.model.WebEventLocation;
15 import com.dotmarketing.util.Config;
16 import com.dotmarketing.util.UtilMethods;
17
18 /**
19  *
20  * @author Maria Ahues
21  */

22 public class WebEventRegistrationFactory {
23     
24     public static java.util.List JavaDoc getAllWebEventRegistrations() {
25         DotHibernate dh = new DotHibernate(WebEventRegistration.class);
26         dh.setQuery(
27             "from inode in class com.dotmarketing.portlets.event_registrations.model.WebEventRegistration order by date_posted desc");
28         return dh.list();
29     }
30     public static java.util.List JavaDoc getAllWebEventRegistrations(String JavaDoc orderby) {
31         DotHibernate dh = new DotHibernate(WebEventRegistration.class);
32         dh.setQuery(
33             "from inode in class com.dotmarketing.portlets.event_registrations.model.WebEventRegistration order by " + orderby);
34         return dh.list();
35     }
36     
37     public static java.util.List JavaDoc getWebEventRegistrationsByCondition(String JavaDoc condition) {
38         DotHibernate dh = new DotHibernate(WebEventRegistration.class);
39         dh.setQuery(
40             "from inode in class com.dotmarketing.portlets.event_registrations.model.WebEventRegistration where " + condition);
41         return dh.list();
42     }
43     
44     public static java.util.List JavaDoc getTodayWebEventRegistrations() {
45         DotHibernate dh = new DotHibernate(WebEventRegistration.class);
46         dh.setQuery(
47             "from inode in class com.dotmarketing.portlets.event_registrations.model.WebEventRegistration where date_posted >= ? order by date_posted desc");
48         GregorianCalendar JavaDoc cal = new GregorianCalendar JavaDoc ();
49         cal.setTime(new Date JavaDoc());
50         cal.set(GregorianCalendar.HOUR_OF_DAY, 0);
51         cal.set(GregorianCalendar.MINUTE, 0);
52         cal.set(GregorianCalendar.SECOND, 0);
53         dh.setParam(cal.getTime());
54         return dh.list();
55     }
56
57     public static java.util.List JavaDoc getEventAttendees(WebEventRegistration eventRegistration, String JavaDoc orderby) {
58         String JavaDoc condition = "event_registration_inode = " + eventRegistration.getInode();
59         return InodeFactory.getInodesOfClassByConditionAndOrderBy(WebEventLocation.class, condition, orderby);
60     }
61     
62     public static java.util.List JavaDoc getEventAttendees(WebEventRegistrationForm eventRegistrationForm, String JavaDoc orderby) {
63         String JavaDoc condition = "event_registration_inode = " + eventRegistrationForm.getInode();
64         return InodeFactory.getInodesOfClassByConditionAndOrderBy(WebEventLocation.class, condition, orderby);
65     }
66     
67     @SuppressWarnings JavaDoc("unchecked")
68     public static java.util.List JavaDoc<WebEventAttendee> getEventAttendees(WebEventRegistration eventRegistration) {
69         String JavaDoc condition = "event_registration_inode = " + eventRegistration.getInode();
70         String JavaDoc orderby = "first_name, last_name";
71         return (java.util.List JavaDoc<WebEventAttendee>)InodeFactory.getInodesOfClassByConditionAndOrderBy(WebEventAttendee.class, condition, orderby);
72     }
73     
74     @SuppressWarnings JavaDoc("unchecked")
75     public static java.util.List JavaDoc<WebEventAttendee> getEventAttendees(WebEventRegistrationForm eventRegistrationForm) {
76         String JavaDoc condition = "event_registration_inode = " + eventRegistrationForm.getInode();
77         String JavaDoc orderby = "first_name, last_name";
78         return (java.util.List JavaDoc<WebEventAttendee>)InodeFactory.getInodesOfClassByConditionAndOrderBy(WebEventAttendee.class, condition, orderby);
79     }
80     
81     @SuppressWarnings JavaDoc("unchecked")
82     public static java.util.List JavaDoc<WebEventAttendee> getEventAttendeesByEmail(WebEventRegistration eventRegistration, String JavaDoc email) {
83         String JavaDoc condition = "event_registration_inode = " + eventRegistration.getInode() + " and email = '" + email + "'";
84         String JavaDoc orderby = "first_name, last_name";
85         return (java.util.List JavaDoc<WebEventAttendee>)InodeFactory.getInodesOfClassByConditionAndOrderBy(WebEventAttendee.class, condition, orderby);
86     }
87
88     public static WebEventRegistration getWebEventRegistration(long inode) {
89         return (WebEventRegistration) InodeFactory.getInode(inode, WebEventRegistration.class);
90     }
91
92     public static WebEventRegistration getWebEventRegistration(String JavaDoc inode) {
93         return (WebEventRegistration) InodeFactory.getInode(inode, WebEventRegistration.class);
94     }
95
96     public static WebEventRegistration newInstance() {
97         WebEventRegistration m = new WebEventRegistration();
98         return m;
99     }
100
101     public static void saveWebEventRegistration(WebEventRegistration WebEventRegistration) {
102         InodeFactory.saveInode(WebEventRegistration);
103     }
104
105     public static void deleteWebEventRegistration(WebEventRegistration WebEventRegistration) {
106         InodeFactory.deleteInode(WebEventRegistration);
107     }
108     
109     public static List JavaDoc getFilteredRegistrations(ViewRegistrationsForm vForm) {
110         
111         String JavaDoc eventInode = vForm.getEventInode();
112         String JavaDoc locationInode = vForm.getLocationInode();
113         Date JavaDoc startDate = vForm.getStartDate();
114         Date JavaDoc endDate = vForm.getEndDate();
115         String JavaDoc regNumber = vForm.getRegistrationNumber();
116         String JavaDoc invoiceNumber = vForm.getInvoiceNumber();
117         int paymentStatus = vForm.getPaymentStatus();
118         int institute = vForm.getInstitute();
119
120         String JavaDoc condition = "";
121         
122         if (UtilMethods.isSet(regNumber) && !regNumber.equals("0")) {
123             if (condition.length()>0) condition += " and ";
124             condition += " web_event_registration.inode = " + regNumber;
125         }
126         if (paymentStatus > 0) {
127             if (condition.length()>0) condition += " and ";
128             condition += " web_event_registration.registration_status = " + paymentStatus;
129         }
130         if (UtilMethods.isSet(eventInode) && !eventInode.equals("0")) {
131             if (condition.length()>0) condition += " and ";
132             condition += " web_event_registration.event_inode = " + eventInode;
133         }
134         if (UtilMethods.isSet(locationInode) && !locationInode.equals("0")) {
135             if (condition.length()>0) condition += " and ";
136             condition += " web_event_registration.event_location_inode = " + locationInode;
137         }
138         if (UtilMethods.isSet(startDate)) {
139             if (condition.length()>0) condition += " and ";
140             condition += " web_event_registration.date_posted >= ? ";
141         }
142         if (UtilMethods.isSet(endDate)) {
143             if (condition.length()>0) condition += " and ";
144             condition += " web_event_registration.date_posted <= ? ";
145         }
146         if (UtilMethods.isSet(invoiceNumber)) {
147             if (condition.length()>0) condition += " and ";
148             condition += " web_event_registration.invoice_number = '" + invoiceNumber + "'";
149         }
150         //institute
151
if (institute == 1) {
152             if (condition.length()>0) condition += " and ";
153             condition += " web_event.is_institute = " + DbConnectionFactory.getDBTrue();
154         }
155         //webinar
156
else if (institute == 2) {
157             if (condition.length()>0) condition += " and ";
158             condition += " web_event.is_institute = " + DbConnectionFactory.getDBFalse();
159         }
160         
161         //to create the query and get the results
162
DotHibernate dh = new DotHibernate(WebEventRegistration.class);
163         String JavaDoc query = "select {web_event_registration.*} from web_event_registration as web_event_registration, inode as web_event_registration_1_, web_event as web_event";
164         query += " where web_event_registration_1_.inode = web_event_registration.inode and web_event_registration.event_inode = web_event.inode ";
165
166         if (condition.length()>0) {
167             query += "and " + condition;
168         }
169         String JavaDoc orderBy = vForm.getOrderBy();
170         String JavaDoc direction = vForm.getSelectedDirection();
171         if (UtilMethods.isSet(orderBy))
172             orderBy = " order by web_event_registration." + orderBy + " " + direction;
173         else
174             orderBy = " order by web_event_registration.date_posted desc";
175             
176         query += orderBy;
177         
178         dh.setSQLQuery(query);
179
180         if (UtilMethods.isSet(startDate)) {
181             dh.setDate(startDate);
182         }
183         if (UtilMethods.isSet(endDate)) {
184             dh.setDate(endDate);
185         }
186         return dh.list();
187
188         
189     }
190     public static List JavaDoc getRegistrationsPerEventLocation(long locationInode) {
191         
192         DotHibernate dh = new DotHibernate(WebEventRegistration.class);
193         String JavaDoc query = "from inode in class com.dotmarketing.portlets.event_registrations.model.WebEventRegistration where event_location_inode = " + locationInode;
194         query += " order by date_posted desc";
195         dh.setQuery(query);
196         return dh.list();
197     }
198     public static List JavaDoc getAttendeesPerEventLocation(long locationInode) {
199         DotHibernate dh = new DotHibernate(WebEventRegistration.class);
200         String JavaDoc query = "from inode in class com.dotmarketing.portlets.event_registrations.model.WebEventRegistration where event_location_inode = " + locationInode;
201         query += " order by date_posted desc";
202         dh.setQuery(query);
203         return getEventAttendeesByRegistratiosList(dh.list());
204     }
205     
206     
207     @SuppressWarnings JavaDoc("unchecked")
208     public static java.util.List JavaDoc<WebEventAttendee> getEventAttendeesByRegistratiosList(List JavaDoc eventRegistrationList) {
209         String JavaDoc condition = "event_registration_inode = -1";
210         if (eventRegistrationList != null){
211             if (eventRegistrationList.size() > 0){
212                 condition = "event_registration_inode in (";
213                 for (int i=0;i<eventRegistrationList.size();i++){
214                     WebEventRegistration eventRegistration = (WebEventRegistration) eventRegistrationList.get(i);
215                     if (eventRegistration.getRegistrationStatus() != 6){
216                         if (i > 0)
217                             condition += "," + eventRegistration.getInode();
218                         else
219                             condition += eventRegistration.getInode();
220                     }
221                 }
222                 condition += ") ";
223             }
224         }
225         String JavaDoc orderby = "first_name, last_name";
226         return (java.util.List JavaDoc<WebEventAttendee>)InodeFactory.getInodesOfClassByConditionAndOrderBy(WebEventAttendee.class, condition, orderby);
227     }
228     public static java.util.List JavaDoc getWebEventRegistrationsByUser(String JavaDoc inode) {
229         DotHibernate dh = new DotHibernate(WebEventRegistration.class);
230         dh.setQuery(
231             "from inode in class com.dotmarketing.portlets.event_registrations.model.WebEventRegistration where user_inode = ?"
232                 );
233         dh.setParam(inode);
234             
235         return dh.list();
236     }
237     public static java.util.List JavaDoc getWebEventRegistrationsByUser(String JavaDoc inode, String JavaDoc orderBy) {
238         DotHibernate dh = new DotHibernate(WebEventRegistration.class);
239         dh.setQuery("from inode in class com.dotmarketing.portlets.event_registrations.model.WebEventRegistration where user_inode = ? order by " + orderBy);
240         dh.setParam(inode);
241             
242         return dh.list();
243     }
244     public static java.util.List JavaDoc getRegistrationsForEmailReminders() {
245         DotHibernate dh = new DotHibernate(WebEventRegistration.class);
246         
247         StringBuffer JavaDoc sb = new StringBuffer JavaDoc();
248         sb.append("select {web_event_registration.*} from web_event_registration as web_event_registration, inode as web_event_registration_1_, web_event as web_event, web_event_location as web_event_location ");
249         sb.append("where web_event_registration.inode = web_event_registration_1_.inode ");
250         sb.append("and web_event_registration.event_inode = web_event.inode ");
251         sb.append("and web_event_registration.event_location_inode = web_event_location.inode ");
252         sb.append("and web_event.inode = web_event_location.web_event_inode ");
253         sb.append("and web_event.is_institute = " + DbConnectionFactory.getDBFalse());
254         sb.append("and web_event_location.start_date > ? ");
255         sb.append("and web_event_location.start_date < ? ");
256         //only send emails to paid registrations
257
sb.append("and web_event_registration.registration_status = " + DbConnectionFactory.getDBTrue() + " ");
258         sb.append("and web_event_registration.reminder_email_sent = " + DbConnectionFactory.getDBFalse());
259         
260         dh.setSQLQuery(sb.toString());
261         
262         GregorianCalendar JavaDoc cal = new GregorianCalendar JavaDoc ();
263         cal.setTime(new Date JavaDoc());
264         cal.add(GregorianCalendar.DAY_OF_YEAR, 1);
265         cal.set(GregorianCalendar.HOUR_OF_DAY, 0);
266         cal.set(GregorianCalendar.MINUTE, 0);
267         cal.set(GregorianCalendar.SECOND, 0);
268         Date JavaDoc date1 = cal.getTime();
269         System.out.println("Email Reminder start date1 = " + date1);
270         cal.setTime(new Date JavaDoc());
271         cal.add(GregorianCalendar.DAY_OF_YEAR, 3);
272         cal.set(GregorianCalendar.HOUR_OF_DAY, 0);
273         cal.set(GregorianCalendar.MINUTE, 0);
274         cal.set(GregorianCalendar.SECOND, 0);
275         Date JavaDoc date2 = cal.getTime();
276         System.out.println("Email Reminder start date2 = " + date2);
277         dh.setParam(date1);
278         dh.setParam(date2);
279         return dh.list();
280     }
281
282     public static java.util.List JavaDoc getRegistrationsAfterWebinar() {
283         DotHibernate dh = new DotHibernate(WebEventRegistration.class);
284         
285         StringBuffer JavaDoc sb = new StringBuffer JavaDoc();
286         sb.append("select {web_event_registration.*} from web_event_registration as web_event_registration, inode as web_event_registration_1_, web_event as web_event, web_event_location as web_event_location ");
287         sb.append("where web_event_registration.inode = web_event_registration_1_.inode ");
288         sb.append("and web_event_registration.event_inode = web_event.inode ");
289         sb.append("and web_event_registration.event_location_inode = web_event_location.inode ");
290         sb.append("and web_event.inode = web_event_location.web_event_inode ");
291         sb.append("and web_event.is_institute = " + DbConnectionFactory.getDBFalse() + " ");
292         sb.append("and web_event_location.end_date > ? ");
293         sb.append("and web_event_location.end_date < ? ");
294         //only send emails to paid registrations
295
sb.append("and web_event_registration.registration_status = " + DbConnectionFactory.getDBTrue() + " ");
296         sb.append("and web_event_registration.post_email_sent = " + DbConnectionFactory.getDBFalse());
297         
298         dh.setSQLQuery(sb.toString());
299         
300         GregorianCalendar JavaDoc cal = new GregorianCalendar JavaDoc ();
301         cal.setTime(new Date JavaDoc());
302         cal.add(GregorianCalendar.DAY_OF_YEAR, -2);
303         cal.set(GregorianCalendar.HOUR_OF_DAY, 0);
304         cal.set(GregorianCalendar.MINUTE, 0);
305         cal.set(GregorianCalendar.SECOND, 0);
306         Date JavaDoc date1 = cal.getTime();
307         cal.setTime(new Date JavaDoc());
308         cal.set(GregorianCalendar.HOUR_OF_DAY, 0);
309         cal.set(GregorianCalendar.MINUTE, 0);
310         cal.set(GregorianCalendar.SECOND, 0);
311         Date JavaDoc date2 = cal.getTime();
312         dh.setParam(date1);
313         dh.setParam(date2);
314         return dh.list();
315     }
316     
317     
318     
319 }
Popular Tags