dishy = {

	owner:'crcna',
	fontMin:12,
	fontMax:12,
	amountOfTags:300,
	showAmount:true,
	callback:null,

	tagHTML:[],
	tagFeed:[],

	getLatest:function(){
		var url = 'http://del.icio.us/feeds/json/'+dishy.owner+'?raw&sort=alpha&callback=dishy.feedLatest';
		dishy.engage(url);
	},
	feedLatest:function(o){
		dishy.latest=o;
		var out = dishy.xFolkify(o);
		dishy.latestHTML=out;
		if(dishy.callback !== null){
			eval(dishy.callback+'()');
			dishy.callback = null;
		}
	},

	getByTag:function(tag){
		var url = 'http://del.icio.us/feeds/json/'+dishy.owner+'/'+tag+'?raw&sort=alpha&callback=dishy.feedByTag';
		dishy.currentTag=tag;
		dishy.engage(url);
	},
	feedByTag:function(o){
		dishy.tagFeed[dishy.currentTag]=o;
		var out = dishy.xFolkify(o);
		dishy.tagHTML[dishy.currentTag] = out;
		if(dishy.callback !== null){
			eval(dishy.callback+'()');
			dishy.callback = null;
		}
	},

	getTags:function(){
		var url = 'http://del.icio.us/feeds/json/tags/'+dishy.owner+'?raw';
		if(dishy.amountOfTags!==null){url+='&count='+dishy.amountOfTags;}
		url+='&sort=alpha&callback=dishy.feedTags';
		dishy.engage(url);
	},
	feedTags:function(o){
		dishy.tags=o;
		var out = [];
		for (var k in o) {
			if(o[k]<dishy.fontMin){
				var size = dishy.fontMin;
			}
			if(o[k]>dishy.fontMin){
				var size = dishy.fontMax;
			}
			if(o[k]>dishy.fontMin && o[k]<dishy.fontMax){
				var size = o[k];
			}
			var tag = '<a rel="tag" style="font-size:'+size+'px" href="http://del.icio.us/'+dishy.owner+'/'+k+'">'+k;
			tag+= dishy.showAmount===true?'('+o[k]+')':'';
			tag+='</a><br />';
			out.push(tag);
		}
		out = out.join('');
		dishy.tagsHTML=out;
		if(dishy.callback !== null){
			eval(dishy.callback+'()');
			dishy.callback = null;
		}
	},

	engage:function(url){
		var s = document.createElement('script');
		s.setAttribute('src', url);
		document.getElementsByTagName('head')[0].appendChild(s);
	},
	xFolkify:function(o){
		var out = [];

		function compare(a, b) {
		   if (a.d < b.d) { return -1; }
		   if (a.d > b.d) { return 1;  }
		   if (a.d == b.d) { return 0;  }
		}
		o.sort(compare);

		for (var k in o)
		{
			var entry ='<h5><a target="_parent" class="taggedlink" href="'+o[k].u+'">'+o[k].d+'</a></h5>';
			if(o[k].n!==undefined){
				entry+= '<p class="nospace">'+o[k].n+'</p><p>Tagged in ';
		    }
		    if(o[k].t)
		    {
				entry+='';
				for(var i=0;i<o[k].t.length;i++){
					entry+='| <a href="http://del.icio.us/'+dishy.owner+'/'+o[k].t[i]+'" onclick="showlinks(this); return false;">'+o[k].t[i]+'</a> '
				}
				entry+='</p>';
				out.push(entry);
		    }


	   }



	   out = out.join('');
	   return out;
	}
}
