/** * Render shaare contents through Markdown parser. * 1. Remove HTML generated by Shaarli core. * 2. Generate markdown descriptions. * 3. Wrap description in 'markdown' CSS class. * * @param string $description input description text. * * @return string HTML processed $description. */ function process_markdown($description) { $parsedown = new Parsedown(); $processedDescription = $description; $processedDescription = reverse_text2clickable($processedDescription); $processedDescription = reverse_nl2br($processedDescription); $processedDescription = reverse_space2nbsp($processedDescription); $processedDescription = reset_quote_tags($processedDescription); $processedDescription = $parsedown->setMarkupEscaped(false)->setBreaksEnabled(true)->text($processedDescription); $processedDescription = '<div class="markdown">' . $processedDescription . '</div>'; return $processedDescription; }
/** * Render shaare contents through Markdown parser. * 1. Remove HTML generated by Shaarli core. * 2. Reverse the escape function. * 3. Generate markdown descriptions. * 4. Sanitize sensible HTML tags for security. * 5. Wrap description in 'markdown' CSS class. * * @param string $description input description text. * * @return string HTML processed $description. */ function process_markdown($description) { $parsedown = new Parsedown(); $processedDescription = $description; $processedDescription = reverse_text2clickable($processedDescription); $processedDescription = reverse_nl2br($processedDescription); $processedDescription = reverse_space2nbsp($processedDescription); $processedDescription = unescape($processedDescription); $processedDescription = $parsedown->setMarkupEscaped(false)->setBreaksEnabled(true)->text($processedDescription); $processedDescription = sanitize_html($processedDescription); if (!empty($processedDescription)) { $processedDescription = '<div class="markdown">' . $processedDescription . '</div>'; } return $processedDescription; }