//Feature #997 New Site: Twitter Feed
$.getScript("http://twitter.com/status/user_timeline/saplinglearning.json?count=100&callback=jsTweet");
$.getScript("http://blog.saplinglearning.com/feeds/posts/default?alt=json-in-script&callback=jsBlogger");
$.getScript("http://news.saplinglearning.com/feeds/posts/default?alt=json-in-script&callback=jsNews");

var timeTestemonial;

/**
 * @type Testimonials
 */

var testimonials = new Testimonials();
testimonials.addEventListener(Testimonials.LOADED, showNextTestemonial);

function showTestimonial() {
	var currentTestimonial = testimonials.currentTestimonial();
	jQuery("#messenger-right").fadeOut(0);
	jQuery("#messenger-right").html("<p>"+currentTestimonial.getText()+"</p>"+"<span>"+currentTestimonial.getName()+", "+currentTestimonial.getOccupation()+", "+currentTestimonial.getInstitution()+"</span>").fadeIn(500);
}

function showNextTestemonial(){
	timeTestemonial = setTimeout(function(){
		var currentTestimonial = testimonials.currentTestimonial();
		testimonials.getNextTestimonial();
		showTestimonial();
		timeTestemonial = setTimeout('showNextTestemonial();', 6990);
	},10);
}

function clearTestemonialTime(){
	clearTimeout(timeTestemonial);
	timeTestemonial = setTimeout('showNextTestemonial();', 7000);
}

function parseTwitterDate($stamp){
	// convert to local string and remove seconds and year //
	var date = new Date(Date.parse($stamp)).toLocaleString().substr(0, 16);
	// get the two digit hour //
	var hour = date.substr(-5, 2);
	// convert to AM or PM //
	var ampm = hour<12 ? ' AM' : ' PM';
	if (hour>12) hour-= 12;
	if (hour==0) hour = 12;
	// return the formatted string //
	return date.substr(0, 11)+' á ' + hour + date.substr(13) + ampm;
}

function getComp(value){
	var delimiter = 27;
	if (value.length <= 0) return "";
	if (value.length > delimiter)
		return value.substr(0,delimiter) + "<br />" + getComp(value.substr(delimiter));
	return value;
}

function erURL($1) {
	var comp = getComp($1);
	return "<a class='twitter_url' href='"+$1+"' rel='nofollow' target='_blank' %SS% >"+comp+"</a>";
}

function format_text(text) {
	text = text.replace(new RegExp("(ht|f)tp(s?)\:\/\/[0-9a-zA-Z]([-.\w]*[0-9a-zA-Z])*(:(0-9)*)*(\/?)([a-zA-Z0-9\-\.\?\,\'\/\\\+&amp;%\$#_]*)?","g"),erURL).replace('%SS%','');
	text = text.replace(/\#([^\W]*)/g,"<a href='http://search.twitter.com/search?q=%23$1' class='twitter_hashtag' rel='nofollow' target='_blank'>#$1</a>");
	text = text.replace(/\@([^\W]*)/g,"<a href='http://twitter.com/$1' class='twitter_profile' rel='nofollow' target='_blank'>@$1</a>");
	return text;
}
//Feature #997 New Site: Twitter Feed
function jsTweet(json) {
	var print_count=0;
	for (i=0;i<json.length;i++) {
		var data = new Date((new Date()).getTime() - (new Date(json[i].created_at)).getTime());
		if(format_text(json[i].text).indexOf("<a")!=0 && print_count<4){
			$("#tab3").append("<p class='twitter_text'><a target='_blank' rel='nofollow' class='twitter_profile' href='http://twitter.com/saplinglearning'>@saplinglearning</a> "+format_text(json[i].text)+"</p> <strong class='twitter_date'>"+H(json[i].created_at)+"</strong>");
			print_count++;
		}
	}
	$("#tab3").append("<br /><br /><a href=\"http://twitter.com/saplinglearning\" target=\"_blank\">Follow us</a>");
}

var K = function () {
	var a = navigator.userAgent;
	return {
		ie: a.match(/MSIE\s([^;]*)/)
	}
}();

var H = function (a) {
	var b = new Date();
	var c = new Date(a);
	if (K.ie) {
		c = Date.parse(a.replace(/( \+)/, ' UTC$1'))
	}
	var d = b - c;

	var e = 1000,
	minute = e * 60,
	hour = minute * 60,
	day = hour * 24,
	week = day * 7;
	if (isNaN(d) || d < 0) {
		return ""
	}
	d = d - hour;
	if (d < e * 7) {
		return "now"
	}
	if (d < minute) {
		return Math.floor(d / e) + " seconds ago"
	}
	if (d < minute * 2) {
		return "about 1 minute"
	}
	if (d < hour) {
		return Math.floor(d / minute) + " minutes ago"
	}
	if (d < hour * 2) {
		return "about 1 hour"
	}
	if (d < day) {
		return Math.floor(d / hour) + " hours ago"
	}
	if (d > day && d < day * 2) {
		return "yesterday"
	}
	if (d < day * 365) {
		return Math.floor(d / day) + " days ago"
	} else {
		return "more than a year"
	}
};

function jsBlogger(json) {
	var data = json.feed.entry[0];
	$("#tab2").html("<h3>"+data.title.$t+" <span>by "+data.author[0].name.$t+"</span></h3>\n\
			<span>"+data.content.$t.replace(/<[^>]*>/g,'').substring(0,70)+"...\n\
			<a href='"+data.link[4].href+"' target='_blank'>read more</a></span>");
}

function jsNews(json){
	var data = json.feed.entry[0];
	$("#tab4").html("<h3>"+data.title.$t+" <span>by "+data.author[0].name.$t+"</span></h3>\n\
			<span>"+data.content.$t.replace(/<[^>]*>/g,'').substring(0,70)+"...\n\
			<a href='"+data.link[4].href+"' target='_blank'>read more</a></span>");
}
