/* <![CDATA[ */
function replace(text) {
	text = text.replace(/(\b(https?|ftp|file):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/ig, '<a href="$1" target="_blank">$1</a>')
	text = text.replace(/(^|\s)@(\w+)/g, '$1<a href="http://www.twitter.com/$2" target="_blank">@$2</a>');
	return text.replace(/(^|\s)#(\w+)/g, '$1<a href="http://search.twitter.com/search?q=%23$2" target="_blank">#$2</a>');
}

function date(date){
	date = date.split(' ');
	time = date[3].split(':');
	return changeDay(date[0]) + ', ' + date[2] + ' de ' + changeMonth(date[1]) + ' - ' + parseInt(time[0] - 2) + ':' + time[1] + ':' + time[2];
}

function changeDay(day){
	switch(day){
		case 'Fri':
			return 'Sexta';
		case 'Thu':
			return 'Quinta';
		case 'Wed':
			return 'Quarta';
		case 'Tue':
			return 'Terça';
		case 'Mon':
			return 'Segunda';
		case 'Sun':
			return 'Domingo';
		case 'Sat':
			return 'Sábado';
	}
}

function changeMonth(month){
	switch(month){
		case 'Jan':
			return 'Janeiro';
		case 'Feb':
			return 'Fevereiro';
		case 'Mar':
			return 'Março';
		case 'Apr':
			return 'Abril';
		case 'May':
			return 'Maio';
		case 'Jun':
			return 'Junho';
		case 'Jul':
			return 'Julho';
		case 'Aug':		
			return 'Agosto';
		case 'Sep':
			return 'Setembro';
		case 'Oct':
			return 'Outubro';
		case 'Nov':
			return 'Novembro';
		case 'Dec':
			return 'Dezembro';
	}
}

getTweets = function(username, callback){
	requestURL = "http://twitter.com/statuses/user_timeline/" + username + ".json?callback=?&count=8";
	$.ajaxSetup({ cache: false }); 
	$.getJSON(requestURL, callback);
	$.ajaxSetup({ cache: true }); 
}

$(document).ready(function(){
	var username = 'fonini';
	var count = 5;
    getTweets(username, function(json, status){
		var content = '';
		$.each(json, function(i){
			content += '<li>' + replace(this['text']) + '<br /><em><a href="http://www.twitter.com/' + username + '/status/' + this['id'] + '" target="_blank">' + date(this['created_at']) + '</a></em></li><br />';
		});
		$('#twitter').html(content);
	});
	$('#textoBusca').focus(function(){
		if ($(this).val() == 'Busca'){
			$(this).val('');
		} 
	});
	$.ajaxSetup({ cache: false }); 
	$.getJSON('/lastfm.php?tipo=ultima', function(data){
		try{
			if (data.recenttracks.track[0]['@attr']['nowplaying'] == 'true'){
				artista = data.recenttracks.track[0]['artist']['#text'];
				musica = data.recenttracks.track[0]['name'];
				$('#musica').html('<p>Ouvindo agora: <img src="images/icon_eq.gif" /><br /><strong>' + artista + ' - ' + musica + '</strong></p>');
			}
		}
		catch(e){
			artista = data.recenttracks.track[0]['artist']['#text'];
			musica = data.recenttracks.track[0]['name'];
			$('#musica').html('<p>Acabou de ouvir:<br /><strong>' + artista + ' - ' + musica + '</strong></p>');
		}
	});
	function stripslashes( str ) {	 
		return (str+'').replace(/\0/g, '0').replace(/\\([\\'"])/g, '$1');
	}
	$.getJSON('http://www.fonini.net/lastfm.php?tipo=artistas', function(data){
		var str = '<ul>';
		$.each(data.topartists.artist, function(i, item){
			if (i < 10)
				str += '<li><a href="'+ stripslashes(item.url) +'" target="_blank"><strong>' + item.name + '</strong> - ' + item.playcount + ' execuções</a></li>';
		});
		str += '</ul>';
		$('#lastfm').html(str);
	});
	$.ajaxSetup({ cache: true });
	SyntaxHighlighter.config.clipboardSwf = 'js/clipboard.swf';
	SyntaxHighlighter.all();
	$('a[rel*=externo]').click( function() {
		window.open(this.href);
		return false;
	});
});


function formatar(obj, tag_abrir, tag_fechar) {      
	var t_area = document.getElementById(obj);
	var i=0;
	var end = "";
	var browser=navigator.appName;
	if(browser=="Netscape"){
		if((t_area.selectionEnd-t_area.selectionStart)>0){
			while(t_area.value[i]){
				if(i==t_area.selectionStart) end = end + tag_abrir+t_area.value[i];
				else if(i==t_area.selectionEnd) end = end + tag_fechar+t_area.value[i];
				else end = end + t_area.value[i];
				i++;
			}
			if(i==t_area.selectionEnd) end = end + tag_fechar;                    
				t_area.value = end;
			}
		}
		else if (document.selection && document.selection.createRange) {
			t_area.focus();
			var area = document.selection.createRange();
				if(area.text.length>0)
					area.text = tag_abrir + area.text + tag_fechar;
		}
		t_area.focus();
}

/* ]]> */
