Revision: 43528
Author:   aaron
Date:     2008-11-15 02:19:26 +0000 (Sat, 15 Nov 2008)

Log Message:
-----------
* Avoid messy alternative perm checks. Just use one right
* Some code style tweaks
* Disabled API by default

Modified Paths:
--------------
    trunk/extensions/Configure/Configure.api.php
    trunk/extensions/Configure/Configure.func.php
    trunk/extensions/Configure/Configure.php

Modified: trunk/extensions/Configure/Configure.api.php
===================================================================
--- trunk/extensions/Configure/Configure.api.php        2008-11-15 02:05:50 UTC 
(rev 43527)
+++ trunk/extensions/Configure/Configure.api.php        2008-11-15 02:19:26 UTC 
(rev 43528)
@@ -8,7 +8,7 @@
        }
 
        public function execute() {
-               global $wgConf, $wgUser;
+               global $wgConf, $wgUser, $wgConfigureWikis;
                $params = $this->extractRequestParams();
                $result = $this->getResult();
                
@@ -38,9 +38,8 @@
 
                // Wiki list
                if( in_array( 'wikilist', $params['prop'] ) ) {
-                       if( !$wgUser->isAllowed( 'viewconfig-interwiki' ) && 
!$wgUser->isAllowed( 'configure-interwiki' ) && !$wgUser->isAllowed( 
'extensions-interwiki' ) )
-                               $this->dieUsage( 'viewconfig-interwiki, 
configure-interwiki or extensions-interwiki right required', 'noright' );
-                       global $wgConfigureWikis;
+                       if( !$wgUser->isAllowed( 'viewconfig-interwiki' ) )
+                               $this->dieUsage( 'viewconfig-interwiki right 
required', 'noright' );
                        if( $wgConfigureWikis === false )
                                $result->addValue( 'configure', 'wikis', array( 
'denied' => '' ) );
                        if( $wgConfigureWikis === true )
@@ -120,12 +119,11 @@
        }
 
        protected function userCanRead( $setting, $conf ){
-               global $wgUser;
+               global $wgUser, $wgConfigureViewRestrictions;
                if( in_array( $setting, $conf->getNotEditableSettings() )
                        || ( in_array( $setting, $conf->getViewRestricted() )
                        && !$wgUser->isAllowed( 'viewconfig-all' ) ) )
                        return false;
-               global $wgConfigureViewRestrictions;
                if( !isset( $wgConfigureViewRestrictions[$setting] ) )
                        return true;
                foreach( $wgConfigureViewRestrictions[$setting] as $right ){

Modified: trunk/extensions/Configure/Configure.func.php
===================================================================
--- trunk/extensions/Configure/Configure.func.php       2008-11-15 02:05:50 UTC 
(rev 43527)
+++ trunk/extensions/Configure/Configure.func.php       2008-11-15 02:19:26 UTC 
(rev 43528)
@@ -72,6 +72,13 @@
        $wgConf->extract();
 }
 
+function efConfigureSetupAPI() {
+       global $wgConfigureAPI, $wgAPIModules;
+       if( $wgConfigureAPI === true ) {
+               $wgAPIModules['configure'] = 'ApiConfigure';
+       }
+}
+
 /**
  * Add custom rights defined in $wgRestrictionLevels
  */

Modified: trunk/extensions/Configure/Configure.php
===================================================================
--- trunk/extensions/Configure/Configure.php    2008-11-15 02:05:50 UTC (rev 
43527)
+++ trunk/extensions/Configure/Configure.php    2008-11-15 02:19:26 UTC (rev 
43528)
@@ -198,7 +198,8 @@
 
 ## API module
 $wgAutoloadClasses['ApiConfigure'] = $dir . 'Configure.api.php';
-$wgAPIModules['configure'] = 'ApiConfigure';
+$wgExtensionFunctions[] = 'efConfigureSetupAPI';
+$wgConfigureAPI = false;
 
 ## Adding the ajax function
 $wgAjaxExportList[] = 'efConfigureAjax';



_______________________________________________
MediaWiki-CVS mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs

Reply via email to