/**
 * 
 */
var fd_twitter = function (fd, element)
{
	
	var self			= this;
	var tweets			= [];
	
	var _construct = function ()
	{
		setup();
	};
	
	var setup = function ()
	{
		$.ajaxSetup({ cache: false });
		$.getJSON('http://api.twitter.com/1/statuses/user_timeline.json?delimiter=3&callback=?&screen_name=' + $(element).attr('rel'), 
		function (json)
		{
			render(json);
		});
	};
	
	var render = function (json)
	{
		var count = 0;
		$(json).each(function ()
		{
			if (count < 2)
				tweets.push(new fd_twitter_tweet(self, element, this));
				
			count++;
		});
	};
	
	
	
	
	_construct();
	
	return {
	};
};


var fd_twitter_tweet = function (fd_twitter, append, tweet)
{

	var self			= this;
	
	var _container, _title, _text, _time;
	
	var _construct = function ()
	{
		setup();
		render();
	};	
	
	var setup = function () 
	{
	};
	
	var render = function ()
	{
		_container	= $(document.createElement('div'))
						.addClass('tweet')
						.css('display', 'none')
						.appendTo($(append));
		_title		= $(document.createElement('strong'))
						.html(tweet.user.name)
						.appendTo($(_container));
						
		
						
		_text		= $(document.createElement('p'))
						.html(getLinks(tweet.text))
						.appendTo($(_container));
		
		var date = new Date(tweet.created_at);
		
		_time		= $(document.createElement('span'))
						.addClass('small')
						.html( ((date.getDate() < 10)? '0' + date.getDate() : date.getDate()) + '/' + (date.getMonth()+1) + '/' + date.getFullYear() + ' om ' + ((date.getHours() < 10)? '0' + date.getHours() : date.getHours()) + ':' + ((date.getMinutes() < 10)? '0' + date.getMinutes() : date.getMinutes()))
						.appendTo($(_container));
						
		$(_container).fadeIn();
		
	};
	
	var getLinks = function (text)
	{
		var splitted = text.split(' ');
		
		var newSplit;
		var newText = '';
		var dot		= '';
		for ( var i in splitted ) 
		{
			if (splitted[i].substring((splitted[i].length - 1), splitted[i].length) == '.')
			{
				splitted[i] = splitted[i].substring(0, (splitted[i].length - 1));
				dot			= '.';
			} 
			else
			{
				dot			= '';
			}
		
			if (splitted[i].substring(0, 1) == '#')
			{				
				newSplit = '<a href="https://twitter.com/#!/search/' + splitted[i].replace('#', '%23') + '" target="_blank">' + splitted[i] + '</a>';
				splitted[i] = newSplit;
			}
			
			if (splitted[i].substring(0, 1) == '@')
			{				
				newSplit = '<a href="https://twitter.com/#!/' + splitted[i] + '" target="_blank">' + splitted[i] + '</a>';
				splitted[i] = newSplit;
			}
			
			if (splitted[i].substring(0, 7) == 'http://')
			{				
				newSplit = '<a href="' + splitted[i] + '" target="_blank">' + splitted[i] + '</a>';
				splitted[i] = newSplit;
			}
			
			
			
			
			newText += splitted[i] + dot + ' ';
		}
		
		return newText;
	};

	_construct();
	return
	{
		
	};
};
