From a17b7ef04fc7b54aaa69ae6358b20804363433bc Mon Sep 17 00:00:00 2001 From: juanf <juanf> Date: Mon, 31 Oct 2016 10:53:12 +0000 Subject: [PATCH] SSDM-4200 : File Search Support SVN: 37218 --- .../html/js/controllers/MainController.js | 58 ++++++++++++++++++- 1 file changed, 57 insertions(+), 1 deletion(-) 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 3dbc0edd97b..e8230103a9c 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 @@ -701,7 +701,63 @@ function MainController(profile) { $("#search").removeClass("search-query-searching"); localReference.changeView("showAdvancedSearchPage", value); } - } else { //Search Domain + } else if(searchDomain == "filesearch") { + localReference.serverFacade.searchOnSearchDomain(searchDomain, value, function(data) { + + if(localSearchId === localReference.lastSearchId) { + $("#search").removeClass("search-query-searching"); + + var columns = [ { + label : 'Entity Kind', + property : 'entityKind', + sortable : true + }, { + label : 'Entity Type', + property : 'entityType', + sortable : true + }, { + label : 'Code', + property : 'code', + sortable : true + }, { + label : 'Path', + property : 'pathInDataSet', + sortable : true + }]; + + var getDataList = function(callback) { + var dataList = []; + if(data.result) { + for(var i = 0; i < data.result.length; i++) { + var result = data.result[i]; + + dataList.push({ + entityKind : result.resultLocation.entityKind, + entityType : result.resultLocation.entityType, + permId : result.resultLocation.permId, + code : result.resultLocation.code, + pathInDataSet : result.resultLocation.pathInDataSet + }); + } + } + callback(dataList); + }; + + var rowClick = function(e) { + switch(e.data.entityKind) { + case "DATA_SET": + mainController.changeView('showViewDataSetPageFromPermId', e.data.permId); + break; + } + } + + var dataGrid = new DataGridController(searchDomainLabel + " Search Results", columns, getDataList, rowClick, true, "SEARCH_" + searchDomainLabel); + localReference.currentView = dataGrid; + dataGrid.init($("#mainContainer")); + history.pushState(null, "", ""); //History Push State + } + }); + } else { localReference.serverFacade.searchOnSearchDomain(searchDomain, value, function(data) { var dataSetCodes = []; for(var i = 0; i < data.result.length; i++) { -- GitLab