diff --git a/code/GridFieldAddNewInlineButton.php b/code/GridFieldAddNewInlineButton.php index e9dd9e6..38cb95a 100644 --- a/code/GridFieldAddNewInlineButton.php +++ b/code/GridFieldAddNewInlineButton.php @@ -135,7 +135,7 @@ class GridFieldAddNewInlineButton implements GridField_HTMLProvider, GridField_S $extra = array(); if($list instanceof ManyManyList) { - $extra = array_intersect_key($fields, $list->getExtraFields()); + $extra = array_intersect_key($fields, (array) $list->getExtraFields()); } $form->loadDataFrom($fields, Form::MERGE_CLEAR_MISSING); diff --git a/code/GridFieldEditableColumns.php b/code/GridFieldEditableColumns.php index fd2b5ed..f700a5e 100644 --- a/code/GridFieldEditableColumns.php +++ b/code/GridFieldEditableColumns.php @@ -73,7 +73,7 @@ class GridFieldEditableColumns extends GridFieldDataColumns implements $extra = array(); if($list instanceof ManyManyList) { - $extra = array_intersect_key($fields, $list->getExtraFields()); + $extra = array_intersect_key($fields, (array) $list->getExtraFields()); } $form->loadDataFrom($fields, Form::MERGE_CLEAR_MISSING); @@ -148,7 +148,7 @@ class GridFieldEditableColumns extends GridFieldDataColumns implements if(!$field && $list instanceof ManyManyList) { $extra = $list->getExtraFields(); - if(array_key_exists($col, $extra)) { + if($extra && array_key_exists($col, $extra)) { $field = Object::create_from_string($extra[$col], $col)->scaffoldFormField(); } }