You can modify some system interfaces using extension zones for widgets created in custom modules.
For example, you can replace the content of the employee block in the Company workspace or add buttons for starting a process from a module to the top panel of the app view form.
Extension zones determine where a widget from a module is used and which part of the interface it replaces or extends. To make them easier to find, extension zones are organized into groups based on where they are available in the system and what they are for. For example, the User extension zone group contains several options. Each of them lets you display the widget you create in place of the standard employee block in a specific place in the system.
Choose an extension zone by widget purpose
Use the table to choose an extension zone for a widget you create in a custom module.
What you need to do |
Which extension zone to choose |
Change the content of blocks with employee information:
|
|
Extend the functionality of the top panel on the app view form |
Group of the toolbar extension zone > Toolbar extension zone |
Start metrics collection or initialize a script when the system starts |
|
When signing a document, enable the option to change the electronic signature provider |
|
Set up viewing and editing of documents through a custom module that integrates with a file editor |
|
Display a widget on the top panel of app pages with a list of items |
To use widgets in these extension zones and make them work, enable the module that contains the widget. To learn how to create a widget with an extension zone, see Widgets in modules.
This article describes the types of extension zones available in the widget settings.
User extension zone group
With user extension zones, you can create widgets in a module and use them to replace the standard blocks with employee data. Each extension zone defines a place in the system where the configured widget is displayed.
When you add a widget with any of the user extension zones to a module, the following properties become available in the widget context:
- User: field of the Users type.
- Employee: field of the App type that specifies the Employees system app.
You create the widget from scratch. In Interface Designer, on the Template tab, place the necessary nested fields of the User and Employee properties on the design form. The content of the configured widget is displayed in the employee block.
For example, in the context of the Employees system app, you added the Work format field. By default, it is not shown in the pop-up window that opens when you click an employee name. To show this field, create a widget with the extension zone Popover with brief information and add the necessary fields to it, including the Work format field.
Popover with brief information
Replaces the standard block with employee data in the pop-up window that opens when you click an employee name.

User profile
Use this zone to replace the employee information block that opens when you click a user avatar or name on the Company > Schedule compliance page.

User profile settings
Replaces the content of the User Profile tab in the user settings.

In a widget with the User profile settings extension zone, the form is created from scratch:
- In Interface Designer, on the Template tab, place the nested fields from the User and Employee properties whose values the employee can edit.
- On the Template tab, add the Button widget with the name Save.
- On the Scripts tab, write a script that saves the changes made by the employee. In the script, use:
- The save() method on all the fields you added to the form to save the values the employee entered.
- A variable of the Yes/No Switch type with the isSavedSuccessfully code to display a system message that the data is saved successfully. To do this, set the value of this variable to true.
- In the settings of the Button widget, select the script you created.
- Save and publish the configured widget.
While the module with the widget is enabled, users will use the configured form to edit their data in their profile settings.
Employee page in the Company workspace
Replaces the standard employee block that is displayed on the following pages of the Company workspace: Employees, My Department, New Employees, Birthdays, Absence Schedule, My Substitutions, and Schedule Compliance.
By default, employee blocks on these pages show a link to the user profile, the employee position, and absence status.

Group of the toolbar extension zone
The top panel of the view form for all apps contains the Toolbar extension zone widget. By default, it is empty. If you create a widget in a module with the Group of the toolbar extension zone > Toolbar extension zone option, it is displayed on the form.
For example, you can use this to add a button to the app form that starts a business process configured in the module.

General
When you select the extension zone General > Root component, the widget you create is initialized, and its script runs when the system loads. In the widget script, add the function async function onInit() and call the method that should run inside this function. For example, you can set up page visit metrics for the system by tracking URL changes in the script.
начало внимание
If the widget script uses the Global constant, the module with this widget cannot be exported.
конец внимание
Sign app item
By default, the top panel of the view form for all apps contains the Sign app item widget, which employees can use to sign app items with an electronic signature. You can extend the functionality of this widget by using the Sign app item extension zone group.
The Sign the app on the view form extension zone: when signing a document, you can select a new electronic signature provider.

File preview
To view and edit documents, create a custom module and add a widget with the File preview > Preview page extension zone. This lets you work with the file formats that you configure the module for.
For an example, see Custom file viewing and editing module, and in BRIX TS SDK.
List of app items
With the List of app items > Toolbar extension zone, you can place the widget you create on the top panel of an app page.
By default, this panel contains the Toolbar extension zone widget, which lets users work with module widgets on app pages. For example, you can add a button for starting a process from a module that appears to the right of the standard button for creating an app item.