Subversion Repositories Applications.papyrus

Rev

Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed

/*
        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;
}});