New file |
0,0 → 1,42 |
/* |
Copyright (c) 2004-2006, The Dojo Foundation |
All Rights Reserved. |
|
Licensed under the Academic Free License version 2.1 or above OR the |
modified BSD license. For more information on Dojo licensing, see: |
|
http://dojotoolkit.org/community/licensing.shtml |
*/ |
|
dojo.provide("dojo.data.YahooStore"); |
dojo.require("dojo.data.core.RemoteStore"); |
dojo.require("dojo.lang.declare"); |
dojo.require("dojo.io.ScriptSrcIO"); |
dojo.declare("dojo.data.YahooStore", dojo.data.core.RemoteStore, {_setupQueryRequest:function (result, requestKw) { |
var start = 1; |
var count = 1; |
if (result) { |
start = result.start || start; |
count = result.count || count; |
} |
var sourceUrl = "http://api.search.yahoo.com/WebSearchService/V1/webSearch?appid=dojo&language=en&query=" + result.query + "&start=" + start + "&results=" + count + "&output=json"; |
requestKw.url = sourceUrl; |
requestKw.transport = "ScriptSrcTransport"; |
requestKw.mimetype = "text/json"; |
requestKw.jsonParamName = "callback"; |
}, _resultToQueryMetadata:function (json) { |
return json.ResultSet; |
}, _resultToQueryData:function (json) { |
var data = {}; |
for (var i = 0; i < json.ResultSet.totalResultsReturned; ++i) { |
var record = json.ResultSet.Result[i]; |
var item = {}; |
item["Url"] = [record.Url]; |
item["Title"] = [record.Title]; |
item["Summary"] = [record.Summary]; |
var arrayIndex = (json.ResultSet.firstResultPosition - 1) + i; |
data[arrayIndex.toString()] = item; |
} |
return data; |
}}); |
|