silverstripe-cms/code/forms/FolderUnusedAssetsField.php
Damian Mooyman a395c5322f API Move of codebase to parameterised query database abstraction layer
API Renamed DB static methods to properly conform to naming convention (lowercase, underscored)
API Replaced deprecated method
2014-07-07 15:07:37 +12:00

57 lines
1.4 KiB
PHP

<?php
/**
* @package cms
* @subpackage filesystem
*/
class Folder_UnusedAssetsField extends CompositeField {
/**
* @var Folder
*/
protected $folder;
public function __construct($folder) {
$this->folder = $folder;
parent::__construct(new FieldList());
}
public function getChildren() {
if($this->children->Count() == 0) {
$inlineFormAction = new InlineFormAction("delete_unused_thumbnails", _t('Folder.DELETEUNUSEDTHUMBNAILS', 'Delete unused thumbnails'));
$inlineFormAction->includeDefaultJS(false) ;
$this->children = new FieldList(
new LiteralField( "UnusedAssets", "<h2>"._t('Folder.UNUSEDFILESTITLE', 'Unused files')."</h2>" ),
$this->getAssetList(),
new FieldGroup(
new LiteralField( "UnusedThumbnails", "<h2>"._t('Folder.UNUSEDTHUMBNAILSTITLE', 'Unused thumbnails')."</h2>"),
$inlineFormAction
)
);
$this->children->setForm($this->form);
}
return $this->children;
}
public function FieldHolder($properties = array()) {
$output = "";
foreach($this->getChildren() as $child) {
$output .= $child->FieldHolder();
}
return $output;
}
/**
* Creates table for displaying unused files.
*
* @return GridField
*/
protected function getAssetList() {
$where = $this->folder->getUnusedFilesListFilter();
$files = File::get()->where($where);
$field = new GridField('AssetList', false, $files);
return $field;
}
}