You are here

function Markdown_Parser::_doBlockQuotes_callback in Markdown 5

Same name and namespace in other branches
  1. 6 markdown.php \Markdown_Parser::_doBlockQuotes_callback()

File

./markdown.php, line 1291

Class

Markdown_Parser

Code

function _doBlockQuotes_callback($matches) {
  $bq = $matches[1];

  # trim one level of quoting - trim whitespace-only lines
  $bq = preg_replace('/^[ ]*>[ ]?|^[ ]+$/m', '', $bq);
  $bq = $this
    ->runBlockGamut($bq);

  # recurse
  $bq = preg_replace('/^/m', "  ", $bq);

  # These leading spaces cause problem with <pre> content,

  # so we need to fix that:
  $bq = preg_replace_callback('{(\\s*<pre>.+?</pre>)}sx', array(
    &$this,
    '_DoBlockQuotes_callback2',
  ), $bq);
  return "\n" . $this
    ->hashBlock("<blockquote>\n{$bq}\n</blockquote>") . "\n\n";
}