List of usage examples for com.liferay.portal.kernel.notifications UserNotificationDefinition NOTIFICATION_TYPE_ADD_ENTRY
int NOTIFICATION_TYPE_ADD_ENTRY
To view the source code for com.liferay.portal.kernel.notifications UserNotificationDefinition NOTIFICATION_TYPE_ADD_ENTRY.
Click Source Link
From source file:com.liferay.blogs.service.impl.BlogsEntryLocalServiceImpl.java
License:Open Source License
protected void notifySubscribers(long userId, BlogsEntry entry, ServiceContext serviceContext, Map<String, Serializable> workflowContext) throws PortalException { String entryURL = (String) workflowContext.get(WorkflowConstants.CONTEXT_URL); if (!entry.isApproved() || Validator.isNull(entryURL)) { return;//from ww w . j a v a2 s. c om } BlogsGroupServiceSettings blogsGroupServiceSettings = BlogsGroupServiceSettings .getInstance(entry.getGroupId()); boolean sendEmailEntryUpdated = GetterUtil.getBoolean(serviceContext.getAttribute("sendEmailEntryUpdated")); if (serviceContext.isCommandAdd() && blogsGroupServiceSettings.isEmailEntryAddedEnabled()) { } else if (sendEmailEntryUpdated && serviceContext.isCommandUpdate() && blogsGroupServiceSettings.isEmailEntryUpdatedEnabled()) { } else { return; } Group group = groupPersistence.findByPrimaryKey(entry.getGroupId()); String entryTitle = entry.getTitle(); String fromName = blogsGroupServiceSettings.getEmailFromName(); String fromAddress = blogsGroupServiceSettings.getEmailFromAddress(); LocalizedValuesMap subjectLocalizedValuesMap = null; LocalizedValuesMap bodyLocalizedValuesMap = null; if (serviceContext.isCommandUpdate()) { subjectLocalizedValuesMap = blogsGroupServiceSettings.getEmailEntryUpdatedSubject(); bodyLocalizedValuesMap = blogsGroupServiceSettings.getEmailEntryUpdatedBody(); } else { subjectLocalizedValuesMap = blogsGroupServiceSettings.getEmailEntryAddedSubject(); bodyLocalizedValuesMap = blogsGroupServiceSettings.getEmailEntryAddedBody(); } SubscriptionSender subscriptionSender = new GroupSubscriptionCheckSubscriptionSender( BlogsPermission.RESOURCE_NAME); subscriptionSender.setClassPK(entry.getEntryId()); subscriptionSender.setClassName(entry.getModelClassName()); subscriptionSender.setCompanyId(entry.getCompanyId()); subscriptionSender.setContextAttribute("[$BLOGS_ENTRY_CONTENT$]", StringUtil.shorten(HtmlUtil.stripHtml(entry.getContent()), 500), false); subscriptionSender.setContextAttributes("[$BLOGS_ENTRY_CREATE_DATE$]", Time.getSimpleDate(entry.getCreateDate(), "yyyy/MM/dd"), "[$BLOGS_ENTRY_DESCRIPTION$]", entry.getDescription(), "[$BLOGS_ENTRY_SITE_NAME$]", group.getDescriptiveName(serviceContext.getLocale()), "[$BLOGS_ENTRY_STATUS_BY_USER_NAME$]", entry.getStatusByUserName(), "[$BLOGS_ENTRY_TITLE$]", entryTitle, "[$BLOGS_ENTRY_UPDATE_COMMENT$]", HtmlUtil.replaceNewLine( GetterUtil.getString(serviceContext.getAttribute("emailEntryUpdatedComment"))), "[$BLOGS_ENTRY_URL$]", entryURL, "[$BLOGS_ENTRY_USER_PORTRAIT_URL$]", workflowContext.get(WorkflowConstants.CONTEXT_USER_PORTRAIT_URL), "[$BLOGS_ENTRY_USER_URL$]", workflowContext.get(WorkflowConstants.CONTEXT_USER_URL)); subscriptionSender.setContextCreatorUserPrefix("BLOGS_ENTRY"); subscriptionSender.setCreatorUserId(entry.getUserId()); subscriptionSender.setCurrentUserId(userId); subscriptionSender.setEntryTitle(entryTitle); subscriptionSender.setEntryURL(entryURL); subscriptionSender.setFrom(fromAddress, fromName); subscriptionSender.setHtmlFormat(true); if (bodyLocalizedValuesMap != null) { subscriptionSender.setLocalizedBodyMap(LocalizationUtil.getMap(bodyLocalizedValuesMap)); } if (subjectLocalizedValuesMap != null) { subscriptionSender.setLocalizedSubjectMap(LocalizationUtil.getMap(subjectLocalizedValuesMap)); } subscriptionSender.setMailId("blogs_entry", entry.getEntryId()); int notificationType = UserNotificationDefinition.NOTIFICATION_TYPE_ADD_ENTRY; if (serviceContext.isCommandUpdate()) { notificationType = UserNotificationDefinition.NOTIFICATION_TYPE_UPDATE_ENTRY; } subscriptionSender.setNotificationType(notificationType); String portletId = PortletProviderUtil.getPortletId(BlogsEntry.class.getName(), PortletProvider.Action.VIEW); subscriptionSender.setPortletId(portletId); subscriptionSender.setReplyToAddress(fromAddress); subscriptionSender.setScopeGroupId(entry.getGroupId()); subscriptionSender.setServiceContext(serviceContext); subscriptionSender.addPersistedSubscribers(BlogsEntry.class.getName(), entry.getGroupId()); subscriptionSender.addPersistedSubscribers(BlogsEntry.class.getName(), entry.getEntryId()); subscriptionSender.flushNotificationsAsync(); }
From source file:com.liferay.blogs.web.internal.notifications.BlogsAddEntryUserNotificationDefinition.java
License:Open Source License
public BlogsAddEntryUserNotificationDefinition() { super(BlogsPortletKeys.BLOGS, 0, UserNotificationDefinition.NOTIFICATION_TYPE_ADD_ENTRY, "receive-a-notification-when-someone-adds-a-new-blog-entry-in-a-" + "blog-you-are-subscribed-to"); addUserNotificationDeliveryType(new UserNotificationDeliveryType("email", UserNotificationDeliveryConstants.TYPE_EMAIL, true, true)); addUserNotificationDeliveryType(new UserNotificationDeliveryType("website", UserNotificationDeliveryConstants.TYPE_WEBSITE, true, true)); }
From source file:com.liferay.bookmarks.service.impl.BookmarksEntryLocalServiceImpl.java
License:Open Source License
protected void notifySubscribers(long userId, BookmarksEntry entry, ServiceContext serviceContext) throws PortalException { String layoutFullURL = serviceContext.getLayoutFullURL(); if (!entry.isApproved() || Validator.isNull(layoutFullURL)) { return;/* w ww . j a va2s.c om*/ } BookmarksGroupServiceOverriddenConfiguration bookmarksGroupServiceOverriddenConfiguration = configurationProvider .getConfiguration(BookmarksGroupServiceOverriddenConfiguration.class, new GroupServiceSettingsLocator(entry.getGroupId(), BookmarksConstants.SERVICE_NAME)); if ((serviceContext.isCommandAdd() && !bookmarksGroupServiceOverriddenConfiguration.emailEntryAddedEnabled()) || (serviceContext.isCommandUpdate() && !bookmarksGroupServiceOverriddenConfiguration.emailEntryUpdatedEnabled())) { return; } String statusByUserName = StringPool.BLANK; try { User user = userLocalService.getUserById(serviceContext.getGuestOrUserId()); statusByUserName = user.getFullName(); } catch (Exception e) { _log.error(e, e); } String entryTitle = entry.getName(); StringBundler sb = new StringBundler(7); sb.append(layoutFullURL); sb.append(Portal.FRIENDLY_URL_SEPARATOR); sb.append("bookmarks"); sb.append(StringPool.SLASH); sb.append("folder"); sb.append(StringPool.SLASH); sb.append(entry.getFolderId()); String entryURL = sb.toString(); String fromName = bookmarksGroupServiceOverriddenConfiguration.emailFromName(); String fromAddress = bookmarksGroupServiceOverriddenConfiguration.emailFromAddress(); LocalizedValuesMap subjectLocalizedValuesMap = null; LocalizedValuesMap bodyLocalizedValuesMap = null; if (serviceContext.isCommandUpdate()) { subjectLocalizedValuesMap = bookmarksGroupServiceOverriddenConfiguration.emailEntryUpdatedSubject(); bodyLocalizedValuesMap = bookmarksGroupServiceOverriddenConfiguration.emailEntryUpdatedBody(); } else { subjectLocalizedValuesMap = bookmarksGroupServiceOverriddenConfiguration.emailEntryAddedSubject(); bodyLocalizedValuesMap = bookmarksGroupServiceOverriddenConfiguration.emailEntryAddedBody(); } SubscriptionSender subscriptionSender = new GroupSubscriptionCheckSubscriptionSender( BookmarksResourcePermissionChecker.RESOURCE_NAME); subscriptionSender.setClassName(entry.getModelClassName()); subscriptionSender.setClassPK(entry.getEntryId()); subscriptionSender.setCompanyId(entry.getCompanyId()); subscriptionSender.setContextAttributes("[$BOOKMARKS_ENTRY_STATUS_BY_USER_NAME$]", statusByUserName, "[$BOOKMARKS_ENTRY_URL$]", entryURL); subscriptionSender.setContextCreatorUserPrefix("BOOKMARKS_ENTRY"); subscriptionSender.setCreatorUserId(entry.getUserId()); subscriptionSender.setCurrentUserId(userId); subscriptionSender.setEntryTitle(entryTitle); subscriptionSender.setEntryURL(entryURL); subscriptionSender.setFrom(fromAddress, fromName); subscriptionSender.setHtmlFormat(true); if (bodyLocalizedValuesMap != null) { subscriptionSender.setLocalizedBodyMap(LocalizationUtil.getMap(bodyLocalizedValuesMap)); } if (subjectLocalizedValuesMap != null) { subscriptionSender.setLocalizedSubjectMap(LocalizationUtil.getMap(subjectLocalizedValuesMap)); } subscriptionSender.setMailId("bookmarks_entry", entry.getEntryId()); int notificationType = UserNotificationDefinition.NOTIFICATION_TYPE_ADD_ENTRY; if (serviceContext.isCommandUpdate()) { notificationType = UserNotificationDefinition.NOTIFICATION_TYPE_UPDATE_ENTRY; } subscriptionSender.setNotificationType(notificationType); subscriptionSender.setPortletId(BookmarksPortletKeys.BOOKMARKS); subscriptionSender.setReplyToAddress(fromAddress); subscriptionSender.setScopeGroupId(entry.getGroupId()); subscriptionSender.setServiceContext(serviceContext); BookmarksFolder folder = entry.getFolder(); if (folder != null) { subscriptionSender.addPersistedSubscribers(BookmarksFolder.class.getName(), folder.getFolderId()); for (Long ancestorFolderId : folder.getAncestorFolderIds()) { subscriptionSender.addPersistedSubscribers(BookmarksFolder.class.getName(), ancestorFolderId); } } subscriptionSender.addPersistedSubscribers(BookmarksFolder.class.getName(), entry.getGroupId()); subscriptionSender.addPersistedSubscribers(BookmarksEntry.class.getName(), entry.getEntryId()); subscriptionSender.flushNotificationsAsync(); }
From source file:com.liferay.bookmarks.web.internal.notifications.BookmarksAddEntryUserNotificationDefinition.java
License:Open Source License
public BookmarksAddEntryUserNotificationDefinition() { super(BookmarksPortletKeys.BOOKMARKS, 0, UserNotificationDefinition.NOTIFICATION_TYPE_ADD_ENTRY, "receive-a-notification-when-someone-adds-a-new-bookmark-in-a-" + "folder-you-are-subscribed-to"); addUserNotificationDeliveryType(new UserNotificationDeliveryType("email", UserNotificationDeliveryConstants.TYPE_EMAIL, true, true)); addUserNotificationDeliveryType(new UserNotificationDeliveryType("website", UserNotificationDeliveryConstants.TYPE_WEBSITE, true, true)); }
From source file:com.liferay.comment.web.internal.notifications.CommentAddEntryUserNotificationDefinition.java
License:Open Source License
public CommentAddEntryUserNotificationDefinition() { super(CommentPortletKeys.COMMENT, 0, UserNotificationDefinition.NOTIFICATION_TYPE_ADD_ENTRY, "receive-a-notification-when-someone-adds-a-new-comment-to-" + "comments-you-are-subscribed-to"); addUserNotificationDeliveryType(new UserNotificationDeliveryType("email", UserNotificationDeliveryConstants.TYPE_EMAIL, true, true)); addUserNotificationDeliveryType(new UserNotificationDeliveryType("website", UserNotificationDeliveryConstants.TYPE_WEBSITE, true, true)); }
From source file:com.liferay.comment.web.internal.notifications.CommentUserNotificationHandler.java
License:Open Source License
@Override protected String getTitle(JSONObject jsonObject, AssetRenderer assetRenderer, ServiceContext serviceContext) { MBDiscussion mbDiscussion = fetchDiscussion(jsonObject); if (mbDiscussion == null) { return null; }//from w w w . ja v a2 s .c om String message = StringPool.BLANK; int notificationType = jsonObject.getInt("notificationType"); if (notificationType == UserNotificationDefinition.NOTIFICATION_TYPE_ADD_ENTRY) { if (assetRenderer != null) { message = "x-added-a-new-comment-to-x"; } else { message = "x-added-a-new-comment"; } } else if (notificationType == UserNotificationDefinition.NOTIFICATION_TYPE_UPDATE_ENTRY) { if (assetRenderer != null) { message = "x-updated-a-comment-to-x"; } else { message = "x-updated-a-comment"; } } if (assetRenderer != null) { message = LanguageUtil.format(serviceContext.getLocale(), message, new String[] { HtmlUtil.escape(_portal.getUserName(jsonObject.getLong("userId"), StringPool.BLANK)), HtmlUtil.escape(assetRenderer.getTitle(serviceContext.getLocale())) }, false); } else { message = LanguageUtil.format(serviceContext.getLocale(), message, new String[] { HtmlUtil.escape(_portal.getUserName(jsonObject.getLong("userId"), StringPool.BLANK)) }, false); } return message; }
From source file:com.liferay.document.library.internal.service.SubscriptionDLAppHelperLocalServiceWrapper.java
License:Open Source License
protected void notifySubscribers(long userId, FileVersion fileVersion, String entryURL, ServiceContext serviceContext) throws PortalException { if (!fileVersion.isApproved() || Validator.isNull(entryURL)) { return;/*from w w w. ja v a 2 s.c om*/ } DLGroupServiceSettings dlGroupServiceSettings = DLGroupServiceSettings .getInstance(fileVersion.getGroupId()); boolean commandUpdate = false; if (serviceContext.isCommandUpdate() || Constants.CHECKIN.equals(serviceContext.getCommand())) { commandUpdate = true; } if (serviceContext.isCommandAdd() && dlGroupServiceSettings.isEmailFileEntryAddedEnabled()) { } else if (commandUpdate && dlGroupServiceSettings.isEmailFileEntryUpdatedEnabled()) { } else { return; } String entryTitle = fileVersion.getTitle(); String fromName = dlGroupServiceSettings.getEmailFromName(); String fromAddress = dlGroupServiceSettings.getEmailFromAddress(); LocalizedValuesMap subjectLocalizedValuesMap = null; LocalizedValuesMap bodyLocalizedValuesMap = null; if (commandUpdate) { subjectLocalizedValuesMap = dlGroupServiceSettings.getEmailFileEntryUpdatedSubject(); bodyLocalizedValuesMap = dlGroupServiceSettings.getEmailFileEntryUpdatedBody(); } else { subjectLocalizedValuesMap = dlGroupServiceSettings.getEmailFileEntryAddedSubject(); bodyLocalizedValuesMap = dlGroupServiceSettings.getEmailFileEntryAddedBody(); } FileEntry fileEntry = fileVersion.getFileEntry(); Folder folder = null; long folderId = fileEntry.getFolderId(); if (folderId != DLFolderConstants.DEFAULT_PARENT_FOLDER_ID) { folder = _dlAppLocalService.getFolder(folderId); } SubscriptionSender subscriptionSender = new GroupSubscriptionCheckSubscriptionSender( DLPermission.RESOURCE_NAME); DLFileEntry dlFileEntry = (DLFileEntry) fileEntry.getModel(); DLFileEntryType dlFileEntryType = _dlFileEntryTypeLocalService .getDLFileEntryType(dlFileEntry.getFileEntryTypeId()); subscriptionSender.setClassPK(fileVersion.getFileEntryId()); subscriptionSender.setClassName(DLFileEntryConstants.getClassName()); subscriptionSender.setCompanyId(fileVersion.getCompanyId()); if (folder != null) { subscriptionSender.setContextAttribute("[$FOLDER_NAME$]", folder.getName(), true); } else { subscriptionSender.setLocalizedContextAttribute("[$FOLDER_NAME$]", new EscapableLocalizableFunction(locale -> LanguageUtil.get(locale, "home"))); } subscriptionSender.setContextAttributes("[$DOCUMENT_STATUS_BY_USER_NAME$]", fileVersion.getStatusByUserName(), "[$DOCUMENT_TITLE$]", entryTitle, "[$DOCUMENT_URL$]", entryURL); subscriptionSender.setContextCreatorUserPrefix("DOCUMENT"); subscriptionSender.setCreatorUserId(fileVersion.getUserId()); subscriptionSender.setCurrentUserId(userId); subscriptionSender.setEntryTitle(entryTitle); subscriptionSender.setEntryURL(entryURL); subscriptionSender.setFrom(fromAddress, fromName); subscriptionSender.setHtmlFormat(true); subscriptionSender.setLocalizedBodyMap(LocalizationUtil.getMap(bodyLocalizedValuesMap)); subscriptionSender.setLocalizedContextAttribute("[$DOCUMENT_TYPE$]", new EscapableLocalizableFunction(locale -> dlFileEntryType.getName(locale))); subscriptionSender.setLocalizedSubjectMap(LocalizationUtil.getMap(subjectLocalizedValuesMap)); subscriptionSender.setMailId("file_entry", fileVersion.getFileEntryId()); int notificationType = UserNotificationDefinition.NOTIFICATION_TYPE_ADD_ENTRY; if (commandUpdate) { notificationType = UserNotificationDefinition.NOTIFICATION_TYPE_UPDATE_ENTRY; } subscriptionSender.setNotificationType(notificationType); String portletId = PortletProviderUtil.getPortletId(FileEntry.class.getName(), PortletProvider.Action.VIEW); subscriptionSender.setPortletId(portletId); subscriptionSender.setReplyToAddress(fromAddress); subscriptionSender.setScopeGroupId(fileVersion.getGroupId()); subscriptionSender.setServiceContext(serviceContext); subscriptionSender.addPersistedSubscribers(DLFolder.class.getName(), fileVersion.getGroupId()); if (folder != null) { subscriptionSender.addPersistedSubscribers(DLFolder.class.getName(), folder.getFolderId()); for (Long ancestorFolderId : folder.getAncestorFolderIds()) { subscriptionSender.addPersistedSubscribers(DLFolder.class.getName(), ancestorFolderId); } } if (dlFileEntryType.getFileEntryTypeId() == DLFileEntryTypeConstants.FILE_ENTRY_TYPE_ID_BASIC_DOCUMENT) { subscriptionSender.addPersistedSubscribers(DLFileEntryType.class.getName(), fileVersion.getGroupId()); } else { subscriptionSender.addPersistedSubscribers(DLFileEntryType.class.getName(), dlFileEntryType.getFileEntryTypeId()); } subscriptionSender.addPersistedSubscribers(DLFileEntry.class.getName(), fileEntry.getFileEntryId()); subscriptionSender.flushNotificationsAsync(); }
From source file:com.liferay.document.library.web.internal.notifications.DLAddEntryUserNotificationDefinition.java
License:Open Source License
public DLAddEntryUserNotificationDefinition() { super(DLPortletKeys.DOCUMENT_LIBRARY, 0, UserNotificationDefinition.NOTIFICATION_TYPE_ADD_ENTRY, "receive-a-notification-when-someone-adds-a-new-document-in-a-" + "folder-you-are-subscribed-to"); addUserNotificationDeliveryType(new UserNotificationDeliveryType("email", UserNotificationDeliveryConstants.TYPE_EMAIL, true, true)); addUserNotificationDeliveryType(new UserNotificationDeliveryType("website", UserNotificationDeliveryConstants.TYPE_WEBSITE, true, true)); }
From source file:com.liferay.journal.service.impl.JournalArticleLocalServiceImpl.java
License:Open Source License
protected void notifySubscribers(long userId, JournalArticle article, String action, ServiceContext serviceContext) throws PortalException { String portletId = PortletProviderUtil.getPortletId(JournalArticle.class.getName(), PortletProvider.Action.EDIT); String articleURL = PortalUtil.getControlPanelFullURL(article.getGroupId(), portletId, null); if (!article.isApproved() || Validator.isNull(articleURL)) { return;//w ww . jav a 2s. c o m } JournalGroupServiceConfiguration journalGroupServiceConfiguration = getJournalGroupServiceConfiguration( article.getGroupId()); String articleTitle = article.getTitle(serviceContext.getLanguageId()); articleURL = buildArticleURL(articleURL, article.getGroupId(), article.getFolderId(), article.getArticleId()); if (action.equals("add") && journalGroupServiceConfiguration.emailArticleAddedEnabled()) { } else if (action.equals("move_to") && journalGroupServiceConfiguration.emailArticleMovedToFolderEnabled()) { } else if (action.equals("move_from") && journalGroupServiceConfiguration.emailArticleMovedFromFolderEnabled()) { } else if (action.equals("update") && journalGroupServiceConfiguration.emailArticleUpdatedEnabled()) { } else { return; } String fromName = journalGroupServiceConfiguration.emailFromName(); String fromAddress = journalGroupServiceConfiguration.emailFromAddress(); Map<Locale, String> localizedSubjectMap = null; Map<Locale, String> localizedBodyMap = null; int notificationType = UserNotificationDefinition.NOTIFICATION_TYPE_ADD_ENTRY; if (action.equals("add")) { localizedSubjectMap = LocalizationUtil .getMap(journalGroupServiceConfiguration.emailArticleAddedSubject()); localizedBodyMap = LocalizationUtil.getMap(journalGroupServiceConfiguration.emailArticleAddedBody()); } else if (action.equals("move_to")) { localizedSubjectMap = LocalizationUtil .getMap(journalGroupServiceConfiguration.emailArticleMovedToFolderSubject()); localizedBodyMap = LocalizationUtil .getMap(journalGroupServiceConfiguration.emailArticleMovedToFolderBody()); notificationType = JournalArticleConstants.NOTIFICATION_TYPE_MOVE_ENTRY_TO_FOLDER; } else if (action.equals("move_from")) { localizedSubjectMap = LocalizationUtil .getMap(journalGroupServiceConfiguration.emailArticleMovedFromFolderSubject()); localizedBodyMap = LocalizationUtil .getMap(journalGroupServiceConfiguration.emailArticleMovedFromFolderBody()); notificationType = JournalArticleConstants.NOTIFICATION_TYPE_MOVE_ENTRY_FROM_FOLDER; } else if (action.equals("update")) { localizedSubjectMap = LocalizationUtil .getMap(journalGroupServiceConfiguration.emailArticleUpdatedSubject()); localizedBodyMap = LocalizationUtil.getMap(journalGroupServiceConfiguration.emailArticleUpdatedBody()); notificationType = UserNotificationDefinition.NOTIFICATION_TYPE_UPDATE_ENTRY; } String articleContent = StringPool.BLANK; String articleDiffs = StringPool.BLANK; JournalArticle previousApprovedArticle = getPreviousApprovedArticle(article); try { PortletRequestModel portletRequestModel = new PortletRequestModel( serviceContext.getLiferayPortletRequest(), serviceContext.getLiferayPortletResponse()); JournalArticleDisplay articleDisplay = getArticleDisplay(article, null, Constants.VIEW, LocaleUtil.toLanguageId(LocaleUtil.getSiteDefault()), 1, portletRequestModel, serviceContext.getThemeDisplay()); articleContent = articleDisplay.getContent(); articleDiffs = JournalUtil.diffHtml(article.getGroupId(), article.getArticleId(), previousApprovedArticle.getVersion(), article.getVersion(), LocaleUtil.toLanguageId(LocaleUtil.getSiteDefault()), portletRequestModel, serviceContext.getThemeDisplay()); } catch (Exception e) { } SubscriptionSender subscriptionSender = new GroupSubscriptionCheckSubscriptionSender( JournalPermission.RESOURCE_NAME); subscriptionSender.setClassName(article.getModelClassName()); subscriptionSender.setClassPK(article.getId()); subscriptionSender.setCompanyId(article.getCompanyId()); subscriptionSender.setContextAttribute("[$ARTICLE_CONTENT$]", articleContent, false); subscriptionSender.setContextAttribute("[$ARTICLE_DIFFS$]", DiffHtmlUtil.replaceStyles(articleDiffs), false); JournalFolder folder = article.getFolder(); subscriptionSender.setContextAttributes("[$ARTICLE_ID$]", article.getArticleId(), "[$ARTICLE_TITLE$]", articleTitle, "[$ARTICLE_URL$]", articleURL, "[$ARTICLE_VERSION$]", article.getVersion(), "[$FOLDER_NAME$]", folder.getName()); subscriptionSender.setContextCreatorUserPrefix("ARTICLE"); subscriptionSender.setCreatorUserId(article.getUserId()); subscriptionSender.setCurrentUserId(userId); subscriptionSender.setEntryTitle(articleTitle); subscriptionSender.setEntryURL(articleURL); subscriptionSender.setFrom(fromAddress, fromName); subscriptionSender.setHtmlFormat(true); subscriptionSender.setLocalizedBodyMap(localizedBodyMap); subscriptionSender.setLocalizedSubjectMap(localizedSubjectMap); subscriptionSender.setMailId("journal_article", article.getId()); subscriptionSender.setNotificationType(notificationType); subscriptionSender.setPortletId(portletId); subscriptionSender.setReplyToAddress(fromAddress); subscriptionSender.setScopeGroupId(article.getGroupId()); subscriptionSender.setServiceContext(serviceContext); subscriptionSender.addPersistedSubscribers(JournalFolder.class.getName(), article.getGroupId()); if (folder != null) { subscriptionSender.addPersistedSubscribers(JournalFolder.class.getName(), folder.getFolderId()); for (Long ancestorFolderId : folder.getAncestorFolderIds()) { subscriptionSender.addPersistedSubscribers(JournalFolder.class.getName(), ancestorFolderId); } } DDMStructure ddmStructure = ddmStructureLocalService.getStructure(article.getGroupId(), classNameLocalService.getClassNameId(JournalArticle.class), article.getDDMStructureKey(), true); subscriptionSender.addPersistedSubscribers(DDMStructure.class.getName(), ddmStructure.getStructureId()); subscriptionSender.addPersistedSubscribers(JournalArticle.class.getName(), article.getResourcePrimKey()); subscriptionSender.flushNotificationsAsync(); }
From source file:com.liferay.journal.web.internal.notifications.JournalAddEntryUserNotificationDefinition.java
License:Open Source License
public JournalAddEntryUserNotificationDefinition() { super(JournalPortletKeys.JOURNAL, 0, UserNotificationDefinition.NOTIFICATION_TYPE_ADD_ENTRY, "receive-a-notification-when-someone-adds-new-web-content-in-a-" + "folder-you-are-subscribed-to"); addUserNotificationDeliveryType(new UserNotificationDeliveryType("email", UserNotificationDeliveryConstants.TYPE_EMAIL, true, true)); addUserNotificationDeliveryType(new UserNotificationDeliveryType("website", UserNotificationDeliveryConstants.TYPE_WEBSITE, true, true)); }