01: //=============================================================================
02: //=== Copyright (C) 2001-2007 Food and Agriculture Organization of the
03: //=== United Nations (FAO-UN), United Nations World Food Programme (WFP)
04: //=== and United Nations Environment Programme (UNEP)
05: //===
06: //=== This program is free software; you can redistribute it and/or modify
07: //=== it under the terms of the GNU General Public License as published by
08: //=== the Free Software Foundation; either version 2 of the License, or (at
09: //=== your option) any later version.
10: //===
11: //=== This program is distributed in the hope that it will be useful, but
12: //=== WITHOUT ANY WARRANTY; without even the implied warranty of
13: //=== MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14: //=== General Public License for more details.
15: //===
16: //=== You should have received a copy of the GNU General Public License
17: //=== along with this program; if not, write to the Free Software
18: //=== Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19: //===
20: //=== Contact: Jeroen Ticheler - FAO - Viale delle Terme di Caracalla 2,
21: //=== Rome - Italy. email: geonetwork@osgeo.org
22: //==============================================================================
23:
24: package org.fao.geonet.services.feedback;
25:
26: import jeeves.interfaces.Service;
27: import jeeves.server.ServiceConfig;
28: import jeeves.server.context.ServiceContext;
29: import jeeves.utils.Util;
30: import org.fao.geonet.GeonetContext;
31: import org.fao.geonet.constants.Geonet;
32: import org.fao.geonet.constants.Params;
33: import org.fao.geonet.kernel.setting.SettingManager;
34: import org.fao.geonet.util.MailSender;
35: import org.jdom.Element;
36:
37: //=============================================================================
38:
39: /** Stores the feedback from a user into the database and sends an e-mail
40: */
41:
42: public class Insert implements Service {
43: //--------------------------------------------------------------------------
44: //---
45: //--- Init
46: //---
47: //--------------------------------------------------------------------------
48:
49: public void init(String appPath, ServiceConfig params)
50: throws Exception {
51: }
52:
53: //--------------------------------------------------------------------------
54: //---
55: //--- Service
56: //---
57: //--------------------------------------------------------------------------
58:
59: public Element exec(Element params, final ServiceContext context)
60: throws Exception {
61: GeonetContext gc = (GeonetContext) context
62: .getHandlerContext(Geonet.CONTEXT_NAME);
63: SettingManager sm = gc.getSettingManager();
64:
65: String name = Util.getParam(params, Params.NAME);
66: String org = Util.getParam(params, Params.ORG);
67: String email = Util.getParam(params, Params.EMAIL);
68: String comments = Util.getParam(params, Params.COMMENTS);
69: String subject = Util.getParam(params, Params.SUBJECT,
70: "New feedback");
71:
72: String host = sm.getValue("system/feedback/mailServer/host");
73: String port = sm.getValue("system/feedback/mailServer/port");
74: String to = sm.getValue("system/feedback/email");
75:
76: MailSender sender = new MailSender(context);
77: sender.send(host, Integer.parseInt(port), email, name + " ("
78: + org + ")", to, null, subject, comments);
79:
80: return params;
81: }
82: }
83:
84: //=============================================================================
|