Skip to content

Commit

Permalink
NEW Updating ElementsInUseReport to use a constant for the string use…
Browse files Browse the repository at this point in the history
…d as a filter key for element types
  • Loading branch information
ScopeyNZ committed Nov 25, 2018
1 parent 0efd01d commit 5d36bf1
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 5 deletions.
7 changes: 5 additions & 2 deletions src/Reports/ElementTypeReport.php
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,8 @@ protected function getElementTypes()

public function columns()
{
$inUseReport = new ElementsInUseReport;
// Get from Injector so substitutions are used...
$inUseReport = ElementsInUseReport::singleton();

return [
'Icon' => [
Expand All @@ -73,7 +74,9 @@ public function columns()
'formatting' => function ($value, $item) use ($inUseReport) {
return sprintf(
'<a class="grid-field__link" href="%s" title="%s">%s</a>',
$inUseReport->getLink('?filters[ClassName]='. $item->ClassName),
$inUseReport->getLink(
'?filters[' . $inUseReport::CLASS_NAME_FILTER_KEY . ']=' . $item->ClassName
),
$item->Type,
$item->TypeNice
);
Expand Down
11 changes: 8 additions & 3 deletions src/Reports/ElementsInUseReport.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,11 @@

class ElementsInUseReport extends Report
{
/**
* The string used in GET params to filter the records in this report by element type
*/
const CLASS_NAME_FILTER_KEY = 'ClassName';

public function title()
{
return _t(__CLASS__ . '.ReportTitle', 'Content blocks in use');
Expand All @@ -21,8 +26,8 @@ public function sourceRecords($params = [])
/** @var DataList $elements */
$elements = BaseElement::get()->exclude(['ClassName' => BaseElement::class]);

if (isset($params['ClassName'])) {
$className = $this->unsanitiseClassName($params['ClassName']);
if (isset($params[static::CLASS_NAME_FILTER_KEY])) {
$className = $this->unsanitiseClassName($params[static::CLASS_NAME_FILTER_KEY]);
$elements = $elements->filter(['ClassName' => $className]);
}

Expand Down Expand Up @@ -122,7 +127,7 @@ public function getBreadcrumbs()

// Only apply breadcrumbs if a "ClassName" filter is applied. This implies that we came from the
// "element type report".
if (!isset($params['ClassName'])) {
if (!isset($params[static::CLASS_NAME_FILTER_KEY])) {
return [];
}

Expand Down

0 comments on commit 5d36bf1

Please sign in to comment.