KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > cofax > module > CofaxToolsExtNewsletter


1 /*
2  * CofaxToolsExtNewsletter is part of the Cofax content management system library.
3  *
4  * This library is free software; you can redistribute it and/or
5  * modify it under the terms of the GNU Lesser General Public
6  * License as published by the Free Software Foundation; either
7  * version 2.1 of the License, or (at your option) any later version.
8  *
9  * This library is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12  * Lesser General Public License for more details.
13  *
14  * You should have received a copy of the GNU Lesser General Public
15  * License along with this library; if not, write to the Free Software
16  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17  *
18  * Please see http://www.cofax.org for contact information and other related informaion.
19  *
20  * $Header: /cvsroot/cofax/cofax/src/org/cofax/module/CofaxToolsExtNewsletter.java,v 1.2.2.1 2006/12/11 16:31:50 fxrobin Exp $
21  */

22
23 package org.cofax.module;
24
25 import org.cofax.*;
26 import org.cofax.cms.*;
27 import javax.servlet.http.*;
28 import java.util.*;
29
30 /**
31  * CofaxToolsExtNewsletter utilities for the newsletters
32  *
33  * @author Badr Chentouf
34  *
35  */

36
37 public class CofaxToolsExtNewsletter extends CofaxToolsExtModule {
38
39     /**
40      * navigate throught the different modes for polls
41      *
42      */

43     public String JavaDoc navigate(DataStore db, CofaxPage page, HttpServletRequest req, HttpServletResponse res, HttpSession session) {
44         String JavaDoc mode = (String JavaDoc) req.getParameter("mode");
45         HashMap ht = new HashMap();
46         CofaxToolsUser user = (CofaxToolsUser) (session.getAttribute("user"));
47         String JavaDoc workingPubName = (String JavaDoc) user.workingPubName;
48         page.putGlossaryValue("system:message", getI18NMessage("message_welcome"));
49
50         // modify a newsletter
51
if (mode.equals("newsletter_set_newsletter")) {
52             String JavaDoc newsletterID = (String JavaDoc) req.getParameter("NEWSLETTERID");
53             String JavaDoc newsletterName = (String JavaDoc) req.getParameter("NEWSLETTERNAME");
54             if ((newsletterID != null) && !(newsletterID.equals(""))) {
55                 String JavaDoc tag = "update tblNewsletters set newsletterName='" + formatString(newsletterName) + "' where newsletterID=" + newsletterID;
56                 List list = CofaxToolsDbUtils.getPackageData(db, ht, tag);
57                 page.putGlossaryValue("system:message", getI18NMessage("message_newslettermodified"));
58                 page.putGlossaryValue("request:newsletterID", newsletterID);
59             } else {
60                 // new newsletter
61
String JavaDoc tag = "insert into tblNewsletters(newsletterName, pubName) values('" + formatString(newsletterName) + "','" + workingPubName + "')";
62                 List list = CofaxToolsDbUtils.getPackageData(db, ht, tag);
63                 page.putGlossaryValue("system:message", getI18NMessage("message_newsletteradded"));
64             }
65         }
66
67         // delete a suscriber
68
if (mode.equals("newsletter_delete_suscriber")) {
69             String JavaDoc suscriberID = (String JavaDoc) req.getParameter("SUSCRIBERID");
70             String JavaDoc newsletterID = (String JavaDoc) req.getParameter("NEWSLETTERID");
71             if ((suscriberID != null) && !(suscriberID.equals(""))) {
72                 String JavaDoc tag = "delete from tblNewsletterSuscribers where suscriberID=" + suscriberID;
73                 List list = CofaxToolsDbUtils.getPackageData(db, ht, tag);
74                 page.putGlossaryValue("system:message", getI18NMessage("message_suscriberdeleted"));
75                 page.putGlossaryValue("request:newsletterID", newsletterID);
76             } else {
77                 page.putGlossaryValue("system:message", getI18NMessage("message_errorSuscriberID"));
78             }
79         }
80
81         // modify a suscriber
82
if (mode.equals("newsletter_set_suscriber")) {
83             String JavaDoc suscriberID = (String JavaDoc) req.getParameter("SUSCRIBERID");
84             String JavaDoc newsletterID = (String JavaDoc) req.getParameter("NEWSLETTERID");
85             String JavaDoc mail = (String JavaDoc) req.getParameter("mail");
86             String JavaDoc name = (String JavaDoc) req.getParameter("name");
87             if ((suscriberID != null) && !(suscriberID.equals(""))) {
88                 String JavaDoc tag = "update tblNewsletterSuscribers set mail='" + formatString(mail) + "', name='" + formatString(name) + "' where suscriberID="
89                         + suscriberID;
90                 List list = CofaxToolsDbUtils.getPackageData(db, ht, tag);
91                 page.putGlossaryValue("system:message", getI18NMessage("message_suscribermodified"));
92                 page.putGlossaryValue("request:newsletterID", newsletterID);
93             } else {
94                 page.putGlossaryValue("system:message", getI18NMessage("message_errorSuscriberID"));
95             }
96         }
97
98         page.putGlossaryValue("system:highLightTab", "admin");
99         page.putGlossaryValue("request:pubName", workingPubName);
100         CofaxToolsNavigation.includeResource(page, "" + CofaxToolsServlet.templatePath + "module/editNewsletter.jsp", req, res, session); // FX :
101
// added
102
// templatePath
103

104         return "";
105     }
106
107     public String JavaDoc formatString(String JavaDoc input) {
108         String JavaDoc retVal = CofaxToolsUtil.replace(input, "'", "''");
109         retVal = CofaxToolsUtil.replace(retVal, "\\", "\\\\");
110         return retVal;
111     }
112
113     public String JavaDoc getI18NMessage(String JavaDoc message) {
114         ResourceBundle messages;
115         String JavaDoc returnMessage = "";
116         Locale lcl = CofaxToolsServlet.lcl;
117         try {
118             messages = ResourceBundle.getBundle("org.cofax.module.newsletter", lcl);
119             returnMessage = messages.getString(message);
120         } catch (Exception JavaDoc e) {
121             CofaxToolsUtil.log("CofaxToolsExtNewsletter : getI18NMessage : error while reading " + message);
122         }
123         return (returnMessage);
124     }
125
126 }
127
Popular Tags