Skip to content

Commit 6763e0b

Browse files
committed
It returns a long running task
1 parent a1b89e1 commit 6763e0b

File tree

1 file changed

+26
-14
lines changed

1 file changed

+26
-14
lines changed

services/static-webserver/client/source/class/osparc/file/FileLabelWithActions.js

Lines changed: 26 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -207,27 +207,33 @@ qx.Class.define("osparc.file.FileLabelWithActions", {
207207
},
208208

209209
__doDeleteSelected: function(toBeDeleted) {
210-
const requests = [];
211-
toBeDeleted.forEach(selection => {
210+
let request = null;
211+
if (toBeDeleted.length === 0) {
212+
osparc.FlashMessenger.logAs(this.tr("Nothing to delete"), "ERROR");
213+
return;
214+
} else if (toBeDeleted.length === 1) {
215+
const selection = toBeDeleted[0];
212216
if (selection) {
213-
let request = null;
214217
if (osparc.file.FilesTree.isFile(selection)) {
215218
request = this.__deleteItem(selection.getFileId(), selection.getLocation());
216219
} else {
217220
request = this.__deleteItem(selection.getPath(), selection.getLocation());
218221
}
219-
if (request) {
220-
requests.push(request);
221-
}
222+
request
223+
.then(datas => {
224+
if (datas.length) {
225+
this.fireDataEvent("fileDeleted", datas[0]);
226+
osparc.FlashMessenger.logAs(this.tr("Items successfully deleted"), "INFO");
227+
}
228+
});
222229
}
223-
});
224-
Promise.all(requests)
225-
.then(datas => {
226-
if (datas.length) {
227-
this.fireDataEvent("fileDeleted", datas[0]);
228-
osparc.FlashMessenger.logAs(this.tr("Items successfully deleted"), "INFO");
229-
}
230-
});
230+
} else if (toBeDeleted.length > 1) {
231+
this.__deleteItems(toBeDeleted)
232+
.then(resp => {
233+
// It returns a long running task
234+
console.log(resp);
235+
});
236+
}
231237
},
232238

233239
__deleteItem: function(itemId, locationId) {
@@ -238,5 +244,11 @@ qx.Class.define("osparc.file.FileLabelWithActions", {
238244
const dataStore = osparc.store.Data.getInstance();
239245
return dataStore.deleteFile(locationId, itemId);
240246
},
247+
248+
__deleteItems: function(items) {
249+
const dataStore = osparc.store.Data.getInstance();
250+
const paths = items.map(item => item.getPath());
251+
return dataStore.deleteFiles(paths);
252+
},
241253
}
242254
});

0 commit comments

Comments
 (0)