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); }
/** * 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; }