List of usage examples for com.liferay.portal.util PrefsPropsUtil getContent
public static String getContent(PortletPreferences preferences, String name)
From source file:com.liferay.message.boards.internal.service.SubscriptionMBMessageLocalServiceWrapper.java
License:Open Source License
protected void notifyDiscussionSubscribers(long userId, MBMessage message, ServiceContext serviceContext) throws PortalException { if (!PrefsPropsUtil.getBoolean(message.getCompanyId(), PropsKeys.DISCUSSION_EMAIL_COMMENTS_ADDED_ENABLED)) { return;//from w w w.ja v a2 s .c o m } MBDiscussion mbDiscussion = _mbDiscussionLocalService.getThreadDiscussion(message.getThreadId()); String contentURL = (String) serviceContext.getAttribute("contentURL"); contentURL = _http.addParameter(contentURL, serviceContext.getAttribute("namespace") + "messageId", message.getMessageId()); String userAddress = StringPool.BLANK; String userName = (String) serviceContext.getAttribute("pingbackUserName"); if (Validator.isNull(userName)) { userAddress = _portal.getUserEmailAddress(message.getUserId()); userName = _portal.getUserName(message.getUserId(), StringPool.BLANK); } String fromName = PrefsPropsUtil.getString(message.getCompanyId(), PropsKeys.ADMIN_EMAIL_FROM_NAME); String fromAddress = PrefsPropsUtil.getString(message.getCompanyId(), PropsKeys.ADMIN_EMAIL_FROM_ADDRESS); String subject = PrefsPropsUtil.getContent(message.getCompanyId(), PropsKeys.DISCUSSION_EMAIL_SUBJECT); String body = PrefsPropsUtil.getContent(message.getCompanyId(), PropsKeys.DISCUSSION_EMAIL_BODY); SubscriptionSender subscriptionSender = new SubscriptionSender(); subscriptionSender.setBody(body); subscriptionSender.setCompanyId(message.getCompanyId()); subscriptionSender.setClassName(MBDiscussion.class.getName()); subscriptionSender.setClassPK(mbDiscussion.getDiscussionId()); subscriptionSender.setContextAttribute("[$COMMENTS_BODY$]", message.getBody(message.isFormatBBCode()), false); subscriptionSender.setContextAttributes("[$COMMENTS_USER_ADDRESS$]", userAddress, "[$COMMENTS_USER_NAME$]", userName, "[$CONTENT_URL$]", contentURL); subscriptionSender.setCurrentUserId(userId); subscriptionSender.setEntryTitle(message.getBody()); subscriptionSender.setEntryURL(contentURL); subscriptionSender.setFrom(fromAddress, fromName); subscriptionSender.setHtmlFormat(true); Date modifiedDate = message.getModifiedDate(); subscriptionSender.setMailId("mb_discussion", message.getCategoryId(), message.getMessageId(), modifiedDate.getTime()); int notificationType = UserNotificationDefinition.NOTIFICATION_TYPE_ADD_ENTRY; if (serviceContext.isCommandUpdate()) { notificationType = UserNotificationDefinition.NOTIFICATION_TYPE_UPDATE_ENTRY; } subscriptionSender.setNotificationType(notificationType); String portletId = PortletProviderUtil.getPortletId(Comment.class.getName(), PortletProvider.Action.VIEW); subscriptionSender.setPortletId(portletId); subscriptionSender.setScopeGroupId(message.getGroupId()); subscriptionSender.setServiceContext(serviceContext); subscriptionSender.setSubject(subject); subscriptionSender.setUniqueMailId(false); String className = (String) serviceContext.getAttribute("className"); long classPK = ParamUtil.getLong(serviceContext, "classPK"); subscriptionSender.addPersistedSubscribers(className, classPK); subscriptionSender.flushNotificationsAsync(); }
From source file:com.liferay.portlet.flags.messaging.FlagsRequestMessageListener.java
License:Open Source License
@Override protected void doReceive(Message message) throws Exception { FlagsRequest flagsRequest = (FlagsRequest) message.getPayload(); // Service context ServiceContext serviceContext = flagsRequest.getServiceContext(); // Company//from ww w . j av a 2s. co m long companyId = serviceContext.getCompanyId(); Company company = CompanyLocalServiceUtil.getCompany(serviceContext.getCompanyId()); // Group Layout layout = LayoutLocalServiceUtil.getLayout(serviceContext.getPlid()); Group group = layout.getGroup(); String groupName = HtmlUtil.escape(group.getDescriptiveName()); // Reporter user String reporterUserName = null; String reporterEmailAddress = null; User reporterUser = UserLocalServiceUtil.getUserById(serviceContext.getUserId()); Locale locale = LocaleUtil.getDefault(); if (reporterUser.isDefaultUser()) { reporterUserName = LanguageUtil.get(locale, "anonymous"); } else { reporterUserName = reporterUser.getFullName(); reporterEmailAddress = reporterUser.getEmailAddress(); } // Reported user String reportedUserName = StringPool.BLANK; String reportedEmailAddress = StringPool.BLANK; String reportedURL = StringPool.BLANK; User reportedUser = UserLocalServiceUtil.getUserById(flagsRequest.getReportedUserId()); if (reportedUser.isDefaultUser()) { reportedUserName = HtmlUtil.escape(group.getDescriptiveName()); } else { reportedUserName = HtmlUtil.escape(reportedUser.getFullName()); reportedEmailAddress = reportedUser.getEmailAddress(); reportedURL = reportedUser.getDisplayURL(serviceContext.getPortalURL(), serviceContext.getPathMain()); } // Content String contentType = ResourceActionsUtil.getModelResource(locale, flagsRequest.getClassName()); // Reason String reason = LanguageUtil.get(locale, flagsRequest.getReason()); // Email String fromName = PrefsPropsUtil.getStringFromNames(companyId, PropsKeys.FLAGS_EMAIL_FROM_NAME, PropsKeys.ADMIN_EMAIL_FROM_NAME); String fromAddress = PrefsPropsUtil.getStringFromNames(companyId, PropsKeys.FLAGS_EMAIL_FROM_ADDRESS, PropsKeys.ADMIN_EMAIL_FROM_ADDRESS); String subject = PrefsPropsUtil.getContent(companyId, PropsKeys.FLAGS_EMAIL_SUBJECT); String body = PrefsPropsUtil.getContent(companyId, PropsKeys.FLAGS_EMAIL_BODY); // Recipients List<User> recipients = getRecipients(companyId, serviceContext.getScopeGroupId()); for (User recipient : recipients) { try { notify(company, groupName, reporterEmailAddress, reporterUserName, reportedEmailAddress, reportedUserName, reportedURL, flagsRequest.getClassPK(), flagsRequest.getContentTitle(), contentType, flagsRequest.getContentURL(), reason, fromName, fromAddress, recipient.getFullName(), recipient.getEmailAddress(), subject, body, serviceContext); } catch (IOException ioe) { if (_log.isWarnEnabled()) { _log.warn(ioe); } } } }
From source file:com.liferay.portlet.messageboards.service.impl.MBMessageLocalServiceImpl.java
License:Open Source License
protected void notifyDiscussionSubscribers(MBMessage message, ServiceContext serviceContext) throws SystemException { if (!PrefsPropsUtil.getBoolean(message.getCompanyId(), PropsKeys.DISCUSSION_EMAIL_COMMENTS_ADDED_ENABLED)) { return;//from www . j ava2 s .c o m } String contentURL = (String) serviceContext.getAttribute("contentURL"); String userAddress = StringPool.BLANK; String userName = (String) serviceContext.getAttribute("pingbackUserName"); if (Validator.isNull(userName)) { userAddress = PortalUtil.getUserEmailAddress(message.getUserId()); userName = PortalUtil.getUserName(message.getUserId(), StringPool.BLANK); } String fromName = PrefsPropsUtil.getString(message.getCompanyId(), PropsKeys.ADMIN_EMAIL_FROM_NAME); String fromAddress = PrefsPropsUtil.getString(message.getCompanyId(), PropsKeys.ADMIN_EMAIL_FROM_ADDRESS); String subject = PrefsPropsUtil.getContent(message.getCompanyId(), PropsKeys.DISCUSSION_EMAIL_SUBJECT); String body = PrefsPropsUtil.getContent(message.getCompanyId(), PropsKeys.DISCUSSION_EMAIL_BODY); SubscriptionSender subscriptionSender = new SubscriptionSender(); subscriptionSender.setBody(body); subscriptionSender.setCompanyId(message.getCompanyId()); subscriptionSender.setContextAttributes("[$COMMENTS_BODY$]", message.getBody(true), "[$COMMENTS_USER_ADDRESS$]", userAddress, "[$COMMENTS_USER_NAME$]", userName, "[$CONTENT_URL$]", contentURL); subscriptionSender.setFrom(fromAddress, fromName); subscriptionSender.setHtmlFormat(true); subscriptionSender.setMailId("mb_discussion", message.getCategoryId(), message.getMessageId()); subscriptionSender.setScopeGroupId(message.getGroupId()); subscriptionSender.setServiceContext(serviceContext); subscriptionSender.setSubject(subject); subscriptionSender.setUserId(message.getUserId()); String className = (String) serviceContext.getAttribute("className"); long classPK = GetterUtil.getLong((String) serviceContext.getAttribute("classPK")); subscriptionSender.addPersistedSubscribers(className, classPK); subscriptionSender.flushNotificationsAsync(); }