diff --git a/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SampleTable/SampleTableController.js b/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SampleTable/SampleTableController.js index 4c7cb6c8245c533dd086786b7733322f944b112c..a0680da146bd2e07292db66e2b300ec1ececda29 100644 --- a/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SampleTable/SampleTableController.js +++ b/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SampleTable/SampleTableController.js @@ -83,8 +83,8 @@ function SampleTableController(parentController, title, experimentIdentifier, pr } //Create and display table - var dataGridController = SampleDataGridUtil.getSampleDataGrid(selectedSampleTypeCode, samples, null, null, null, null, null, null, false); - dataGridController.init(this._sampleTableView.getTableContainer()); + this._sampleTableView._dataGridController = SampleDataGridUtil.getSampleDataGrid(selectedSampleTypeCode, samples, null, null, null, null, null, null, true); + this._sampleTableView._dataGridController.init(this._sampleTableView.getTableContainer()); } } } \ No newline at end of file diff --git a/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SampleTable/SampleTableView.js b/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SampleTable/SampleTableView.js index 23cf419fa7f90f661bbb571c8ae04e5688251fe3..242c0906d855ce8354f1828867dc164d987fb468 100644 --- a/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SampleTable/SampleTableView.js +++ b/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SampleTable/SampleTableView.js @@ -128,6 +128,36 @@ function SampleTableView(sampleTableController, sampleTableModel) { _this.updateSamples(_this._sampleTableModel.experimentIdentifier); }); $list.append($batchUpdateOption); + + var $batchDeleteOption = $("<li>", { 'role' : 'presentation' }).append($("<a>", {'title' : 'Delete Samples'}).append("Delete Samples")); + $batchDeleteOption.click(function() { + var grid = _this._dataGridController._grid; + var selected = grid.getSelected(); + if(selected != undefined && selected.length == 0){ + alert("Please select at least one sample to delete!"); + }else{ + var warningText = "The next samples will be deleted: "; + var sampleTechIds = []; + for(var sIdx = 0; sIdx < selected.length; sIdx++) { + sampleTechIds.push(selected[sIdx].id); + warningText += selected[sIdx].identifier + " "; + } + + var modalView = new DeleteEntityController(function(reason) { + mainController.serverFacade.deleteSamples(sampleTechIds, reason, function(data) { + if(data.error) { + Util.showError(data.error.message); + } else { + Util.showSuccess("Sample/s Deleted"); + mainController.refreshView(); + } + }); + }, true, warningText); + modalView.init(); + } + }); + $list.append($batchDeleteOption); + return $dropDownMenu; }