/**
  * @access public
  */
 function getMediaById($id)
 {
     $id = (int) $id;
     if ($id == 0) {
         return null;
     }
     $query = 'SELECT ' . OOMedia::_getTableName() . '.*, ' . OOMediaCategory::_getTableName() . '.name catname  FROM ' . OOMedia::_getTableJoin() . ' WHERE file_id = ' . $id;
     $sql = new rex_sql();
     //    $sql->debugsql = true;
     $result = $sql->getArray($query);
     if (count($result) == 0) {
         trigger_error('No OOMediaCategory found with id "' . $id . '"', E_USER_NOTICE);
         return null;
     }
     $result = $result[0];
     $aliasMap = array('file_id' => 'id', 're_file_id' => 'parent_id', 'category_id' => 'cat_id', 'catname' => 'cat_name', 'filename' => 'name', 'originalname' => 'orgname', 'filetype' => 'type', 'filesize' => 'size');
     $media = new OOMedia();
     foreach ($sql->getFieldNames() as $fieldName) {
         if (in_array($fieldName, array_keys($aliasMap))) {
             $var_name = '_' . $aliasMap[$fieldName];
         } else {
             $var_name = '_' . $fieldName;
         }
         $media->{$var_name} = $result[$fieldName];
     }
     return $media;
 }
 /**
  * @access protected
  */
 function OOMedia($id = null)
 {
     if ($id === null) {
         return;
     }
     $query = 'SELECT ' . $this->_getTableName() . '.*,' . OOMediaCategory::_getTableName() . '.name catname  FROM ' . OOMedia::_getTableJoin() . ' WHERE file_id = ' . $id;
     $sql = new sql();
     //        $sql->debugsql = true;
     $result = $sql->get_array($query);
     if (count($result) == 0) {
         trigger_error('No OOMediaCategory found with id "' . $id . '"', E_USER_ERROR);
     }
     $result = $result[0];
     //        var_dump( $result);
     $this->_id = $result['file_id'];
     $this->_parent_id = $result['re_file_id'];
     $this->_cat_id = $result['category_id'];
     $this->_cat_name = $result['catname'];
     $this->_name = $result['filename'];
     $this->_orgname = $result['originalname'];
     $this->_type = $result['filetype'];
     $this->_size = $result['filesize'];
     $this->_width = $result['width'];
     $this->_height = $result['height'];
     $this->_title = $result['title'];
     $this->_description = $result['description'];
     $this->_copyright = $result['copyright'];
     $this->_updatedate = $result['updatedate'];
     $this->_updateuser = $result['updateuser'];
     $this->_createdate = $result['createdate'];
     $this->_createuser = $result['createuser'];
 }
 /**
  * @access public
  */
 function &getMediaById($id)
 {
     $id = (int) $id;
     if (!is_numeric($id)) {
         return null;
     }
     $query = 'SELECT ' . OOMedia::_getTableName() . '.*, ' . OOMediaCategory::_getTableName() . '.name catname  FROM ' . OOMedia::_getTableJoin() . ' WHERE file_id = ' . $id;
     $sql = new sql();
     //        $sql->debugsql = true;
     $result = $sql->get_array($query);
     if (count($result) == 0) {
         //trigger_error('No OOMediaCategory found with id "'.$id.'"', E_USER_NOTICE);
         return null;
     }
     $result = $result[0];
     //        var_dump( $result);
     $media = new OOMedia();
     $media->_id = $result['file_id'];
     $media->_parent_id = $result['re_file_id'];
     $media->_cat_id = $result['category_id'];
     $media->_cat_name = $result['catname'];
     $media->_name = $result['filename'];
     $media->_orgname = $result['originalname'];
     $media->_type = $result['filetype'];
     $media->_size = $result['filesize'];
     $media->_width = $result['width'];
     $media->_height = $result['height'];
     $media->_title = $result['title'];
     $media->_description = $result['description'];
     $media->_copyright = $result['copyright'];
     $media->_updatedate = $result['updatedate'];
     $media->_updateuser = $result['updateuser'];
     $media->_createdate = $result['createdate'];
     $media->_createuser = $result['createuser'];
     return $media;
 }