fjb={


// This code is a slightly modified version of the code provided by Christian Heilmann at icant.co.uk sandbox fjb. Feel free to use it if it helps you.


// Properties to change
	rows:2,
	cols:3,
	nextLabel:'>>',
	prevLabel:'<<',
	linkID:'flickrlink',
	largePicID:'flickrshot',
	navClass1:'navprev',
	navClass2:'navnext',
	loadingMessage:'Loading images...',
	fullImageLink:'See full image on flickr',

// end properties, here be dragons
ls:null,current:1,init:function(){
    fjb.srcLink=document.getElementById(fjb.linkID);
    if(!fjb.srcLink){
      return;
    }
   fjb.srcLink.innerHTML=fjb.loadingMessage;
   var furl=fjb.srcLink.href.replace(/.*groups\//,'');
   var url='http://flickr.com/services/feeds/groups_pool.gne?id='+furl+'&format=json';
   var script=document.createElement('script');
   script.type = 'text/javascript';
   script.src=url;
   document.getElementsByTagName("head")[0].appendChild(script);
 },compute:function(obj){
   fjb.stream=document.createElement('div');
   fjb.stream.id=fjb.linkID;
   var output='',temp='';
   for(i in obj.items){
    temp=obj.items[i].media.m;
    temp=temp.replace(/_m.jpg/g,'_s.jpg');
    output+='<div class="imageblock"><a href="'+obj.items[i].link + '" title="'+obj.items[i].title + '" onclick="fjb.show(this);return false"><img src="' + temp+'" alt="'+obj.items[i].title+'" /></a></div>';
   }
   var rep=fjb.srcLink.parentNode.nodeName.toLowerCase()==='p'?fjb.srcLink.parentNode:fjb.srcLink;
    rep.parentNode.replaceChild(fjb.stream,rep);
    fjb.stream.innerHTML=output;
    var prevlink='<div class="'+fjb.navClass1+'"><a href="#" onclick="fjb.navigate(-1); return false" title="back to previous photos">'+fjb.prevLabel+'</a></div>';
    fjb.stream.innerHTML=prevlink+fjb.stream.innerHTML;
    var nextlink='<div class="'+fjb.navClass2+'"><a href="#" onclick="fjb.navigate(1); return false" title="view more photos">'+fjb.nextLabel+'</a></div>';
    fjb.all=obj.items.length;
    fjb.stream.innerHTML+=nextlink;
    for(var i=1;i<=fjb.all-1;i++){
      fjb.stream.getElementsByTagName('div')[i].style.display='none';
    }
    fjb.navigate(0);
  },navigate:function(offset){
    for(var i=1;i<=fjb.all;i++){
      fjb.stream.getElementsByTagName('div')[i].style.display='none';
    }
    var change=fjb.rows*fjb.cols*offset;
    fjb.current+=change;
    for(var i=fjb.current;i<fjb.current+fjb.rows*fjb.cols;i++){
      if(fjb.stream.getElementsByTagName('div')[i]){
	fjb.stream.getElementsByTagName('div')[i].style.display='block';
      }
    }
    var fl=fjb.stream.getElementsByTagName('a')[0];
    fl.style.display=fjb.current==1?'none':'block';
    var ll=fjb.stream.getElementsByTagName('a')[fjb.all+1];
    ll.style.display=fjb.current>fjb.all-fjb.pics?'none':'block';
  },show:function(o){
    if(fjb.ls===null){
      fjb.ls=document.createElement('div');
      document.body.appendChild(fjb.ls);
      fjb.ls.id=fjb.largePicID;
      fjb.ls.style.position='absolute';
    }
    var prev='<p><a href="'+o.href+'">'+fjb.fullImageLink+'</a></p>';
    fjb.ls.innerHTML='<a href="#" onclick="this.parentNode.style.display=\'none\'; this.parentNode.parent.focus();return false" class="fjbcloser">X</a><h4>'+o.title+'</h4><a href="#" onclick="this.parentNode.style.display=\'none\'; this.parentNode.parent.focus();return false">'+o.innerHTML.replace(/_s.jpg/,'_m.jpg')+'</a>'+prev;
    fjb.ls.style.display='block';
    var y=0;
    if(self.pageYOffset){
      y=self.pageYOffset;
    }
    else if (document.documentElement && document.documentElement.scrollTop){
      y=document.documentElement.scrollTop;
    }
    else if(document.body){
      y=document.body.scrollTop;
    }
    fjb.ls.style.top=y+'px';
    fjb.ls.parent=o;
    fjb.ls.getElementsByTagName('a')[0].focus();
  },addLoadEvent:function(func){
    var oldonload = window.onload;
    if (typeof window.onload != 'function') {
      window.onload=func;
    }
    else{
      window.onload=function(){
	if(oldonload){
	  oldonload();
	}
	func();
      }
    }
  }
};
function jsonFlickrFeed(obj){
  fjb.compute(obj);
}
fjb.addLoadEvent(fjb.init);

