From 302c27687c1405ddda22ad3f6dbc537a7e34b228 Mon Sep 17 00:00:00 2001 From: David Huynh Date: Wed, 7 Apr 2010 18:23:07 +0000 Subject: [PATCH] "type" in freebase suggest results got dropped so we need to fetch the result's types ourselves. git-svn-id: http://google-refine.googlecode.com/svn/trunk@409 7d457c2a-affb-35e4-300a-418c747d4874 --- .../webapp/scripts/util/custom-suggest.js | 2 +- .../scripts/views/data-table-cell-ui.js | 53 ++++++++++++------- 2 files changed, 35 insertions(+), 20 deletions(-) diff --git a/src/main/webapp/scripts/util/custom-suggest.js b/src/main/webapp/scripts/util/custom-suggest.js index 1e483ea9d..cf2522fe2 100644 --- a/src/main/webapp/scripts/util/custom-suggest.js +++ b/src/main/webapp/scripts/util/custom-suggest.js @@ -9,7 +9,7 @@ schemaPrefixes.push(includedTypes[i] + "/"); } - var results = data.result; + var results = "result" in data ? data.result : []; var entries1 = []; var entries2 = []; diff --git a/src/main/webapp/scripts/views/data-table-cell-ui.js b/src/main/webapp/scripts/views/data-table-cell-ui.js index 8d62ec43c..ba76cb73f 100644 --- a/src/main/webapp/scripts/views/data-table-cell-ui.js +++ b/src/main/webapp/scripts/views/data-table-cell-ui.js @@ -208,26 +208,41 @@ DataTableCellUI.prototype._searchForMatch = function() { var match = null; var commit = function() { if (match != null) { - var params = { - judgment: "matched", - topicID: match.id, - topicGUID: match.guid, - topicName: match.name, - types: $.map(match.type, function(elmt) { return elmt.id; }).join(",") + var query = { + "id" : match.id, + "type" : [] }; - if (elmts.checkSimilar[0].checked) { - params.similarValue = self._cell.v; - params.columnName = Gridworks.cellIndexToColumn(self._cellIndex).name; - - self._postProcessSeveralCells("recon-judge-similar-cells", params, true); - } else { - params.row = self._rowIndex; - params.cell = self._cellIndex; - - self._postProcessOneCell("recon-judge-one-cell", params, true); - } - - DialogSystem.dismissUntil(level - 1); + var baseUrl = "http://api.freebase.com/api/service/mqlread"; + var url = baseUrl + "?" + $.param({ query: JSON.stringify({ query: query }) }) + "&callback=?"; + + $.getJSON( + url, + null, + function(o) { + var types = "result" in o ? o.result.type : []; + var params = { + judgment: "matched", + topicID: match.id, + topicGUID: match.guid, + topicName: match.name, + types: $.map(types, function(elmt) { return elmt.id; }).join(",") + }; + if (elmts.checkSimilar[0].checked) { + params.similarValue = self._cell.v; + params.columnName = Gridworks.cellIndexToColumn(self._cellIndex).name; + + self._postProcessSeveralCells("recon-judge-similar-cells", params, true); + } else { + params.row = self._rowIndex; + params.cell = self._cellIndex; + + self._postProcessOneCell("recon-judge-one-cell", params, true); + } + + DialogSystem.dismissUntil(level - 1); + }, + "jsonp" + ); } };