Ejemplo n.º 1
0
 private function get_node($node_id)
 {
     static $nodes = array();
     if (!isset($nodes[$node_id])) {
         $node = new midgardmvc_core_node();
         $node->get_by_id($node_id);
         $nodes[$node_id] = midgardmvc_core_providers_hierarchy_node_midgard2::get_instance($node);
     }
     return $nodes[$node_id];
 }
Ejemplo n.º 2
0
 public function get_node_by_component($component)
 {
     if (isset(midgardmvc_core_providers_hierarchy_node_midgard2::$nodes_by_component[$component])) {
         return midgardmvc_core_providers_hierarchy_node_midgard2::$nodes_by_component[$component];
     }
     $qb = new midgard_query_builder('midgardmvc_core_node');
     $qb->add_constraint('component', '=', $component);
     $qb->begin_group('OR');
     $qb->add_constraint('up', 'INTREE', self::$root_node_id);
     $qb->add_constraint('id', '=', self::$root_node_id);
     $qb->end_group();
     $qb->set_limit(1);
     $nodes = $qb->execute();
     if (count($nodes) == 0) {
         return null;
     }
     return midgardmvc_core_providers_hierarchy_node_midgard2::get_instance($nodes[0]);
 }