- <?php
- class FrontendUploadField extends UploadField {
- public function __construct($name, $title = null, SS_List $items = null) {
- parent::__construct($name, $title, $items);
- $this->setConfig('autoUpload', true)
- ->setConfig('canAttachExisting', false)
- ->setConfig('canPreviewFolder', false)
- ->setConfig('changeDetection', false)
- ->setTemplateFileButtons('FrontendUploadField_FileButtons');
- $this->getUpload()->setReplaceFile(false);
- }
- protected function saveTemporaryFile($tmpFile, &$error = null) {
- // prefix with unique id to avoid file name conflicts
- $title = $tmpFile['name'];
- $tmpFile['name'] = uniqid('', true) . $tmpFile['name'];
- $file = parent::saveTemporaryFile($tmpFile, $error);
- $file->Title = $title;
- $file->write();
- return $file;
- }
- public function attach(SS_HTTPRequest $request) {
- return $this->httpError(403);
- }
- public function handleItem(SS_HTTPRequest $request) {
- return $this->httpError(403);
- }
- public function handleSelect(SS_HTTPRequest $request) {
- return $this->httpError(403);
- }
- }