function get($attach_id)
 {
     global $db;
     $sql = "SELECT * FROM " . ATTACHMENTS_TABLE . " WHERE attach_id=" . intval($attach_id);
     $result = $db->sql_query($sql);
     $attach_data = $db->sql_fetchrow($result);
     $db->sql_freeresult($result);
     if (!$attach_data) {
         //attachment does not exist, return false
         return false;
     }
     return attachment::from_array($attach_data);
 }
Пример #2
0
 /**
  * Generate post from array data. Data is assumed to be loaded from database, thus the message is decoded.
  *
  * @param array $post_data
  * @return Gn36\OoPostingApi\post
  */
 static function from_array($post_data)
 {
     global $db;
     if (!is_array($post_data)) {
         trigger_error('post::from_array - $post_data not an array');
     }
     //create object and fill in data
     $post = new post();
     $post->post_id = $post_data['post_id'];
     $post->topic_id = $post_data['topic_id'];
     $post->forum_id = $post_data['forum_id'];
     $post->poster_id = $post_data['poster_id'];
     $post->post_username = $post_data['post_username'];
     $post->poster_ip = $post_data['poster_ip'];
     $post->icon_id = $post_data['icon_id'];
     $post->post_time = $post_data['post_time'];
     $post->post_postcount = $post_data['post_postcount'];
     $post->post_visibility = $post_data['post_visibility'];
     $post->post_reported = $post_data['post_reported'];
     $post->enable_bbcode = $post_data['enable_bbcode'];
     $post->enable_smilies = $post_data['enable_smilies'];
     $post->enable_magic_url = $post_data['enable_magic_url'];
     $post->enable_sig = $post_data['enable_sig'];
     $post->post_subject = $post_data['post_subject'];
     if (isset($post_data['post_attachment'])) {
         $post->post_attachment = $post_data['post_attachment'];
     }
     $post->post_edit_time = $post_data['post_edit_time'];
     $post->post_edit_reason = $post_data['post_edit_reason'];
     $post->post_edit_user = $post_data['post_edit_user'];
     $post->post_edit_count = $post_data['post_edit_count'];
     $post->post_delete_reason = $post_data['post_delete_reason'];
     $post->post_delete_time = $post_data['post_delete_time'];
     $post->post_delete_user = $post_data['post_delete_user'];
     //parse message
     decode_message($post_data['post_text'], $post_data['bbcode_uid']);
     $post_data['post_text'] = str_replace(array(':', '.'), array(':', '.'), $post_data['post_text']);
     $post->post_text = $post_data['post_text'];
     //attachments
     if ($post->post_attachment) {
         $sql = "SELECT * FROM " . ATTACHMENTS_TABLE . " WHERE post_msg_id=" . $post->post_id;
         $result = $db->sql_query($sql);
         while ($attach_row = $db->sql_fetchrow($result)) {
             $post->attachments[] = attachment::from_array($attach_row);
         }
     }
     return $post;
 }