1 16 package com.blandware.atleap.webapp.action.core.mailTemplate; 17 18 import com.blandware.atleap.common.Constants; 19 import com.blandware.atleap.common.util.ConvertUtil; 20 import com.blandware.atleap.model.core.MailTemplate; 21 import com.blandware.atleap.service.core.MailTemplateManager; 22 import com.blandware.atleap.webapp.action.core.BaseAction; 23 import com.blandware.atleap.webapp.form.MailTemplateForm; 24 import com.blandware.atleap.webapp.util.core.LocaleUtil; 25 import com.blandware.atleap.webapp.util.core.WebappConstants; 26 import org.apache.struts.action.ActionForm; 27 import org.apache.struts.action.ActionForward; 28 import org.apache.struts.action.ActionMapping; 29 import org.apache.struts.action.ActionMessage; 30 import org.apache.struts.action.ActionMessages; 31 32 import javax.servlet.http.HttpServletRequest ; 33 import javax.servlet.http.HttpServletResponse ; 34 import java.util.List ; 35 36 56 public final class ViewMailTemplateAction extends BaseAction { 57 66 public ActionForward execute(ActionMapping mapping, ActionForm form, 67 HttpServletRequest request, HttpServletResponse response) throws Exception { 68 MailTemplateForm mailTemplateForm = (MailTemplateForm) form; 69 Long mailTemplateId = null; 70 if ( mailTemplateForm.getId() != null ) { 71 mailTemplateId = Long.valueOf(mailTemplateForm.getId()); 72 } else if ( request.getSession().getAttribute(WebappConstants.MAIL_TEMPLATE_ID_KEY) != null ) { 73 mailTemplateId = (Long ) request.getSession().getAttribute(WebappConstants.MAIL_TEMPLATE_ID_KEY); 74 } else { 75 if ( log.isWarnEnabled() ) { 76 log.warn("Missing mail template ID. Returning to list..."); 77 } 78 return mapping.findForward("listMailTemplates"); 79 } 80 81 MailTemplateManager mailTemplateManager = (MailTemplateManager) getBean(Constants.MAIL_TEMPLATE_MANAGER_BEAN); 82 MailTemplate mailTemplate = mailTemplateManager.retrieveMailTemplate(mailTemplateId); 83 84 if ( mailTemplate == null ) { 85 ActionMessages errors = new ActionMessages(); 87 errors.add("mailTemplateNotFound", new ActionMessage("core.mailTemplate.errors.notFound")); 88 saveErrors(request, errors); 89 return mapping.findForward("listMailTemplates"); 90 } 91 92 request.setAttribute("mailTemplate", mailTemplate); 93 94 95 96 98 if ( mailTemplate.getAvailableVariables() != null && !mailTemplate.getAvailableVariables().isEmpty() ) { 99 request.getSession().setAttribute(WebappConstants.MAIL_TEMPLATE_AVAIALABLE_VARIABLES_KEY, ConvertUtil.convertListToString(mailTemplate.getAvailableVariables(), ", ")); 100 } else { 101 request.getSession().removeAttribute(WebappConstants.MAIL_TEMPLATE_AVAIALABLE_VARIABLES_KEY); 102 } 103 104 List contentLocales = LocaleUtil.getInstance(servlet.getServletContext()).getAvailableLocales(); 105 106 request.getSession().setAttribute(WebappConstants.CONTENT_LOCALES_COLLECTION_KEY, contentLocales); 107 108 return mapping.findForward("viewMailTemplate"); 109 } 110 } | Popular Tags |