[MediaWiki-commits] [Gerrit] mediawiki...parsoid[master]: API improvements needed for ProofreadPage extension.
jenkins-bot has submitted this change and it was merged. ( https://gerrit.wikimedia.org/r/331817 ) Change subject: API improvements needed for ProofreadPage extension. .. API improvements needed for ProofreadPage extension. ProofreadPage wants to fetch its content w/ a specific non-wikitext contentformat. Change-Id: I3e039e36fd8202b5a068a7dcb2303e99bada8ad6 --- M lib/config/extapi.js M lib/mw/ApiRequest.js 2 files changed, 11 insertions(+), 3 deletions(-) Approvals: C. Scott Ananian: Looks good to me, approved jenkins-bot: Verified Arlolra: Looks good to me, approved diff --git a/lib/config/extapi.js b/lib/config/extapi.js index 193e30e..5b01687 100644 --- a/lib/config/extapi.js +++ b/lib/config/extapi.js @@ -28,6 +28,7 @@ // and explicitly mark the exported functions as "stable", ie // we need to bump Parsoid's major version if the exported // functions are changed. + TemplateRequest: require('../mw/ApiRequest.js').TemplateRequest, Util: require('../utils/Util.js').Util, DOMUtils: require('../utils/DOMUtils.js').DOMUtils, JSUtils: require('../utils/jsutils.js').JSUtils, diff --git a/lib/mw/ApiRequest.js b/lib/mw/ApiRequest.js index 2e4b440..c2f81fe 100644 --- a/lib/mw/ApiRequest.js +++ b/lib/mw/ApiRequest.js @@ -488,12 +488,13 @@ * @param {string} title The template (or really, page) we should fetch from the wiki * @param {string} oldid The revision ID you want to get, defaults to "latest revision" */ -function TemplateRequest(env, title, oldid) { +function TemplateRequest(env, title, oldid, opts) { ApiRequest.call(this, env, title); // IMPORTANT: Set queueKey to the 'title' // since TemplateHandler uses it for recording listeners this.queueKey = title; this.reqType = "Template Fetch"; + opts = opts || {}; // optional extra arguments var apiargs = { format: 'json', @@ -502,6 +503,12 @@ rawcontinue: 1, rvprop: PARSOID_RVPROP, }; + + // Allow request to give a specific contentformat + // (otherwise wikitext is the default) + if (opts.contentformat) { + apiargs.rvcontentformat = opts.contentformat; + } if (oldid) { this.oldid = oldid; @@ -613,8 +620,8 @@ TemplateRequest.promise = promiseFor(TemplateRequest); // Function which returns a promise to set page src info. -TemplateRequest.setPageSrcInfo = function(env, target, oldid) { - return TemplateRequest.promise(env, target, oldid).then(function(src) { +TemplateRequest.setPageSrcInfo = function(env, target, oldid, opts) { + return TemplateRequest.promise(env, target, oldid, opts).then(function(src) { env.setPageSrcInfo(src); }); }; -- To view, visit https://gerrit.wikimedia.org/r/331817 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: merged Gerrit-Change-Id: I3e039e36fd8202b5a068a7dcb2303e99bada8ad6 Gerrit-PatchSet: 4 Gerrit-Project: mediawiki/services/parsoid Gerrit-Branch: master Gerrit-Owner: C. Scott AnanianGerrit-Reviewer: Arlolra Gerrit-Reviewer: C. Scott Ananian Gerrit-Reviewer: Subramanya Sastry Gerrit-Reviewer: jenkins-bot <> ___ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits
[MediaWiki-commits] [Gerrit] mediawiki...parsoid[master]: API improvements needed for ProofreadPage extension.
C. Scott Ananian has uploaded a new change for review. ( https://gerrit.wikimedia.org/r/331817 ) Change subject: API improvements needed for ProofreadPage extension. .. API improvements needed for ProofreadPage extension. ProofreadPage wants to fetch its content w/ a specific non-wikitext contentformat. Change-Id: I3e039e36fd8202b5a068a7dcb2303e99bada8ad6 --- M lib/config/extapi.js M lib/mw/ApiRequest.js 2 files changed, 11 insertions(+), 3 deletions(-) git pull ssh://gerrit.wikimedia.org:29418/mediawiki/services/parsoid refs/changes/17/331817/1 diff --git a/lib/config/extapi.js b/lib/config/extapi.js index 193e30e..5b01687 100644 --- a/lib/config/extapi.js +++ b/lib/config/extapi.js @@ -28,6 +28,7 @@ // and explicitly mark the exported functions as "stable", ie // we need to bump Parsoid's major version if the exported // functions are changed. + TemplateRequest: require('../mw/ApiRequest.js').TemplateRequest, Util: require('../utils/Util.js').Util, DOMUtils: require('../utils/DOMUtils.js').DOMUtils, JSUtils: require('../utils/jsutils.js').JSUtils, diff --git a/lib/mw/ApiRequest.js b/lib/mw/ApiRequest.js index 7421c17..dd2ef3f 100644 --- a/lib/mw/ApiRequest.js +++ b/lib/mw/ApiRequest.js @@ -488,12 +488,13 @@ * @param {string} title The template (or really, page) we should fetch from the wiki * @param {string} oldid The revision ID you want to get, defaults to "latest revision" */ -function TemplateRequest(env, title, oldid) { +function TemplateRequest(env, title, oldid, opts) { ApiRequest.call(this, env, title); // IMPORTANT: Set queueKey to the 'title' // since TemplateHandler uses it for recording listeners this.queueKey = title; this.reqType = "Template Fetch"; + opts = opts || {}; // optional extra arguments var apiargs = { format: 'json', @@ -502,6 +503,12 @@ rawcontinue: 1, rvprop: PARSOID_RVPROP, }; + + // Allow request to give a specific contentformat + // (otherwise wikitext is the default) + if (opts.contentformat) { + apiargs.rvcontentformat = opts.contentformat; + } if (oldid) { this.oldid = oldid; @@ -613,8 +620,8 @@ TemplateRequest.promise = promiseFor(TemplateRequest); // Function which returns a promise to set page src info. -TemplateRequest.setPageSrcInfo = function(env, target, oldid) { - return TemplateRequest.promise(env, target, oldid).then(function(src) { +TemplateRequest.setPageSrcInfo = function(env, target, oldid, opts) { + return TemplateRequest.promise(env, target, oldid, opts).then(function(src) { env.setPageSrcInfo(src); }); }; -- To view, visit https://gerrit.wikimedia.org/r/331817 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I3e039e36fd8202b5a068a7dcb2303e99bada8ad6 Gerrit-PatchSet: 1 Gerrit-Project: mediawiki/services/parsoid Gerrit-Branch: master Gerrit-Owner: C. Scott Ananian___ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits