/** * Appends this element to its parent if necessary. * * @internal */ protected function _ensureAppended() { if (!$this->_appended) { $parentDom = $this->_parentElement->getDom(); if (!$parentDom->ownerDocument->isSameNode($this->_element->ownerDocument)) { $this->_element = $parentDom->ownerDocument->importNode($this->_element, true); } $parentDom->appendChild($this->_element); $this->_appended = true; $this->_parentElement->_ensureAppended(); } }