1 package com.dotmarketing.portlets.htmlpageviews.action; 2 3 import java.util.Calendar ; 4 import java.util.GregorianCalendar ; 5 import java.util.Map ; 6 7 import javax.portlet.ActionRequest; 8 import javax.portlet.ActionResponse; 9 import javax.portlet.PortletConfig; 10 import javax.portlet.RenderRequest; 11 import javax.portlet.RenderResponse; 12 import javax.servlet.ServletOutputStream ; 13 import javax.servlet.http.HttpServletRequest ; 14 import javax.servlet.http.HttpServletResponse ; 15 import javax.servlet.http.HttpSession ; 16 17 import org.apache.struts.action.ActionForm; 18 import org.apache.struts.action.ActionForward; 19 import org.apache.struts.action.ActionMapping; 20 21 import com.dotmarketing.beans.Identifier; 22 import com.dotmarketing.factories.IdentifierFactory; 23 import com.dotmarketing.factories.InodeFactory; 24 import com.dotmarketing.portal.struts.DotPortletAction; 25 import com.dotmarketing.portlets.htmlpages.model.HTMLPage; 26 import com.dotmarketing.portlets.htmlpageviews.factories.HTMLPageViewFactory; 27 import com.dotmarketing.util.Logger; 28 import com.dotmarketing.util.UtilMethods; 29 import com.liferay.portal.util.Constants; 30 import com.liferay.portlet.ActionResponseImpl; 31 32 39 public class HTMLPageReportAction extends DotPortletAction { 40 41 42 43 public void processAction( 44 ActionMapping mapping, ActionForm form, PortletConfig config, 45 ActionRequest req, ActionResponse res) 46 throws Exception { 47 48 ActionResponseImpl resImpl = (ActionResponseImpl)res; 50 HttpServletResponse httpRes = resImpl.getHttpServletResponse(); 51 52 if(! "userReport".equals(req.getParameter(Constants.CMD))){ 53 return; 54 } 55 _writeCSV(httpRes,req,res,form); 56 return; 57 58 } 59 60 public ActionForward render(ActionMapping mapping, ActionForm form, PortletConfig config, RenderRequest req, 61 RenderResponse res) throws Exception { 62 return mapping.findForward("portlet.ext.htmlpageviews.html_page_report"); 63 64 } 65 private void _writeCSV(HttpServletResponse httpRes,ActionRequest req, ActionResponse res,ActionForm form) throws Exception { 66 67 ServletOutputStream out = httpRes.getOutputStream(); 68 httpRes.setContentType("text/plain"); 69 72 75 77 78 79 80 com.liferay.portlet.RenderRequestImpl reqImpl = (com.liferay.portlet.RenderRequestImpl) req; 81 HttpServletRequest httpReq = reqImpl.getHttpServletRequest(); 82 HttpSession session = httpReq.getSession(); 84 Logger.debug(this, "########## req.getParameter(\"searchStartDate\") " + req.getParameter("searchStartDate")); 85 86 java.util.Date startDate = null; 87 if (req.getParameter("searchStartDate") != null) { 88 Logger.debug(this, "searchStartDate" + req.getParameter("searchStartDate")); 89 startDate = UtilMethods.htmlToDate(req.getParameter("searchStartDate")); 90 } else { 91 GregorianCalendar gcal = new GregorianCalendar (); 92 gcal.set(Calendar.DAY_OF_MONTH, 1); 93 gcal.set(Calendar.HOUR, 0); 94 gcal.set(Calendar.MINUTE, 0); 95 gcal.set(Calendar.SECOND, 0); 96 startDate = gcal.getTime(); 97 98 } 99 Logger.debug(this, "startDate" + startDate); 100 req.setAttribute("startDate", startDate); 101 102 java.util.Date endDate = null; 103 if (req.getParameter("searchEndDate") != null) { 104 Logger.debug(this, "searchEndDate" + req.getParameter("searchEndDate")); 105 endDate = UtilMethods.htmlToDate(req.getParameter("searchEndDate")); 106 } else { 107 GregorianCalendar gcal = new GregorianCalendar (); 108 gcal.add(Calendar.MONTH, 1); 109 gcal.set(Calendar.DAY_OF_MONTH, 1); 110 gcal.set(Calendar.HOUR, 0); 111 gcal.set(Calendar.MINUTE, 0); 112 gcal.set(Calendar.SECOND, 0); 113 endDate = gcal.getTime(); 114 115 } 116 Logger.debug(this, "endDate" + endDate); 117 req.setAttribute("endDate", endDate); 118 119 String uri = null; 120 if (req.getParameter("htmlpage") != null) { 121 HTMLPage myHTMLPage = (HTMLPage) InodeFactory.getInode(req.getParameter("htmlpage"), HTMLPage.class); 122 uri = IdentifierFactory.getIdentifierByInode(myHTMLPage).getURI(); 123 req.setAttribute("htmlPage", myHTMLPage); 124 } else if (req.getParameter("pageIdentifier") != null) { 125 Identifier id = (Identifier) InodeFactory.getInode(req.getParameter("pageIdentifier"), Identifier.class); 126 uri = id.getURI(); 127 HTMLPage myHTMLPage = (HTMLPage) IdentifierFactory.getLiveChildOfClass(id, HTMLPage.class); 128 req.setAttribute("htmlPage", myHTMLPage); 129 } 130 131 132 133 java.util.List allUsers = HTMLPageViewFactory.getAllUsers(uri, startDate, endDate); 134 135 136 137 138 out.print("Name, eMail"); 139 out.print("\n"); 140 java.util.Iterator i = allUsers.iterator(); 141 int x = 1; 142 while(i.hasNext()){ 143 Map map = (Map ) i.next(); 144 out.print("'" + ( map.get("firstName") + " " + map.get("lastName")).replace('\'', '`') + "','" + map.get("emailAddress") + "'"); 145 out.print("\n"); 146 } 147 148 149 150 out.close(); 151 152 } 153 154 155 156 157 158 159 160 161 162 163 164 } | Popular Tags |