Check upload size limit also before upload (Bug #2996)
This commit is contained in:
parent
8a613b5b11
commit
fb687bdb98
3 changed files with 16 additions and 2 deletions
|
@ -1462,11 +1462,23 @@ function kolab_files_ui()
|
||||||
// file upload request
|
// file upload request
|
||||||
this.file_upload = function(form)
|
this.file_upload = function(form)
|
||||||
{
|
{
|
||||||
var form = $(form),
|
var i, size = 0, maxsize = rcmail.env.files_max_upload,
|
||||||
|
form = $(form),
|
||||||
field = $('input[type=file]', form).get(0),
|
field = $('input[type=file]', form).get(0),
|
||||||
files = field.files ? field.files.length : field.value ? 1 : 0;
|
files = field.files ? field.files.length : field.value ? 1 : 0;
|
||||||
|
|
||||||
if (files) {
|
if (files) {
|
||||||
|
// check upload max size
|
||||||
|
if (field.files && maxsize) {
|
||||||
|
for (i=0; i < files; i++)
|
||||||
|
size += field.files[i].size;
|
||||||
|
|
||||||
|
if (size > maxsize) {
|
||||||
|
alert(rcmail.get_label('kolab_files.uploadsizeerror').replace('$size', this.file_size(maxsize)));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// submit form and read server response
|
// submit form and read server response
|
||||||
this.file_upload_form(form, 'file_upload', function(event) {
|
this.file_upload_form(form, 'file_upload', function(event) {
|
||||||
var doc, response;
|
var doc, response;
|
||||||
|
|
|
@ -623,7 +623,7 @@ class kolab_files_engine
|
||||||
{
|
{
|
||||||
$this->plugin->add_label(
|
$this->plugin->add_label(
|
||||||
'folderdeleting', 'folderdeleteconfirm', 'folderdeletenotice',
|
'folderdeleting', 'folderdeleteconfirm', 'folderdeletenotice',
|
||||||
'uploading', 'attaching',
|
'uploading', 'attaching', 'uploadsizeerror',
|
||||||
'filedeleting', 'filedeletenotice', 'filedeleteconfirm',
|
'filedeleting', 'filedeletenotice', 'filedeleteconfirm',
|
||||||
'filemoving', 'filemovenotice', 'filemoveconfirm', 'filecopying', 'filecopynotice',
|
'filemoving', 'filemovenotice', 'filemoveconfirm', 'filecopying', 'filecopynotice',
|
||||||
'collection_audio', 'collection_video', 'collection_image', 'collection_document',
|
'collection_audio', 'collection_video', 'collection_image', 'collection_document',
|
||||||
|
@ -633,6 +633,7 @@ class kolab_files_engine
|
||||||
$this->rc->output->set_pagetitle($this->plugin->gettext('files'));
|
$this->rc->output->set_pagetitle($this->plugin->gettext('files'));
|
||||||
$this->rc->output->set_env('file_mimetypes', $this->get_mimetypes());
|
$this->rc->output->set_env('file_mimetypes', $this->get_mimetypes());
|
||||||
$this->rc->output->set_env('files_quota', $_SESSION['kolab_files_caps']['QUOTA']);
|
$this->rc->output->set_env('files_quota', $_SESSION['kolab_files_caps']['QUOTA']);
|
||||||
|
$this->rc->output->set_env('files_max_upload', $_SESSION['kolab_files_caps']['MAX_UPLOAD']);
|
||||||
$this->rc->output->send('kolab_files.files');
|
$this->rc->output->send('kolab_files.files');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -58,6 +58,7 @@ $labels['filedeleteconfirm'] = 'Are you sure you want to delete selected files?'
|
||||||
$labels['filedeletenotice'] = 'File(s) deleted successfully.';
|
$labels['filedeletenotice'] = 'File(s) deleted successfully.';
|
||||||
$labels['filemovenotice'] = 'File(s) moved successfully.';
|
$labels['filemovenotice'] = 'File(s) moved successfully.';
|
||||||
$labels['filecopynotice'] = 'File(s) copied successfully.';
|
$labels['filecopynotice'] = 'File(s) copied successfully.';
|
||||||
|
$labels['uploadsizeerror'] = 'Maximum file size ($size) exceeded!';
|
||||||
|
|
||||||
$labels['allfolders'] = 'search in all folders';
|
$labels['allfolders'] = 'search in all folders';
|
||||||
$labels['fileskip'] = 'Skip';
|
$labels['fileskip'] = 'Skip';
|
||||||
|
|
Loading…
Add table
Reference in a new issue