LSldapObject: add force_generation_if_empty parameter

This commit is contained in:
Benjamin Renard 2024-03-04 11:36:05 +01:00
parent 1a88707f87
commit bd98a8b8ef
Signed by: bn8
GPG key ID: 3E2E1CE1907115BC
2 changed files with 14 additions and 1 deletions

View file

@ -34,6 +34,7 @@ tableau, les clé les noms des attributs et les valeurs liés sont la configurat
'generate_value_format' => '[LSformat]',
'default_value' => 'valeur1',
'set_default_value_on_creation_if_empty' => [booleen],
'force_generation_if_empty' => [booleen],
'check_data' => array (
// Régle de vérification syntaxique des données saisies
),
@ -164,6 +165,17 @@ tableau, les clé les noms des attributs et les valeurs liés sont la configurat
défaut à la création de l'objet si aucune autre valeur n'as été fournie dans le contexte de
création (par défaut : *1*).
- `force_generation_if_empty`
Booléen permettant de définir si la valeur de l'attribut doit être générée si elle est vide, que
ce soit à la création ou la modification de l'objet (par défaut : *0*).
!!! warning
Si la génération échoue, cela bloquera l'action. Par ailleurs, cette génération est
prioritaire sur l'utilisation de la valeur par défaut de l'attribut induit par le paramètre
`set_default_value_on_creation_if_empty`.
- `check_data`
Tableau associatif contenant les règles de vérification syntaxique des données de l'attribut.

View file

@ -516,9 +516,10 @@ class LSldapObject extends LSlog_staticLoggerClass {
unset($forceGeneration[$key]);
}
}
if(
if (
in_array($attr_name, $forceGeneration)
|| (empty($attr_values) && $attr -> isRequired())
|| (empty($attr_values) && $attr -> getConfig('force_generation_if_empty', false, 'bool'))
) {
if ( $attr -> canBeGenerated()) {
if ($attr -> generateValue()) {