Advertisement
Guest User

Untitled

a guest
Dec 15th, 2018
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 7.92 KB | None | 0 0
  1. package com.axa.portugal.campaign.controller;
  2.  
  3.  
  4.  
  5. import com.axa.portugal.campaignform.bean.EmailBean;
  6. import com.axa.portugal.campaignform.service.impl.EmailServiceImpl;
  7. import com.axa.portugal.campaignform.utils.CampaignFormConstants;
  8. import com.axa.portugal.campaignform.utils.CampaignFormControllerUtils;
  9. import com.axa.portugal.campaignform.utils.CampaignFormUtils;
  10. import com.axa.portugal.commons.util.UserUtil;
  11. import com.liferay.portal.kernel.captcha.CaptchaUtil;
  12. import com.liferay.portal.kernel.log.Log;
  13. import com.liferay.portal.kernel.log.LogFactoryUtil;
  14. import com.liferay.portal.kernel.portlet.LiferayPortletConfig;
  15. import com.liferay.portal.kernel.servlet.SessionMessages;
  16. import com.liferay.portal.kernel.upload.UploadPortletRequest;
  17. import com.liferay.portal.kernel.util.JavaConstants;
  18. import com.liferay.portal.kernel.util.ParamUtil;
  19. import com.liferay.portal.kernel.util.WebKeys;
  20. import com.liferay.portal.theme.ThemeDisplay;
  21. import com.liferay.portal.util.PortalUtil;
  22.  
  23. import java.io.IOException;
  24.  
  25. import javax.portlet.ActionRequest;
  26. import javax.portlet.ActionResponse;
  27. import javax.portlet.PortletConfig;
  28. import javax.portlet.PortletPreferences;
  29. import javax.portlet.PortletSession;
  30. import javax.portlet.RenderRequest;
  31. import javax.portlet.RenderResponse;
  32. import javax.portlet.ResourceRequest;
  33. import javax.portlet.ResourceResponse;
  34.  
  35. import org.springframework.beans.factory.annotation.Autowired;
  36. import org.springframework.stereotype.Controller;
  37. import org.springframework.ui.Model;
  38. import org.springframework.util.StringUtils;
  39. import org.springframework.web.bind.annotation.RequestMapping;
  40. import org.springframework.web.portlet.bind.annotation.ActionMapping;
  41. import org.springframework.web.portlet.bind.annotation.RenderMapping;
  42. import org.springframework.web.portlet.bind.annotation.ResourceMapping;
  43.  
  44.  
  45. @Controller
  46. @RequestMapping("VIEW")
  47. public class CampaignFormController {
  48.  
  49.     private static final Log LOG = LogFactoryUtil.getLog(CampaignFormController.class);
  50.    
  51.     @Autowired
  52.     private EmailServiceImpl emailService;
  53.  
  54.     @RenderMapping
  55.     public String handleRenderRequest(RenderRequest request, RenderResponse response, Model model, PortletPreferences portletPreferences) {
  56.         if (LOG.isDebugEnabled()) {
  57.             LOG.debug("HandleRenderRequest -- START ");
  58.         }
  59.  
  60.         /**  get and set portlet preferences to model */
  61.         CampaignFormControllerUtils.addPrefsToModel(model, portletPreferences);
  62.         boolean simulationMaintenanceMode = CampaignFormControllerUtils.getBooleanFromPreferences(portletPreferences, CampaignFormConstants.SIMULATION_MAINTENANCE_MODE);
  63.  
  64.         String returnView = CampaignFormControllerUtils.setGeneralSessionVar(request, model, simulationMaintenanceMode);
  65.        
  66.         LOG.debug("handleRenderRequest END: [returnView: " + returnView + "]");
  67.        
  68.         return returnView;
  69.     }
  70.  
  71.  
  72.     @ActionMapping(params = "action=doSubmitForm")
  73.     public void submitForm(ActionRequest request, ActionResponse response, PortletPreferences portletPreferences, Model model) {
  74.        
  75.         LOG.debug("CampaignFormController submitForm() -- START");
  76.         ThemeDisplay themeDisplay = (ThemeDisplay) request.getAttribute(WebKeys.THEME_DISPLAY);
  77.  
  78.         UploadPortletRequest uploadRequest = PortalUtil.getUploadPortletRequest(request);
  79.        
  80.         EmailBean mailBean = CampaignFormUtils.setMailBean(portletPreferences, uploadRequest);
  81.  
  82.         /** Obtaining files to upload */
  83.         /** **************************************************************************************************************************** */
  84.         /**
  85.          *   check if user is signed in. in that case, he should have a main agent assigned, whose mail will be retrieved
  86.          *
  87.          */
  88.        
  89.         /** **************************************************************************************************************************** */
  90.         /** MAIL SECTION START **/
  91.  
  92.         boolean isErrorOccured = CampaignFormUtils.validateUserInput(request, portletPreferences, themeDisplay, uploadRequest, mailBean);
  93.  
  94.         if (!isErrorOccured) {
  95.             LOG.debug(" *** NO ERROR OCURRED *** ");
  96.  
  97.             boolean isMailsSended = false;
  98.  
  99.                 LOG.debug(" submitForm *** SEND A NO LEAD MAIL *** ");
  100.  
  101.                
  102.                 /** Send a internal email */               
  103.                 isMailsSended = CampaignFormUtils.sendInternalMail(request, mailBean, portletPreferences, uploadRequest, emailService);
  104.                
  105.             if (isMailsSended) {
  106.                 /** Lead or Email submited successfully */
  107.                 response.setRenderParameter("render", CampaignFormConstants.SUBMIT_SUCCESS);
  108.             } else {
  109.                 response.setRenderParameter("render", CampaignFormConstants.SUBMIT_FAIL);
  110.             }
  111.  
  112.         } else {
  113.             LOG.debug(" *** ERROR OCURRED *** ");
  114.             /** Hiding the default Error Message */
  115.             PortletConfig portletConfig = (PortletConfig) request.getAttribute(JavaConstants.JAVAX_PORTLET_CONFIG);
  116.             LiferayPortletConfig liferayPortletConfig = (LiferayPortletConfig) portletConfig;
  117.             SessionMessages.add(request, liferayPortletConfig.getPortletId()
  118.                     + SessionMessages.KEY_SUFFIX_HIDE_DEFAULT_ERROR_MESSAGE);
  119.         }
  120.         /** MAIL SECTION END**/
  121.         /** **************************************************************************************************************************** */
  122.        
  123.        
  124.         LOG.debug("CampaignFormController submitForm() -- END");
  125.        
  126.     }
  127.  
  128.     @RenderMapping(params = "render=submitSuccess")
  129.     public String renderReactivateSuccess(RenderRequest request, RenderResponse response, Model model) {
  130.  
  131.         return CampaignFormConstants.SUBMIT_SUCCESS;
  132.  
  133.     }
  134.  
  135.     @RenderMapping(params = "render=submitFail")
  136.     public String renderReactivateFail(RenderRequest request, RenderResponse response, Model model) {
  137.  
  138.         return CampaignFormConstants.SUBMIT_FAIL;
  139.  
  140.     }
  141.  
  142.     @RenderMapping(params = "render=home_redirect")
  143.     public String renderAuthenticationSuccess(RenderRequest request, RenderResponse response, Model model,
  144.             PortletPreferences portletPreferences) {
  145.  
  146.         String homePage = portletPreferences.getValue(CampaignFormConstants.HOME_PAGE, "/web/repsol-campaign");
  147.  
  148.         if (StringUtils.hasText(request.getParameter(CampaignFormConstants.URL_REDIRECT))) {
  149.             homePage = request.getParameter(CampaignFormConstants.URL_REDIRECT).trim();
  150.         }
  151.  
  152.         if (LOG.isDebugEnabled()) {
  153.             LOG.debug("home_redirect(): portletPreferences.homePage == "
  154.                     + portletPreferences.getValue(CampaignFormConstants.HOME_PAGE, "/web/repsol-campaign"));
  155.             LOG.debug("home_redirect(): urlRedirect == " + request.getParameter(CampaignFormConstants.URL_REDIRECT));
  156.             LOG.debug("home_redirect() -- render=home_redirect (" + homePage + ")");
  157.         }
  158.  
  159.         model.addAttribute("uri", homePage);
  160.         // script for redirect
  161.         return "home_redirect";
  162.     }
  163.  
  164.    
  165.     @RenderMapping(params = "render=fraude_redirect")
  166.     public String renderAuthenticationFail(RenderRequest request, RenderResponse response, Model model,
  167.             PortletPreferences portletPreferences) {
  168.  
  169.         String contactPage = portletPreferences.getValue(CampaignFormConstants.CONTACT_PAGE, "/web/repsol-campaign");
  170.  
  171.         if (StringUtils.hasText(request.getParameter(CampaignFormConstants.URL_REDIRECT))) {
  172.             contactPage = request.getParameter(CampaignFormConstants.URL_REDIRECT).trim();
  173.         }
  174.  
  175.         if (LOG.isDebugEnabled()) {
  176.             LOG.debug("contact_redirect(): portletPreferences.contactPage == "
  177.                     + portletPreferences.getValue(CampaignFormConstants.CONTACT_PAGE, "/web/repsol-campaign"));
  178.             LOG.debug("contact_redirect(): urlRedirect == " + request.getParameter(CampaignFormConstants.URL_REDIRECT));
  179.             LOG.debug("contact_redirect() -- render=contact_redirect (" + contactPage + ")");
  180.         }
  181.  
  182.         model.addAttribute("uri", contactPage);      
  183.         return "home_redirect";
  184.     }
  185.  
  186.     @ResourceMapping("captcha")
  187.     public void serveCaptcha(ResourceRequest resourceRequest, ResourceResponse resourceResponse) {
  188.  
  189.         if (LOG.isDebugEnabled()) {
  190.             LOG.debug("serveCaptcha()");
  191.         }
  192.  
  193.         try {
  194.             CaptchaUtil.serveImage(resourceRequest, resourceResponse);
  195.         } catch (IOException e) {
  196.             LOG.error("ERROR serving captcha", e);
  197.         }
  198.     }
  199.    
  200.  
  201.  
  202. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement