Added a page_links_updated column for job de-duplication
[lhc/web/wiklou.git] / resources / mediawiki.api / mediawiki.api.parse.js
1 /**
2 * @class mw.Api.plugin.parse
3 */
4 ( function ( mw, $ ) {
5
6 $.extend( mw.Api.prototype, {
7 /**
8 * Convinience method for 'action=parse'.
9 *
10 * @param {string} wikitext
11 * @param {Function} [ok] Success callback (deprecated)
12 * @param {Function} [err] Error callback (deprecated)
13 * @return {jQuery.Promise}
14 * @return {Function} return.done
15 * @return {string} return.done.data Parsed HTML of `wikitext`.
16 */
17 parse: function ( wikitext, ok, err ) {
18 var d = $.Deferred(),
19 apiPromise;
20
21 // Backwards compatibility (< MW 1.20)
22 d.done( ok ).fail( err );
23
24 apiPromise = this.get( {
25 action: 'parse',
26 contentmodel: 'wikitext',
27 text: wikitext
28 } )
29 .done( function ( data ) {
30 if ( data.parse && data.parse.text && data.parse.text['*'] ) {
31 d.resolve( data.parse.text['*'] );
32 }
33 } )
34 .fail( d.reject );
35
36 return d.promise( { abort: apiPromise.abort } );
37 }
38 } );
39
40 /**
41 * @class mw.Api
42 * @mixins mw.Api.plugin.parse
43 */
44
45 }( mediaWiki, jQuery ) );