var _feedcount = 0;
var _items = new Array;
var _tags = new Array;

var _lastmarked;
var _biggest = 0;
var _minFreq = 1;

var _basetag = "dhyp";
var _stoplist = new Array("cen","thyp","net");

var _styles = ["font-size:10px;color:#444444;",
			   "font-size:13px;color:#333333;",
			   "font-size:16px;color:#333333;",
			   "font-size:19px;color:#333333;",
			   "font-size:22px;color:#333333;",
			   "font-size:24px;color:#222222;",
			   "font-size:26px;color:#222222;",
			   "font-size:28px;color:#222222;",
			   "font-size:30px;color:#111111;",
			   "font-size:32px;color:#111111;",
			   "font-size:33px;color:#111111;",
			   "font-size:34px;color:#000000;",
			   "font-size:35px;color:#000000;",
			   "font-size:36px;color:#000000;"]
			   

function popDelicious() {
	$("#content").css("background-image","url(./img/bg_large_white.gif)")
	$("#main").css("display","none");
	$("#block_root").css("display","none");
	$("#box_delicious").css("display","block");
	loadStuff('',1);
}

function loadStuff(_loadtags,_drawcloud) {
	
	_feedcount = 0;
	_items = new Array;
	_tags = new Array;
	
	getDelicious("esterhasz","Bernhard Rieder",_loadtags,_drawcloud);
	getDelicious("luckysemiosis","Samuel Szonieky",_loadtags,_drawcloud);
	getDelicious("fennec_sokoko","Camille Paloque-Bergès",_loadtags,_drawcloud);
	getDelicious("wazololo","Laurence Noël",_loadtags,_drawcloud);
	getDelicious("samueld","Samuel Da Silva",_loadtags,_drawcloud);
}

function loadUser(_user,_name,_loadtags,_drawcloud) {
	
	_feedcount = 0;
	_items = new Array;
	_tags = new Array;
	
	getDelicious(_user,_name,_loadtags,_drawcloud);
}

function getDelicious(_user,_name,_loadtags,_drawcloud) { 
	
	_feedcount++;
	
	var _url = "http://feeds.delicious.com/v2/json/" + _user + "/" + _basetag + _loadtags + "?callback=?&count=100";
	
	//prompt("",_url);
	
	$.getJSON(_url, function(_json) { 
	
		_html = $("#del_content").html();
		
		for (var i = 0; i < _json.length; i++) {
		
			_json[i]["p"] = _name;
			_json[i]["a"] = _user;
			
			_items.push(_json[i]);
			
			for(var j = 0; j < _json[i]["t"].length; j++) {
				if (_json[i]["t"][j].toLowerCase() != _basetag && jQuery.inArray(_json[i]["t"][j].toLowerCase(),_stoplist) == -1) {
					if (typeof(_tags[_json[i]["t"][j].toLowerCase()]) == "undefined") {
						_tags[_json[i]["t"][j].toLowerCase()] = 1;
					}
					else {
						_tags[_json[i]["t"][j].toLowerCase()]++;
						if(_tags[_json[i]["t"][j].toLowerCase()] > _biggest) {
							_biggest = _tags[_json[i]["t"][j].toLowerCase()];
						}
					}
				}
			}
		}
		
		_feedcount--;
		
		if(_feedcount == 0) {
			displayDelicious();
			if (_drawcloud == 1) {
				displayTagcloud();
			}
			$("#del_loading").css("display","none");
			$("#del_wholepage").fadeIn("slow");
		}
	});
}


function displayTagcloud() {
	
	sortTags();
	
	var _html = "";
	
	for(var i = 0; i < _tags.length; i++) {
		
		if (_tags[i][1] >= _minFreq) {
		
			_tmpsize = Math.round((_tags[i][1] - _minFreq) / _biggest * (_styles.length - 1));
			
			_html += '<span id="" class="tag" onclick="loadStuff(\'+' + _tags[i][0] + '\',0);markTag(this);" style="' + _styles[_tmpsize] + '">' + _tags[i][0] + '</span> ';
		}
	}
	
	$("#del_tagcloud").html(_html);
}


function displayDelicious() {

	_items.sort(sortByDate)

	var _html = "";
	
	for (var i = 0; i < _items.length; i++) {
	
		var _nicedate = _items[i]["dt"].substr(8,2) + "." + _items[i]["dt"].substr(5,2) + "." + _items[i]["dt"].substr(0,4) 
	
		_html += '<div class="linkblock">'+
				 '<span class="linkname" onclick="window.open(\'' + _items[i]["u"] + '\')">' + _items[i]["d"] + '</span> '+
				 '<span class="linkposter" onclick="loadUser(\'' + _items[i]["a"] + '\',\'' + _items[i]["p"] + '\',\'\',1);">(' + _items[i]["p"] + ')</span>'+
				 '<span class="linktags">' + _nicedate + ' || ' + _items[i]["t"].join(" ") + '</span>'+
				 '<span class="linkdescription">' + _items[i]["n"] + '</span>'+
				 '</div>';
	}
	
	$("#del_content").html(_html);
}


function sortByDate(a,b){
	if(a["dt"] > b["dt"]) {
		return -1;
	} else {
		return 1;
	}
}


// sorting the tags by alphabet

function sortTags() {
	
	var _tmptags = new Array;
	
	for(var _key in _tags) {
		
		var _tmp = new Array(_key,_tags[_key]);
			
		_tmptags.push(_tmp);
	}
	
	_tags = _tmptags;
	
	_tags.sort(sortByAlpha);
}

function sortByAlpha(a,b) {
	
	if(typeof(a[0]) != "undefined") { var ta = a[0].toLowerCase(); }
	if(typeof(b[0]) != "undefined") { var tb = b[0].toLowerCase(); }
	
	if(ta < tb) {
		return -1;
	} else {
		return 1;
	}
}

function markTag(_obj) {
	
	if(typeof(_lastmarked) != "undefined") {
		$(_lastmarked).css("background-color","#ffffff");
	}
	
	$(_obj).css("background-color","#FF3F3F");
	
	_lastmarked = _obj;
}
