diff --git a/forms/UploadField.php b/forms/UploadField.php index 90e004676..03f89fe29 100644 --- a/forms/UploadField.php +++ b/forms/UploadField.php @@ -1000,7 +1000,7 @@ class UploadField extends FileField { $mergedConfig = array_merge($config, $this->ufConfig); return $this->customise(array( - 'configString' => str_replace('"', "'", Convert::raw2json($mergedConfig)), + 'configString' => str_replace('"', """, Convert::raw2json($mergedConfig)), 'config' => new ArrayData($mergedConfig), 'multiple' => $allowedMaxFileNumber !== 1 ))->renderWith($this->getTemplates()); diff --git a/javascript/UploadField.js b/javascript/UploadField.js index a824deb8c..81bbb2cdd 100644 --- a/javascript/UploadField.js +++ b/javascript/UploadField.js @@ -151,9 +151,9 @@ if(this.is('.readonly,.disabled')) return; - var fileInput = this.find('input[type=file]'); + var fileInput = this.find('.ss-uploadfield-fromcomputer-fileinput'); var dropZone = this.find('.ss-uploadfield-dropzone'); - var config = $.parseJSON(fileInput.data('config').replace(/'/g,'"')); + var config = fileInput.data('config'); /* Attach classes to dropzone when element can be dropped*/ $(document).unbind('dragover'); @@ -181,8 +181,6 @@ e.preventDefault(); }); - - this.setConfig(config); this.fileupload($.extend(true, { diff --git a/templates/UploadField.ss b/templates/UploadField.ss index cd020b72c..d67406589 100644 --- a/templates/UploadField.ss +++ b/templates/UploadField.ss @@ -52,6 +52,8 @@ <% _t('UploadField.FROMCOMPUTER', 'From your computer') %> multiple="multiple"<% end_if %> /> + <% else %> + <% end_if %> <% if $canAttachExisting %>