shaarliFormatLink(parent::inlineLink($excerpt), true); } protected function inlineUrl($excerpt) { return $this->shaarliFormatLink(parent::inlineUrl($excerpt), false); } protected function shaarliFormatLink(?array $link, bool $fullWrap): ?array { if ( is_array($link) && strpos($link['element']['attributes']['href'], Formatter::SEARCH_HIGHLIGHT_OPEN) !== false && strpos($link['element']['attributes']['href'], Formatter::SEARCH_HIGHLIGHT_CLOSE) !== false ) { $link['element']['attributes']['href'] = $this->shaarliRemoveSearchTokens( $link['element']['attributes']['href'] ); if ($fullWrap) { $link['element']['text'] = Formatter::SEARCH_HIGHLIGHT_OPEN . $link['element']['text'] . Formatter::SEARCH_HIGHLIGHT_CLOSE ; } } return $link; } protected function shaarliRemoveSearchTokens(string $entry): string { $entry = str_replace(Formatter::SEARCH_HIGHLIGHT_OPEN, '', $entry); $entry = str_replace(Formatter::SEARCH_HIGHLIGHT_CLOSE, '', $entry); return $entry; } }