function dataProcess(data, container, entry_tpl)
{
	// marqueurs à remplacer
	var markerArray = ['FROM_PROFIL_URL', 'FROM_IMG_URL', 'PROFIL_URL', 'PROFIL_NAME', 'ENTRY_ID', 'FROM_USER_NAME', 'ENTRY_CONTENT', 'ENTRY_DATE', 'ENTRY_VIA'];

	// on enlève les "indes.php?id=xx" des href qui ont été ajoutés par typo3
	entry_tpl = entry_tpl.replace(/(index.php\?id=[0-9]*)/gm, '');

	if (data.results.length > 0)
	{
		$(data.results).each(function(el){
			//var substArray = [twitter_url + this.from_user, this.profile_image_url, twitter_url + profil_name, profil_name, this.id, this.from_user, formatTwitString(this.text), relativeTime(this.created_at), replaceHtmlSpecial(this.source)];
			var substArray = ['<a class="tweet-url screen-name" href="'+ twitter_url + this.from_user +'" target="_blank">'+ this.from_user +'</a></strong>', this.profile_image_url, twitter_url + profil_name, profil_name, this.id, this.from_user, formatTwitString(this.text), relativeTime(this.created_at), replaceHtmlSpecial(this.source)];
			var replaced_content = markerSubstitute(markerArray, substArray, entry_tpl);
			container.append(replaced_content);
		});
	}
	else
	{
		container.parent().find('div.no_entry').css('display','block');
	}
}

function showError(container)
{
	$('div.error', ('div.info',container)).css('display','block');
}

function markerSubstitute(markerArray, substArray, tpl)
{
	str = ' ' + tpl;
	$(markerArray).each(function(el){
		var markerReg = new RegExp('(###'+markerArray[el]+'###)', 'g');
		str = str.replace(markerReg, substArray[el]);

	});
	return str;
}

function formatTwitString(str)
{
	str = ' '+str;
	str = str.replace(/((ftp|https?):\/\/([-\w\.]+)+(:\d+)?(\/([\w/_\.]*(\?\S+)?)?)?)/gm,'<a href="$1" target="_blank">$1</a>');
	str = str.replace(/([^\w])\@([\w\-]+)/gm,'$1@<a href="http://twitter.com/$2" target="_blank">$2</a>');
	str = str.replace(/([^\w])\#([\w\-]+)/gm,'$1<a href="http://twitter.com/search?q=%23$2" target="_blank">#$2</a>');
	return str;
}

function relativeTime(pastTime)
{
	var origStamp = Date.parse(pastTime);
	var curDate = new Date();
	var currentStamp = curDate.getTime();

	var difference = parseInt((currentStamp - origStamp)/1000);

	if(difference < 0)			return false;
	if(difference <= 5)			return "Just now";
	if(difference <= 20)			return "Seconds ago";
	if(difference <= 60)			return "A minute ago";
	if(difference < 3600)			return parseInt(difference/60)+" minutes ago";
	if(difference <= 1.5*3600) 		return "One hour ago";
	if(difference < 23.5*3600)		return Math.round(difference/3600)+" hours ago";
	if(difference < 1.5*24*3600)		return "One day ago";

	var dateArr = pastTime.split(' ');
	return dateArr[4].replace(/\:\d+$/,'')+' '+dateArr[2]+' '+dateArr[1]+(dateArr[3]!=curDate.getFullYear()?' '+dateArr[3]:'');
}

function replaceHtmlSpecial(str)
{
	str = str.replace(/\&lt;/gi, '<');
	str = str.replace(/\&gt;/gi, '>');
	str = str.replace(/\&quot;/gi, '"');
	return str;
}

