Catrope has uploaded a new change for review.
https://gerrit.wikimedia.org/r/280374
Change subject: RevertedPresentationModel: Don't double-parse summary
......................................................................
RevertedPresentationModel: Don't double-parse summary
formatSummary() was first parsing the summary using the
summary parser, then handing off the resulting HTML to
getTextSnippet() which parsed it again with the normal parser.
Bug: T131087
Change-Id: I2724ccb7c23579b3f02dea57d4fc833079169adf
---
M includes/DiscussionParser.php
M includes/formatters/RevertedPresentationModel.php
2 files changed, 17 insertions(+), 7 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/Echo
refs/changes/74/280374/1
diff --git a/includes/DiscussionParser.php b/includes/DiscussionParser.php
index 4ce557f..e5ce8d9 100644
--- a/includes/DiscussionParser.php
+++ b/includes/DiscussionParser.php
@@ -826,8 +826,7 @@
}
/**
- * This function returns plain text snippet, it also removes html tag,
- * template from text content
+ * Parse wikitext into truncated plain text.
* @param $text string
* @param Language $lang
* @param $length int default 150
@@ -840,4 +839,19 @@
$plaintext = trim( html_entity_decode( strip_tags( $html ),
ENT_QUOTES ) );
return $lang->truncate( $plaintext, $length );
}
+
+ /**
+ * Parse an edit summary into truncated plain text.
+ * @param $text string
+ * @param Language $lang
+ * @param $length int default 150
+ * @return string
+ */
+ static function getTextSnippetFromSummary( $text, Language $lang,
$length = 150 ) {
+ // Parse wikitext with summary parser
+ $html = Linker::formatLinksInComment(
Sanitizer::escapeHtmlAllowEntities( $text ) );
+ // Remove HTML tags and decode HTML entities
+ $plaintext = trim( html_entity_decode( strip_tags( $html ),
ENT_QUOTES ) );
+ return $lang->truncate( $plaintext, $length );
+ }
}
diff --git a/includes/formatters/RevertedPresentationModel.php
b/includes/formatters/RevertedPresentationModel.php
index 3b7d85f..081477c 100644
--- a/includes/formatters/RevertedPresentationModel.php
+++ b/includes/formatters/RevertedPresentationModel.php
@@ -29,11 +29,7 @@
}
private function formatSummary( $wikitext ) {
- $html = Linker::formatLinksInComment(
Sanitizer::escapeHtmlAllowEntities( $wikitext ) );
- return EchoDiscussionParser::getTextSnippet(
- $html,
- $this->language
- );
+ return EchoDiscussionParser::getTextSnippetFromSummary(
$wikitext, $this->language );
}
public function getPrimaryLink() {
--
To view, visit https://gerrit.wikimedia.org/r/280374
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I2724ccb7c23579b3f02dea57d4fc833079169adf
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/Echo
Gerrit-Branch: master
Gerrit-Owner: Catrope <[email protected]>
Gerrit-Reviewer: jenkins-bot <>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits