source: Dev/trunk/src/client/dojox/data/demos/demo_GoogleFeedStore.html

Last change on this file was 483, checked in by hendrikvanantwerpen, 11 years ago

Added Dojo 1.9.3 release.

File size: 3.0 KB
Line 
1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
2                "http://www.w3.org/TR/html4/strict.dtd">
3<html>
4<head>
5        <style type="text/css">
6                @import "../../../dojo/resources/dojo.css";
7                @import "../../../dijit/themes/tundra/tundra.css";
8                @import "../../../dijit/themes/tundra/tundra_rtl.css";
9               
10                #output {
11                        width: 400px;
12                        position: absolute;
13                        top: 50px;
14                }
15                #entryContent {
16                        margin-left: 450px;
17                        position: absolute;
18                        top: 50px;
19                        background-color: #eee;
20                        height: 800px;
21                        padding: 2px;
22                }               
23                .search-result {
24                        width: 100%;
25                        border: 2px dashed;
26                        padding: 4px;
27                }
28                #entryContent h2 {
29                        text-decoration: underline;
30                }
31                .summary {
32                        font-weight: bolder;
33                }
34                .tags {
35                        background-color: lightGrey;
36                }
37        </style>
38
39        <title>Google Feed Store</title>
40
41        <script type="text/javascript" src="../../../dojo/dojo.js" djConfig="isDebug: true, parseOnLoad: true"></script>
42        <script type="text/javascript">
43                dojo.require("dijit.form.ComboBox");
44                dojo.require("dijit.form.FilteringSelect");
45                dojo.require("dojox.dtl");
46                dojo.require("dojox.dtl.ext-dojo.NodeList");
47                dojo.require("dojox.data.GoogleSearchStore");
48                dojo.require("dojox.data.GoogleFeedStore");
49               
50                dojo.addOnLoad(function(){
51                        dojo.connect(dojo.byId("output"), "onclick", function(evt) {
52                                if(evt.target.tagName != "A"){return true;}
53                                dojo.stopEvent(evt);
54                               
55                                dojo.byId("entryContent").innerHTML = dojo.query(".content", evt.target.parentNode)[0].innerHTML;
56                               
57                                return false;
58                        })
59                       
60                });
61
62                function doSearch() {                                       
63                        var query = {
64                                url: dojo.byId("searchText").value
65                        };
66                        var request = {query:query};
67                       
68                        var itemBuffer = [];
69                        var maxBufSize = 8;
70                        var outNode = dojo.byId("output");
71                        outNode.innerHTML = "Searching...";     
72                        var count = 0;
73                        var template = "GoogleFeedTemplate.html";
74                        testStore = new dojox.data.GoogleFeedStore();
75                        function doAppend(items){
76                                var node = document.createElement("div");
77                                node.id = "res" + (count++);
78                                outNode.appendChild(node);
79                                dojo.query("#"+node.id).dtl(template, { items: items , store: testStore});
80                        }
81                       
82                        request.onBegin = function(numItems){
83                                outNode.innerHTML += ".. found " + numItems + " results";
84                        };
85                       
86                        request.onComplete = doAppend;
87
88                        var count = dojo.byId("count").value;
89                        request.count = count ? Number(count) : 8;                     
90                       
91                        testStore.fetch(request);
92                }
93        </script>
94</head>
95<body class="tundra" style="margin:20px;">
96        <form>
97                Text: <select id="searchText" >
98                                <option value="http://shaneosullivan.wordpress.com/feed/">http://shaneosullivan.wordpress.com/feed/</option>
99                                <option value="http://dojocampus.org/content/category/dojo-cookies/feed/">http://dojocampus.org/content/category/dojo-cookies/feed/</option>
100                                <option value="http://www.dojotoolkit.org/aggregator/rss">http://www.dojotoolkit.org/aggregator/rss</option>
101                        </select>
102                Count: <input id="count" type="text" value="10" width=20/>
103                <input id="searchButton" type="button" value="store.fetch()" onclick="doSearch()" />
104               
105                <div id="output">
106                       
107                </div>
108                <div id="entryContent">
109                       
110                </div>
111        </form>
112</body>
113</html>
Note: See TracBrowser for help on using the repository browser.