Переглянути джерело

N°653 Ticket Lifecycle: Part 2, core & console done.

git-svn-id: http://svn.code.sf.net/p/itop/code/trunk@4761 a333f486-631f-4898-b8df-5754b55c2be0
glajarige 8 роки тому
батько
коміт
3057ac020a
1 змінених файлів з 10 додано та 2 видалено
  1. 10 2
      core/metamodel.class.php

+ 10 - 2
core/metamodel.class.php

@@ -1562,8 +1562,16 @@ abstract class MetaModel
         $aStates = MetaModel::EnumStates($sClass);
         $aTargetState = $aStates[$sTargetState];
         $aTargetStateAttributes = $aTargetState['attribute_list'];
-        // - Merging with results
-        $aAttributes = $aTargetStateAttributes;
+        // - Merging with results (only MUST_XXX and MANDATORY)
+        foreach($aTargetStateAttributes as $sTargetStateAttCode => $iTargetStateAttFlags)
+        {
+            $iTmpAttFlags = OPT_ATT_NORMAL;
+            if($iTargetStateAttFlags & OPT_ATT_MUSTPROMPT){ $iTmpAttFlags = $iTmpAttFlags | OPT_ATT_MUSTPROMPT; }
+            if($iTargetStateAttFlags & OPT_ATT_MUSTCHANGE){ $iTmpAttFlags = $iTmpAttFlags | OPT_ATT_MUSTCHANGE; }
+            if($iTargetStateAttFlags & OPT_ATT_MANDATORY){ $iTmpAttFlags = $iTmpAttFlags | OPT_ATT_MANDATORY; }
+
+            $aAttributes[$sTargetStateAttCode] = $iTmpAttFlags;
+        }
 
         // Retrieving attributes from transition
         $aTransitionAttributes = $aTransition['attribute_list'];