mirror of
https://github.com/silverstripe/silverstripe-framework
synced 2024-10-22 14:05:37 +02:00
DEP Deprecate configurable silent failures in GridField components
This commit is contained in:
parent
cfd8f05a04
commit
bc47d65cc5
@ -2,6 +2,8 @@
|
|||||||
|
|
||||||
namespace SilverStripe\Forms\GridField;
|
namespace SilverStripe\Forms\GridField;
|
||||||
|
|
||||||
|
use SilverStripe\Dev\Deprecation;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* A simple readonly, paginated view of records, with sortable and searchable
|
* A simple readonly, paginated view of records, with sortable and searchable
|
||||||
* headers.
|
* headers.
|
||||||
@ -23,9 +25,11 @@ class GridFieldConfig_Base extends GridFieldConfig
|
|||||||
$this->addComponent(GridFieldPageCount::create('toolbar-header-right'));
|
$this->addComponent(GridFieldPageCount::create('toolbar-header-right'));
|
||||||
$this->addComponent($pagination = GridFieldPaginator::create($itemsPerPage));
|
$this->addComponent($pagination = GridFieldPaginator::create($itemsPerPage));
|
||||||
|
|
||||||
$sort->setThrowExceptionOnBadDataType(false);
|
Deprecation::withNoReplacement(function () use ($sort, $filter, $pagination) {
|
||||||
$filter->setThrowExceptionOnBadDataType(false);
|
$sort->setThrowExceptionOnBadDataType(false);
|
||||||
$pagination->setThrowExceptionOnBadDataType(false);
|
$filter->setThrowExceptionOnBadDataType(false);
|
||||||
|
$pagination->setThrowExceptionOnBadDataType(false);
|
||||||
|
});
|
||||||
|
|
||||||
$this->extend('updateConfig');
|
$this->extend('updateConfig');
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,8 @@
|
|||||||
<?php
|
<?php
|
||||||
namespace SilverStripe\Forms\GridField;
|
namespace SilverStripe\Forms\GridField;
|
||||||
|
|
||||||
|
use SilverStripe\Dev\Deprecation;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Allows editing of records contained within the GridField, instead of only allowing the ability to view records in
|
* Allows editing of records contained within the GridField, instead of only allowing the ability to view records in
|
||||||
* the GridField.
|
* the GridField.
|
||||||
@ -30,9 +32,11 @@ class GridFieldConfig_RecordEditor extends GridFieldConfig
|
|||||||
$this->addComponent($pagination = GridFieldPaginator::create($itemsPerPage));
|
$this->addComponent($pagination = GridFieldPaginator::create($itemsPerPage));
|
||||||
$this->addComponent(GridFieldDetailForm::create(null, $showPagination, $showAdd));
|
$this->addComponent(GridFieldDetailForm::create(null, $showPagination, $showAdd));
|
||||||
|
|
||||||
$sort->setThrowExceptionOnBadDataType(false);
|
Deprecation::withNoReplacement(function () use ($sort, $filter, $pagination) {
|
||||||
$filter->setThrowExceptionOnBadDataType(false);
|
$sort->setThrowExceptionOnBadDataType(false);
|
||||||
$pagination->setThrowExceptionOnBadDataType(false);
|
$filter->setThrowExceptionOnBadDataType(false);
|
||||||
|
$pagination->setThrowExceptionOnBadDataType(false);
|
||||||
|
});
|
||||||
|
|
||||||
$this->extend('updateConfig');
|
$this->extend('updateConfig');
|
||||||
}
|
}
|
||||||
|
@ -2,6 +2,8 @@
|
|||||||
|
|
||||||
namespace SilverStripe\Forms\GridField;
|
namespace SilverStripe\Forms\GridField;
|
||||||
|
|
||||||
|
use SilverStripe\Dev\Deprecation;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Similar to {@link GridFieldConfig_RecordEditor}, but adds features to work
|
* Similar to {@link GridFieldConfig_RecordEditor}, but adds features to work
|
||||||
* on has-many or many-many relationships.
|
* on has-many or many-many relationships.
|
||||||
@ -43,9 +45,11 @@ class GridFieldConfig_RelationEditor extends GridFieldConfig
|
|||||||
$this->addComponent($pagination = GridFieldPaginator::create($itemsPerPage));
|
$this->addComponent($pagination = GridFieldPaginator::create($itemsPerPage));
|
||||||
$this->addComponent(GridFieldDetailForm::create());
|
$this->addComponent(GridFieldDetailForm::create());
|
||||||
|
|
||||||
$sort->setThrowExceptionOnBadDataType(false);
|
Deprecation::withNoReplacement(function () use ($sort, $filter, $pagination) {
|
||||||
$filter->setThrowExceptionOnBadDataType(false);
|
$sort->setThrowExceptionOnBadDataType(false);
|
||||||
$pagination->setThrowExceptionOnBadDataType(false);
|
$filter->setThrowExceptionOnBadDataType(false);
|
||||||
|
$pagination->setThrowExceptionOnBadDataType(false);
|
||||||
|
});
|
||||||
|
|
||||||
$this->extend('updateConfig');
|
$this->extend('updateConfig');
|
||||||
}
|
}
|
||||||
|
@ -7,6 +7,7 @@ use SilverStripe\Admin\LeftAndMain;
|
|||||||
use SilverStripe\Control\Controller;
|
use SilverStripe\Control\Controller;
|
||||||
use SilverStripe\Control\HTTPResponse;
|
use SilverStripe\Control\HTTPResponse;
|
||||||
use SilverStripe\Core\ClassInfo;
|
use SilverStripe\Core\ClassInfo;
|
||||||
|
use SilverStripe\Dev\Deprecation;
|
||||||
use SilverStripe\Forms\FieldList;
|
use SilverStripe\Forms\FieldList;
|
||||||
use SilverStripe\Forms\Form;
|
use SilverStripe\Forms\Form;
|
||||||
use SilverStripe\Forms\Schema\FormSchema;
|
use SilverStripe\Forms\Schema\FormSchema;
|
||||||
@ -27,6 +28,7 @@ class GridFieldFilterHeader extends AbstractGridFieldComponent implements GridFi
|
|||||||
* See {@link setThrowExceptionOnBadDataType()}
|
* See {@link setThrowExceptionOnBadDataType()}
|
||||||
*
|
*
|
||||||
* @var bool
|
* @var bool
|
||||||
|
* @deprecated 5.2.0 Will be removed without equivalent functionality
|
||||||
*/
|
*/
|
||||||
protected $throwExceptionOnBadDataType = true;
|
protected $throwExceptionOnBadDataType = true;
|
||||||
|
|
||||||
@ -66,17 +68,21 @@ class GridFieldFilterHeader extends AbstractGridFieldComponent implements GridFi
|
|||||||
* {@link GridFieldConfig} subclasses set this to false for flexibility.
|
* {@link GridFieldConfig} subclasses set this to false for flexibility.
|
||||||
*
|
*
|
||||||
* @param bool $throwExceptionOnBadDataType
|
* @param bool $throwExceptionOnBadDataType
|
||||||
|
* @deprecated 5.2.0 Will be removed without equivalent functionality
|
||||||
*/
|
*/
|
||||||
public function setThrowExceptionOnBadDataType($throwExceptionOnBadDataType)
|
public function setThrowExceptionOnBadDataType($throwExceptionOnBadDataType)
|
||||||
{
|
{
|
||||||
|
Deprecation::notice('5.2.0', 'Will be removed without equivalent functionality');
|
||||||
$this->throwExceptionOnBadDataType = $throwExceptionOnBadDataType;
|
$this->throwExceptionOnBadDataType = $throwExceptionOnBadDataType;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* See {@link setThrowExceptionOnBadDataType()}
|
* See {@link setThrowExceptionOnBadDataType()}
|
||||||
|
* @deprecated 5.2.0 Will be removed without equivalent functionality
|
||||||
*/
|
*/
|
||||||
public function getThrowExceptionOnBadDataType()
|
public function getThrowExceptionOnBadDataType()
|
||||||
{
|
{
|
||||||
|
Deprecation::notice('5.2.0', 'Will be removed without equivalent functionality');
|
||||||
return $this->throwExceptionOnBadDataType;
|
return $this->throwExceptionOnBadDataType;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -103,6 +109,7 @@ class GridFieldFilterHeader extends AbstractGridFieldComponent implements GridFi
|
|||||||
if ($dataList instanceof Filterable) {
|
if ($dataList instanceof Filterable) {
|
||||||
return true;
|
return true;
|
||||||
} else {
|
} else {
|
||||||
|
// This will be changed to always throw an exception in a future major release.
|
||||||
if ($this->throwExceptionOnBadDataType) {
|
if ($this->throwExceptionOnBadDataType) {
|
||||||
throw new LogicException(
|
throw new LogicException(
|
||||||
static::class . " expects an SS_Filterable list to be passed to the GridField."
|
static::class . " expects an SS_Filterable list to be passed to the GridField."
|
||||||
|
@ -9,6 +9,7 @@ use SilverStripe\ORM\UnsavedRelationList;
|
|||||||
use SilverStripe\View\ArrayData;
|
use SilverStripe\View\ArrayData;
|
||||||
use SilverStripe\View\SSViewer;
|
use SilverStripe\View\SSViewer;
|
||||||
use LogicException;
|
use LogicException;
|
||||||
|
use SilverStripe\Dev\Deprecation;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* GridFieldPaginator paginates the {@link GridField} list and adds controls
|
* GridFieldPaginator paginates the {@link GridField} list and adds controls
|
||||||
@ -33,6 +34,7 @@ class GridFieldPaginator extends AbstractGridFieldComponent implements GridField
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* See {@link setThrowExceptionOnBadDataType()}
|
* See {@link setThrowExceptionOnBadDataType()}
|
||||||
|
* @deprecated 5.2.0 Will be removed without equivalent functionality
|
||||||
*/
|
*/
|
||||||
protected $throwExceptionOnBadDataType = true;
|
protected $throwExceptionOnBadDataType = true;
|
||||||
|
|
||||||
@ -57,9 +59,11 @@ class GridFieldPaginator extends AbstractGridFieldComponent implements GridField
|
|||||||
*
|
*
|
||||||
* @param bool $throwExceptionOnBadDataType
|
* @param bool $throwExceptionOnBadDataType
|
||||||
* @return $this
|
* @return $this
|
||||||
|
* @deprecated 5.2.0 Will be removed without equivalent functionality
|
||||||
*/
|
*/
|
||||||
public function setThrowExceptionOnBadDataType($throwExceptionOnBadDataType)
|
public function setThrowExceptionOnBadDataType($throwExceptionOnBadDataType)
|
||||||
{
|
{
|
||||||
|
Deprecation::notice('5.2.0', 'Will be removed without equivalent functionality');
|
||||||
$this->throwExceptionOnBadDataType = $throwExceptionOnBadDataType;
|
$this->throwExceptionOnBadDataType = $throwExceptionOnBadDataType;
|
||||||
return $this;
|
return $this;
|
||||||
}
|
}
|
||||||
@ -68,9 +72,11 @@ class GridFieldPaginator extends AbstractGridFieldComponent implements GridField
|
|||||||
* See {@link setThrowExceptionOnBadDataType()}
|
* See {@link setThrowExceptionOnBadDataType()}
|
||||||
*
|
*
|
||||||
* @return bool
|
* @return bool
|
||||||
|
* @deprecated 5.2.0 Will be removed without equivalent functionality
|
||||||
*/
|
*/
|
||||||
public function getThrowExceptionOnBadDataType()
|
public function getThrowExceptionOnBadDataType()
|
||||||
{
|
{
|
||||||
|
Deprecation::notice('5.2.0', 'Will be removed without equivalent functionality');
|
||||||
return $this->throwExceptionOnBadDataType;
|
return $this->throwExceptionOnBadDataType;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -86,6 +92,7 @@ class GridFieldPaginator extends AbstractGridFieldComponent implements GridField
|
|||||||
if ($dataList instanceof Limitable) {
|
if ($dataList instanceof Limitable) {
|
||||||
return true;
|
return true;
|
||||||
} else {
|
} else {
|
||||||
|
// This will be changed to always throw an exception in a future major release.
|
||||||
if ($this->throwExceptionOnBadDataType) {
|
if ($this->throwExceptionOnBadDataType) {
|
||||||
throw new LogicException(
|
throw new LogicException(
|
||||||
static::class . " expects an SS_Limitable list to be passed to the GridField."
|
static::class . " expects an SS_Limitable list to be passed to the GridField."
|
||||||
|
@ -12,6 +12,7 @@ use SilverStripe\View\ArrayData;
|
|||||||
use SilverStripe\View\SSViewer;
|
use SilverStripe\View\SSViewer;
|
||||||
use LogicException;
|
use LogicException;
|
||||||
use SilverStripe\Core\Injector\Injector;
|
use SilverStripe\Core\Injector\Injector;
|
||||||
|
use SilverStripe\Dev\Deprecation;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* GridFieldSortableHeader adds column headers to a {@link GridField} that can
|
* GridFieldSortableHeader adds column headers to a {@link GridField} that can
|
||||||
@ -26,6 +27,7 @@ class GridFieldSortableHeader extends AbstractGridFieldComponent implements Grid
|
|||||||
* See {@link setThrowExceptionOnBadDataType()}
|
* See {@link setThrowExceptionOnBadDataType()}
|
||||||
*
|
*
|
||||||
* @var bool
|
* @var bool
|
||||||
|
* @deprecated 5.2.0 Will be removed without equivalent functionality
|
||||||
*/
|
*/
|
||||||
protected $throwExceptionOnBadDataType = true;
|
protected $throwExceptionOnBadDataType = true;
|
||||||
|
|
||||||
@ -45,9 +47,11 @@ class GridFieldSortableHeader extends AbstractGridFieldComponent implements Grid
|
|||||||
*
|
*
|
||||||
* @param bool $throwExceptionOnBadDataType
|
* @param bool $throwExceptionOnBadDataType
|
||||||
* @return $this
|
* @return $this
|
||||||
|
* @deprecated 5.2.0 Will be removed without equivalent functionality
|
||||||
*/
|
*/
|
||||||
public function setThrowExceptionOnBadDataType($throwExceptionOnBadDataType)
|
public function setThrowExceptionOnBadDataType($throwExceptionOnBadDataType)
|
||||||
{
|
{
|
||||||
|
Deprecation::notice('5.2.0', 'Will be removed without equivalent functionality');
|
||||||
$this->throwExceptionOnBadDataType = $throwExceptionOnBadDataType;
|
$this->throwExceptionOnBadDataType = $throwExceptionOnBadDataType;
|
||||||
return $this;
|
return $this;
|
||||||
}
|
}
|
||||||
@ -56,9 +60,11 @@ class GridFieldSortableHeader extends AbstractGridFieldComponent implements Grid
|
|||||||
* See {@link setThrowExceptionOnBadDataType()}
|
* See {@link setThrowExceptionOnBadDataType()}
|
||||||
*
|
*
|
||||||
* @return bool
|
* @return bool
|
||||||
|
* @deprecated 5.2.0 Will be removed without equivalent functionality
|
||||||
*/
|
*/
|
||||||
public function getThrowExceptionOnBadDataType()
|
public function getThrowExceptionOnBadDataType()
|
||||||
{
|
{
|
||||||
|
Deprecation::notice('5.2.0', 'Will be removed without equivalent functionality');
|
||||||
return $this->throwExceptionOnBadDataType;
|
return $this->throwExceptionOnBadDataType;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -74,6 +80,7 @@ class GridFieldSortableHeader extends AbstractGridFieldComponent implements Grid
|
|||||||
if ($dataList instanceof Sortable) {
|
if ($dataList instanceof Sortable) {
|
||||||
return true;
|
return true;
|
||||||
} else {
|
} else {
|
||||||
|
// This will be changed to always throw an exception in a future major release.
|
||||||
if ($this->throwExceptionOnBadDataType) {
|
if ($this->throwExceptionOnBadDataType) {
|
||||||
throw new LogicException(
|
throw new LogicException(
|
||||||
static::class . " expects an SS_Sortable list to be passed to the GridField."
|
static::class . " expects an SS_Sortable list to be passed to the GridField."
|
||||||
|
Loading…
Reference in New Issue
Block a user