Falcon_Reply::parse_body PHP Method

parse_body() public method

public parse_body ( )
    public function parse_body()
    {
        // Parse the body and remove signatures, and reformat
        $parts = array();
        $fragments = EmailReplyParser::read($this->body);
        foreach ($fragments as $fragment) {
            // We don't care about hidden parts (signatures, eg)
            if ($fragment->isHidden()) {
                continue;
            } elseif ($fragment->isQuoted()) {
                // Remove leading quote symbols
                $quoted = preg_replace('/^> */m', '', $fragment->getContent());
                // Reparse to ensure that we strip signatures from here too
                $subfragments = EmailReplyParser::read($quoted);
                $subparts = array();
                foreach ($subfragments as $subfrag) {
                    if ($subfrag->isHidden()) {
                        continue;
                    }
                    $subparts[] = $subfrag->getContent();
                }
                $parts[] = '<blockquote>' . implode("\n", $subparts) . '</blockquote>';
            } else {
                $parts[] = $fragment->getContent();
            }
        }
        $content = implode("\n", $parts);
        return $content;
    }

Usage Example

Esempio n. 1
0
 public function handle_insert($value, Falcon_Reply $reply)
 {
     if (!empty($value)) {
         return $value;
     }
     $post = get_post($reply->post);
     if (!$this->is_allowed_type($post->post_type)) {
         return $value;
     }
     $user = $reply->get_user();
     if ($reply->is_valid()) {
         Falcon::notify_invalid($user, bbp_get_topic_title($reply->post));
         return false;
     }
     $new_reply = array('post_parent' => $reply->post, 'post_author' => $user->ID, 'post_content' => $reply->parse_body(), 'post_title' => $reply->subject);
     $meta = array('author_ip' => '127.0.0.1', 'forum_id' => bbp_get_topic_forum_id($reply->post), 'topic_id' => $reply->post);
     $reply_id = bbp_insert_reply($new_reply, $meta);
     do_action('bbp_new_reply', $reply_id, $meta['topic_id'], $meta['forum_id'], false, $new_reply['post_author']);
     // bbPress removes the user's subscription because bbp_update_reply() is hooked to 'bbp_new_reply' and it checks for $_POST['bbp_topic_subscription']
     bbp_add_user_subscription($new_reply['post_author'], $meta['topic_id']);
     return $reply_id;
 }
All Usage Examples Of Falcon_Reply::parse_body