diff --git a/setup/modelfactory.class.inc.php b/setup/modelfactory.class.inc.php index 2b812e2439..cad8e4edce 100644 --- a/setup/modelfactory.class.inc.php +++ b/setup/modelfactory.class.inc.php @@ -1171,11 +1171,11 @@ class MFElement extends DOMElement } /** - * For debugging purposes + * For debugging purposes - but this is currently buggy: the whole document is rendered */ public function Dump() { - echo "
\n";	 	
+		echo "
\n";
 		echo htmlentities($this->ownerDocument->saveXML($this));
 		echo "
\n"; } @@ -1344,48 +1344,6 @@ class MFElement extends DOMElement { return self::FindNode($this, $oRefNode, $sSearchId); } - /** - * Find the child node matching the given node - * @param DOMNode $oParent The node to look into (could be DOMDocument, DOMElement...) - * @param MFElement $oRefNode The node to search for - * @param bool $sSearchId substitutes to the value of the 'id' attribute - */ - public static function FindNodeSlow(DOMNode $oParent, MFElement $oRefNode, $sSearchId = null) - { - $oRes = null; - if ($oRefNode->hasAttribute('id')) - { - // Find the first element having the same tag name and id - if (!$sSearchId) - { - $sSearchId = $oRefNode->getAttribute('id'); - } - foreach($oParent->childNodes as $oChildNode) - { - if (($oChildNode instanceof DOMElement) && ($oChildNode->tagName == $oRefNode->tagName)) - { - if ($oChildNode->hasAttribute('id') && ($oChildNode->getAttribute('id') == $sSearchId)) - { - $oRes = $oChildNode; - break; - } - } - } - } - else - { - // Get the first one having the same tag name (ignore others) - foreach($oParent->childNodes as $oChildNode) - { - if (($oChildNode instanceof DOMElement) && ($oChildNode->tagName == $oRefNode->tagName)) - { - $oRes = $oChildNode; - break; - } - } - } - return $oRes; - } /** * Seems to work fine (and is about 10 times faster than above) EXCEPT for menus !!!! @@ -1554,7 +1512,7 @@ class MFElement extends DOMElement default: $sFlag = 'removed'; // Iterate through the parents: reset the flag if any of them has a flag set - for($oParent = $this ; $oParent instanceof MFElement ; $oParent = $oParent->parentNode) + for($oParent = $this ; $oParent instanceof MFElement ; $oParent = $this->parentNode->parentNode) { if ($oParent->getAttribute('_alteration') != '') { @@ -1571,7 +1529,7 @@ class MFElement extends DOMElement else { // Remove the node entirely - $oParent->removeChild($this); + $this->parentNode->removeChild($this); } }