N°2064 - Fix abstract class state list for notification triggers

This commit is contained in:
Eric
2019-03-07 15:56:29 +01:00
parent 388896b963
commit 856c037bb0

View File

@@ -3269,10 +3269,13 @@ class AttributeClassState extends AttributeString
$sClass = $oHostObj->Get($sTargetClass);
$aAllowedStates = array();
$aValues = MetaModel::EnumStates($sClass);
foreach(array_keys($aValues) as $sState)
foreach (MetaModel::EnumChildClasses($sClass, ENUM_CHILD_CLASSES_ALL) as $sChildClass)
{
$aAllowedStates[$sState] = $sState.' ('.MetaModel::GetStateLabel($sClass, $sState).')';
$aValues = MetaModel::EnumStates($sChildClass);
foreach (array_keys($aValues) as $sState)
{
$aAllowedStates[$sState] = $sState.' ('.MetaModel::GetStateLabel($sChildClass, $sState).')';
}
}
return $aAllowedStates;
}
@@ -3291,9 +3294,15 @@ class AttributeClassState extends AttributeString
{
$sTargetClass = $this->Get('class_field');
$sClass = $oHostObject->Get($sTargetClass);
$sHTML = '<span class="attribute-set-item" data-code="'.$sValue.'" data-label="'.$sValue.' ('.MetaModel::GetStateLabel($sClass, $sValue).')'.'" data-description="">'.$sValue.'</span>';
return $sHTML;
foreach (MetaModel::EnumChildClasses($sClass, ENUM_CHILD_CLASSES_ALL) as $sChildClass)
{
$aValues = MetaModel::EnumStates($sChildClass);
if (in_array($sValue, $aValues))
{
$sHTML = '<span class="attribute-set-item" data-code="'.$sValue.'" data-label="'.$sValue.' ('.MetaModel::GetStateLabel($sChildClass, $sValue).')'.'" data-description="">'.$sValue.'</span>';
return $sHTML;
}
}
}
return $sValue;