public function getDimensions()
 {
     if (empty($this->dimensions)) {
         $dimension_number = 0;
         foreach ($this->fields as $idfield => $fieldinfo) {
             if (isset($fieldinfo['mapClass'])) {
                 $classname = $fieldinfo['mapClass'];
                 $mapsubobj = new $classname();
                 $sel = new SQLSelect($mapsubobj->table);
                 $sel->fetchas = "row";
                 $sel->selectfields["id"] = $mapsubobj->idfield;
                 if (!empty($mapsubobj->extra_selectfields) && isset($mapsubobj->extra_selectfields[$mapsubobj->titlefield])) {
                     $sel->selectfields["title"] = $mapsubobj->extra_selectfields[$mapsubobj->titlefield];
                 } else {
                     $sel->selectfields["title"] = $mapsubobj->titlefield;
                 }
                 $this->idfields[$dimension_number] = $idfield;
                 $sel->build_query();
                 $this->dimensions[$dimension_number] = $sel->execute();
                 $dimension_number++;
             }
         }
     }
     return $this->dimensions;
 }
Ejemplo n.º 2
0
 public function getRecord($wherefields = array())
 {
     global $db;
     $res = array();
     if (empty($wherefields) && !empty($this->idfields)) {
         $this->idfields = array_change_key_case($this->idfields);
         foreach ($this->idfields as $key) {
             if (isset($_REQUEST[$key])) {
                 $wherefields[$key] = $_REQUEST[$key];
             }
         }
     }
     if (!empty($wherefields)) {
         $sql = new SQLSelect($this->table);
         $sql->international = $this->international;
         $sql->wherearray = $wherefields;
         $sql->build_query();
         $res = $db->get($sql->query, 'row');
     }
     if ($res != NULL && !empty($res) && isset($res[0])) {
         return $res[0];
     }
     return array();
 }