var baseLink='';
/**
 * Trunc - Truncate the text to a specified length
 * @param txt - String to be truncated
 * @param len - length of text
 * @return String
 */
function trunc(txt,len){
	var newTxt ='';
	if (txt.length>len){
		newTxt = txt.substr(0,len-3) + "...";
	}else{
		newTxt = txt;
	}
	return newTxt;
}
function TwitterBox(){
}
//pra onde o link manda
TwitterBox.prototype.UID="";
//pra onde o link manda
TwitterBox.prototype.targetUrl="";
//pra onde o link manda
TwitterBox.prototype.service="";
// subtituir conteudo do objeto
TwitterBox.prototype.replaceContent=true;
// id do objeto onde serao inclusos os thumbs 
TwitterBox.prototype.contentId="";
// seta da esquerda
TwitterBox.prototype.leftArrowId="";
//seta da esquerda
TwitterBox.prototype.rightArrowId="";
//link da seta da direita
TwitterBox.prototype.leftArrowLink="";
//link da seta da direita
TwitterBox.prototype.rightArrowLink="";
//ID do paginador
TwitterBox.prototype.pagerId="";
//Total de paginas
TwitterBox.prototype.totalPages=0;
//Total de paginas
TwitterBox.prototype.totalVideos=0;
//Pagina atual
TwitterBox.prototype.currentPage=0;
//Thumbs por pagina
TwitterBox.prototype.itemsPerPage=8;
TwitterBox.prototype.keyword='';
TwitterBox.prototype.dbField='';
//Methodo a ser chamado
TwitterBox.prototype.method="";
//Methodo a ser chamado
TwitterBox.prototype.href="";
//Title da contagem de videos
TwitterBox.prototype.listaTitle_prefixo="";
//Title da contagem de videos
TwitterBox.prototype.listaTitle_sufixo="";
//Title da contagem de videos
TwitterBox.prototype.listaTitleID="";
//RESPOSTA DO JSON
TwitterBox.prototype.rawData=null;

TwitterBox.prototype.curBox=0;
TwitterBox.prototype.nextPage=function(){};
TwitterBox.prototype.prevPage=function(){};

// get JS
TwitterBox.prototype.d= function(data){
	alert(data);
};

TwitterBox.prototype.fetch= function(callback,pageStart){
	if (pageStart===undefined){
		pageStart = this.currentPage;
	}else{
		this.currentPage = pageStart;
	}
	$(this.contentId).fadeTo(100,0.01);
	myData = {
			"ajaxThing" :this.contentId,
			"selecao" :this.keyword,
			"field" :this.dbField,
			"page" :this.itemsPerPage,
			"start" :pageStart,
			"target" : this.targetUrl,
			"targetAdd" :'',
			"pageBox1": ''
	};
	$.post( this.service, myData, callback , "json");
};
/**
 * BUILD TABLE - build the table based on values
 */
TwitterBox.prototype.buildTable = function(i){
	//alert(this.rawData[0]);#FC00F3
	var tabela = "";
	tabela = '';
	tabela += '<div class="meusVideosBox" style="font-size:10px;float:left;width:225px;height:100px;border:1px solid #333;background:#111;margin:2px 5px">';
	tabela += '<div style="float:left;"><img src="';
	tabela += this.rawData[i].usuario_foto;
	tabela += '" style="padding:0px 5px 5px 0px;"></div>'
	tabela += '<span style="color:#FC00F3;font-size:10px;">' + this.rawData[i].usuario + '</span> via ';
	tabela += '<span class="tw_fonte" style="color:#FC00F3;font-size:10px;">' + this.rawData[i].fonte + '</span><br/>';
	tabela += '<span style="color:#ccc;font-size:10px;">' + this.rawData[i].created_at + '</span><br/>';
	tabela += '<span class="tw_text" style="color:#fff;font-size:10px;">' + this.rawData[i].mensagem + '</span><br/>';
	tabela += '</div>';
	$(this.contentId).append(tabela);
};
/** 
 * pagination - handle all the pagination items
 */
