/* 
	Autor: Webgrafismo
	Website: http://www.webgrafismo.com
	Email: webgrafismo@gmail.com
	Licença: Creative Commons 3.0
	Projecto: Twitter API em jQuery
 */

function twitterAPI(f) {
	var g = {
		Utilizador : "",
		Tweets : 4,
		ulClass : "tweets-ul",
		containerID : "",
		onLoad : false
	};
	g = $.extend( {}, g, f);
	if (!g.containerID) {
		g.containerID = "#carrega-twitter";
		document.write('<div id="carrega-twitter"></div>')
	}
	if (!$(g.containerID).length) {
		document
				.write('<div id="' + g.containerID.replace(/\#/, "") + '"></div>')
	}
	var d = $(g.containerID);
	var e = d.html();
	var b = function(k) {
		for (i = 0; i < k.length; i++) {
			var l = k[i].user.screen_name;
			var j = k[i].text
					.replace(
							/((https?|s?ftp|ssh)\:\/\/[^"\s\<\>]*[^.,;'">\:\s\<\>\)\]\!])/g,
							function(m) {
								return '<a href="' + m + '">' + m + "</a>"
							}).replace(
							/\B@([_a-z0-9]+)/ig,
							function(m) {
								return m.charAt(0)
										+ '<a href="http://twitter.com/'
										+ m.substring(1) + '">'
										+ m.substring(1) + "</a>"
							});
			var h = "<li><span>"
					+ j
					+ '</span> <a style="font-size:85%" href="http://twitter.com/'
					+ l + "/statuses/" + k[i].id + '">' + c(k[i].created_at)
					+ "</a></li>";
			twitUL.append(h);
			if (i == k.length - 1) {
				$("#twitter").remove()
			}
		}
	};
	var c = function(k) {
		var j = k.split(" ");
		k = j[1] + " " + j[2] + ", " + j[5] + " " + j[3];
		var h = Date.parse(k);
		var l = (arguments.length > 1) ? arguments[1] : new Date();
		var m = parseInt((l.getTime() - h) / 1000);
		m = m + (l.getTimezoneOffset() * 60);
		if (m < 60) {
			return "menos de 1 minuto atrás"
		} else {
			if (m < 120) {
				return "1 minuto atrás"
			} else {
				if (m < (60 * 60)) {
					return (parseInt(m / 60)).toString() + " minutos atrás"
				} else {
					if (m < (120 * 60)) {
						return "1h atrás"
					} else {
						if (m < (24 * 60 * 60)) {
							return "" + (parseInt(m / 3600)).toString()
									+ " horas atrás"
						} else {
							if (m < (48 * 60 * 60)) {
								return "1 dia atrás"
							} else {
								return (parseInt(m / 86400)).toString()
										+ " dias atrás"
							}
						}
					}
				}
			}
		}
	};
	var a = function() {
		d.html("");
		$('<div id="twitter">' + e + "</div>").appendTo(d);
		twitUL = $(
				"<ul" + (g.ulClass ? ' class="' + g.ulClass + '"' : "") + "/>")
				.appendTo(d);
		$.ajax( {
			url : "http://twitter.com/statuses/user_timeline/" + g.Utilizador
					+ ".json",
			data : {
				count : g.Tweets
			},
			dataType : "jsonp",
			success : b,
			cache : true
		})
	};
	if (g.onLoad) {
		$(window).load(a)
	} else {
		$(document).ready(a)
	}
};


