public function getHtml() { CORELogger::Log('Getting html for ' . get_class($this)); /* if($this->notEmptyElement()) { foreach($this->__children as $child) { $child->getHtml(); } } */ /* * copiato da CORE_v0.1 */ // FIXME: sistemare il codice di getHtml() importato da CORE_v0.1 $matches = array(); $pattern = array(); $attribute = array(); $html_element = get_class($this); $template = CDOMElement::getElementTemplate($html_element); $search_attributes = '/%([a-z\\-]+)%/'; preg_match_all($search_attributes, $template, $matches); foreach ($matches[1] as $match => $text) { // FIXME: avoid skipping newline $pattern[$match] = "/\\s*%{$text}%\\s*/"; if ($text == 'children' && $this->notEmptyElement()) { foreach ($this->__children as $child) { $attribute[$match] .= $child->getHtml(); } } else { if ($this->{$text} === NULL) { $attribute[$match] = ""; } else { // the whitespace at the beginning of the string is needed $attribute[$match] = " {$text}=\"{$this->{$text}}\""; } } } $html = preg_replace($pattern, $attribute, $template); return $html; }