Revision: 43565
Author: aaron
Date: 2008-11-16 06:15:06 +0000 (Sun, 16 Nov 2008)
Log Message:
-----------
* Use edit token on submit
* Rename getNotEditable -> getUneditable
* Whitespace/style tweaks
* Add comments
Modified Paths:
--------------
trunk/extensions/Configure/Configure.api.php
trunk/extensions/Configure/Configure.handler-db.php
trunk/extensions/Configure/Configure.handler-files.php
trunk/extensions/Configure/Configure.handler.php
trunk/extensions/Configure/Configure.obj.php
trunk/extensions/Configure/Configure.page.php
trunk/extensions/Configure/Configure.settings.php
trunk/extensions/Configure/SpecialConfigure.php
Modified: trunk/extensions/Configure/Configure.api.php
===================================================================
--- trunk/extensions/Configure/Configure.api.php 2008-11-16 02:42:30 UTC
(rev 43564)
+++ trunk/extensions/Configure/Configure.api.php 2008-11-16 06:15:06 UTC
(rev 43565)
@@ -64,7 +64,7 @@
$this->dieUsage( 'wiki not found in version',
'nowiki' );
$settingsValues = $settingsValues[$wiki];
$conf = ConfigurationSettings::singleton(
CONF_SETTINGS_BOTH );
- $notEditable = $conf->getNotEditableSettings();
+ $notEditable = $conf->getUneditableSettings();
$ret = array();
if ( $params['group'] ) {
$sections = $conf->getSettings();
@@ -120,7 +120,7 @@
protected function userCanRead( $setting, $conf ) {
global $wgUser, $wgConfigureViewRestrictions;
- if ( in_array( $setting, $conf->getNotEditableSettings() )
+ if ( in_array( $setting, $conf->getUneditableSettings() )
|| ( in_array( $setting, $conf->getViewRestricted() )
&& !$wgUser->isAllowed( 'viewconfig-all' ) ) )
return false;
Modified: trunk/extensions/Configure/Configure.handler-db.php
===================================================================
--- trunk/extensions/Configure/Configure.handler-db.php 2008-11-16 02:42:30 UTC
(rev 43564)
+++ trunk/extensions/Configure/Configure.handler-db.php 2008-11-16 06:15:06 UTC
(rev 43565)
@@ -269,7 +269,7 @@
/**
* Get settings that are not editable with the database handler
*/
- public function getNotEditableSettings() {
+ public function getUneditableSettings() {
return array(
# Database
'wgAllDBsAreLocalhost',
Modified: trunk/extensions/Configure/Configure.handler-files.php
===================================================================
--- trunk/extensions/Configure/Configure.handler-files.php 2008-11-16
02:42:30 UTC (rev 43564)
+++ trunk/extensions/Configure/Configure.handler-files.php 2008-11-16
06:15:06 UTC (rev 43565)
@@ -138,7 +138,7 @@
/**
* All settings are editable!
*/
- public function getNotEditableSettings() {
+ public function getUneditableSettings() {
return array();
}
Modified: trunk/extensions/Configure/Configure.handler.php
===================================================================
--- trunk/extensions/Configure/Configure.handler.php 2008-11-16 02:42:30 UTC
(rev 43564)
+++ trunk/extensions/Configure/Configure.handler.php 2008-11-16 06:15:06 UTC
(rev 43565)
@@ -66,5 +66,5 @@
* Get settings that are not editable with this handler
* @return array
*/
- public function getNotEditableSettings();
+ public function getUneditableSettings();
}
Modified: trunk/extensions/Configure/Configure.obj.php
===================================================================
--- trunk/extensions/Configure/Configure.obj.php 2008-11-16 02:42:30 UTC
(rev 43564)
+++ trunk/extensions/Configure/Configure.obj.php 2008-11-16 06:15:06 UTC
(rev 43565)
@@ -269,8 +269,8 @@
* Get not editable settings with the current handler
* @return array
*/
- public function getNotEditableSettings() {
- return $this->mHandler->getNotEditableSettings();
+ public function getUneditableSettings() {
+ return $this->mHandler->getUneditableSettings();
}
/**
@@ -292,7 +292,7 @@
/**
* Merge array settings
- *
+ * TODO: document!
* @return Array
*/
public static function mergeArrays( /* $array1, ... */ ) {
Modified: trunk/extensions/Configure/Configure.page.php
===================================================================
--- trunk/extensions/Configure/Configure.page.php 2008-11-16 02:42:30 UTC
(rev 43564)
+++ trunk/extensions/Configure/Configure.page.php 2008-11-16 06:15:06 UTC
(rev 43565)
@@ -98,7 +98,10 @@
switch( $type ) {
case 'submit':
- $this->doSubmit();
+ if( $wgUser->matchEditToken( $wgRequest->getVal(
'wpEditToken' ) ) )
+ $this->doSubmit();
+ else
+ $this->showForm();
break;
case 'diff':
$this->conf = $this->importFromRequest();
@@ -174,7 +177,7 @@
* @return bool
*/
public function userCanRead( $setting ) {
- if ( in_array( $setting,
$this->mConfSettings->getNotEditableSettings() )
+ if ( in_array( $setting,
$this->mConfSettings->getUneditableSettings() )
|| ( in_array( $setting,
$this->mConfSettings->getViewRestricted() )
&& !$this->isUserAllowedAll() ) )
return false;
@@ -203,11 +206,11 @@
*
* @return array
*/
- protected function getNotEditableSettings() {
+ protected function getUneditableSettings() {
static $notEditable;
if ( !isset( $notEditable ) ) {
global $wgConfigureNotEditableSettings;
- $notEditable = array_merge(
$this->mConfSettings->getNotEditableSettings(),
+ $notEditable = array_merge(
$this->mConfSettings->getUneditableSettings(),
$wgConfigureNotEditableSettings );
}
return $notEditable;
@@ -219,7 +222,7 @@
* @return array
*/
protected function getEditableSettings() {
- $notEdit = $this->getNotEditableSettings();
+ $notEdit = $this->getUneditableSettings();
$settings = $this->mConfSettings->getAllSettings();
foreach ( $notEdit as $setting )
unset( $settings[$setting] );
@@ -655,6 +658,7 @@
( $this->mCanEdit ?
Xml::openElement( 'div', array( 'id' =>
'prefsubmit' ) ) . "\n" .
Xml::openElement( 'div', array() ) . "\n" .
+ Xml::hidden( 'wpEditToken',
$wgUser->editToken() ) . "\n" .
Xml::element( 'input', array( 'type' =>
'submit', 'name' => 'wpSave',
'class' => 'btnSavePrefs', 'value' =>
wfMsgHtml( 'configure-btn-save' ) ) ) . "\n" .
Xml::element( 'input', array( 'type' =>
'submit', 'name' => 'wpPreview',
@@ -1058,7 +1062,7 @@
$ret = '';
$perms = array();
- $notEditableSet = $this->getNotEditableSettings();
+ $notEditableSet = $this->getUneditableSettings();
foreach ( $settings as $title => $groups ) {
$res = true;
if ( !isset( $param['restrict'] ) ) {
Modified: trunk/extensions/Configure/Configure.settings.php
===================================================================
--- trunk/extensions/Configure/Configure.settings.php 2008-11-16 02:42:30 UTC
(rev 43564)
+++ trunk/extensions/Configure/Configure.settings.php 2008-11-16 06:15:06 UTC
(rev 43565)
@@ -168,7 +168,7 @@
*
* @return array
*/
- public function getNotEditableSettings() {
+ public function getUneditableSettings() {
$this->loadSettingsDefs();
$ret = array();
if ( ( $this->types & CONF_SETTINGS_CORE ) ==
CONF_SETTINGS_CORE ) {
@@ -178,7 +178,7 @@
$ret += array(); // Nothing for extensions
}
global $wgConf;
- $ret = array_merge( $ret, $wgConf->getNotEditableSettings() );
+ $ret = array_merge( $ret, $wgConf->getUneditableSettings() );
return $ret;
}
@@ -268,7 +268,6 @@
public function getArrayType( $setting ) {
$arr = $this->getArrayDefs();
return isset( $arr[$setting] ) ?
- $arr[$setting] :
- null;
+ $arr[$setting] : null;
}
}
Modified: trunk/extensions/Configure/SpecialConfigure.php
===================================================================
--- trunk/extensions/Configure/SpecialConfigure.php 2008-11-16 02:42:30 UTC
(rev 43564)
+++ trunk/extensions/Configure/SpecialConfigure.php 2008-11-16 06:15:06 UTC
(rev 43565)
@@ -44,6 +44,7 @@
return ( $this->isSettingAvailable( $setting )
&& $this->userCanEdit( $setting )
&& ( $this->getSettingType( $setting ) != 'array'
+ // Array type is not NULL or 'array'
|| !in_array( $this->getArrayType( $setting ),
array( 'array', null ) ) ) );
}
_______________________________________________
MediaWiki-CVS mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs