function __construct(formField $ff, $values = null) { $this->ff = $ff; $this->setValues($values); if ($this->ff->getRootElement()->hasAttribute('_ffg')) { //Нельзя создавать больше одного объекта для одного поля throw new Exception('Duplicate formFieldGallery object for "' . $this->ff->getName() . '" field'); } $this->formats = array(); $xml = $ff->getXML(); $res = $xml->query('param', $ff->getRootElement()); foreach ($res as $param) { $this->formats[] = $param->parentNode->removeChild($param); } $this->ff->getRootElement()->setAttribute('_ffg', '_ffg'); $this->seTable('articles_images'); }
function insert(formField $e, $mode = null) { $node = $this->getXML()->dd()->importNode($e->getRootElement(), true); if (!$mode || $mode == "inside") { $this->e->parentNode->appendChild($node); } else { if ($mode == "before") { $this->e->parentNode->insertBefore($node, $this->e); } else { if ($mode == "after") { if ($this->e->nextSibling) { $this->e->parentNode->insertBefore($node, $this->e->nextSibling); } else { $this->e->parentNode->appendChild($node); } } } } $className = get_class($e); return new $className($node); }