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.
*/
public static function MarkdownToHtml(?string $text): string{
public static function MarkdownToHtml(?string $text, bool $inline = false): string{
if(!isset(Formatter::$_MarkdownParser)){
Formatter::$_MarkdownParser = new Parsedown();
Formatter::$_MarkdownParser->setSafeMode(true);
}
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);
if($inline){
return Formatter::$_MarkdownParser->line($text);
}else{
return Formatter::$_MarkdownParser->text($text);
}
return Formatter::$_MarkdownParser->line($text);
}
/**

View file

@ -161,12 +161,12 @@ catch(Exceptions\InvalidPermissionsException){
<? if($artwork->Exception !== null){ ?>
<h3>Public domain status exception reason</h3>
<?= Formatter::MarkdownToHtml($artwork->Exception) ?>
<?= Formatter::MarkdownToHtml($artwork->Exception, false) ?>
<? } ?>
<? if($artwork->Notes !== null){ ?>
<h2>Special notes</h2>
<?= Formatter::MarkdownToHtml($artwork->Notes) ?>
<?= Formatter::MarkdownToHtml($artwork->Notes, false) ?>
<? } ?>
<? 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 != ''){ ?>. <? } ?>
<?= $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){ ?>
<p>Ebook ID: <?= $ebook->EbookId ?>, <a href="<?= $ebook->Url ?>">View placeholder</a></p>
<? } ?>