System
Name | Description | Placeholder |
---|---|---|
Brand Url | Url for the current brand | [System.BaseUrl] |
Brand Logo Url | Url of the logo for the current brand | [System.LogoUrl] |
Brand Base Colour | Brand Base Colour for the current brand | [System.BrandBaseColour] |
Brand Primary Colour | Brand Primary Colour for the current brand | [System.BrandPrimaryColour] |
Brand Secondary Colour | Brand Secondary Colour for the current brand | [System.BrandSecondaryColour] |
Brand Header Colour | Brand Header Colour for the current brand | [System.BrandHeaderColour] |
Brand Footer Colour | Brand Footer Colour for the current brand | [System.BrandFooterColour] |
Brand Name | Name of the current brand | [System.BrandName] |
Brand Primary Email | Email address set against the current brand | [System.BrandPrimaryEmail] |
Enquiry
Name | Description | Placeholder |
---|---|---|
Id | Id of the enquiry | [Enquiry.Id] |
More Info | The more info on an enquiry | [Enquiry.MoreInfo] |
Created | The created date of the enquiry | [Enquiry.Created] |
Agent Title | The title of the assigned agent | [Enquiry.Agent.Title] |
Agent First Name | The first name of the assigned agent | [Enquiry.Agent.FirstName] |
Agent Last Name | The last name of the assigned agent | [Enquiry.Agent.LastName] |
Agent Primary Email | The primary email address of the assigned agent | [Enquiry.Agent.PrimaryEmail] |
Agent Primary Telephone | The primary telephone of the assigned agent | [Enquiry.Agent.PrimaryTelephone] |
Lead Passenger Title | The title of the assigned lead passenger | [Enquiry.LeadPassenger.Title] |
Lead Passenger First Name | The first name of the assigned lead passenger | [Enquiry.LeadPassenger.FirstName] |
Lead Passenger Last Name | The last name of the assigned lead passenger | [Enquiry.LeadPassenger.LastName] |
Lead Passenger Primary Email | The primary email address of the assigned lead passenger | [Enquiry.LeadPassenger.PrimaryEmail] |
Lead Passenger Primary Telephone | The primary telephone of the assigned lead passenger | [Enquiry.LeadPassenger.PrimaryTelephone] |
All Passengers (This is a list of all other passengers including the lead, see Recurse Sub-Collection and Recurse Sub-Object below on how to access this collection) | ||
Title | The title of the passenger | [Enquiry.AllPassengers.Title] |
First Name | The first name of the passenger | [Enquiry.AllPassengers.FirstName] |
Last Name | The last name of the passenger | [Enquiry.AllPassengers.LastName] |
Primary Email | The primary email address of the passenger | [Enquiry.AllPassengers.PrimaryEmail] |
Primary Telephone | The primary telephone of the passenger | [Enquiry.AllPassengers.PrimaryTelephone] |
Usage
Syntax for Templates
The placeholder replacement logic looks for placeholders in the template, these are marked using the following tokens:
Token | Description |
---|---|
[ | Open place holder |
] | Close place holder |
| | General Separator |
@ | Collection Indicator |
# | Format indicator |
\ | Token Switch |
Non-conditional
Simple replacement of placeholders with data; you can access sub object properties using the standard 'dot' notation.
[<propertyName>]
E.g. Hello [Person.Forename]
> Hello Anthony
N.B. If you find you need to use a token in the template and want it to be ignored, just apply the switch '\' before it.
E.g. Hello \[[Person.Forename]\]
> Hello [Anthony]
Conditional
Replacement of placeholders based on the data in the property; you can have as many conditions as you require.
[<propertyName>|=<condition>|<result>|~|<defaultResult>]
E.g. Hello [Person.Forname] ([Person.Forname|=Anthony|great|~|nice] name)
If the person's forename is 'Anthony':
> Hello Anthony (great name)
Otherwise:
> Hello Sarah (nice name)
Recurse Sub-Object
You can recurse to sub objects. Think of it as an embedded template using the sub object as its data.
[<propertyName>|..[<subObjectPropertyName>]..]
E.g. Hello [Person|[Forname] [Surname]]
> Hello Anthony Johnston
Recurse Sub-Collection
You can recurse the objects in sub collections too. Each object will be subject to the 'embedded template'.
[<propertyName>@..[<subObjectPropertyName>]..]
E.g. Hello [People@[Person.Forname], ]
> Hello Anthony, Sarah,
Formatting Data
Data can be formatted, this uses the standard String.Format()
method. More details on this method can be found on the Microsoft web site.
[<propertyName>#<format>]
E.g. Your birth date was [Person.DateOfBirth#d MMM yyyy]
> Your birth date was 1 Dec 1970