protected function filterList(array $nodes = array(), array $rules = array())
    {
        if (!empty($rules)) {
            foreach ($nodes as $node) {
                if (!$node instanceof AbstractNode) {
                    continue;
                }

                $props = $node->getInfo(false);
                $props = array_intersect_key($props, $rules);
                $match = true;

                foreach ($props as $key => $val) {
                    if ($val instanceof StringHelper) {
                        $match = $val->contains($rules[$key], true);
                    } else {
                        $match = $val == $rules[$key];
                    }

                    if ($match === false) {
                        unset($nodes[$node->getId()]);
                    }
                }
            }
        }

        return $nodes;
    }
protected function filterList(array $nodes = array(), array $rules = array())
    {
        if (!empty($rules)) {
            foreach ($nodes as $node) {
                if (!$node instanceof AbstractNode) {
                    continue;
                }

                $props = $node->getInfo(false);
                $props = array_intersect_key($props, $rules);
                $match = true;

                foreach ($props as $key => $val) {
                    if ($val instanceof StringHelper) {
                        $match = $val->contains($rules[$key], true);
                    } else {
                        $match = $val == $rules[$key];
                    }

                    if ($match === false) {
                        unset($nodes[$node->getId()]);
                    }
                }
            }
        }

        return $nodes;
    }
protected function filterList ( array $ nodes = array ( ) , array $ rules = array ( ) ) { if ( ! empty ( $ rules ) ) { foreach ( $ nodes as $ node ) { if ( ! $ node instanceof AbstractNode ) { continue ; } $ props = $ node -> getInfo ( false ) ; $ props = array_intersect_key ( $ props , $ rules ) ; $ match = true ; foreach ( $ props as $ key => $ val ) { if ( $ val instanceof StringHelper ) { $ match = $ val -> contains ( $ rules [ $ key ] , true ) ; } else { $ match = $ val == $ rules [ $ key ] ; } if ( $ match === false ) { unset ( $ nodes [ $ node -> getId ( ) ] ) ; } } } } return $ nodes ; }
Filters given node list array using specified filter rules.

@param  array $nodes
@param  array $rules
@return array
Filters given node list array using specified filter rules .