Skip to content

Commit

Permalink
#1238 and #1239 , adds badges to query results and listens to filter
Browse files Browse the repository at this point in the history
events and updates 'bq' property of query_results configuration for the
search. Use geppetto-client branch
https://github.com/openworm/geppetto-client/tree/VFBv2.2.0.7-feature/1238
  • Loading branch information
jrmartin committed Nov 6, 2021
1 parent 7e8b00d commit d3204b8
Show file tree
Hide file tree
Showing 2 changed files with 50 additions and 5 deletions.
48 changes: 45 additions & 3 deletions components/VFBMain.js
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@ class VFBMain extends React.Component {

constructor (props) {
super(props);
this.datasourceConfiguration = require('./configuration/VFBMain/searchConfiguration').datasourceConfiguration;

this.state = {
canvasAvailable: false,
Expand All @@ -54,7 +55,8 @@ class VFBMain extends React.Component {
UIUpdated: true,
wireframeVisible: false,
downloadContentsVisible : true,
uploaderContentsVisible : true
uploaderContentsVisible : true,
searchDataSourceConfiguration : this.datasourceConfiguration
};

this.addVfbId = this.addVfbId.bind(this);
Expand All @@ -72,6 +74,7 @@ class VFBMain extends React.Component {
this.handlerInstanceUpdate = this.handlerInstanceUpdate.bind(this);
this.handleSceneAndTermInfoCallback = this.handleSceneAndTermInfoCallback.bind(this);
this.instancesFromDifferentTemplates = this.instancesFromDifferentTemplates.bind(this);
this.filterSelection = this.filterSelection.bind(this);

this.vfbLoadBuffer = [];
this.tutorialRender = undefined;
Expand Down Expand Up @@ -100,7 +103,6 @@ class VFBMain extends React.Component {

this.searchStyle = require('./configuration/VFBMain/searchConfiguration').searchStyle;
this.searchConfiguration = require('./configuration/VFBMain/searchConfiguration').searchConfiguration;
this.datasourceConfiguration = require('./configuration/VFBMain/searchConfiguration').datasourceConfiguration;

this.queryResultsColMeta = require('./configuration/VFBMain/queryBuilderConfiguration').queryResultsColMeta;
this.queryResultsColumns = require('./configuration/VFBMain/queryBuilderConfiguration').queryResultsColumns;
Expand Down Expand Up @@ -1639,6 +1641,45 @@ class VFBMain extends React.Component {
}
}
}

lookupFilter (item, bq, filterValue){
let lookup = "facets_annotation:" + item.key;
let re = new RegExp(lookup, 'g');
let found = bq.match(re);
if ( found ){
return bq.replace(found[0] + filterValue, "");
}
return bq;
}

filterSelection (item) {
let bq = this.state.searchDataSourceConfiguration.query_settings.bq;

switch (item.enabled) {
case "disabled":
bq = this.lookupFilter(item, bq, this.searchConfiguration.filter_positive);
bq = this.lookupFilter(item, bq, this.searchConfiguration.filter_negative);
break;
case "positive":
bq = this.lookupFilter(item, bq, this.searchConfiguration.filter_negative);
bq += " facets_annotation:" + item.key + "^100";
break;
case "negative":
bq = this.lookupFilter(item, bq, this.searchConfiguration.filter_positive);
bq += " facets_annotation:" + item.key + "^0.001";
break;
default:
break;
}
let updatedConfiguration = Object.assign(this.state.searchDataSourceConfiguration, {
query_settings : {
...this.state.searchDataSourceConfiguration.query_settings,
bq : bq
}
});
this.setState({ searchDataSourceConfiguration : updatedConfiguration })

}

render () {
if ((this.state.tutorialWidgetVisible == true) && (this.tutorialRender == undefined)) {
Expand Down Expand Up @@ -1759,9 +1800,10 @@ class VFBMain extends React.Component {

<Search ref="searchRef"
datasource="SOLR"
filtersListener={this.filterSelection}
searchStyle={this.searchStyle}
searchConfiguration={this.searchConfiguration}
datasourceConfiguration={this.datasourceConfiguration} />
datasourceConfiguration={this.state.searchDataSourceConfiguration} />

<VFBDownloadContents ref="downloadContentsRef" open={false} />

Expand Down
7 changes: 5 additions & 2 deletions components/configuration/VFBMain/searchConfiguration.js
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ var searchStyle = {
singleResult: {
"color": "white",
"fontSize": "18px",

"whiteSpace" : "normal",
":hover": {
"color": "#11bffe",
"background-color": "#252323",
Expand Down Expand Up @@ -107,9 +107,12 @@ var searchConfiguration = {
"resultsMapping":
{
"name": "label",
"id": "short_form"
"id": "short_form",
"labels" : "facets_annotation"
},
"filters_expanded": true,
"filter_positive" : "^100",
"filter_negative" : "^0.001",
"filters": [
{
"key": "facets_annotation",
Expand Down

0 comments on commit d3204b8

Please sign in to comment.