Merge pull request #24277 from noec764/17_FIX_Extrafields_evaluated_expression
FIX: Correct Evaluation for extrafields
This commit is contained in:
commit
5dc21da193
@ -8110,7 +8110,7 @@ abstract class CommonObject
|
|||||||
// Test on 'enabled' ('enabled' is different than 'list' = 'visibility')
|
// Test on 'enabled' ('enabled' is different than 'list' = 'visibility')
|
||||||
$enabled = 1;
|
$enabled = 1;
|
||||||
if ($enabled && isset($extrafields->attributes[$this->table_element]['enabled'][$key])) {
|
if ($enabled && isset($extrafields->attributes[$this->table_element]['enabled'][$key])) {
|
||||||
$enabled = dol_eval($extrafields->attributes[$this->table_element]['enabled'][$key], 1, 1, '1');
|
$enabled = dol_eval($extrafields->attributes[$this->table_element]['enabled'][$key], 1, 1, '2');
|
||||||
}
|
}
|
||||||
if (empty($enabled)) {
|
if (empty($enabled)) {
|
||||||
continue;
|
continue;
|
||||||
@ -8118,12 +8118,12 @@ abstract class CommonObject
|
|||||||
|
|
||||||
$visibility = 1;
|
$visibility = 1;
|
||||||
if ($visibility && isset($extrafields->attributes[$this->table_element]['list'][$key])) {
|
if ($visibility && isset($extrafields->attributes[$this->table_element]['list'][$key])) {
|
||||||
$visibility = dol_eval($extrafields->attributes[$this->table_element]['list'][$key], 1, 1, '1');
|
$visibility = dol_eval($extrafields->attributes[$this->table_element]['list'][$key], 1, 1, '2');
|
||||||
}
|
}
|
||||||
|
|
||||||
$perms = 1;
|
$perms = 1;
|
||||||
if ($perms && isset($extrafields->attributes[$this->table_element]['perms'][$key])) {
|
if ($perms && isset($extrafields->attributes[$this->table_element]['perms'][$key])) {
|
||||||
$perms = dol_eval($extrafields->attributes[$this->table_element]['perms'][$key], 1, 1, '1');
|
$perms = dol_eval($extrafields->attributes[$this->table_element]['perms'][$key], 1, 1, '2');
|
||||||
}
|
}
|
||||||
|
|
||||||
if (($mode == 'create') && abs($visibility) != 1 && abs($visibility) != 3) {
|
if (($mode == 'create') && abs($visibility) != 1 && abs($visibility) != 3) {
|
||||||
|
|||||||
@ -958,9 +958,9 @@ class ExtraFields
|
|||||||
$unique = $this->attributes[$extrafieldsobjectkey]['unique'][$key];
|
$unique = $this->attributes[$extrafieldsobjectkey]['unique'][$key];
|
||||||
$required = $this->attributes[$extrafieldsobjectkey]['required'][$key];
|
$required = $this->attributes[$extrafieldsobjectkey]['required'][$key];
|
||||||
$param = $this->attributes[$extrafieldsobjectkey]['param'][$key];
|
$param = $this->attributes[$extrafieldsobjectkey]['param'][$key];
|
||||||
$perms = dol_eval($this->attributes[$extrafieldsobjectkey]['perms'][$key], 1, 1, '1');
|
$perms = dol_eval($this->attributes[$extrafieldsobjectkey]['perms'][$key], 1, 1, '2');
|
||||||
$langfile = $this->attributes[$extrafieldsobjectkey]['langfile'][$key];
|
$langfile = $this->attributes[$extrafieldsobjectkey]['langfile'][$key];
|
||||||
$list = dol_eval($this->attributes[$extrafieldsobjectkey]['list'][$key], 1, 1, '1');
|
$list = dol_eval($this->attributes[$extrafieldsobjectkey]['list'][$key], 1, 1, '2');
|
||||||
$totalizable = $this->attributes[$extrafieldsobjectkey]['totalizable'][$key];
|
$totalizable = $this->attributes[$extrafieldsobjectkey]['totalizable'][$key];
|
||||||
$help = $this->attributes[$extrafieldsobjectkey]['help'][$key];
|
$help = $this->attributes[$extrafieldsobjectkey]['help'][$key];
|
||||||
$hidden = (empty($list) ? 1 : 0); // If empty, we are sure it is hidden, otherwise we show. If it depends on mode (view/create/edit form or list, this must be filtered by caller)
|
$hidden = (empty($list) ? 1 : 0); // If empty, we are sure it is hidden, otherwise we show. If it depends on mode (view/create/edit form or list, this must be filtered by caller)
|
||||||
@ -1594,9 +1594,9 @@ class ExtraFields
|
|||||||
$unique = $this->attributes[$extrafieldsobjectkey]['unique'][$key];
|
$unique = $this->attributes[$extrafieldsobjectkey]['unique'][$key];
|
||||||
$required = $this->attributes[$extrafieldsobjectkey]['required'][$key];
|
$required = $this->attributes[$extrafieldsobjectkey]['required'][$key];
|
||||||
$param = $this->attributes[$extrafieldsobjectkey]['param'][$key];
|
$param = $this->attributes[$extrafieldsobjectkey]['param'][$key];
|
||||||
$perms = dol_eval($this->attributes[$extrafieldsobjectkey]['perms'][$key], 1, 1, '1');
|
$perms = dol_eval($this->attributes[$extrafieldsobjectkey]['perms'][$key], 1, 1, '2');
|
||||||
$langfile = $this->attributes[$extrafieldsobjectkey]['langfile'][$key];
|
$langfile = $this->attributes[$extrafieldsobjectkey]['langfile'][$key];
|
||||||
$list = dol_eval($this->attributes[$extrafieldsobjectkey]['list'][$key], 1, 1, '1');
|
$list = dol_eval($this->attributes[$extrafieldsobjectkey]['list'][$key], 1, 1, '2');
|
||||||
$help = $this->attributes[$extrafieldsobjectkey]['help'][$key];
|
$help = $this->attributes[$extrafieldsobjectkey]['help'][$key];
|
||||||
$hidden = (empty($list) ? 1 : 0); // If $list empty, we are sure it is hidden, otherwise we show. If it depends on mode (view/create/edit form or list, this must be filtered by caller)
|
$hidden = (empty($list) ? 1 : 0); // If $list empty, we are sure it is hidden, otherwise we show. If it depends on mode (view/create/edit form or list, this must be filtered by caller)
|
||||||
|
|
||||||
@ -2083,17 +2083,17 @@ class ExtraFields
|
|||||||
|
|
||||||
$enabled = 1;
|
$enabled = 1;
|
||||||
if (isset($this->attributes[$object->table_element]['enabled'][$key])) { // 'enabled' is often a condition on module enabled or not
|
if (isset($this->attributes[$object->table_element]['enabled'][$key])) { // 'enabled' is often a condition on module enabled or not
|
||||||
$enabled = dol_eval($this->attributes[$object->table_element]['enabled'][$key], 1, 1, '1');
|
$enabled = dol_eval($this->attributes[$object->table_element]['enabled'][$key], 1, 1, '2');
|
||||||
}
|
}
|
||||||
|
|
||||||
$visibility = 1;
|
$visibility = 1;
|
||||||
if (isset($this->attributes[$object->table_element]['list'][$key])) { // 'list' is option for visibility
|
if (isset($this->attributes[$object->table_element]['list'][$key])) { // 'list' is option for visibility
|
||||||
$visibility = intval(dol_eval($this->attributes[$object->table_element]['list'][$key], 1, 1, '1'));
|
$visibility = intval(dol_eval($this->attributes[$object->table_element]['list'][$key], 1, 1, '2'));
|
||||||
}
|
}
|
||||||
|
|
||||||
$perms = 1;
|
$perms = 1;
|
||||||
if (isset($this->attributes[$object->table_element]['perms'][$key])) {
|
if (isset($this->attributes[$object->table_element]['perms'][$key])) {
|
||||||
$perms = dol_eval($this->attributes[$object->table_element]['perms'][$key], 1, 1, '1');
|
$perms = dol_eval($this->attributes[$object->table_element]['perms'][$key], 1, 1, '2');
|
||||||
}
|
}
|
||||||
if (empty($enabled)
|
if (empty($enabled)
|
||||||
|| (
|
|| (
|
||||||
|
|||||||
@ -72,15 +72,15 @@ if (empty($reshook) && isset($extrafields->attributes[$object->table_element]['l
|
|||||||
|
|
||||||
$enabled = 1;
|
$enabled = 1;
|
||||||
if ($enabled && isset($extrafields->attributes[$object->table_element]['enabled'][$tmpkeyextra])) {
|
if ($enabled && isset($extrafields->attributes[$object->table_element]['enabled'][$tmpkeyextra])) {
|
||||||
$enabled = dol_eval($extrafields->attributes[$object->table_element]['enabled'][$tmpkeyextra], 1);
|
$enabled = dol_eval($extrafields->attributes[$object->table_element]['enabled'][$tmpkeyextra], 1, 1, '2');
|
||||||
}
|
}
|
||||||
if ($enabled && isset($extrafields->attributes[$object->table_element]['list'][$tmpkeyextra])) {
|
if ($enabled && isset($extrafields->attributes[$object->table_element]['list'][$tmpkeyextra])) {
|
||||||
$enabled = dol_eval($extrafields->attributes[$object->table_element]['list'][$tmpkeyextra], 1);
|
$enabled = dol_eval($extrafields->attributes[$object->table_element]['list'][$tmpkeyextra], 1, 1, '2');
|
||||||
}
|
}
|
||||||
|
|
||||||
$perms = 1;
|
$perms = 1;
|
||||||
if ($perms && isset($extrafields->attributes[$object->table_element]['perms'][$tmpkeyextra])) {
|
if ($perms && isset($extrafields->attributes[$object->table_element]['perms'][$tmpkeyextra])) {
|
||||||
$perms = dol_eval($extrafields->attributes[$object->table_element]['perms'][$tmpkeyextra], 1);
|
$perms = dol_eval($extrafields->attributes[$object->table_element]['perms'][$tmpkeyextra], 1, 1, '2');
|
||||||
}
|
}
|
||||||
//print $tmpkeyextra.'-'.$enabled.'-'.$perms.'<br>'."\n";
|
//print $tmpkeyextra.'-'.$enabled.'-'.$perms.'<br>'."\n";
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user