/**
  * @param string $default
  * @return string
  */
 public function getRelationAutosetClass($default = 'CloudinaryImage')
 {
     if (!$this->relationAutoSetting) {
         return $default;
     }
     return parent::getRelationAutosetClass($default);
 }
 /**
  * @param null $id Not used.
  * @param null $fields Not used.
  * @return Form
  * @todo what template is used here? AssetAdmin_UploadContent.ss doesn't seem to be used anymore
  */
 public function getEditForm($id = null, $fields = null)
 {
     Requirements::javascript(FRAMEWORK_DIR . '/javascript/AssetUploadField.js');
     Requirements::css(FRAMEWORK_DIR . '/css/AssetUploadField.css');
     $uploadField = CloudinaryUploadField::create('AssetUploadField', '');
     $uploadField->setConfig('previewMaxWidth', 40);
     $uploadField->setConfig('previewMaxHeight', 30);
     $uploadField->setConfig('changeDetection', false);
     $uploadField->addExtraClass('ss-assetuploadfield');
     $uploadField->removeExtraClass('ss-uploadfield');
     $uploadField->setTemplate('AssetUploadField');
     $exts = $uploadField->getValidator()->getAllowedExtensions();
     asort($exts);
     $uploadField->Extensions = implode(', ', $exts);
     $form = CMSForm::create($this, 'EditForm', new FieldList($uploadField), new FieldList())->setHTMLID('Form_EditForm');
     $form->setResponseNegotiator($this->getResponseNegotiator());
     $form->addExtraClass('center cms-edit-form ' . $this->BaseCSSClasses());
     // Don't use AssetAdmin_EditForm, as it assumes a different panel structure
     $form->setTemplate($this->getTemplatesWithSuffix('_EditForm'));
     $form->Fields()->push(new LiteralField('BackLink', sprintf('<a href="%s" class="backlink ss-ui-button cms-panel-link" data-icon="back">%s</a>', singleton('CloudinaryAdmin')->Link('show'), 'Back to files')));
     $this->extend('updateEditForm', $form);
     return $form;
 }
 /**
  * @param CloudinaryFile $file
  * @return ViewableData_Customised
  */
 protected function customiseCloudinaryFile(CloudinaryFile $file)
 {
     $file = parent::customiseCloudinaryFile($file);
     // we do this in a second customise to have the access to the previous customisations
     $template = $file->ClassName == 'CloudinaryImage' ? 'CloudinaryUploadField_FileButtons' : 'CloudinaryVideoField_FileButtons';
     return $file->customise(array('UploadFieldFileButtons' => (string) $file->renderWith($template)));
 }