public function addNode($node) {
		$src=false;
		// find src
		if (array_key_exists('src',$node))
			$src = $node['src'];
		elseif (array_key_exists('href',$node))
			$src = $node['href'];
		if ($src) {
			// find type
			if (!isset($node['type'])) {
				if (preg_match('/.*\.(css|js)(?=[?#].*|$)/i',$src,$match))
					$node['type'] = $match[1];
				elseif (array_key_exists('src',$node))
					$node['type'] = 'js';
				elseif (array_key_exists('href',$node))
					$node['type'] = 'css';
				elseif(empty($type))
					// unknown file type
					return "";
			}
			$type = $node['type'];
			// default slot is based on the type
			if (!isset($node['group']))
				$node['group'] = ($node['type'] == 'js')
					? 'footer' : 'head';
			if (!isset($node['priority']))
				$node['priority'] = 5;
			if (!isset($node['slot']))
				$node['slot'] = null;
			$group = $node['group'];
			$prio = $node['priority'];
			$slot = $node['slot'];
			unset($node['priority'],$node['src'],$node['href'],
				$node['group'],$node['type'],$node['slot']);
			$this->add($src,$type,$group,$prio,$slot,$node);
		}
	}
public function addNode($node) {
		$src=false;
		// find src
		if (array_key_exists('src',$node))
			$src = $node['src'];
		elseif (array_key_exists('href',$node))
			$src = $node['href'];
		if ($src) {
			// find type
			if (!isset($node['type'])) {
				if (preg_match('/.*\.(css|js)(?=[?#].*|$)/i',$src,$match))
					$node['type'] = $match[1];
				elseif (array_key_exists('src',$node))
					$node['type'] = 'js';
				elseif (array_key_exists('href',$node))
					$node['type'] = 'css';
				elseif(empty($type))
					// unknown file type
					return "";
			}
			$type = $node['type'];
			// default slot is based on the type
			if (!isset($node['group']))
				$node['group'] = ($node['type'] == 'js')
					? 'footer' : 'head';
			if (!isset($node['priority']))
				$node['priority'] = 5;
			if (!isset($node['slot']))
				$node['slot'] = null;
			$group = $node['group'];
			$prio = $node['priority'];
			$slot = $node['slot'];
			unset($node['priority'],$node['src'],$node['href'],
				$node['group'],$node['type'],$node['slot']);
			$this->add($src,$type,$group,$prio,$slot,$node);
		}
	}
public function addNode ( $ node ) { $ src = false ; // find src if ( array_key_exists ( 'src' , $ node ) ) $ src = $ node [ 'src' ] ; elseif ( array_key_exists ( 'href' , $ node ) ) $ src = $ node [ 'href' ] ; if ( $ src ) { // find type if ( ! isset ( $ node [ 'type' ] ) ) { if ( preg_match ( '/.*\.(css|js)(?=[?#].*|$)/i' , $ src , $ match ) ) $ node [ 'type' ] = $ match [ 1 ] ; elseif ( array_key_exists ( 'src' , $ node ) ) $ node [ 'type' ] = 'js' ; elseif ( array_key_exists ( 'href' , $ node ) ) $ node [ 'type' ] = 'css' ; elseif ( empty ( $ type ) ) // unknown file type return "" ; } $ type = $ node [ 'type' ] ; // default slot is based on the type if ( ! isset ( $ node [ 'group' ] ) ) $ node [ 'group' ] = ( $ node [ 'type' ] == 'js' ) ? 'footer' : 'head' ; if ( ! isset ( $ node [ 'priority' ] ) ) $ node [ 'priority' ] = 5 ; if ( ! isset ( $ node [ 'slot' ] ) ) $ node [ 'slot' ] = null ; $ group = $ node [ 'group' ] ; $ prio = $ node [ 'priority' ] ; $ slot = $ node [ 'slot' ] ; unset ( $ node [ 'priority' ] , $ node [ 'src' ] , $ node [ 'href' ] , $ node [ 'group' ] , $ node [ 'type' ] , $ node [ 'slot' ] ) ; $ this -> add ( $ src , $ type , $ group , $ prio , $ slot , $ node ) ; } }
push new asset during template execution
@param $node
@return string
push new asset during template execution