Markup Guide

Email notifications in Targetprocess are flexible and can be customized. This advanced guide describes the language and syntax used in the email templates.

🚧

Edit Templates

Templates can be edited by Administrators only. How to change an email notification template.

Email notification templates are written using mix of HTML tags with templating functions. HTML tags form the structure and markup of a page while templates help to get details from Targetprocess entities and insert them to proper places.

📘

The templates use the free open-source module named Apache Velocity Engine.

The following table lists the special tags that can be found throughout the email templating system and the templates they are available in.

TagTypeTemplates
entityBusiness ObjectAny
isRequestBoolean (true / false)Any
originalEntityBusiness ObjectEntity Converted only
userUserAny
toolToolAny

Find a detailed description of each tag below.

entity

The entity object is the Business Object (also referred to as an Entity) that is passed to the template for processing. This object can be a User Story, Bug, Task, Feature, User, Comment, or any other Entity type in Targetprocess.

Detailed description: Entity, User, Comment

isRequest

The isRequest boolean, or a true / false value, is a simple variable that can be used to determine if the Business Object type of entity is a Request. This is a shortened version of:
($entity.Kind.ToString() == "Request")

originalEntity

The originalEntity object, available only in Entity Converted templates, is the Business Object that refers to the entity before conversion, while entity is the entity post-conversion. The fields and properties of this object are identical to the entity object.

Detailed description: Entity: Assignable

user

The user Object in the root level is always the User who is the recipient of the email. Objects of User class are also contained in fields and collections such as Assignments, Owner, LastEditor. This object is also a sub-type of Business Object and can be accessed in the same fashion.

Detailed description: User

tool

The tool object has some helpful methods and fields. They help to retrieve system settings such as Targetprocess URL path, Company name, custom process terms. They also are used in order to transform HTML descriptions to the format safe for inclusion to outgoing emails.

Detailed description: Tool

Conditions

The templating engine in Targetprocess supports conditional if / elseif / else statements, similar to conditional statements in many programming languages.

Conditions are helpful when you develop a process-specific, project-specific, or entity-specific notification.

To perform a basic conditional statement, use the following syntax:

#if(condition)
  this is included to email if condition is true 
#else
  this is included to email if condition is false
#end

More information: Conditions

Advanced Topics

Struggle with templates? Don't hesitate to call for help from our knowledgeable Support Team!

For more information on the Velocity templating engine and the more advanced options available, see the external website Apache Velocity project.