diff --git a/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/DataGrid/SampleDataGridUtil.js b/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/DataGrid/SampleDataGridUtil.js index 3b74c35f0a493f5c289940f418f444dd51e7df8c..52b50aab9f52f51482162b43d7079bff54456c6b 100644 --- a/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/DataGrid/SampleDataGridUtil.js +++ b/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/DataGrid/SampleDataGridUtil.js @@ -14,9 +14,21 @@ var SampleDataGridUtil = new function() { render : function(data, grid) { var paginationInfo = null; if(isDynamic) { - paginationInfo = { - pagFunction : _this.getDataListDynamic(samplesOrCriteria, false), - pagOptions : grid.lastUsedOptions + var indexFound = null; + for(var idx = 0; idx < grid.lastReceivedData.objects.length; idx++) { + if(grid.lastReceivedData.objects[idx].permId === data.permId) { + indexFound = idx + (grid.lastUsedOptions.pageIndex * grid.lastUsedOptions.pageSize); + break; + } + } + + if(indexFound !== null) { + paginationInfo = { + pagFunction : _this.getDataListDynamic(samplesOrCriteria, false), + pagOptions : grid.lastUsedOptions, + currentIndex : indexFound, + totalCount : grid.lastReceivedData.totalCount + } } } return (isLinksDisabled)?data.identifier:FormUtil.getFormLink(data.identifier, "Sample", data.permId, paginationInfo); diff --git a/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SampleForm/SampleFormView.js b/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SampleForm/SampleFormView.js index e7c071f21807ccf83d03be85161b627fcf0baaf1..6ed44188414c7d894f5233c0ee6f11b961167d67 100644 --- a/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SampleForm/SampleFormView.js +++ b/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SampleForm/SampleFormView.js @@ -265,16 +265,19 @@ function SampleFormView(sampleFormController, sampleFormModel) { } if(this._sampleFormModel.mode !== FormMode.CREATE && this._sampleFormModel.paginationInfo) { - var $backBtn = FormUtil.getButtonWithIcon("glyphicon-arrow-left", function () { - - }); - toolbarModel.push({ component : $backBtn, tooltip: "Go to previous Object from list" }); + if(this._sampleFormModel.paginationInfo.currentIndex > 0) { + var $backBtn = FormUtil.getButtonWithIcon("glyphicon-arrow-left", function () { + + }); + toolbarModel.push({ component : $backBtn, tooltip: "Go to previous Object from list" }); + } - var $nextBtn = FormUtil.getButtonWithIcon("glyphicon-arrow-right", function () { - - }); - toolbarModel.push({ component : $nextBtn, tooltip: "Go to next Object from list" }); - + if(this._sampleFormModel.paginationInfo.currentIndex+1 < this._sampleFormModel.paginationInfo.totalCount) { + var $nextBtn = FormUtil.getButtonWithIcon("glyphicon-arrow-right", function () { + + }); + toolbarModel.push({ component : $nextBtn, tooltip: "Go to next Object from list" }); + } } var $header = views.header; diff --git a/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/lib/grid/js/Grid.js b/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/lib/grid/js/Grid.js index be184f40b44a86dcd76a216086c33c6ac6f34182..0e2c5ce124f09c9e65db8b99a7b376f13ce2cb10 100644 --- a/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/lib/grid/js/Grid.js +++ b/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/lib/grid/js/Grid.js @@ -631,7 +631,7 @@ $.extend(Grid.prototype, { if(isDynamic) { dataList = dataListResult.objects; - + thisGrid.lastReceivedData = dataListResult; if(thisGrid.onChangeState && thisGrid.tableSettings) { thisGrid.tableSettings.sort = { sortProperty : options.sortProperty,