This class provides methods to execute the code on the server-side using Script Includes. Use it to create branded notifications.

setTitle(title)


Use this method to set the main header of the email notification.

Parameter(s):

Name

Type

Mandatory

Default value

titleStringYN

Return:

Type

Description

VoidThis method does not return a value.

Example:

setTitle()
ss.importIncludeScript('SimpleEmailTemplate');
const htmlTemplate = new SimpleEmailTemplate('');
htmlTemplate.setTitle(`${current.number} ${current.subject}`);

setBodyHeader(bodyHeader)


Use this method to set the header of the notification text body.

Parameter(s):

Name

Type

Mandatory

Default value

bodyHeaderStringYN

Return:

Type

Description

VoidThis method does not return a value.

Example:

setBodyHeader()
  let bodyHeaderTemplate = `<a href="${currentRecordURL}">${emailSubject}</a> <br> The state of ${current.number} changed, new state: ${current.getDisplayValue('state')}.`;
  if(current.state == '3'){ //Postponed
      bodyHeaderTemplate += `Repeated request: ${current.getDisplayValue('resubmission')}`;       
}
  bodyHeaderTemplate += `<br><br>You can add information by replying to this letter, do not change the subject of the letter. `;
  htmlTemplate.setBodyHeader(bodyHeaderTemplate);

setBodyText(bodyText)


Use this method to set the main text body of the email notification.

Parameter(s):

Name

Type

Mandatory

Default value

bodyTextStringYN

Return:

Type

Description

VoidThis method does not return a value.

Example:

setBodyText()
const htmlTemplate = new SimpleEmailTemplate(approvalItem.getDisplayValue());
const allApproversObject = JSON.parse(current.additional_parameter);
htmlTemplate.setBodyText(`Dear ${current.getDisplayValue('approver_id')}, you need to approve <a href="${ApprovalItemURL}">${approvalItem.getDisplayValue()}</a> The list of the approval tickets: ${transformToTemplateList(allApproversObject)}`);

setComment(comment)


This method sets the email notification comment in the following way:

  • puts it in an area with a gray background.
  • highlights it italic.

Parameter(s):

Name

Type

Mandatory

Default value

commentStringYN

Return:

Type

Description

VoidThis method does not return a value.

Example:

setComment()
ss.importIncludeScript('SimpleEmailTemplate');
const htmlTemplate = new SimpleEmailTemplate('');
htmlTemplate.setComment(`Comment: ${current.additional_comments}`);

getTitle()


Use this method to return the main header of the notification.

Return:

Type

Description

StringThis method returns the main header of the notification.

Example:

getTitle()
const htmlTemplate = new SimpleEmailTemplate('');
htmlTemplate.setTitle(`${current.number} ${current.subject}`);
ss.info(htmlTemplate.getTitle()); // Result: INC0000XXX Email not working

getBodyHeader()


Use this method to return the main header of the text body.

Return:

Type

Description

StringThis method returns the main header of the text body.

Example:

getBodyHeader()
 ss.importIncludeScript('SimpleEmailTemplate');
 const htmlTemplate = new SimpleEmailTemplate('');
 htmlTemplate.setBodyHeader(`Incident ${current.number} ${current.subject}`);
 ss.info(htmlTemplate.getBodyHeader()); // Result: Incident INC0000XX Email not working

getBodyText()


Use this method to return the text body.

Return:

Type

Description

StringThis method returns the main text body.

Example:

getBodyText()
ss.importIncludeScript('SimpleEmailTemplate');
const htmlTemplate = new SimpleEmailTemplate('');
htmlTemplate.setBodyText(`Description ${current.description}`);
ss.info(htmlTemplate.getBodyText()); // Result: Description 27.01.2022 Could not log in to my email, the error 'No access'. 

getComment()


Use this method to return a comment text.

Return:

Type

Description

StringThis method returns а comment text.

Example:

getComment()
ss.importIncludeScript('SimpleEmailTemplate');
const htmlTemplate = new SimpleEmailTemplate('');
htmlTemplate.setComment(`Comment: ${current.additional_comments}`);
ss.info(htmlTemplate.getComment()); // Result: Need more information

getButtons()


Use this method to return the array of buttons.

Return:

Type

Description

ArrayThis method returns an array of buttons.

Example:

getButtons()
ss.importIncludeScript('SimpleEmailTemplate');
const htmlTemplate = new SimpleEmailTemplate('');
htmlTemplate.addButton('Approve', 'https://instance.example.com');
ss.info(htmlTemplate.getButtons()); // Results: [{"text":"Approve","url":"https:\/\/instance.example.com\/","color":"#05C270"},{"text":"Reject","url":"https:\/\/instance.example.com\/","color":"#F73422"}]

addButton()


Use this method to add a new button to the array of buttons.

Parameter(s):

Name

Type

Mandatory

Default value

textStringYN
urlStringYN
colorStringNN
buttonArrayArrayYN

Return:

Type

Description

ArrayThis method returns an array of buttons, including the new one.

Example:

addButtons()
ss.importIncludeScript('SimpleEmailTemplate');
const htmlTemplate = new SimpleEmailTemplate('');
htmlTemplate.addButton('Approve', 'https://instance.example.com');

removeButton()


Use this method to remove the last added button.

Return:

Type

Description

VoidThis method does not return a value.

Example:

removeButton()
ss.importIncludeScript('SimpleEmailTemplate');
const htmlTemplate = new SimpleEmailTemplate('');
htmlTemplate.addButton('Approve', 'https://instance.example.com');
if (current.state === '2') { // Incident in the 'In Progress' state
    htmlTemplate.removeButton();
}

removeAllButtons()


Use this method to remove all added buttons.

Return:

Type

Description

VoidThis method does not return a value.

Example:

removeAllButtons()
ss.importIncludeScript('SimpleEmailTemplate');
const htmlTemplate = new SimpleEmailTemplate('');
htmlTemplate.addButton('Approve', 'https://instance.example.com');
htmlTemplate.addButton('Reject', 'https://instance.example.com');
if (current.state === '3') { Incident in the 'Postponed' state
   htmlTemplate.removeAllButtons();
 }

setProperty(propertyName, input, propertyTitle)


Use this method to set an internal method for input type validation.

Parameter(s):

Name

Type

Mandatory

Default value

propertyNameStringYN
inputString/NumberYN
propertyTitleStringYN

Return:

Type

Description

VoidThis method does not return a value.

Example:

setProperty()
ss.importIncludeScript('SimpleEmailTemplate');
const htmlTemplate = new SimpleEmailTemplate('');
htmlTemplate.setProperty('bodyText', Need information about the incident', 'Body Text'); 
ss.info(htmlTemplate.getBodyText()); // Result: Need information about the incident

formEmailTemplate()


Use this method to create and return an HTML template based on the set properties.

Return:

Type

Description

StringThis method returns an HTML template.

Example:

formEmailTemplate()
ss.importIncludeScript('SimpleEmailTemplate');
const htmlTemplate = new SimpleEmailTemplate('');
htmlTemplate.setTitle(`${current.number} ${current.subject}`);
htmlTemplate.setComment(`Comment: ${current.additional_comments}`);
htmlTemplate.setBodyHeader(`Incident ${current.number} ${current.subject}`);
htmlTemplate.setBodyText(`Description: ${current.description}`);
email.setBody(htmlTemplate.formEmailTemplate());

  • No labels