summaryrefslogtreecommitdiffstats
path: root/apps/files/js/filelist.js
diff options
context:
space:
mode:
Diffstat (limited to 'apps/files/js/filelist.js')
-rw-r--r--apps/files/js/filelist.js32
1 files changed, 28 insertions, 4 deletions
diff --git a/apps/files/js/filelist.js b/apps/files/js/filelist.js
index d6cffde05de..2631812c2e2 100644
--- a/apps/files/js/filelist.js
+++ b/apps/files/js/filelist.js
@@ -879,7 +879,8 @@ $(document).ready(function() {
data.formData = function(form) {
return [
{name: 'dir', value: dir},
- {name: 'requesttoken', value: oc_requesttoken}
+ {name: 'requesttoken', value: oc_requesttoken},
+ {name: 'file_directory', value: data.files[0]['relativePath']}
];
};
}
@@ -935,7 +936,7 @@ $(document).ready(function() {
var file = result[0];
if (data.context && data.context.data('type') === 'dir') {
-
+
// update upload counter ui
var uploadtext = data.context.find('.uploadtext');
var currentUploads = parseInt(uploadtext.attr('currentUploads'));
@@ -956,10 +957,33 @@ $(document).ready(function() {
size += parseInt(file.size);
data.context.attr('data-size', size);
data.context.find('td.filesize').text(humanFileSize(size));
-
- } else {
+ }
+ else {
+
// only append new file if uploaded into the current folder
if (file.directory !== FileList.getCurrentDirectory()) {
+
+ file_directory = file.directory.replace('/','').replace(/\/$/, "").split('/');
+
+ if (file_directory.length == 1) {
+ file_directory = file_directory[0];
+
+ // Get the directory
+ if ($('tr[data-file="'+file_directory+'"]').length == 0)
+ {
+ FileList.addDir(file_directory, 0, new Date(), false);
+ }
+ }
+ else {
+ file_directory = file_directory[0];
+ }
+
+ // update folder size
+ var size = parseInt($('tr[data-file="'+file_directory+'"]').attr('data-size'));
+ size += parseInt(file.size);
+ $('tr[data-file="'+file_directory+'"]').attr('data-size', size);
+ $('tr[data-file="'+file_directory+'"]').find('td.filesize').text(humanFileSize(size));
+
return;
}