TwitterBox.prototype.pagination=function (){
	var curPage = this.currentPage;
	var total = this.totalVideos;
	var ipp = this.itemsPerPage;
	var minPag = 0;
	var maxPag = Math.floor(total/ipp);
	var pagesToShow = 8; // besides the current one - should be an even number
	
	if (curPage>99){
		pagesToShow = 6;
	}
	// Strings
	var curPageStr 		= "<span style='color:#F92F4E;;font-weight:normal;font-size:12px'>" + (curPage+1) + "</span>";
	var nextPageStr 	= "<a class='nextPage' style='color:#F92F4E;cursor: pointer; cursor: hand;font-weight:bold;font-size:14px' >&gt;</a>&nbsp;";
	var lastPageStr 	= "<a class='lastPage' style='color:#F92F4E;cursor: pointer; cursor: hand;font-weight:bold;font-size:14px'> &gt;|</a>";
	var prevPageStr 	= "<a class='prevPage' style='color:#F92F4E;cursor: pointer; cursor: hand;font-weight:bold;font-size:14px'>&lt;</a>";
	var fisrtPageStr 	= "<a class='firstPage' style='color:#F92F4E;cursor: pointer; cursor: hand;font-weight:bold;font-size:14px'>|&lt;</a>&nbsp;";
	
	// paginacao central
	var pagesStr="";
	
	// calcula a paginacao antes da pagina atual
	var minPageDisplay = curPage-(pagesToShow/2); 
	var maxPageDisplay = curPage;
	
	var i=0;
	
	if (minPageDisplay<=0){
		//maxPageDisplay += minPageDisplay;
		minPageDisplay = 0;
	}
	
	for (i=minPageDisplay;i<maxPageDisplay;i++){
		pagesStr += " <a class='linkPaginacao' style='font-size:12px;color:#F92F4E;cursor: pointer; cursor: hand;color:#fff;' name='" + (i) +  "' title='P&aacute;gina " + (i) +  "'>" + (i+1) + "</a> ";
	}
	
	pagesStr += " " + curPageStr + " ";
	
	minPageDisplay = curPage +1;
	maxPageDisplay = curPage + 1 + (pagesToShow/2);
	
	if (minPageDisplay>maxPag){
		maxPageDisplay=0;
	}
	if (maxPageDisplay>=maxPag){
		maxPageDisplay = maxPag;
		minPageDisplay = curPage+1;
	}

	for (i=minPageDisplay;i<maxPageDisplay;i++){
		pagesStr += " <a class='linkPaginacao' style='font-size:12px;color:#F92F4E;cursor: pointer; cursor: hand;color:#fff;' name='" + i +  "' title='P&aacute;gina " + (i+1) +  "'>" + (i+1) +  "</a> ";
	}
	
	if (curPage>0){
		pageCtrlStrL = fisrtPageStr + "&nbsp;" + prevPageStr;
	}else{
		pageCtrlStrL ='';
	}

	if (curPage<maxPageDisplay){
		pageCtrlStrR = nextPageStr + "&nbsp;" + lastPageStr;
	}else{
		pageCtrlStrR='';
	}
	
	//alert(maxPag);
	//alert(pagesStr);
	var coisa = "<table width='100%' border='0' cellspacing='0' cellpadding='0' style='padding:0px;margin:0px;'>";
	coisa += "<tr><td style='font-weight:normal;font-size:10px;color:#fff;padding-left:0px;'>" + this.totalVideos + " v&iacute;deos";
	coisa += "</td>";

	coisa += "<td align='center'>";
	coisa += pageCtrlStrL + pagesStr + pageCtrlStrR;
	coisa += "</td>";

	coisa += "<td align='right' style='font-weight:normal;font-size:10px;color:#fff;padding-right:0px;'>" + (maxPag===0?1:maxPag) + " p&aacute;ginas";
	coisa += "</td></tr>";
	coisa += "</table>";
	$('#' + this.pagerId).empty().append(coisa);
};

TwitterBox.prototype.generate = function(){
	//this.totalVideos = this.rawData[0].tvid;
	//this.totalPages = Math.ceil(this.totalVideos/this.itemsPerPage);
	$(this.contentId).fadeTo(1, 0.1);
	if (this.replaceContent){
		$(this.contentId).empty();
	}
	var dataCount = 0;
	for (dat in this.rawData) {
		dataCount++;
	}
	for ( var i = 0; i < dataCount; i++) {
		this.buildTable(i);
	}
	/*
	// we have arrows:
	if (this.pagerId!=''){
		this.pagination();
		var curL = this.currentPage-1; 
		var curR = this.currentPage+1; 
		var lnk = this.href;
		var maxpg = this.totalPages-1;
		$('.linkPaginacao').click(function (){
			
			eval(lnk + '(' + this.name + ')');
		});
		$('.firstPage').click(function (){
			eval(lnk + '(' + '0' + ')');
		});
		$('.lastPage').click(function (){
			eval(lnk + '(' + maxpg + ')');
		});
		$('.nextPage').click(function (){
			eval(lnk + '(' + curR + ')');
		});
		$('.prevPage').click(function (){
			eval(lnk + '(' + curL + ')');
		});
	}
	if (this.rightArrowId!=''){
		// CONTROL ARROWS
		// RIGHT ARROW
		if (this.currentPage<maxpg){
			var cur = this.currentPage+1; 
			var lnk = this.href;
			$(this.rightArrowId).fadeTo(100,1);
			$(this.rightArrowId).attr({
						'href' :'javascript:' + lnk + "(" + cur + ")" +';'
				});
		}
		if (this.currentPage==(this.totalPages-1)){
			$(this.rightArrowId).fadeTo(100,0.25);
			$(this.rightArrowId).attr({
						'href' :'javascript:;'
				});
		}
		// LEFT ARROW
		if (this.currentPage>0){
			$(this.leftArrowId).fadeTo(100,1);
			var curL = this.currentPage-1; 
			var lnk = this.href;
			$(this.leftArrowId).attr({
						'href' :'javascript:' + lnk + "(" + curL + ")" +';'
				});
		}
		if (this.currentPage==0){
			$(this.leftArrowId).fadeTo(100,0.25);
			$(this.leftArrowId).attr({'href' :'javascript:;'});
		}
	}
	*/
	$(this.contentId).fadeTo(150, 1);
	$(this.listaTitleID).empty().append(this.listaTitle_prefixo + this.rawData[0].tvid + this.listaTitle_sufixo);
};







////
/// NA PISTA
////
var twbox = new TwitterBox();
twbox.UID='_sel1_';
twbox.contentId='#twitterPage';
twbox.listaTitleID='#numeroVideos';
twbox.rightArrowId = '#prog6_child #SetaDir a';
twbox.leftArrowId = '#prog6_child #SetaEsq a';

twbox.service="/publica/twitter/";
twbox.keyword='';
twbox.targetUrl = '/video/new_maisRecentes/';
twbox.itemsPerPage = 8;
twbox.currentPage=0;
twbox.listaTitle_prefixo='voc&ecirc; tem ';
twbox.listaTitle_sufixo=' v&iacute;deos';
twbox.field='3';
twbox.pagerId='prog6_paginas';
twbox.href='jumpPage_twbox';
twbox.fetch(proc_twbox);
function jumpPage_twbox(page){
	twbox.fetch(proc_twbox,page);
}
function proc_twbox(data){
	twbox.rawData = data;
	twbox.generate();
}
