- Timestamp:
- 12/28/09 08:07:23 (3 years ago)
- Location:
- websites/twicli
- Files:
-
- 2 modified
-
thumbnail.js (modified) (2 diffs)
-
twicli.html (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
websites/twicli/thumbnail.js
r36282 r36287 12 12 if (links[i].href.match(/^http:\/\/twitpic\.com\/(\w+)$/)) { 13 13 var id = RegExp.$1; 14 this.addThumbnail(elem, 'http://twitpic.com/show/thumb/' + id, links[i].href);14 addThumbnail(elem, 'http://twitpic.com/show/thumb/' + id, links[i].href); 15 15 } 16 16 else if (links[i].href.match(/^http:\/\/movapic\.com\/pic\/(\w+)$/)) { 17 17 var id = RegExp.$1; 18 this.addThumbnail(elem, 'http://image.movapic.com/pic/t_' + id + '.jpeg', links[i].href);18 addThumbnail(elem, 'http://image.movapic.com/pic/t_' + id + '.jpeg', links[i].href); 19 19 } 20 20 else if (links[i].href.match(/^http:\/\/f\.hatena\.ne\.jp\/([\w-_]+)\/(\d{8})(\w+)$/)) { … … 22 22 var date = RegExp.$2; 23 23 var id = RegExp.$3; 24 this.addThumbnail(elem,24 addThumbnail(elem, 25 25 'http://f.hatena.ne.jp/images/fotolife/' + user[0] + '/' + user + 26 26 '/' + date + '/' + date + id + '_120.jpg', 27 27 links[i].href); 28 28 } 29 else if (links[i].href.match(/^http:\/\/(www\.flickr\.com)\/photos\/[\w-_@]+\/(\d+)/) || 30 links[i].href.match(/^http:\/\/(flic\.kr)\/p\/(\w+)/)) { 31 var snipcode = RegExp.$1 == 'flic.kr' ? base58_decode(RegExp.$2) : RegExp.$2; 32 var link = links[i].href; 33 xds.load('http://www.flickr.com/services/rest?method=flickr.photos.getInfo'+ 34 '&format=json&api_key=9bc57a7248847fd9a80982989e80cfd0&photo_id='+snipcode, 35 function(x) { 36 var p = x.photo; 37 if (!p) return; 38 addThumbnail(elem, 'http://farm'+p.farm+'.static.flickr.com/'+p.server+'/'+ 39 p.id+'_'+p.secret+'_s.jpg', link) 40 }, 41 'jsoncallback'); 42 } 29 43 } 30 44 }, 45 }); 31 46 32 addThumbnail: function(elem, src, link) { 33 var thm = document.createElement('img'); 34 thm.src = src; 35 thm.className = 'thumbnail-image'; 36 var a = document.createElement('a'); 37 a.href = link; 38 a.target = 'twitter'; 39 a.className = 'thumbnail-link'; 40 a.appendChild(thm); 41 elem.insertBefore(a, elem.childNodes[2]); 47 function base58_decode(snipcode) { 48 var alphabet = '123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ'; 49 var num = snipcode.length; 50 var decoded = 0; 51 var multi = 1; 52 for (var i = (num-1) ; i >= 0 ; i--) { 53 decoded = decoded + multi * alphabet.indexOf(snipcode[i]); 54 multi = multi * alphabet.length; 42 55 } 43 }); 56 return decoded; 57 } 58 59 function addThumbnail(elem, src, link) { 60 var thm = document.createElement('img'); 61 thm.src = src; 62 thm.className = 'thumbnail-image'; 63 var a = document.createElement('a'); 64 a.href = link; 65 a.target = 'twitter'; 66 a.className = 'thumbnail-link'; 67 a.appendChild(thm); 68 elem.insertBefore(a, elem.childNodes[2]); 69 } -
websites/twicli/twicli.html
r36283 r36287 111 111 } 112 112 XDomainScript.prototype = { 113 load: function(url, callback ) {113 load: function(url, callback, callback_key) { 114 114 var id = this.cb_cnt++; 115 115 var ele = document.createElement("script"); 116 ele.src = url + (url.indexOf('?') < 0 ? '?' : '&') + 'callback=xds.cb' + id;116 ele.src = url + (url.indexOf('?') < 0 ? '?' : '&') + (callback_key ? callback_key : 'callback') + '=xds.cb' + id; 117 117 ele.type = "text/javascript"; 118 118 this['cbe' + id] = ele;
![(please configure the [header_logo] section in trac.ini)](/share/chrome/site/your_project_logo.png)