static function reloadExposedObject(GBExposedContent $c) { $conf = gb_filter_post_reload_content_get_conf($c); $conf['auto_linebreaks'] = false; $conf['auto_paragraphs'] = false; # prefix for footnotes $parser->fn_id_prefix = $c->domID(); # have body? if ($c->body) { # create excerpt for GBPosts if not already set if (!$c->excerpt && preg_match('/<!--[ \\s\\t\\r\\n]*more[ \\s\\t\\r\\n]*--(>)/i', $c->body, $m, PREG_OFFSET_CAPTURE)) { $c->excerpt = substr($c->body, 0, $m[0][1]); $c->body = $c->excerpt . '<div id="read-more" class="post-more-anchor"></div>' . substr($c->body, $m[1][1] + 1); } $c->body = gb_cfilter::apply('body.md', $c->body); $c->body = gb_cfilter::apply('body.html', $c->body, $conf); } if ($c->excerpt) { $c->excerpt = trim($c->excerpt); $c->excerpt = gb_cfilter::apply('body.md', $c->excerpt); # assure wrapping <p> if (!preg_match('{^$|^<(p|ul|ol|dl|pre|blockquote)>}i', $c->excerpt)) { $c->excerpt = preg_replace('{\\n{2,}}', "</p>\n\n<p>", '<p>' . $c->excerpt . '</p>'); } $c->excerpt = gb_cfilter::apply('body.html', $c->excerpt, $conf); } return $c; }
/** Converts LF to <br/>LF and extracts excerpt for GBPost objects */ function gb_filter_post_reload_content_html(GBExposedContent $c) { $conf = gb_filter_post_reload_content_get_conf($c); # have body? if ($c->body) { # create excerpt for GBPosts if not already set if (!$c->excerpt && preg_match('/<!--[ \\s\\t\\r\\n]*more[ \\s\\t\\r\\n]*--(>)/i', $c->body, $m, PREG_OFFSET_CAPTURE)) { $c->excerpt = substr($c->body, 0, $m[0][1]); $c->body = $c->excerpt . '<div id="read-more" class="post-more-anchor"></div>' . substr($c->body, $m[1][1] + 1); } $c->body = gb_cfilter::apply('body.html', $c->body, $conf); } if ($c->excerpt) { $c->excerpt = gb_cfilter::apply('body.html', $c->excerpt, $conf); } return $c; }