Skip to main content

Developers

Coding style

A list of coding style rules to be used when developing in vtenext. File encoding: UTF-8....

Using AI

Tips on how to use LLM to help writing/refactoring vte code

Weak comparisons

Backward Incompatible Changes View https://www.php.net/manual/en/migration80.incompatible.php K...

RequestHandler

What is RequestHandler? RH (alias for RequestHandler) provides secure, centralized access to HTT...

Routing system

Previously, index.php directly included the module file to process the action, based on the actio...

Database best practices

Best practices (all versions) Avoid methods that do automatic html conversion, like query_result...

Escaping

How to properly escape html/js code in Smarty templates and PHP files

SDK 2

This manual describes the SDK methods that allow customization of vtenext.

Include custom php/js/css files

In order to include your custom code (that will be included in every page) you need to register t...

Javascript overrides and extensions

Some commonly used Javascript functions can be replaced or extended to change their behavior. To ...

Standard PHP replacement

You can replace the standard php files of the modules, such as DetailView.php, EditView.php and s...

Inclusion of other files

To associate files or folders to a module, so that they are imported automatically, the following...

Custom Uitypes

You can add new types to the existing ones and manage them completely without changing other code...

Smarty Custom Templates

You can create your own templates, which replace the standard ones (such as EditView.tpl and so o...

Popup

Two actions are available for managing popup. You can insert a php script before the query is mad...

Presave

You can enter your own script when you press the "Save" button in EditView mode. To register a sc...

Advanced query

You can modify the query executed to load the data in ListView, RelatedList and Popup mode in ord...

Page Header

You can customize the user icon, the settings icon or the blue bars at the top of the pages of VT...

Translations

Translations can be customized for each language and module installed. To modify or insert a new ...

Fields Visibility

You can change the visibility of the various fields (value of $readonly) and other variables in t...

Home Blocks

New blocks can be added to the home of VTE via SDK. The blocks cannot be deleted from the interfa...

Custom Buttons

Buttons can be added under the main menu. To insert a new button use the following method: SDK::...

Transitions Manager

You can change the selection options for the picklists managed by the transitions manager, as wel...

PdfMaker Custom Functions

Custom functions can be added in the PDFMaker module. To insert one use: SDK::setPDFCustomFuncti...

Custom Folders and Reports

Custom folders can be created using the following API. SDK::setReportFolder($name, $description)...

Turbolift Counter

When changing the standard extraction criteria of a related list, for example using another metho...

SDK Processes

Portal v2

Theme documentation https://adminlte.io/docs/3.2/ https://github.com/ColorlibHQ/AdminLTE htt...

Migration to PHP ≥ 8.3

New developers features in vtenext 26.04

In version 26.04 some additional changes have been made to the code to simplify the development o...

Help us improve

Developer documentation is constantly evolving! We are constantly committed to improving the qua...