-        let data = new FormData();
-        data.append("uploadfiles[]", file);
-        data.append("action", "File/ajax_files_uploaded");
-        data.append("json", "1");
-        data.append("object_type", type);
-        data.append("object_id", id);
-        data.append("file_type", "attachment");
-
-        $("#upload_result").html(kivi.t8("start upload"));
-
-        let xhr = new XMLHttpRequest;
-        xhr.open('POST', 'controller.pl', true);
-        xhr.success = ns.attSuccess;
-        xhr.progress = ns.attProgress;
-        xhr.error = ns.attFailed;
-        xhr.abort = ns.attCanceled;
-        xhr.send(data);
-      });
+      let data = new FormData();
+      myfiles.forEach(file => data.append("uploadfiles[]", file));
+      data.append("action", "File/ajax_files_uploaded");
+      data.append("json", "1");
+      data.append("object_type", type);
+      data.append("object_id", id);
+      data.append("file_type", "attachment");
+
+      $("#upload_result").html(kivi.t8("start upload"));
+
+      let xhr = new XMLHttpRequest;
+      xhr.open('POST', 'controller.pl', true);
+      xhr.onload = ns.upload_complete;
+      xhr.upload.onprogress = ns.progress;
+      xhr.upload.onerror = ns.failed;
+      xhr.upload.onabort = ns.abort;
+      xhr.send(data);
+
+      ns.upload_in_progress = xhr;