-
Notifications
You must be signed in to change notification settings - Fork 416
/
twitter.translate.xml
33 lines (32 loc) · 1.49 KB
/
twitter.translate.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
<?xml version="1.0" encoding="UTF-8"?>
<table xmlns="http://query.yahooapis.com/v1/schema/table.xsd">
<meta>
<sampleQuery>select * from {table} where search="brhackday" and language="en" and amount=10</sampleQuery>
<author>Christian Heilmann</author>
<documentationURL>http://isithackday.com/hacks/twittertranslate</documentationURL>
<description>Adds a translation to every result of a Twitter search</description>
</meta>
<bindings>
<select itemPath="json.results" produces="XML">
<inputs>
<key id='language' type='xs:string' paramType='variable' required="true" />
<key id='search' type='xs:string' paramType='variable' required="true" />
<key id='amount' type='xs:string' paramType='variable' required="true" />
</inputs>
<execute><![CDATA[
var out = '';
var tweets = y.query('select * from json where url="http://search.twitter.com/search.json?q='+search+'&rpp='+amount+'"').results.json;
var rows = tweets;
for each (var result in rows.results){
var text = result.text.toString();
var text = text.replace(/\\/,'');
var trans = y.query('select * from google.translate where q="'+text+'" and target="'+language+'"');
var trans = trans.results.translatedText.toString();
var trans = trans.replace(/\\/,'');
result.trans += <translatedText>{trans}</translatedText>;
}
response.object = rows;
]]></execute>
</select>
</bindings>
</table>