Selaa lähdekoodia

Added support for the 'replaced' operation which is useful for display lists

git-svn-id: http://svn.code.sf.net/p/itop/code/trunk@1776 a333f486-631f-4898-b8df-5754b55c2be0
dflaven 13 vuotta sitten
vanhempi
commit
1af36a1862
1 muutettua tiedostoa jossa 11 lisäystä ja 0 poistoa
  1. 11 0
      setup/modelfactory.class.inc.php

+ 11 - 0
setup/modelfactory.class.inc.php

@@ -522,6 +522,11 @@ class ModelFactory
 	
 	protected function _priv_AlterNode(DOMNode $oNode, DOMNode $oDeltaNode)
 	{
+		foreach ($oDeltaNode->attributes as $sName => $oAttrNode)
+		{
+			$oNode->setAttribute($sName, $oAttrNode->value);
+		}
+		
 		foreach($oDeltaNode->childNodes as $oChildNode)
 		{
 			$sOperation = $oChildNode->getAttribute('_operation');
@@ -553,6 +558,12 @@ class ModelFactory
 				}
 				break;
 				
+				case 'replaced':
+				$oNewNode = $this->oDOMDocument->importNode($oChildNode, true); // Import the node and its child nodes
+				$oToModify = $this->_priv_GetNodes($sPath, $oNode)->item(0);
+				$oNode->replaceChild($oNewNode, $oToModify);	
+				break;
+				
 				case 'created':
 				$oNewNode = $this->oDOMDocument->importNode($oChildNode);
 				$oNode->appendChild($oNewNode);