diff --git a/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/controllers/MainController.js b/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/controllers/MainController.js index 76f8901d61a285e099f41e03c0491fbe831d0e3d..507ea0b9dd65e3a0da9a1807a2d5a42e71db1ecd 100644 --- a/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/controllers/MainController.js +++ b/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/controllers/MainController.js @@ -534,54 +534,84 @@ function MainController(profile) { break; case "showViewDataSetPageFromPermId": var _this = this; - this.serverFacade.searchDataSetWithUniqueId(arg, function(dataSetData) { - if(!dataSetData.result || !dataSetData.result[0]) { - window.alert("The item is no longer available, refresh the page, if the problem persists tell your admin that the Lucene index is probably corrupted."); - } else { - if(dataSetData.result[0].sampleIdentifierOrNull) { - _this.serverFacade.searchWithIdentifiers([dataSetData.result[0].sampleIdentifierOrNull], function(sampleData) { - document.title = "Data Set " + dataSetData.result[0].code; - _this._showViewDataSetPage(sampleData[0], dataSetData.result[0]); - //window.scrollTo(0,0); - }); - } else if(dataSetData.result[0].experimentIdentifier) { - _this.serverFacade.listExperimentsForIdentifiers([dataSetData.result[0].experimentIdentifier], function(experimentResults) { - var experimentRules = { "UUIDv4" : { type : "Attribute", name : "PERM_ID", value : experimentResults.result[0].permId } }; - var experimentCriteria = { entityKind : "EXPERIMENT", logicalOperator : "AND", rules : experimentRules }; - _this.serverFacade.searchForExperimentsAdvanced(experimentCriteria, null, function(experimentData) { + var dsCriteria = { + entityKind : "DATASET", + logicalOperator : "AND", + rules : { "UUIDv4" : { type : "Attribute", name : "PERM_ID", value : arg } } + }; + + this.serverFacade.searchForDataSetsAdvanced(dsCriteria, null, function(results) { + var datasetParentCodes = []; + if(results.objects[0]) { + for(var pIdx = 0; pIdx < results.objects[0].parents.length; pIdx++) { + datasetParentCodes.push(results.objects[0].parents[pIdx].code); + } + } + _this.serverFacade.searchDataSetWithUniqueId(arg, function(dataSetData) { + if(!dataSetData.result || !dataSetData.result[0]) { + window.alert("The item is no longer available, refresh the page, if the problem persists tell your admin that the Lucene index is probably corrupted."); + } else { + dataSetData.result[0].parentCodes = datasetParentCodes; + if(dataSetData.result[0].sampleIdentifierOrNull) { + _this.serverFacade.searchWithIdentifiers([dataSetData.result[0].sampleIdentifierOrNull], function(sampleData) { document.title = "Data Set " + dataSetData.result[0].code; - _this._showViewDataSetPage(experimentData.objects[0], dataSetData.result[0]); + _this._showViewDataSetPage(sampleData[0], dataSetData.result[0]); //window.scrollTo(0,0); }); - }); + } else if(dataSetData.result[0].experimentIdentifier) { + _this.serverFacade.listExperimentsForIdentifiers([dataSetData.result[0].experimentIdentifier], function(experimentResults) { + var experimentRules = { "UUIDv4" : { type : "Attribute", name : "PERM_ID", value : experimentResults.result[0].permId } }; + var experimentCriteria = { entityKind : "EXPERIMENT", logicalOperator : "AND", rules : experimentRules }; + _this.serverFacade.searchForExperimentsAdvanced(experimentCriteria, null, function(experimentData) { + document.title = "Data Set " + dataSetData.result[0].code; + _this._showViewDataSetPage(experimentData.objects[0], dataSetData.result[0]); + //window.scrollTo(0,0); + }); + }); + } } - } + }); }); break; case "showEditDataSetPageFromPermId": var _this = this; - this.serverFacade.searchDataSetWithUniqueId(arg, function(dataSetData) { - if(!dataSetData.result || !dataSetData.result[0]) { - window.alert("The item is no longer available, refresh the page, if the problem persists tell your admin that the Lucene index is probably corrupted."); - } else { - if(dataSetData.result[0].sampleIdentifierOrNull) { - _this.serverFacade.searchWithIdentifiers([dataSetData.result[0].sampleIdentifierOrNull], function(sampleData) { - document.title = "Data Set " + dataSetData.result[0].code; - _this._showEditDataSetPage(sampleData[0], dataSetData.result[0]); - //window.scrollTo(0,0); - }); - } else if(dataSetData.result[0].experimentIdentifier) { - _this.serverFacade.listExperimentsForIdentifiers([dataSetData.result[0].experimentIdentifier], function(experimentResults) { - var experimentRules = { "UUIDv4" : { type : "Attribute", name : "PERM_ID", value : experimentResults.result[0].permId } }; - var experimentCriteria = { entityKind : "EXPERIMENT", logicalOperator : "AND", rules : experimentRules }; - _this.serverFacade.searchForExperimentsAdvanced(experimentCriteria, null, function(experimentData) { + var dsCriteria = { + entityKind : "DATASET", + logicalOperator : "AND", + rules : { "UUIDv4" : { type : "Attribute", name : "PERM_ID", value : arg } } + }; + + this.serverFacade.searchForDataSetsAdvanced(dsCriteria, null, function(results) { + var datasetParentCodes = []; + if(results.objects[0]) { + for(var pIdx = 0; pIdx < results.objects[0].parents.length; pIdx++) { + datasetParentCodes.push(results.objects[0].parents[pIdx].code); + } + } + _this.serverFacade.searchDataSetWithUniqueId(arg, function(dataSetData) { + if(!dataSetData.result || !dataSetData.result[0]) { + window.alert("The item is no longer available, refresh the page, if the problem persists tell your admin that the Lucene index is probably corrupted."); + } else { + dataSetData.result[0].parentCodes = datasetParentCodes; + if(dataSetData.result[0].sampleIdentifierOrNull) { + _this.serverFacade.searchWithIdentifiers([dataSetData.result[0].sampleIdentifierOrNull], function(sampleData) { document.title = "Data Set " + dataSetData.result[0].code; - _this._showEditDataSetPage(experimentData.objects[0], dataSetData.result[0]); + _this._showEditDataSetPage(sampleData[0], dataSetData.result[0]); //window.scrollTo(0,0); }); - }); + } else if(dataSetData.result[0].experimentIdentifier) { + _this.serverFacade.listExperimentsForIdentifiers([dataSetData.result[0].experimentIdentifier], function(experimentResults) { + var experimentRules = { "UUIDv4" : { type : "Attribute", name : "PERM_ID", value : experimentResults.result[0].permId } }; + var experimentCriteria = { entityKind : "EXPERIMENT", logicalOperator : "AND", rules : experimentRules }; + _this.serverFacade.searchForExperimentsAdvanced(experimentCriteria, null, function(experimentData) { + document.title = "Data Set " + dataSetData.result[0].code; + _this._showEditDataSetPage(experimentData.objects[0], dataSetData.result[0]); + //window.scrollTo(0,0); + }); + }); + } } - } + }); }); break; case "showDrawingBoard": diff --git a/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/DataSetForm/DataSetFormView.js b/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/DataSetForm/DataSetFormView.js index c6a4528bd0277ed9846c437160f5ab031f95eab8..3055f6d8f715e13bb5443c42e20815e605e8c73e 100644 --- a/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/DataSetForm/DataSetFormView.js +++ b/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/DataSetForm/DataSetFormView.js @@ -152,6 +152,8 @@ function DataSetFormView(dataSetFormController, dataSetFormModel) { $dataSetTypeFieldSet.append($dataSetTypeLabel); var $dataSetCodeLabel = FormUtil.getFieldForLabelWithText('Code', this._dataSetFormModel.dataSet.code, null); $dataSetTypeFieldSet.append($dataSetCodeLabel); + var $dataSetParentsCodeLabel = FormUtil.getFieldForLabelWithText('Parents', JSON.stringify(this._dataSetFormModel.dataSet.parentCodes), null); + $dataSetTypeFieldSet.append($dataSetParentsCodeLabel); } var ownerName = null;