Added wrapper mw.api() for API calls
authorMax Semenik <maxsem@users.mediawiki.org>
Thu, 14 Apr 2011 15:56:40 +0000 (15:56 +0000)
committerMax Semenik <maxsem@users.mediawiki.org>
Thu, 14 Apr 2011 15:56:40 +0000 (15:56 +0000)
resources/mediawiki.action/mediawiki.action.watch.ajax.js
resources/mediawiki/mediawiki.js

index c0fc405..f92f004 100644 (file)
@@ -85,15 +85,12 @@ $( document ).ready( function() {
                
                var reqData = {
                        'action': 'watch',
-                       'format': 'json',
                        'title': $link.data( 'target' )
                };
                if ( $link.data( 'action' ) == 'unwatch' ) {
                        reqData['unwatch'] = '';
                }
-               $.getJSON( mw.config.get( 'wgScriptPath' )
-                               + '/api' + mw.config.get( 'wgScriptExtension' ),
-                       reqData,
+               mw.api(reqData,
                        function( data, textStatus, xhr ) {
                                wgAjaxWatch.processResult( data, $link );
                        }
index bf81dd7..8cf2c68 100644 (file)
@@ -472,6 +472,17 @@ window.mediaWiki = new ( function( $ ) {
                return mediaWiki.message.apply( mediaWiki.message, arguments ).toString();
        };
 
+       /**
+        * Performs an API call
+        *
+        * @param data object Call parameters
+        * @param callback function Function to be called on success, see jQuery.getJSON() for details
+        */
+       this.api = function( data, callback ) {
+               var url = this.config.get( 'wgScriptPath' ) + '/api' + this.config.get( 'wgScriptExtension' );
+               data.format = 'json';
+               return jQuery.getJSON( url, data, callback );
+       }
        /**
         * Client-side module loader which integrates with the MediaWiki ResourceLoader
         */