W
hen creating a widget, define its form, fields, and its behavior by using the template elements to specify the way it displays with HTML and Widget Attributes. Apply HTML tags to add and control elements such as buttons and various types of fields.
Adds a files attachment widget.
The following attributes are applicable:
Attribute | Type | Description |
---|
class | String | This attribute is for the CSS styles description and specifying. |
model | String | This attribute points to the client controller data object. |
style | String | This attribute specifies the display settings (size, font, color, and etc.) of the widget elements using the CSS syntax. Code Block |
---|
| <div style="fontSize: 15px, width: 600px"></div> |
|
Code Block |
---|
language | xml |
---|
theme | Eclipse |
---|
title | attachment |
---|
linenumbers | true |
---|
|
<attachment model="data.attachments"></attachment> |
Use this attribute to add a button to your widget form. This element behavior is similar as React does.
Code Block |
---|
language | xml |
---|
title | Button |
---|
linenumbers | true |
---|
|
<button event-click="window.s_widget_custom.submit();">
{data.submitBtnTitle}
</button>
<button event-click="window.s_widget_custom.cancel();">
{data.cancelBtnTitle}
</button> |
This element allows adding and configuring the checkbox field.
The following attributes are applicable:
Attribute | Type | Description |
---|
model | String | This attribute points to the client controller data object. |
Code Block |
---|
language | xml |
---|
title | checkbox |
---|
linenumbers | true |
---|
|
<modal model="data.modal" title="{data.modalTitle}" isShow="{data.isShow}"
doClose="window.s_widget_custom.closeModal();">
<checkbox model="data.ignoreAutoCAB" label="{data.questionText}"></checkbox>
<div simple-if="{data.showInput}" class="select-area">
<multiselect label="{data.cabParticipantsTitle}" title="{data.cabParticipantsTitle}" model="data.CABparticipants"
values="" options="{data.optionsValues}" event-change="s_widget_custom.optionsSelected();">
</multiselect>
</div>
</modal> |
The element adds a text field with the code formatting.
The following attributes are applicable:
Attribute | Type | Description |
---|
model | String | This attribute points to the client controller data object. |
Code Block |
---|
language | xml |
---|
title | Codemirror |
---|
linenumbers | true |
---|
|
<codemirror model="data.mirror"></codemirror> |
Adds the condition builder widget.
The following attributes are applicable:
Attribute | Type | Description |
---|
model | String | This attribute points to the client controller data object. |
tableName | String | Connection with a table by its name |
tableId | Big Integer | Connection with a table by the ID |
Code Block |
---|
language | xml |
---|
title | Conditions |
---|
linenumbers | true |
---|
|
<conditions model="data.conditions" tableName="itsm_incident" tableId="155964310500000569"></conditions> |
The element provides a data input of the datetime format.
The following attributes are applicable:
Attribute | Type | Description |
---|
isMandatory | Boolean | This attribute is responsible for specifying whether this input field is mandatory or not. |
model | String | This attribute points to the client controller data object. |
beginDate | String | Specify a method of how the beginning date is defined. |
endDate | String | Specify a method of how the ending date is defined. |
Code Block |
---|
language | js |
---|
theme | Confluence |
---|
title | datetime |
---|
linenumbers | true |
---|
|
<datetimeinput label="Date and Time" isMandatory="true" model="data.dueDate" beginDate="{data.beginDate} " endDate="{data.endDate}"></datetimeinput>
//client script
const beginDate = new Date();
const endDate = new Date();
beginDate.setDate(beginDate.getDate() - 30);
endDate.setDate(endDate.getDate() + 30); |
The element adds a field that allows selecting days of week.
The following attributes are applicable:
Attribute | Type | Description |
---|
model | String | This attribute points to the client controller data object. |
Code Block |
---|
language | xml |
---|
title | daysofweek |
---|
linenumbers | true |
---|
|
<daysofweek model="data.daysofweek"></daysofweek> |
The tag adds a field counting the time duration.
The following attributes are applicable:
Attribute | Type | Description |
---|
model | String | This attribute points to the client controller data object. |
Code Block |
---|
language | xml |
---|
title | duration |
---|
linenumbers | true |
---|
|
<duration model="data.duration"></duration> |
This widget adds an HTML input field with text formatting options.
The following attributes are applicable:
Attribute | Type | Description |
---|
model | String | This attribute points to the client controller data object. |
Code Block |
---|
language | xml |
---|
title | html |
---|
linenumbers | true |
---|
|
<htmlinput label="Description" model="data.description" isMandatory="true"></htmlinput> |
A modal window solution.
The following attributes are applicable:
Attribute | Type | Description |
---|
model | String | This attribute points to the client controller data object. |
title | String | A modal window title. |
doClose | Function | Specify actions to perform after one of the predefined patterns is selected: |
isShow | Boolean | If this attribute is equal to 'true', then the modal window is displayed. |
Code Block |
---|
language | xml |
---|
title | modal |
---|
linenumbers | true |
---|
|
<modal model="data.modal" title="Modal Label" isShow="true"
doClose:
{
"click": "runScript()"
},> |
Provides multiple choice selection for widgets.
The following attributes are applicable:
Attribute | Type | Description |
---|
canExcludeAll | Boolean | This parameter is responsible for items deselecting; if it's equal to TRUE, then bulk item selection cancellation is available. |
model | String | This attribute points to the client controller data object. |
options | String | Matches database values with what will be displayed.
Info |
---|
You can put as much options into drop-down menu as you need, but after the sixth one is placed, a vertical scroll appears. |
|
values | String | Specify values for the selection. |
Code Block |
---|
language | xml |
---|
title | multiselect |
---|
linenumbers | true |
---|
|
<multiselect model="data.values" canExcludeAll="true" values='["1", "2"]' options='[{"database_value":"","display_value":""},{"database_value":"1","display_value":"Первый"},{"database_value":"2","display_value":"Второй"}]'></multiselect> |
This element adds a reference field to a widget for establishing connections with data tables by a custom reference.
The following attributes are applicable:
Attribute | Type | Description |
---|
model | String | This attribute points to the client controller data object. |
tableName | String | Connection with a table by its name. |
condition | String | Specify a condition ID. |
isFixed | Boolean | When this attribute is equal to 'true', then the condition value cannot be changed. |
Code Block |
---|
language | xml |
---|
title | reference |
---|
linenumbers | true |
---|
|
<reference label="Configuration Item" model="data.element" tableName="cmdb" isMandatory="true" condition="{data.condition}"></reference> |
Add this SimpleTag to display a particular report.
The following attributes are applicable:
Attribute | Type | Description |
---|
reportId | String | Specify the report with the appropriate ID to display. |
condition | String | Specify a condition to build a report. |
Note |
---|
When placing two or more conditions into the condition string, merge them with the carat symbol ( ^ ). The condition syntax will look like this: Condition word | Notation | Example |
---|
AND | ^ | assignee=john.doe^state=active | OR | ^OR | impact=high^ORurgency=high |
To know more about possible condition operators, please refer to the Condition Operators article. |
Code Block |
---|
language | xml |
---|
title | report |
---|
linenumbers | true |
---|
|
<report reportId="123456789012345678" condition="(group=helpdesk^ORstate=active)"/> |
A field that allows selecting items.
The following attribute is applicable:
Attribute | Type | Description |
---|
model | String | This attribute points to the client controller data object. |
options | String | This field type matches database values with what will be displayed |
Code Block |
---|
language | xml |
---|
title | select |
---|
linenumbers | true |
---|
|
<select label="Class" isMandatory="true" model="data.class" options='[{"database_value":"","display_value":""},{"database_value":"155964310500000004","display_value":"Server"},{"database_value":"155964310500000006","display_value":"Database"}]'></select> |
In a widget, use this attribute to designate an input field for text information. The element is similar to the react component:
The following attributes are applicable:
Attribute | Type | Description |
---|
model | String | This attribute points to the client controller data object. |
Code Block |
---|
language | js |
---|
title | string |
---|
linenumbers | true |
---|
|
<string model="data.lastname" event-change=";(() => { const lastname = s_widget.getFieldValue('lastname') || ''; const firstname = s_widget.getFieldValue('firstname') || ''; s_widget.setFieldValue('fullname', lastname + ' ' + firstname) })();"></string>
<string model="data.firstname" event-change=";(() => { const lastname = s_widget.getFieldValue('lastname') || ''; const firstname = s_widget.getFieldValue('firstname') || ''; s_widget.setFieldValue('fullname', lastname + ' ' + firstname) })();"></string><h1>{data.fullname}</h1>
// In this example, we put values into two fields, and after that, they are displayed concatenated and formatted with H1 tag. |
<textarea>
A multi-line text field.
The following attributes are applicable:
Attribute | Type | Description |
---|
model | String | This attribute points to the client controller data object. |
Code Block |
---|
language | xml |
---|
title | textarea |
---|
linenumbers | true |
---|
|
<textarea model="data.name" label="Name" value=""></textarea>
<textarea model="data.description" label="Description" value=""></textarea> |