diff --git a/app/Elements/AbstractElement.php b/app/Elements/AbstractElement.php
index 8af8b4368a1..09668a2066c 100644
--- a/app/Elements/AbstractElement.php
+++ b/app/Elements/AbstractElement.php
@@ -23,23 +23,12 @@
use Fisharebest\Webtrees\Html;
use Fisharebest\Webtrees\I18N;
use Fisharebest\Webtrees\Tree;
-use League\CommonMark\Block\Element\Document;
-use League\CommonMark\Block\Element\Paragraph;
-use League\CommonMark\Block\Renderer\DocumentRenderer;
-use League\CommonMark\Block\Renderer\ParagraphRenderer;
-use League\CommonMark\CommonMarkConverter;
-use League\CommonMark\Environment;
-use League\CommonMark\Inline\Element\Link;
-use League\CommonMark\Inline\Element\Text;
-use League\CommonMark\Inline\Parser\AutolinkParser;
-use League\CommonMark\Inline\Renderer\LinkRenderer;
-use League\CommonMark\Inline\Renderer\TextRenderer;
use function array_key_exists;
use function array_map;
use function e;
use function is_numeric;
-use function preg_replace;
+use function preg_match;
use function strpos;
use function trim;
use function view;
@@ -271,21 +260,13 @@ public function values(): array
*/
protected function valueAutoLink(string $value): string
{
- // Convert URLs into markdown auto-links.
- $value = preg_replace(self::REGEX_URL, '<$0>', $value);
-
- // Create a minimal commonmark processor - just add support for autolinks.
- $environment = new Environment();
- $environment
- ->addBlockRenderer(Document::class, new DocumentRenderer())
- ->addBlockRenderer(Paragraph::class, new ParagraphRenderer())
- ->addInlineRenderer(Text::class, new TextRenderer())
- ->addInlineRenderer(Link::class, new LinkRenderer())
- ->addInlineParser(new AutolinkParser());
+ $canonical = $this->canonical($value);
- $converter = new CommonMarkConverter(['html_input' => Environment::HTML_INPUT_ESCAPE], $environment);
+ if (preg_match(static::REGEX_URL, $canonical)) {
+ return '' . e($canonical) . '';
+ }
- return $converter->convertToHtml($value);
+ return e($canonical);
}
/**
diff --git a/app/Elements/MultimediaFileReference.php b/app/Elements/MultimediaFileReference.php
index 2cc3cc3f597..11c4a30bc58 100644
--- a/app/Elements/MultimediaFileReference.php
+++ b/app/Elements/MultimediaFileReference.php
@@ -59,12 +59,6 @@ public function canonical(string $value): string
*/
public function value(string $value, Tree $tree): string
{
- $canonical = $this->canonical($value);
-
- if (preg_match(static::REGEX_URL, $canonical)) {
- return '' . e($canonical) . '';
- }
-
- return parent::value($value, $tree);
+ return $this->valueAutoLink($value);
}
}
diff --git a/app/Elements/SourceCallNumber.php b/app/Elements/SourceCallNumber.php
index 3d787cedf09..4d3d74a9a6b 100644
--- a/app/Elements/SourceCallNumber.php
+++ b/app/Elements/SourceCallNumber.php
@@ -39,8 +39,6 @@ class SourceCallNumber extends AbstractElement
*/
public function value(string $value, Tree $tree): string
{
- $canonical = $this->canonical($value);
-
- return $this->valueAutoLink($canonical);
+ return $this->valueAutoLink($value);
}
}
diff --git a/app/Elements/SourcePublicationFacts.php b/app/Elements/SourcePublicationFacts.php
index e90c38d319d..74a435129a5 100644
--- a/app/Elements/SourcePublicationFacts.php
+++ b/app/Elements/SourcePublicationFacts.php
@@ -41,8 +41,6 @@ class SourcePublicationFacts extends AbstractElement
*/
public function value(string $value, Tree $tree): string
{
- $canonical = $this->canonical($value);
-
- return $this->valueAutoLink($canonical);
+ return $this->valueAutoLink($value);
}
}
diff --git a/app/Elements/WhereWithinSource.php b/app/Elements/WhereWithinSource.php
index 1ad69c379aa..d29726177ae 100644
--- a/app/Elements/WhereWithinSource.php
+++ b/app/Elements/WhereWithinSource.php
@@ -52,4 +52,17 @@ public function edit(string $id, string $name, string $value, Tree $tree): strin
{
return '';
}
+
+ /**
+ * Display the value of this type of element.
+ *
+ * @param string $value
+ * @param Tree $tree
+ *
+ * @return string
+ */
+ public function value(string $value, Tree $tree): string
+ {
+ return $this->valueAutoLink($value);
+ }
}
diff --git a/phpstan-baseline.neon b/phpstan-baseline.neon
index 71cff983906..9282ef36406 100644
--- a/phpstan-baseline.neon
+++ b/phpstan-baseline.neon
@@ -15,11 +15,6 @@ parameters:
count: 1
path: app/Date/AbstractCalendarDate.php
- -
- message: "#^Parameter \\#1 \\$commonMark of method League\\\\CommonMark\\\\Converter\\:\\:convertToHtml\\(\\) expects string, string\\|null given\\.$#"
- count: 1
- path: app/Elements/AbstractElement.php
-
-
message: "#^Method Fisharebest\\\\Webtrees\\\\Elements\\\\DateValue\\:\\:escape\\(\\) should return string but returns string\\|null\\.$#"
count: 1