Merge pull request #21254 from owncloud/files-uploadcanceliconfix
Correctly render uploadtext indicator only on folders
This commit is contained in:
commit
7693c6d84a
|
@ -1068,7 +1068,7 @@
|
|||
nameSpan.tooltip({placement: 'right'});
|
||||
}
|
||||
// dirs can show the number of uploaded files
|
||||
if (mime !== 'httpd/unix-directory') {
|
||||
if (mime === 'httpd/unix-directory') {
|
||||
linkElem.append($('<span></span>').attr({
|
||||
'class': 'uploadtext',
|
||||
'currentUploads': 0
|
||||
|
@ -2072,7 +2072,7 @@
|
|||
*/
|
||||
showFileBusyState: function(files, state) {
|
||||
var self = this;
|
||||
if (!_.isArray(files)) {
|
||||
if (!_.isArray(files) && !files.is) {
|
||||
files = [files];
|
||||
}
|
||||
|
||||
|
@ -2080,10 +2080,13 @@
|
|||
state = true;
|
||||
}
|
||||
|
||||
_.each(files, function($tr) {
|
||||
_.each(files, function(fileName) {
|
||||
// jquery element already ?
|
||||
if (!$tr.is) {
|
||||
$tr = self.findFileEl($tr);
|
||||
var $tr;
|
||||
if (_.isString(fileName)) {
|
||||
$tr = self.findFileEl(fileName);
|
||||
} else {
|
||||
$tr = $(fileName);
|
||||
}
|
||||
|
||||
var $thumbEl = $tr.find('.thumbnail');
|
||||
|
@ -2468,6 +2471,7 @@
|
|||
}
|
||||
});
|
||||
fileUploadStart.on('fileuploadadd', function(e, data) {
|
||||
console.log('XXXXXXX');
|
||||
OC.Upload.log('filelist handle fileuploadadd', e, data);
|
||||
|
||||
//finish delete if we are uploading a deleted file
|
||||
|
@ -2487,8 +2491,7 @@
|
|||
|
||||
var translatedText = n('files', 'Uploading %n file', 'Uploading %n files', currentUploads);
|
||||
if (currentUploads === 1) {
|
||||
var img = OC.imagePath('core', 'loading.gif');
|
||||
data.context.find('.thumbnail').css('background-image', 'url(' + img + ')');
|
||||
self.showFileBusyState(uploadText.closest('tr'), true);
|
||||
uploadText.text(translatedText);
|
||||
uploadText.show();
|
||||
} else {
|
||||
|
@ -2526,8 +2529,7 @@
|
|||
uploadText.attr('currentUploads', currentUploads);
|
||||
var translatedText = n('files', 'Uploading %n file', 'Uploading %n files', currentUploads);
|
||||
if (currentUploads === 0) {
|
||||
var img = OC.imagePath('core', 'filetypes/folder');
|
||||
data.context.find('.thumbnail').css('background-image', 'url(' + img + ')');
|
||||
self.showFileBusyState(uploadText.closest('tr'), false);
|
||||
uploadText.text(translatedText);
|
||||
uploadText.hide();
|
||||
} else {
|
||||
|
@ -2604,18 +2606,15 @@
|
|||
}
|
||||
}
|
||||
});
|
||||
fileUploadStart.on('fileuploadstop', function(e, data) {
|
||||
OC.Upload.log('filelist handle fileuploadstop', e, data);
|
||||
fileUploadStart.on('fileuploadstop', function() {
|
||||
OC.Upload.log('filelist handle fileuploadstop');
|
||||
|
||||
//cleanup uploading to a dir
|
||||
var uploadText = self.$fileList.find('tr .uploadtext');
|
||||
self.showFileBusyState(uploadText.closest('tr'), false);
|
||||
uploadText.fadeOut();
|
||||
uploadText.attr('currentUploads', 0);
|
||||
|
||||
//if user pressed cancel hide upload chrome
|
||||
if (data.errorThrown === 'abort') {
|
||||
//cleanup uploading to a dir
|
||||
var uploadText = $('tr .uploadtext');
|
||||
var img = OC.imagePath('core', 'filetypes/folder');
|
||||
uploadText.parents('td.filename').find('.thumbnail').css('background-image', 'url(' + img + ')');
|
||||
uploadText.fadeOut();
|
||||
uploadText.attr('currentUploads', 0);
|
||||
}
|
||||
self.updateStorageStatistics();
|
||||
});
|
||||
fileUploadStart.on('fileuploadfail', function(e, data) {
|
||||
|
@ -2624,9 +2623,8 @@
|
|||
//if user pressed cancel hide upload chrome
|
||||
if (data.errorThrown === 'abort') {
|
||||
//cleanup uploading to a dir
|
||||
var uploadText = $('tr .uploadtext');
|
||||
var img = OC.imagePath('core', 'filetypes/folder');
|
||||
uploadText.parents('td.filename').find('.thumbnail').css('background-image', 'url(' + img + ')');
|
||||
var uploadText = self.$fileList.find('tr .uploadtext');
|
||||
self.showFileBusyState(uploadText.closest('tr'), false);
|
||||
uploadText.fadeOut();
|
||||
uploadText.attr('currentUploads', 0);
|
||||
}
|
||||
|
|
|
@ -2402,6 +2402,21 @@ describe('OCA.Files.FileList tests', function() {
|
|||
expect(ev.result).not.toEqual(false);
|
||||
expect(uploadData.targetDir).toEqual('/a/b');
|
||||
});
|
||||
it('renders upload indicator element for folders only', function() {
|
||||
fileList.add({
|
||||
name: 'afolder',
|
||||
type: 'dir',
|
||||
mime: 'httpd/unix-directory'
|
||||
});
|
||||
fileList.add({
|
||||
name: 'afile.txt',
|
||||
type: 'file',
|
||||
mime: 'text/plain'
|
||||
});
|
||||
|
||||
expect(fileList.findFileEl('afolder').find('.uploadtext').length).toEqual(1);
|
||||
expect(fileList.findFileEl('afile.txt').find('.uploadtext').length).toEqual(0);
|
||||
});
|
||||
});
|
||||
});
|
||||
describe('Handling errors', function () {
|
||||
|
|
Loading…
Reference in New Issue