tjk
tjk

Reputation: 369

How to send blog and page comment as email in Kaleo Workflow in Liferay 6.1?

I'm able to send notification about new comments, but I'd like to send the comment as part of the email. Here's what I got so far:

<notification>
    <name>Notification</name>
    <description>Notifies about new blog or page comments</description>
    <template>

    <![CDATA[
    <p>
    There's a new comment at page ${page_url} by ${user_name} :
    <#if comment != "" >
    <br /><strong>${comment}</strong>
    </#if>
    </p>

    <p>With Love,<br /><strong>Liferay</strong></p>

    ]]>

    </template>
    <template-language>freemarker</template-language>
    <notification-type>email</notification-type>            
    <recipients>
        <role>
            <role-type>regular</role-type>
            <name>Portal Content Reviewer</name>
            <auto-create>false</auto-create>
        </role> 
    </recipients>
    <execution-type>onEntry</execution-type>
</notification>

How would I assign the ${page_url}, ${user_name} and ${comment}?

Upvotes: 0

Views: 1863

Answers (1)

tjk
tjk

Reputation: 369

Ok, $serviceContext has everything I needed. Note that I changed template language to velocity. For example:

<template>

<![CDATA[
## All attributes 
##set ( $debug = ${serviceContext.getAttributes()} )
## URL to page:
#set ( $url = ${serviceContext.getAttribute("contentURL")} )
##Latest comment
#set ( $body = ${serviceContext.getAttribute("body")} )
<p>
There's a new comment at page $url :
<br /><strong>$body</strong>
</p>
]]>

</template>

Upvotes: 0

Related Questions