mirror of
https://github.com/silverstripe/silverstripe-cms
synced 2024-10-22 08:05:56 +02:00
Feature remove File extension for backlink tracking in favour of UsedOnTable form field
This commit is contained in:
parent
77cb41a926
commit
01514490fe
@ -1,8 +0,0 @@
|
||||
---
|
||||
Name: cms-asset-admin
|
||||
OnlyIf:
|
||||
ModuleExists: silverstripe/asset-admin
|
||||
---
|
||||
SilverStripe\AssetAdmin\Forms\FileFormFactory:
|
||||
extensions:
|
||||
- SilverStripe\CMS\Model\SiteTreeFileFormFactoryExtension
|
@ -3,14 +3,18 @@
|
||||
namespace SilverStripe\CMS\Model;
|
||||
|
||||
use SilverStripe\Assets\File;
|
||||
use SilverStripe\Dev\Deprecation;
|
||||
use SilverStripe\Forms\FieldList;
|
||||
use SilverStripe\Forms\ReadonlyField;
|
||||
use SilverStripe\Forms\Tab;
|
||||
use SilverStripe\Forms\TabSet;
|
||||
use SilverStripe\ORM\DataExtension;
|
||||
use SilverStripe\ORM\FieldType\DBHTMLText;
|
||||
use SilverStripe\Admin\Forms\UsedOnTable;
|
||||
use SilverStripe\Versioned\RecursivePublishable;
|
||||
|
||||
/**
|
||||
* @deprecated 5.0
|
||||
* No longer required - superceded by {@see UsedOnTable}
|
||||
*
|
||||
* Extension applied to {@see FileFormFactory} to decorate with a "Used on:" information area.
|
||||
* Uses tracking provided by {@see SiteTreeFileExtension} to generate this.
|
||||
*
|
||||
@ -20,30 +24,22 @@ class SiteTreeFileFormFactoryExtension extends DataExtension
|
||||
{
|
||||
public function updateFormFields(FieldList $fields, $controller, $formName, $context)
|
||||
{
|
||||
// Create field
|
||||
/** @var File|SiteTreeFileExtension $record */
|
||||
$record = $context['Record'];
|
||||
$usedOnField = ReadonlyField::create(
|
||||
'BackLinkCount',
|
||||
_t(__CLASS__.'.BACKLINKCOUNT', 'Used on:'),
|
||||
$record->BackLinkTrackingCount() . ' ' . _t(__CLASS__.'.PAGES', 'page(s)')
|
||||
)
|
||||
->addExtraClass('cms-description-toggle');
|
||||
|
||||
// Add table
|
||||
/** @var DBHTMLText $backlinkHTML */
|
||||
$backlinkHTML = $record->BackLinkHTMLList();
|
||||
if (trim($backlinkHTML->forTemplate())) {
|
||||
$usedOnField->setDescription($backlinkHTML);
|
||||
}
|
||||
|
||||
/** @var TabSet $tabset */
|
||||
$tabset = $fields->fieldByName('Editor');
|
||||
if ($tabset) {
|
||||
if (!$tabset) {
|
||||
return;
|
||||
}
|
||||
$class = UsedOnTable::class;
|
||||
Deprecation::notice('5.0', "Use the $class to show this table");
|
||||
|
||||
/** @var File|SiteTreeFileExtension|RecursivePublishable $record */
|
||||
$record = $context['Record'];
|
||||
|
||||
$usedOnField = UsedOnTable::create('UsedOnTableReplacement', $record);
|
||||
|
||||
// Add field to new tab
|
||||
/** @var Tab $tab */
|
||||
$tab = Tab::create('Usage', _t(__CLASS__ . '.USAGE', 'Usage'), $usedOnField);
|
||||
$tabset->push($tab);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user