diff options
author | anekos | 2013-04-19 20:42:54 +0900 |
---|---|---|
committer | anekos | 2013-04-19 20:43:38 +0900 |
commit | 40cebd0ed6d580b4fc89da8a5580b5d1cd23936a (patch) | |
tree | 5b5d321f6383f469847bad73f2ec1571c8622590 | |
parent | e6caec107ce1325ea5866c10d9f7000e75608180 (diff) | |
download | vimperator-plugins-40cebd0ed6d580b4fc89da8a5580b5d1cd23936a.tar.bz2 |
sbmcommentsviewer に Twitter 検索を追加
-rw-r--r-- | sbmcommentsviewer.js | 33 |
1 files changed, 32 insertions, 1 deletions
diff --git a/sbmcommentsviewer.js b/sbmcommentsviewer.js index a049432..ea40f37 100644 --- a/sbmcommentsviewer.js +++ b/sbmcommentsviewer.js @@ -32,6 +32,7 @@ viewSBMComments [url] [options] - l : livedoor clip - z : Buzzurl - t : Topsy +- T : Twitter - XXX:今後増やしていきたい >|| @@ -373,6 +374,35 @@ var SBM = { //{{{ liberator.echo('Failed: Topsy'); } } + }, //}}} + twitter: { //{{{ + getURL: function(url){ + var urlPrefix = 'http://search.twitter.com/search.json?q=' + return urlPrefix + encodeURIComponent(url.replace(/%23/g,'#')); + }, + parser: function(xhr){ + var json = jsonDecode(xhr.responseText); + if (json && json.results){ + let c = new SBMContainer('T', json.results.length, { + faviconURL: 'https://twitter.com/favicon.ico', + pageURL: 'https://twitter.com/search/realtime?q=' + encodeURIComponent(json.query) + }); + json.results.forEach(function(result){ + c.add( result.from_user, + new Date(result.created_at), + result.text, + null, + { + userIcon: result.profile_image_url, + link: 'https://twitter.com/' + result.from_user + } + ); + }); + return c; + } else { + liberator.echo('Failed: Twitter'); + } + } } //}}} }; //}}} @@ -459,7 +489,8 @@ var manager = { d: 'delicious', l: 'livedoorclip', z: 'buzzurl', - t: 'topsy' + t: 'topsy', + T: 'twitter' }, format: { id: 'ID', |