1 6 7 package org.contineo.actions.communication; 8 9 import java.util.Date ; 10 import javax.servlet.http.HttpServletRequest ; 11 import javax.servlet.http.HttpServletResponse ; 12 import javax.servlet.http.HttpSession ; 13 import org.apache.log4j.Level; 14 import org.apache.log4j.Logger; 15 import org.apache.struts.action.Action; 16 import org.apache.struts.action.ActionError; 17 import org.apache.struts.action.ActionErrors; 18 import org.apache.struts.action.ActionForm; 19 import org.apache.struts.action.ActionForward; 20 import org.apache.struts.action.ActionMapping; 21 import org.apache.struts.action.ActionMessage; 22 import org.apache.struts.action.ActionMessages; 23 import org.contineo.admin.dao.UserDAO; 24 import org.contineo.communication.SystemMessage; 25 import org.contineo.communication.dao.SystemMessageDAO; 26 import org.contineo.core.LoggingManager; 27 import org.contineo.core.SessionManagement; 28 import org.contineo.forms.SysMessForm; 29 34 public class SaveSystemMessageAction extends Action { 35 36 40 private Logger logger; 41 42 43 44 public SaveSystemMessageAction() { 45 logger = LoggingManager.getLogger(this.getClass()); 46 } 47 48 public ActionForward execute(ActionMapping mapping, 49 ActionForm form, HttpServletRequest request, 50 HttpServletResponse response) { 51 ActionForward actionForward = new ActionForward(); 52 ActionErrors errors = new ActionErrors(); 53 ActionMessages messages = new ActionMessages(); 54 HttpSession session = request.getSession(); 55 if (SessionManagement.isValid(session)) { 56 try { 57 SysMessForm smform = (SysMessForm)form; 58 UserDAO udao = new UserDAO(); 59 String recipient = smform.getRecipient(); 60 if (udao.existsUser(recipient)) { 61 SystemMessage sysmess = new SystemMessage(); 62 sysmess.setAuthor((String )session.getAttribute("authuser")); 63 sysmess.setRecipient(recipient); 64 sysmess.setSubject(smform.getSubject()); 65 sysmess.setPrio(smform.getPrio()); 66 if (smform.getConfirmation()) 67 sysmess.setConfirmation(1); 68 else 69 sysmess.setConfirmation(0); 70 sysmess.setSentDate(String.valueOf(new Date ().getTime())); 71 sysmess.setDateScope(smform.getDateScope()); 72 sysmess.setMessageText(smform.getMessage()); 73 SystemMessageDAO smdao = new SystemMessageDAO(); 74 boolean stored = smdao.store(sysmess); 75 if (!stored) 76 errors.add(ActionErrors.GLOBAL_ERROR, new ActionError("errors.action.savesysmess")); 77 else 78 messages.add(ActionMessages.GLOBAL_MESSAGE, new ActionMessage("msg.action.savesysmess")); 79 } else { 80 errors.add(ActionErrors.GLOBAL_ERROR, new ActionError("errors.action.usernotexists")); 81 } 82 } catch (Exception e) { 83 if (logger.isEnabledFor(Level.ERROR)) 84 logger.error(e.getMessage()); 85 errors.add(ActionErrors.GLOBAL_ERROR, new ActionError("errors.action.savesysmess")); 86 } 87 saveErrors(request, errors); 88 saveMessages(request, messages); 89 actionForward.setPath("/AddSystemMessage.do"); 91 } else 92 actionForward = mapping.findForward("invalid"); 93 return actionForward; 94 } 95 } 96
| Popular Tags
|