Explorar o código

HUE-2945 [fb] Drag&Drop upload can hide errors

It shows now errors for the desktop drag & drop and popup d&d too
Enrico Berti %!s(int64=10) %!d(string=hai) anos
pai
achega
fad2c20

+ 4 - 0
apps/filebrowser/src/filebrowser/static/filebrowser/css/listdir_components.css

@@ -279,3 +279,7 @@
 .qq-upload-drop-area {
   width: 99%;
 }
+
+.qq-upload-failed-text {
+  color: #b94a48;
+}

+ 8 - 2
apps/filebrowser/src/filebrowser/templates/listdir_components.mako

@@ -1452,7 +1452,7 @@ from django.utils.translation import ugettext as _
           _isExternalFile = true;
         });
 
-        $('.card').on('dragenter', function (e) {
+        $('body').on('dragenter', function (e) {
           e.preventDefault();
 
           if (_isExternalFile && !($("#uploadFileModal").is(":visible")) && !($("#uploadArchiveModal").is(":visible"))) {
@@ -1533,6 +1533,12 @@ from django.utils.translation import ugettext as _
             },
             canceled: function () {
               $.jHueNotify.info("${_('Upload has been canceled')}");
+            },
+            complete: function (data) {
+              var response = JSON.parse(data.xhr.response);
+              if (response && response.status && response.status == -1){
+                $.jHueNotify.error(response.data);
+              }
             }
           };
           _dropzone = new Dropzone(document.body, options);
@@ -1542,7 +1548,7 @@ from django.utils.translation import ugettext as _
                 $('#progressStatus').addClass('hide');
                 $('#progressStatusBar').addClass('hide');
                 $('#progressStatusBar div').css("width", "0");
-                location.reload();
+                viewModel.retrieveData();
                 },
               2500);
           });

+ 5 - 6
desktop/core/src/desktop/static/desktop/ext/js/fileuploader.js

@@ -641,12 +641,11 @@ qq.extend(qq.FileUploader.prototype, {
         var item = this._getItemByFileId(id);
         qq.remove(this._find(item, 'cancel'));
         qq.remove(this._find(item, 'spinner'));
-        console.log(result)
-       // if (result.success){
-            qq.addClass(item, this._classes.success);
-        /*} else {
-            qq.addClass(item, this._classes.fail);
-        }*/
+        if (result.status && result.status == -1){
+          qq.addClass(item, this._classes.fail);
+        } else {
+          qq.addClass(item, this._classes.success);
+        }
     },
     _addToList: function(id, fileName){
         var item = qq.toElement(this._options.fileTemplate);