return $doc;
}
-function XML_Template_process($node, $obj, $clean = 1, $nsup = array())
+function XML_Template_process($node, $obj, $clean = 1)
{
if (!is_array($obj)) { # overwrite
foreach ($node->child_nodes() as $child) {
$attrs = $child->attributes();
if ($attrs != null) {
foreach ($child->attributes() as $attr) {
- # FIXME: xmlns, nsuri?
- if ($attr->name() == 'id') {
+ if ($attr->namespace_uri() == 'http://template.sesse.net/' && $attr->name() == 'id') {
$id = $attr->value();
if ($clean) {
$child->remove_attribute($attr->name());
continue;
}
if ($key == $tag || ($id != null && $key == ('#'.$id))) {
- XML_Template_process($child, $obj[$key], $clean, $nsup);
+ XML_Template_process($child, $obj[$key], $clean);
$processed = true;
}
}
}
if (!$processed) {
- XML_Template_process($child, $obj, $clean, $nsup);
+ XML_Template_process($child, $obj, $clean);
}
}
} else { # repeat
foreach ($obj as $instance) {
$newnode = $frag->clone_node(true);
$node->append_child($newnode);
- XML_Template_process($newnode, $instance, $clean, $nsup);
+ XML_Template_process($newnode, $instance, $clean);
# FIXME: clean
}