jenkins-bot has submitted this change and it was merged. (
https://gerrit.wikimedia.org/r/365403 )
Change subject: T169293: Colon prefixed media links still point to media
......................................................................
T169293: Colon prefixed media links still point to media
Change-Id: Icf418e8cb2a69db20e0a9ebb5e929a6598b081fb
---
M lib/wt2html/tt/LinkHandler.js
M tests/parserTests.txt
2 files changed, 16 insertions(+), 7 deletions(-)
Approvals:
Subramanya Sastry: Looks good to me, approved
jenkins-bot: Verified
diff --git a/lib/wt2html/tt/LinkHandler.js b/lib/wt2html/tt/LinkHandler.js
index 2e65428..50280ae 100644
--- a/lib/wt2html/tt/LinkHandler.js
+++ b/lib/wt2html/tt/LinkHandler.js
@@ -277,18 +277,23 @@
WikiLinkHandler.prototype.getWikiLinkHandler = function(token, target,
isRedirect) {
var title = target.title;
if (title) {
- if (!target.fromColonEscapedText && !isRedirect) {
+ if (isRedirect) {
+ return this.renderWikiLink.bind(this);
+ }
+ if (title.getNamespace().isMedia()) {
+ // Render as a media link.
+ return this.renderMedia.bind(this);
+ }
+ if (!target.fromColonEscapedText) {
if (title.getNamespace().isFile()) {
// Render as a file.
return this.renderFile.bind(this);
- } else if (title.getNamespace().isMedia()) {
- return this.renderMedia.bind(this);
- } else if (title.getNamespace().isCategory()) {
+ }
+ if (title.getNamespace().isCategory()) {
// Render as a category membership.
return this.renderCategory.bind(this);
}
}
- // Colon-escaped or non-file/category links.
// Render as plain wiki links.
return this.renderWikiLink.bind(this);
@@ -1859,7 +1864,8 @@
link.setShadowInfo('namespace',
title.getNamespace().getNormalizedText(), nsText);
link.setShadowInfo('fileName', imgHrefFileName, fileName);
- var content = token.getAttribute('mw:maybeContent') ||
token.getAttribute('href');
+ var content =
Util.tokensToString(token.getAttribute('href')).replace(/^:/, '');
+ content = token.getAttribute('mw:maybeContent') || content;
cb({ tokens: [ link, content, new EndTagTk('a') ] });
};
diff --git a/tests/parserTests.txt b/tests/parserTests.txt
index f55306f..888777a 100644
--- a/tests/parserTests.txt
+++ b/tests/parserTests.txt
@@ -17141,13 +17141,16 @@
!! wikitext
[[Media:Foobar.jpg]]
[[Media:Video.ogv]]
+[[:Media:Video.ogv]]
!! html/php
<p><a href="http://example.com/images/3/3a/Foobar.jpg" class="internal"
title="Foobar.jpg">Media:Foobar.jpg</a>
+<a href="http://example.com/images/0/00/Video.ogv" class="internal"
title="Video.ogv">Media:Video.ogv</a>
<a href="http://example.com/images/0/00/Video.ogv" class="internal"
title="Video.ogv">Media:Video.ogv</a>
</p>
!! html/parsoid
<p><a rel="mw:MediaLink" href="//example.com/images/3/3a/Foobar.jpg"
title="Foobar.jpg">Media:Foobar.jpg</a>
-<a rel="mw:MediaLink" href="//example.com/images/0/00/Video.ogv"
title="Video.ogv">Media:Video.ogv</a></p>
+<a rel="mw:MediaLink" href="//example.com/images/0/00/Video.ogv"
title="Video.ogv">Media:Video.ogv</a>
+<a rel="mw:MediaLink" href="//example.com/images/0/00/Video.ogv"
title="Video.ogv"
data-parsoid='{"a":{"namespace":"Media"},"sa":{"namespace":":Media"}}'>Media:Video.ogv</a></p>
!! end
!! test
--
To view, visit https://gerrit.wikimedia.org/r/365403
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: Icf418e8cb2a69db20e0a9ebb5e929a6598b081fb
Gerrit-PatchSet: 4
Gerrit-Project: mediawiki/services/parsoid
Gerrit-Branch: master
Gerrit-Owner: Arlolra <[email protected]>
Gerrit-Reviewer: C. Scott Ananian <[email protected]>
Gerrit-Reviewer: Subramanya Sastry <[email protected]>
Gerrit-Reviewer: jenkins-bot <>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits