*/
( function ( mw, $ ) {
+ var msg = 'Use of mediawiki.api callback params is deprecated. Use the Promise instead.';
$.extend( mw.Api.prototype, {
/**
* Determine if a category exists.
apiPromise;
// Backwards compatibility (< MW 1.20)
- d.done( ok ).fail( err );
+ if ( ok || err ) {
+ mw.track( 'mw.deprecate', 'api.cbParam' );
+ mw.log.warn( msg );
+ d.done( ok ).fail( err );
+ }
apiPromise = this.get( {
prop: 'categoryinfo',
apiPromise;
// Backwards compatibility (< MW 1.20)
- d.done( ok ).fail( err );
+ if ( ok || err ) {
+ mw.track( 'mw.deprecate', 'api.cbParam' );
+ mw.log.warn( msg );
+ d.done( ok ).fail( err );
+ }
// Fetch with allpages to only get categories that have a corresponding description page.
apiPromise = this.get( {
apiPromise;
// Backwards compatibility (< MW 1.20)
- d.done( ok ).fail( err );
+ if ( ok || err ) {
+ mw.track( 'mw.deprecate', 'api.cbParam' );
+ mw.log.warn( msg );
+ d.done( ok ).fail( err );
+ }
apiPromise = this.get( {
prop: 'categories',
*/
( function ( mw, $ ) {
+ var msg = 'Use of mediawiki.api callback params is deprecated. Use the Promise instead.';
$.extend( mw.Api.prototype, {
/**
* @return {jQuery.Promise} See #post
*/
postWithEditToken: function ( params, ok, err ) {
+ if ( ok || err ) {
+ mw.track( 'mw.deprecate', 'api.cbParam' );
+ mw.log.warn( msg );
+ }
return this.postWithToken( 'edit', params ).done( ok ).fail( err );
},
/**
* Api helper to grab an edit token.
*
- * @param {Function} [ok] Success callback
- * @param {Function} [err] Error callback
+ * @param {Function} [ok] Success callback (deprecated)
+ * @param {Function} [err] Error callback (deprecated)
* @return {jQuery.Promise}
* @return {Function} return.done
* @return {string} return.done.token Received token.
*/
getEditToken: function ( ok, err ) {
+ if ( ok || err ) {
+ mw.track( 'mw.deprecate', 'api.cbParam' );
+ mw.log.warn( msg );
+ }
return this.getToken( 'edit' ).done( ok ).fail( err );
},
* @param {mw.Title|String} title Target page
* @param {string} header
* @param {string} message wikitext message
- * @param {Function} [ok] Success handler
- * @param {Function} [err] Error handler
+ * @param {Function} [ok] Success handler (deprecated)
+ * @param {Function} [err] Error handler (deprecated)
* @return {jQuery.Promise}
*/
newSection: function ( title, header, message, ok, err ) {
+ if ( ok || err ) {
+ mw.track( 'mw.deprecate', 'api.cbParam' );
+ mw.log.warn( msg );
+ }
return this.postWithEditToken( {
action: 'edit',
section: 'new',
title: title.toString(),
summary: header,
text: message
- }, ok, err );
+ } ).done( ok ).fail( err );
}
} );
ajax: function ( parameters, ajaxOptions ) {
var token,
apiDeferred = $.Deferred(),
+ msg = 'Use of mediawiki.api callback params is deprecated. Use the Promise instead.',
xhr;
parameters = $.extend( {}, this.defaults.parameters, parameters );
// Backwards compatibility: Before MediaWiki 1.20,
// callbacks were done with the 'ok' and 'err' property in ajaxOptions.
if ( ajaxOptions.ok ) {
+ mw.track( 'mw.deprecate', 'api.cbParam' );
+ mw.log.warn( msg );
apiDeferred.done( ajaxOptions.ok );
delete ajaxOptions.ok;
}
if ( ajaxOptions.err ) {
+ mw.track( 'mw.deprecate', 'api.cbParam' );
+ mw.log.warn( msg );
apiDeferred.fail( ajaxOptions.err );
delete ajaxOptions.err;
}
apiPromise;
// Backwards compatibility (< MW 1.20)
- d.done( ok ).fail( err );
+ if ( ok || err ) {
+ mw.track( 'mw.deprecate', 'api.cbParam' );
+ mw.log.warn( 'Use of mediawiki.api callback params is deprecated. Use the Promise instead.' );
+ d.done( ok ).fail( err );
+ }
apiPromise = this.get( {
action: 'parse',
* @return {string} return.done.watch.message Parsed HTML of the confirmational interface message
*/
function doWatchInternal( page, ok, err, addParams ) {
- var params,
- d = $.Deferred(),
- apiPromise;
+ // XXX: Parameter addParams is undocumented because we inherit this
+ // documentation in the public method..
+ var params, apiPromise,
+ d = $.Deferred();
// Backwards compatibility (< MW 1.20)
- d.done( ok ).fail( err );
+ if ( ok || err ) {
+ mw.track( 'mw.deprecate', 'api.cbParam' );
+ mw.log.warn( 'Use of mediawiki.api callback params is deprecated. Use the Promise instead.' );
+ d.done( ok ).fail( err );
+ }
params = {
action: 'watch',