aboutsummaryrefslogtreecommitdiffstats
path: root/apps/files
diff options
context:
space:
mode:
authorRobin Appelman <icewind@owncloud.com>2012-11-18 14:07:52 +0100
committerRobin Appelman <icewind@owncloud.com>2012-11-18 14:07:52 +0100
commita922eb756eeb5a301772361c22b0d7f40b1f1cb0 (patch)
treeae27f291902989b5fe5c044499a9fb8c16a1cb4d /apps/files
parent3358bface5c20aeb4ad41dc1edffb895bc24af71 (diff)
parentea80a8b9e3adb4fb091d0d5c80280de683b7b1a3 (diff)
downloadnextcloud-server-a922eb756eeb5a301772361c22b0d7f40b1f1cb0.tar.gz
nextcloud-server-a922eb756eeb5a301772361c22b0d7f40b1f1cb0.zip
merge master into filesystem
Diffstat (limited to 'apps/files')
-rw-r--r--apps/files/ajax/upload.php6
-rw-r--r--apps/files/js/filelist.js2
-rw-r--r--apps/files/js/files.js20
-rw-r--r--apps/files/l10n/zh_CN.php1
4 files changed, 23 insertions, 6 deletions
diff --git a/apps/files/ajax/upload.php b/apps/files/ajax/upload.php
index 2a784d61691..c89ce762df8 100644
--- a/apps/files/ajax/upload.php
+++ b/apps/files/ajax/upload.php
@@ -48,10 +48,12 @@ if(strpos($dir, '..') === false) {
$fileCount=count($files['name']);
for($i=0;$i<$fileCount;$i++) {
$target = OCP\Files::buildNotExistingFileName(stripslashes($dir), $files['name'][$i]);
- if(is_uploaded_file($files['tmp_name'][$i]) and \OC\Files\Filesystem::fromTmpFile($files['tmp_name'][$i], $target)) {
+ // $path needs to be normalized - this failed within drag'n'drop upload to a sub-folder
+ $target = OC_Filesystem::normalizePath($target);
+ if(is_uploaded_file($files['tmp_name'][$i]) and OC_Filesystem::fromTmpFile($files['tmp_name'][$i], $target)) {
$meta = \OC\Files\Filesystem::getFileInfo($target);
$id = $meta['fileid'];
- $result[]=array( "status" => "success", 'mime'=>$meta['mimetype'],'size'=>$meta['size'], 'id'=>$id, 'name'=>basename($target));
+ $result[]=array( "status" => "success", 'mime'=>$meta['mimetype'], 'size'=>$meta['size'], 'id'=>$id, 'name'=>basename($target));
}
}
OCP\JSON::encodedPrint($result);
diff --git a/apps/files/js/filelist.js b/apps/files/js/filelist.js
index f754a7cd162..a5550dc9926 100644
--- a/apps/files/js/filelist.js
+++ b/apps/files/js/filelist.js
@@ -141,7 +141,7 @@ var FileList={
tr=$('tr').filterAttr('data-file',name);
tr.data('renaming',true);
td=tr.children('td.filename');
- input=$('<input class="filename"></input>').val(name);
+ input=$('<input class="filename"/>').val(name);
form=$('<form></form>');
form.append(input);
td.children('a.name').hide();
diff --git a/apps/files/js/files.js b/apps/files/js/files.js
index 982351c589e..bb80841055b 100644
--- a/apps/files/js/files.js
+++ b/apps/files/js/files.js
@@ -228,7 +228,12 @@ $(document).ready(function() {
}
});
}else{
- var date=new Date();
+ var dropTarget = $(e.originalEvent.target).closest('tr');
+ if(dropTarget && dropTarget.attr('data-type') === 'dir') { // drag&drop upload to folder
+ var dirName = dropTarget.attr('data-file')
+ }
+
+ var date=new Date();
if(files){
for(var i=0;i<files.length;i++){
if(files[i].size>0){
@@ -281,7 +286,10 @@ $(document).ready(function() {
var jqXHR = $('.file_upload_start').fileupload('send', {files: files[i],
formData: function(form) {
var formArray = form.serializeArray();
- formArray[1]['value'] = dirName;
+ // array index 0 contains the max files size
+ // array index 1 contains the request token
+ // array index 2 contains the directory
+ formArray[2]['value'] = dirName;
return formArray;
}}).success(function(result, textStatus, jqXHR) {
var response;
@@ -291,7 +299,13 @@ $(document).ready(function() {
$('#notification').fadeIn();
}
var file=response[0];
+ // TODO: this doesn't work if the file name has been changed server side
delete uploadingFiles[dirName][file.name];
+ if ($.assocArraySize(uploadingFiles[dirName]) == 0) {
+ delete uploadingFiles[dirName];
+ }
+
+ var uploadtext = $('tr').filterAttr('data-type', 'dir').filterAttr('data-file', dirName).find('.uploadtext')
var currentUploads = parseInt(uploadtext.attr('currentUploads'));
currentUploads -= 1;
uploadtext.attr('currentUploads', currentUploads);
@@ -821,7 +835,7 @@ function getSelectedFiles(property){
name:$(element).attr('data-file'),
mime:$(element).data('mime'),
type:$(element).data('type'),
- size:$(element).data('size'),
+ size:$(element).data('size')
};
if(property){
files.push(file[property]);
diff --git a/apps/files/l10n/zh_CN.php b/apps/files/l10n/zh_CN.php
index 12975abdcf6..c9a3ab26c52 100644
--- a/apps/files/l10n/zh_CN.php
+++ b/apps/files/l10n/zh_CN.php
@@ -49,6 +49,7 @@
"New" => "新建",
"Text file" => "文本文件",
"Folder" => "文件夹",
+"From link" => "来自链接",
"Upload" => "上传",
"Cancel upload" => "取消上传",
"Nothing in here. Upload something!" => "这里还什么都没有。上传些东西吧!",