Ejemplo n.º 1
0
 public function getForeignItems(Saveable $class, $relation_details)
 {
     if (!$class->getB2DBID()) {
         return array();
     }
     list($criteria, $item_class, $item_column) = $this->generateForeignItemsCriteria($class, $relation_details);
     if (!$item_class) {
         $items = array();
         $resultset = $this->doSelect($criteria);
         if ($resultset) {
             $column = "{$this->getB2DBName()}." . $relation_details['column'];
             while ($row = $resultset->getNextRow()) {
                 $items[] = $row->get($column);
             }
         }
         return $items;
     } elseif (!$relation_details['manytomany']) {
         return $this->select($criteria);
     } else {
         $resultset = $this->doSelect($criteria);
         return $this->_populateFromResultset($resultset, $item_class, $item_column, $item_column);
     }
 }