mirror of
https://github.com/silverstripe/silverstripe-dms
synced 2024-10-22 14:05:56 +02:00
e4bc553521
* Add 2.0.0 changelog * Update DMSInterface and DMSDocumentInterface removing *page and adding getDocumentSetsByPage to DMSInterface * Update use documentation and update unit tests This commit changes the relationship from Pages has_many Documents to Pages has_many DocumentSets which are many_many to Documents. The upload field has been upated to attach documents to a set instead of a page, the tests updated and the DMSInterface and DMSDocumentInterface updated to be less relevant to pages and more relevant to document sets.
45 lines
954 B
PHP
45 lines
954 B
PHP
<?php
|
|
|
|
class DMSUploadField_ItemHandler extends UploadField_ItemHandler
|
|
{
|
|
private static $allowed_actions = array(
|
|
'delete',
|
|
'edit',
|
|
'EditForm',
|
|
);
|
|
|
|
/**
|
|
* Gets a DMS document by its ID
|
|
*
|
|
* @return DMSDocument
|
|
*/
|
|
public function getItem()
|
|
{
|
|
return DMSDocument::get()->byId($this->itemID);
|
|
}
|
|
|
|
/**
|
|
* @return Form
|
|
*/
|
|
public function EditForm()
|
|
{
|
|
$file = $this->getItem();
|
|
|
|
// Get form components
|
|
$fields = $this->parent->getDMSFileEditFields($file);
|
|
$actions = $this->parent->getDMSFileEditActions($file);
|
|
$validator = $this->parent->getDMSFileEditValidator($file);
|
|
$form = new Form(
|
|
$this,
|
|
__FUNCTION__,
|
|
$fields,
|
|
$actions,
|
|
$validator
|
|
);
|
|
$form->loadDataFrom($file);
|
|
$form->addExtraClass('small');
|
|
|
|
return $form;
|
|
}
|
|
}
|