diff options
| author | Franck Cuny <franck.cuny@gmail.com> | 2013-11-26 10:36:10 -0800 |
|---|---|---|
| committer | Franck Cuny <franck.cuny@gmail.com> | 2013-11-26 10:36:10 -0800 |
| commit | 8ddf2e94df70707b458528a437759b96046d3e01 (patch) | |
| tree | d442818d92d3c9c6f7fcdc92857a1228963849a1 /_posts/2008-08-16-my-lifestream-page.md | |
| parent | Don't need to use the IP in the makefile. (diff) | |
| download | lumberjaph-8ddf2e94df70707b458528a437759b96046d3e01.tar.gz | |
Huge update.
Moved all posts from textile to markdown. Updated all the CSS and
styles. Added a new page for the resume.
Diffstat (limited to '_posts/2008-08-16-my-lifestream-page.md')
| -rw-r--r-- | _posts/2008-08-16-my-lifestream-page.md | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/_posts/2008-08-16-my-lifestream-page.md b/_posts/2008-08-16-my-lifestream-page.md new file mode 100644 index 0000000..46a33a8 --- /dev/null +++ b/_posts/2008-08-16-my-lifestream-page.md @@ -0,0 +1,57 @@ +--- +layout: post +title: my lifestream page +summary: In which I write a simple lifestream page in javascript +--- + +For a while I've wanted to mash-up the different services I use on a single page. My first attempt was with <a href="http://plagger.org/trac">plagger</a>, and publishing all the information on my google calendar. That wasn't really interesting, as I don't need to archived all this stuff. After this one, I've tried to make a static page, using <a href="http://developer.yahoo.com/yui/">the yahoo! library interface</a> stuff. A page with tabs, each tabs for a service. The content was generated with Plagger and Template Toolkit. It was working fine, but I had to do some HTML, check why some some stuff were not working, etc. And as I'm not a designer, and as I'm incapable to think a good user interface, I was quickly fed up with this solution. + +I use <a href="http://pipes.yahoo.com/pipes/">yahoo! pipes</a> for mashing some feeds, and saw that you can get a result from your feed in JSON. I've started to think about a simple page with just some javascript, a simple css, and using the JSON result. So I've created a feed that combine the services that I use (<a title="pipe" href="http://pipes.yahoo.com/franckcuny/myfeeds " target="_blank">the pipe is here</a>), created <a href="http://franck.breizhdev.net/">a simple HTML page</a>, read some jquery documentation on how to read a JSON file, and created this page. The code is really simple. For the flickr stream, I use the code generated from the <a title="flickr badge generator" href="http://www.flickr.com/badge.gne">badge generator</a>. I've done some modifications, like removing the table, removing some classes, altering the css, ... The remaining code is + + +{% highlight html %} +<div id="flickr_badge_uber_wrapper"> + <script src="http://www.flickr.com/badge_code_v2.gne?count=9&display=latest&size=s&layout=h&source=user&user=27734462%40N00" type="text/javascript"></script></div> +{% endhighlight %} + +For displaying the result of the JSON feed, I've found some simple code, that I've modified a bit to feet my purpose. + +{% highlight javascript %} +$(function(){ + var CssToAdd = new Object(); + $.getJSON('http://pipes.yahoo.com/pipes/pipe.run?_id=NMLU4MNq3RGDW_8fpwt1Yg&_render=json&_callback=?', + function(data){ + $('div#loading-area').hide('fast'); + $.each(data.value.items, function(i,item){ + var a_class; + + try { + if (item.link.match(/last/)) { + a_class = 'lastfm'; + }else if (item.link.match(/pownce/)) { + a_class = 'lastfm'; + }else if (item.link.match(/breizhdev/)) { + a_class = 'blog'; + }else if (item.id.content.match(/google/)) { + a_class = 'greader'; + }else{ + a_class = 'delicious'; + } + }catch(err){ + a_class = 'delicious'; + } + + $('<a>').attr('href',item.link).text(item.title).addClass(a_class).appendTo('#sample-feed-block'); + }); + $('#sample-feed-block a').wrapAll('<ul>').wrap('<li>'); + }); +}); +{% endhighlight %} + +As my javascript's skills are near 0, I've no doubt that there is some better way to do this. Feel free to send me a patch ;) + +The page is available <a href="http://franck.breizhdev.net/">here</a>. + +If you want to copy this page, and use your own pipe, don't forget to append "<strong>=json&_callback=?</strong>" at the end of the url of the JSON version of the feed. + +The thing that I really like with this page, it's that everything fit in a single HTML file. The jquery.min.js is hosted on the <a title="jquery" href="http://jquery.com">jquery site</a>, the icons are favicons pulled directly from the sites, so anyone can juste copy this page, change the address of the pipe, modify the flickr call, play a bit with the embded CSS, and it's done. |
