Add parameter to MarkdownToHtml for inline HTML

This commit is contained in:
Mike Colagrosso 2024-12-28 02:41:27 -07:00 committed by Alex Cabal
parent 7bd08087dc
commit e25993b208
3 changed files with 8 additions and 16 deletions

View file

@ -99,25 +99,17 @@ class Formatter{
/** /**
* Convert a string of Markdown into an HTML fragment. * Convert a string of Markdown into an HTML fragment.
*/ */
public static function MarkdownToHtml(?string $text): string{ public static function MarkdownToHtml(?string $text, bool $inline = false): string{
if(!isset(Formatter::$_MarkdownParser)){ if(!isset(Formatter::$_MarkdownParser)){
Formatter::$_MarkdownParser = new Parsedown(); Formatter::$_MarkdownParser = new Parsedown();
Formatter::$_MarkdownParser->setSafeMode(true); Formatter::$_MarkdownParser->setSafeMode(true);
} }
return Formatter::$_MarkdownParser->text($text); if($inline){
} return Formatter::$_MarkdownParser->line($text);
}else{
/** return Formatter::$_MarkdownParser->text($text);
* Convert a string of Markdown into inline HTML.
*/
public static function MarkdownToInlineHtml(?string $text): string{
if(!isset(Formatter::$_MarkdownParser)){
Formatter::$_MarkdownParser = new Parsedown();
Formatter::$_MarkdownParser->setSafeMode(true);
} }
return Formatter::$_MarkdownParser->line($text);
} }
/** /**

View file

@ -161,12 +161,12 @@ catch(Exceptions\InvalidPermissionsException){
<? if($artwork->Exception !== null){ ?> <? if($artwork->Exception !== null){ ?>
<h3>Public domain status exception reason</h3> <h3>Public domain status exception reason</h3>
<?= Formatter::MarkdownToHtml($artwork->Exception) ?> <?= Formatter::MarkdownToHtml($artwork->Exception, false) ?>
<? } ?> <? } ?>
<? if($artwork->Notes !== null){ ?> <? if($artwork->Notes !== null){ ?>
<h2>Special notes</h2> <h2>Special notes</h2>
<?= Formatter::MarkdownToHtml($artwork->Notes) ?> <?= Formatter::MarkdownToHtml($artwork->Notes, false) ?>
<? } ?> <? } ?>
<? if($artwork->CanBeEditedBy(Session::$User)){ ?> <? if($artwork->CanBeEditedBy(Session::$User)){ ?>

View file

@ -18,7 +18,7 @@ function WantedEbooks(Enums\EbookPlaceholderDifficulty $difficulty, ?bool $showP
<? } ?> <? } ?>
by <?= Formatter::EscapeHtml($ebook->AuthorsString) ?><? if($ebook->ContributorsHtml != ''){ ?>. <? } ?> by <?= Formatter::EscapeHtml($ebook->AuthorsString) ?><? if($ebook->ContributorsHtml != ''){ ?>. <? } ?>
<?= $ebook->ContributorsHtml ?> <?= $ebook->ContributorsHtml ?>
<? if(isset($ebook->EbookPlaceholder->Notes)){ ?>(<?= Formatter::MarkdownToInlineHtml($ebook->EbookPlaceholder->Notes) ?>)<? } ?> <? if(isset($ebook->EbookPlaceholder->Notes)){ ?>(<?= Formatter::MarkdownToHtml($ebook->EbookPlaceholder->Notes, true) ?>)<? } ?>
<? if($showPlaceholderMetadata){ ?> <? if($showPlaceholderMetadata){ ?>
<p>Ebook ID: <?= $ebook->EbookId ?>, <a href="<?= $ebook->Url ?>">View placeholder</a></p> <p>Ebook ID: <?= $ebook->EbookId ?>, <a href="<?= $ebook->Url ?>">View placeholder</a></p>
<? } ?> <? } ?>