mirror of
https://github.com/colymba/GridFieldBulkEditingTools.git
synced 2024-10-22 11:05:57 +02:00
BUG Error setting options
When setting options that have a NULL value by default (such as imageFieldName) the setConfig function would incorrectly assume the option was not available and would silently ignore. This fix implements a correct option validation mechanism, and throws an error if an incorrect option assignment is attempted.
This commit is contained in:
parent
834d7466e7
commit
447ab87601
@ -53,21 +53,22 @@ class GridFieldBulkImageUpload implements GridField_HTMLProvider, GridField_URLH
|
|||||||
*/
|
*/
|
||||||
function setConfig ( $reference, $value )
|
function setConfig ( $reference, $value )
|
||||||
{
|
{
|
||||||
if ( isset( $this->config[$reference] ) )
|
if (!key_exists($reference, $this->config) ) {
|
||||||
{
|
user_error("Unknown option reference: $reference", E_USER_ERROR);
|
||||||
if ( ($reference == 'fieldsClassBlacklist' || $reference == 'fieldsClassBlacklist' || $reference == 'editableFields') && !is_array($value) )
|
|
||||||
{
|
|
||||||
$value = array($value);
|
|
||||||
}
|
|
||||||
|
|
||||||
//makes sure $forbiddenFieldsClasses are in no matter what
|
|
||||||
if ( $reference == 'fieldsClassBlacklist' )
|
|
||||||
{
|
|
||||||
$value = array_unique( array_merge($value, $this->forbiddenFieldsClasses) );
|
|
||||||
}
|
|
||||||
|
|
||||||
$this->config[$reference] = $value;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ( ($reference == 'fieldsClassBlacklist' || $reference == 'fieldsClassBlacklist' || $reference == 'editableFields') && !is_array($value) )
|
||||||
|
{
|
||||||
|
$value = array($value);
|
||||||
|
}
|
||||||
|
|
||||||
|
//makes sure $forbiddenFieldsClasses are in no matter what
|
||||||
|
if ( $reference == 'fieldsClassBlacklist' )
|
||||||
|
{
|
||||||
|
$value = array_unique( array_merge($value, $this->forbiddenFieldsClasses) );
|
||||||
|
}
|
||||||
|
|
||||||
|
$this->config[$reference] = $value;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Loading…
Reference in New Issue
Block a user