1 22 23 package com.dotmarketing.portlets.mailinglists.action; 24 25 import java.util.Iterator ; 26 import java.util.List ; 27 28 import javax.portlet.PortletConfig; 29 import javax.portlet.RenderRequest; 30 import javax.portlet.RenderResponse; 31 import javax.portlet.WindowState; 32 import javax.servlet.jsp.PageContext ; 33 34 import org.apache.struts.action.ActionForm; 35 import org.apache.struts.action.ActionForward; 36 import org.apache.struts.action.ActionMapping; 37 38 import com.dotmarketing.factories.RoleFactory; 39 import com.dotmarketing.portlets.mailinglists.factories.MailingListFactory; 40 import com.dotmarketing.util.Config; 41 import com.dotmarketing.util.Logger; 42 import com.dotmarketing.util.WebKeys; 43 import com.liferay.portal.model.Role; 44 import com.liferay.portal.model.User; 45 import com.liferay.portal.struts.PortletAction; 46 import com.liferay.portal.util.Constants; 47 48 55 public class ViewMailingListsAction extends PortletAction { 56 57 public ActionForward render( 58 ActionMapping mapping, ActionForm form, PortletConfig config, 59 RenderRequest req, RenderResponse res) 60 throws Exception { 61 62 Logger.debug(this, "Running ViewMailingListsAction"); 63 64 try { 65 User user = com.liferay.portal.util.PortalUtil.getUser(req); 67 68 List list = null; 70 List roles = RoleFactory.getAllRolesForUser(user.getUserId()); 71 Iterator rolesIt = roles.iterator(); 72 boolean isMarketingAdmin = false; 73 while (rolesIt.hasNext()) { 74 Role role = (Role) rolesIt.next(); 75 if (role.getName().equals(Config.getStringProperty("MAILINGLISTS_ADMIN_ROLE"))) { 76 isMarketingAdmin = true; 77 break; 78 } 79 } 80 if (isMarketingAdmin) 81 list = MailingListFactory.getAllMailingLists(); 82 else { 83 list = MailingListFactory.getMailingListsByUser(user); 84 list.add(MailingListFactory.getUnsubscribersMailingList()); 85 } 86 87 if (req.getWindowState().equals(WindowState.NORMAL)) { 88 req.setAttribute(WebKeys.MAILING_LIST_VIEW_PORTLET, list); 89 return mapping.findForward("portlet.ext.mailinglists.view"); 90 } 91 else { 92 req.setAttribute(WebKeys.MAILING_LIST_VIEW, list); 93 return mapping.findForward("portlet.ext.mailinglists.view_mailinglists"); 94 } 95 } 96 catch (Exception e) { 97 req.setAttribute(PageContext.EXCEPTION, e); 98 return mapping.findForward(Constants.COMMON_ERROR); 99 } 100 } 101 102 } | Popular Tags |