Suche senden
Hochladen
newsletter_Liferay.rtf
•
Als RTF, PDF herunterladen
•
0 gefällt mir
•
93 views
Gestio Organització Comunicació S.A.
Folgen
newsletter_Liferay.rtf
Weniger lesen
Mehr lesen
Melden
Teilen
Melden
Teilen
1 von 4
Jetzt herunterladen
Empfohlen
delphi-interfaces.pdf
delphi-interfaces.pdf
Gestio Organització Comunicació S.A.
delphi-interfaces.pdf
delphi-interfaces.pdf
Gestio Organització Comunicació S.A.
delphi-interfaces.pdf
delphi-interfaces.pdf
Gestio Organització Comunicació S.A.
REDUCING ARTIFACT ON ELECTROCARDIOGRAPHS.docx
REDUCING ARTIFACT ON ELECTROCARDIOGRAPHS.docx
Gestio Organització Comunicació S.A.
All about Ben
All about Ben
Benjamin Rosenthal
גלאוקומה
גלאוקומה
Meir Haim Dahan
גלאוקומה
גלאוקומה
Meir Haim Dahan
NYS Landforms
NYS Landforms
Benjamin Rosenthal
Empfohlen
delphi-interfaces.pdf
delphi-interfaces.pdf
Gestio Organització Comunicació S.A.
delphi-interfaces.pdf
delphi-interfaces.pdf
Gestio Organització Comunicació S.A.
delphi-interfaces.pdf
delphi-interfaces.pdf
Gestio Organització Comunicació S.A.
REDUCING ARTIFACT ON ELECTROCARDIOGRAPHS.docx
REDUCING ARTIFACT ON ELECTROCARDIOGRAPHS.docx
Gestio Organització Comunicació S.A.
All about Ben
All about Ben
Benjamin Rosenthal
גלאוקומה
גלאוקומה
Meir Haim Dahan
גלאוקומה
גלאוקומה
Meir Haim Dahan
NYS Landforms
NYS Landforms
Benjamin Rosenthal
גלאוקומה
גלאוקומה
Meir Haim Dahan
Half yearly report -nicra
Half yearly report -nicra
niranjannsahoo
A La Mar Fui Por Naranjas
A La Mar Fui Por Naranjas
MariaCollado
Resume
Resume
eyobrezi
Fmp production log
Fmp production log
samgh1995
mi presentacion en slideshare(brianda pacheco)
mi presentacion en slideshare(brianda pacheco)
valeriio
Sound Sync Annotations
Sound Sync Annotations
samgh1995
Vilgi Enp2 1
Vilgi Enp2 1
MediatecaCele
Wwii Group & Indiv Assmt & Rubrics
Wwii Group & Indiv Assmt & Rubrics
guest9825a1
Final idea development
Final idea development
samgh1995
Trading Charts May 17, 2009 Montek For FM, Chidambaram Fine As HM, Says India...
Trading Charts May 17, 2009 Montek For FM, Chidambaram Fine As HM, Says India...
Jagannadham Thunuguntla
Pepai Ccho 2
Pepai Ccho 2
MediatecaCele
Presentation of tagmemic grammar
Presentation of tagmemic grammar
biraytiful
Mcdonalds Case
Mcdonalds Case
solomagyy
The Financial Express 19 May 2009 (New Delhi
The Financial Express 19 May 2009 (New Delhi
Jagannadham Thunuguntla
Fmp audience profiling
Fmp audience profiling
samgh1995
Sims Pictures
Sims Pictures
samgh1995
Weitere ähnliche Inhalte
Andere mochten auch
גלאוקומה
גלאוקומה
Meir Haim Dahan
Half yearly report -nicra
Half yearly report -nicra
niranjannsahoo
A La Mar Fui Por Naranjas
A La Mar Fui Por Naranjas
MariaCollado
Resume
Resume
eyobrezi
Fmp production log
Fmp production log
samgh1995
mi presentacion en slideshare(brianda pacheco)
mi presentacion en slideshare(brianda pacheco)
valeriio
Sound Sync Annotations
Sound Sync Annotations
samgh1995
Vilgi Enp2 1
Vilgi Enp2 1
MediatecaCele
Wwii Group & Indiv Assmt & Rubrics
Wwii Group & Indiv Assmt & Rubrics
guest9825a1
Final idea development
Final idea development
samgh1995
Trading Charts May 17, 2009 Montek For FM, Chidambaram Fine As HM, Says India...
Trading Charts May 17, 2009 Montek For FM, Chidambaram Fine As HM, Says India...
Jagannadham Thunuguntla
Pepai Ccho 2
Pepai Ccho 2
MediatecaCele
Presentation of tagmemic grammar
Presentation of tagmemic grammar
biraytiful
Mcdonalds Case
Mcdonalds Case
solomagyy
The Financial Express 19 May 2009 (New Delhi
The Financial Express 19 May 2009 (New Delhi
Jagannadham Thunuguntla
Fmp audience profiling
Fmp audience profiling
samgh1995
Sims Pictures
Sims Pictures
samgh1995
Andere mochten auch
(17)
גלאוקומה
גלאוקומה
Half yearly report -nicra
Half yearly report -nicra
A La Mar Fui Por Naranjas
A La Mar Fui Por Naranjas
Resume
Resume
Fmp production log
Fmp production log
mi presentacion en slideshare(brianda pacheco)
mi presentacion en slideshare(brianda pacheco)
Sound Sync Annotations
Sound Sync Annotations
Vilgi Enp2 1
Vilgi Enp2 1
Wwii Group & Indiv Assmt & Rubrics
Wwii Group & Indiv Assmt & Rubrics
Final idea development
Final idea development
Trading Charts May 17, 2009 Montek For FM, Chidambaram Fine As HM, Says India...
Trading Charts May 17, 2009 Montek For FM, Chidambaram Fine As HM, Says India...
Pepai Ccho 2
Pepai Ccho 2
Presentation of tagmemic grammar
Presentation of tagmemic grammar
Mcdonalds Case
Mcdonalds Case
The Financial Express 19 May 2009 (New Delhi
The Financial Express 19 May 2009 (New Delhi
Fmp audience profiling
Fmp audience profiling
Sims Pictures
Sims Pictures
newsletter_Liferay.rtf
1.
package com.liferay.portlet.newsletter.action; import java.util.ArrayList; import
java.util.Arrays; import java.util.HashSet; import java.util.LinkedHashMap; import java.util.List; import java.util.Set; import com.liferay.portal.DuplicateGroupException; import com.liferay.portal.GroupFriendlyURLException; import com.liferay.portal.GroupNameException; import com.liferay.portal.NoSuchGroupException; import com.liferay.portal.RequiredGroupException; import com.liferay.portal.model.Group; import com.liferay.portal.model.Role; import com.liferay.portal.model.User; import com.liferay.portal.model.UserGroup; import com.liferay.portal.security.auth.PrincipalException; import com.liferay.portal.service.GroupLocalServiceUtil; import com.liferay.portal.service.GroupServiceUtil; import com.liferay.portal.service.RoleLocalServiceUtil; import com.liferay.portal.service.UserGroupLocalServiceUtil; import com.liferay.portal.service.UserLocalServiceUtil; import com.liferay.portal.service.persistence.RoleFinder; import com.liferay.portal.service.persistence.UserUtil; import com.liferay.portal.struts.PortletAction; import com.liferay.portal.util.Constants; import com.liferay.portal.util.PortalUtil; import com.liferay.portal.util.WebKeys; import com.liferay.portal.util.comparator.ContactLastNameComparator; import com.liferay.util.ParamUtil; import com.liferay.util.Validator; import com.liferay.util.dao.hibernate.QueryUtil; import com.liferay.util.mail.MailEngine; import com.liferay.util.servlet.SessionErrors; import javax.mail.internet.InternetAddress; import javax.portlet.ActionRequest; import javax.portlet.ActionResponse; import javax.portlet.PortletConfig; import javax.portlet.RenderRequest; import javax.portlet.RenderResponse; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionForward;
2.
import org.apache.struts.action.ActionMapping; public class
SendEmail extends PortletAction { public void processAction( ActionMapping mapping, ActionForm form, PortletConfig config, ActionRequest req, ActionResponse res) throws Exception { String[] userIds = req.getParameterValues("selected-users"); String[] userGroupIds = req.getParameterValues("selected-usergroups"); String[] groupIds = req.getParameterValues("selected-groups"); String[] roleIds = req.getParameterValues("selected-roles"); List addresses = new ArrayList(); List tempList = new ArrayList(); LinkedHashMap userParams = new LinkedHashMap(); // Get all users in the selected groups if (userGroupIds != null) { for (int i = 0; i < userGroupIds.length; i++) { UserGroup UG = UserGroupLocalServiceUtil.getUserGroup(userGroupIds); userParams.put("usersUserGroups", UG.getUserGroupId()); tempList = UserLocalServiceUtil.search(PortalUtil.getCompanyId(req), null, null, null, null, true, userParams, true, QueryUtil.ALL_POS, QueryUtil.ALL_POS, null); for (int j = 0; j < tempList.size(); j++) { addresses.add(tempList.get(j)); } } } userParams = new LinkedHashMap(); // now communities if (groupIds != null) { for (int i = 0; i < groupIds.length; i++) { System.out.println(groupIds); Group group = GroupLocalServiceUtil.getUserGroup(PortalUtil.getCompanyId(req),groupIds); userParams.put("usersGroups", String.valueOf(group.getGroupId()));
3.
tempList = UserLocalServiceUtil.search(PortalUtil.getCompanyId(req),
null, null, null, null, true, userParams, true, QueryUtil.ALL_POS, QueryUtil.ALL_POS, null); for (int j = 0; j < tempList.size(); j++) { addresses.add(tempList.get(j)); } } } if (roleIds != null) { for (int i = 0; i < roleIds.length; i++) { Role role = RoleLocalServiceUtil.getRole(roleIds); userParams.put("usersRoles", role.getRoleId()); tempList = UserLocalServiceUtil.search(PortalUtil.getCompanyId(req), null, null, null, null, true, userParams, true, QueryUtil.ALL_POS, QueryUtil.ALL_POS, null); for (int j = 0; j < tempList.size(); j++) { addresses.add(tempList.get(j)); } } } if (userIds != null) { for (int i = 0; i < userIds.length; i++) { addresses.add(UserLocalServiceUtil.getUserById(userIds)); } } //remove dups Set set = new HashSet(); set.addAll(addresses); if(set.size() < addresses.size()) { addresses.clear(); addresses.addAll(set); } InternetAddress[] bcc = new InternetAddress[addresses.size()]; for (int i = 0; i < addresses.size(); i++) { User communityUser = (User)addresses.get(i); bcc = new InternetAddress(communityUser.getEmailAddress(), communityUser.getEmailAddress());
4.
} User user =
PortalUtil.getUser(req); InternetAddress from = new InternetAddress(user.getEmailAddress(), user.getFullName()); String body = ParamUtil.getString(req, "body"); String subject = ParamUtil.getString(req, "subject"); MailEngine.send(from, null, null, bcc, subject, body); } public ActionForward render( ActionMapping mapping, ActionForm form, PortletConfig config, RenderRequest req, RenderResponse res) throws Exception { return mapping.findForward( getForward(req, "portlet.newsletter.send_email")); } } • Marcar como respuesta
Jetzt herunterladen