diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/public/resources/js/openbis.js b/openbis/source/java/ch/systemsx/cisd/openbis/public/resources/js/openbis.js index 2d2fd500fde7987c5f0804a82689b8ce7520263a..20d4836efed56980163b5c0745ff3aaa0803953a 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/public/resources/js/openbis.js +++ b/openbis/source/java/ch/systemsx/cisd/openbis/public/resources/js/openbis.js @@ -1483,9 +1483,12 @@ openbis.prototype.createSessionWorkspaceUploaderForDataStore = function(uploader sessionID: $this.getSession() }; - for(var key in uploaderSettings) { - finalSettings[key] = uploaderSettings[key]; + if(uploaderSettings) { + for(var key in uploaderSettings) { + finalSettings[key] = uploaderSettings[key]; + } } + Uploader.init(finalSettings); }); }); diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/public/resources/uploader/js/src/upload.js b/openbis/source/java/ch/systemsx/cisd/openbis/public/resources/uploader/js/src/upload.js index 900e9cf740152748b634c8bce4748dbe669159af..236c566d3c7659aa9b1e5cf6df59460bbd79f115 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/public/resources/uploader/js/src/upload.js +++ b/openbis/source/java/ch/systemsx/cisd/openbis/public/resources/uploader/js/src/upload.js @@ -28,6 +28,7 @@ var Uploader = new function () { file_input_button: "#fileinput-button", //file_list_clear_button: "#filelist-clear-button", oncomplete: function(file) { }, + ondelete: function(file) {}, chunk_size: 100*1024, smart_mode: window.File && window.FileReader && window.XMLHttpRequest, main_title_container : "#session-workspace-uploader-main-title", @@ -258,6 +259,7 @@ var Uploader = new function () { ++current_upload_id; $(settings.file_list) .append("<li class=\"upload\" id=\"upload-" + id + "\">" + + "<span id='delete-" + id + "' style='font-size: 20px;'>X</span> " + "<span id=\"progress-" + id + "\" class=\"progressbar-container\">" + "<span id=\"progressbar-" + id + "\" class=\"progressbar\"></span>" + "</span>" + @@ -266,6 +268,12 @@ var Uploader = new function () { " (" + styleSize(file.size) + ", " + "<span id=\"speed-" + id + "\">? KB/s</span>)" + "</li>"); + $("#delete-"+id).click(function() { + var fileData = file; + $( "#upload-"+id).remove(); + settings.ondelete(fileData); + }); + $("#upload-" + id).addClass("starting"); if (settings.smart_mode) { $("#stop-button").clone().attr("id", "stop-button-" + id) @@ -433,4 +441,4 @@ var Uploader = new function () { $(settings.main_title_container).append(settings.main_title); $(settings.uploads_title_container).append(settings.uploads_title); } -} \ No newline at end of file +} diff --git a/plasmid/source/core-plugins/newbrowser/1/as/webapps/newbrowser/html/js/UI/DataSetForm.js b/plasmid/source/core-plugins/newbrowser/1/as/webapps/newbrowser/html/js/UI/DataSetForm.js index 443e0faa016063f6f457c804ad455ac3c3a60d37..f1cf2b0d6e1b919d38c5a3679301e6ad77700990 100644 --- a/plasmid/source/core-plugins/newbrowser/1/as/webapps/newbrowser/html/js/UI/DataSetForm.js +++ b/plasmid/source/core-plugins/newbrowser/1/as/webapps/newbrowser/html/js/UI/DataSetForm.js @@ -113,9 +113,19 @@ function DataSetForm(serverFacade, containerId, profile, sample, mode) { } } + var onDelete = function(data) { + for(var i=0; localInstance.files.length; i++) { + if(localInstance.files[i] === data.name) { + localInstance.files.splice(i, 1); + break; + } + } + } + this.serverFacade.openbisServer.createSessionWorkspaceUploader($("#APIUploader"), onComplete, { main_title : $('<legend>').text('Files Uploader'), - uploads_title : $('<legend>').text('File list') + uploads_title : $('<legend>').text('File list'), + ondelete:onDelete }); }