Fix Bug #28995: “public interface for getting state of a module” from
authorMark A. Hershberger <mah@users.mediawiki.org>
Sun, 15 May 2011 14:26:24 +0000 (14:26 +0000)
committerMark A. Hershberger <mah@users.mediawiki.org>
Sun, 15 May 2011 14:26:24 +0000 (14:26 +0000)
    Bergi

    Sometimes userscripts need to know about the registrated modules,
    mostly about their state.
    …
    My patch also resolves inconsistencies in the naming conventions
    of getters and setters; I think there should be a clear
    difference.

resources/mediawiki/mediawiki.js

index 00ef6f6..ee47982 100644 (file)
@@ -1298,12 +1298,30 @@ window.mediaWiki = new ( function( $ ) {
                 *
                 * @param module string name of module to get version for
                 */
-               this.version = function( module ) {
+               this.getVersion = function( module ) {
                        if ( module in registry && 'version' in registry[module] ) {
                                return formatVersionNumber( registry[module].version );
                        }
                        return null;
                };
+               /**
+               * @deprecated use mw.loader.getVersion() instead
+               */
+               this.version = function() {
+                       return mediaWiki.loader.getVersion.apply( mediaWiki.loader, arguments );
+               }
+
+               /**
+                * Gets the state of a module
+                *
+                * @param module string name of module to get state for
+                */
+               this.getState = function( module ) {
+                       if ( module in registry && 'state' in registry[module] ) {
+                               return registry[module].state;
+                       }
+                       return null;
+               };
 
                /* Cache document ready status */