Fields Visibility
You can change the visibility of the various fields (value of $readonly) and other variables in the different modes (ListView, EditView, …). To register a new "view" use the method:
SDK::addView($module, $src, $mode, $success);
$module : the module name to apply the view
$src : the php file path
$mode : how the rule is applied (see below)
$success: what to do after applying the rule (see below)
The views defined for each module are applied in the order in which they are registered. When they register, they are added to the queue of views for that module. The $mode variable only makes sense if you change the $readonly variable and it admits the following values:
“constrain” : forces the value of $readonly to take the new value given in the script
“restrict” : changes the value of $readonly only for a more restrictive value (from 1 to 99 or 100, from 99 to 100, not vice versa)
The $success variable instead can be:
“continue” : after applying the view, continue with the next
“stop” : if the view returns $success = true, no other rules are executed
The following variables are available within the scripts:
$sdk_mode : uno tra “” (create), “edit”, “detail”, “popup_query”, “list_related_query”, “popup”, “related”, “list”, “mass_edit”
$readonly : il valore di readonly per il campo che si sta per scrivere (1, 99, 100)
$col_fields: valori dei campi, solo per $sdk_mode = “edit”, “detail” e “”
$fieldname o $fieldName: nome del campo corrente
$current_user: l’utente corrente
Ed è possibile restituire la variabile $success con true o false.
A seconda della modalità (ListView, EditView, …) ci sono diversi modi per modificare le query e diverse variabili disponibili.
Modalità | Valore di $sdk_mode | Variabili disponibili | Note |
CreateView | "" |
$col_fields $current_user $fieldname $readonly $success |
1 |
EditView | "edit" | ||
DetailView | "detail" | ||
MassEdit | "mass_edit" | ||
PopupQuery | "popup_query" |
$sdk_columns $success |
2 |
List/RelatedQuery | "list_related_query" |
$sdk_columns $success |
|
Popup | "popup" |
$current_user $fieldname $sdk_columnnames $sdk_columnvalues $readonly $success |
3 |
Related | "related" | 4 | |
List | "list" |
Note:
- In queste modalità i valori dei campi sono in $col_fields[ nomi-dei-campi ]
- Queste modalità servono per modificare la query in modo da poter prelevare campi aggiuntivi. In $sdk_columns ci sono le colonne del db da aggiungere alla query. Includere poi il file “modules/SDK/AddColumnsToQueryView.php”
- Per prelevare valori di altri campi, specificati nelle modalità PopupQuery e ListRelatedQuery, scriverli nell’array $sdk_columnnames, includere il file “modules/SDK/GetFieldsFromQueryView.php” e prenderli poi da $sdk_columnvalues
- Nel caso della related “Storico attività” sono disponibili solo le variabili $recordId e $readonly e si applicano all'intera riga, non al singolo campo.
Per de-registrare la vista usare:
SDK::deleteView($module, $src);
$module : il modulo associato
$src : il file php
Hooks
include/ListView/ListViewController.php
include/utils/DetailViewUtils.php
include/utils/EditViewUtils.php
include/utils/ListViewUtils.php
include/QueryGenerator/QueryGenerator.php
Popup.php