Versions Compared
Key
- This line was added.
- This line was removed.
- Formatting was changed.
This class allows the client-side script to execute the code on the server-side using Script Includes. it is used to create branded notifications.
setTitle(title)
This method sets the main header of email notification.
Parameter(s):
Name | Type | Mandatory | Default value |
---|---|---|---|
title | String | Y | N |
Return:
Type | Description |
---|---|
Void | This method does not return a value. |
Code Block |
---|
setTitle(title) {
this.setProperty('title', title, 'Approval ticket');
} |
setBodyHeader(bodyHeader)
This method sets the header of text body of email notification.
Parameter(s):
Name | Type | Mandatory | Default value |
---|---|---|---|
bodyHeader | String | Y | N |
Return:
Type | Description |
---|---|
Void | This method does not return a value. |
Code Block |
---|
setBodyHeader(bodyHeader) {
this.setProperty('bodyHeader', bodyHeader, 'You have a new approval ticket');
} |
setBodyText(bodyText)
This method sets the main text body of email notification.
Parameter(s):
Name | Type | Mandatory | Default value |
---|---|---|---|
bodyText | String | Y | N |
Return:
Type | Description |
---|---|
Void | This method does not return a value. |
Code Block |
---|
setBodyText(bodyText) {
this.setProperty('bodyText', bodyText, 'You need to approve or reject the ticket.');
} |
setComment(comment)
This method sets the email notification comment:
- puts it in an area with a grey background
- highlights it italic.
Parameter(s):
Name | Type | Mandatory | Default value |
---|---|---|---|
comment | String | Y | N |
Return:
Type | Description |
---|---|
Void | This method does not return a value. |
Code Block |
---|
setComment(comment) { this.setProperty('comment', comment, 'Leave your comment here'); } |
getTitle(title)
This method returns the main header of notification.
Return:
Type | Description |
---|---|
String | The main header of notification. |
Code Block |
---|
getTitle() {
return this.title;
} |
getBodyHeader(bodyHeader)
This method returns the main header of text body.
Return:
Type | Description |
---|---|
String | The main header of text body. |
Code Block |
---|
getBodyHeader() { return this.bodyHeader; } |
getBodyText(bodyText)
This method returns the main text body.
Return:
Type | Description |
---|---|
String | The main text body. |
Code Block |
---|
getBodyText() { return this.bodyText; } |
getComment(comment)
This method returns the comment text.
Return:
Type | Description |
---|---|
String | The comment text. |
Code Block |
---|
getComment() { return this.comment; } |
getButtons(buttons)
This method returns the array of buttons.
Return:
Type | Description |
---|---|
Array | The array of buttons. |
Code Block |
---|
getButtons() { return this.buttons; } |
addButton(button)
This methods adds a new button to array of buttons.
Parameter(s):
Name | Type | Mandatory | Default value |
---|---|---|---|
text | String | Y | N |
url | String | Y | N |
color | String | Y | N |
buttonArray | Array | Y | N |
Return:
Type | Description |
---|---|
Array | The base of buttons array with the new one. |
Code Block |
---|
addButton(text, url, color = '#E31450') {
const button = {
"text": text,
"url": url,
"color": color
}; |
removeButton(button)
This method removes the last added button.
Code Block |
---|
removeButton() { this.buttons.pop(); } |
removeAllButtons(buttons)
This method removes all added buttons.
Code Block |
---|
removeAllButtons() { this.buttons = []; } |
setProperty(propertyName, input, propertyTitle)
This method sets internal method for input type validation.
Parameter(s):
Name | Type | Mandatory | Default value |
---|---|---|---|
propertyName | String | Y | N |
input | String/Number | Y | N |
propertyTitle | String | Y | N |
Code Block |
---|
setProperty(propertyName, input, propertyTitle) {
if (typeof input === 'string' || typeof input === 'number') {
this[propertyName] = input;
} else {
ss.addErrorMessage(`Invalid data type.`);
}
} |
formEmailTemplate()
This method creates and returns HTML template based on set properties.
Return:
Type | Description |
---|---|
String | The HTML template. |
Code Block |
---|
formEmailTemplate() { //text formatter - \n to <br> const bodyText = this.bodyText.toString().replace(/\n/g, '<br>'); //creates space between bodyHeader and bodyText let bodySplitter = ''; if (this.bodyHeader !== '' && this.bodyHeader !== '') { bodySplitter = '<br><br>'; } |