var p = 1; // Pagina Atual
var perPag = 8; // Registros por página
var nPags = null; // Número de páginas
var intStart = null; // Comeco do array
var videos_arr_p = new Array; // Array paginado
var arrTags = new Array(); // Array de tags para o combo
var sTag = document.location.href.split("?");
sTag = (sTag[1]) ? decodeURI(sTag[1].replace(/tag=/,"")) : null; // Tag selecionada

if(sTag) document.getElementById("breadc").innerHTML += " &raquo;  <a href='/salao/videos/?tag="+sTag+"'>"+sTag+"</a>";

function showTag(vTag) { location = "/salao/videos/index.shtml?tag="+encodeURI(vTag); }

function listaVideos(sortBy,inicio,fim) {
	var the_arr = (document.getElementById("mod_lista")) ? videos_arr : videos_arr_p;

	var vid_index = (document.getElementById("mod_lista")) ? document.getElementById("mod_lista") : document.getElementById("vid_lista");
	vid_index.innerHTML = "";

	if(sortBy == "dt") the_arr.sort(sortByDt);
	else if(sortBy == "tit") the_arr.sort(sortByTit);
	else if(sortBy == "comments") the_arr.sort(sortByComments);

	if(inicio != undefined && fim != undefined) the_arr = the_arr.slice(inicio,fim);
	for(i in the_arr) {
		var vItem = the_arr[i];

		vHTMLtags = "";
		if(!document.location.href.match("_v.shtml")) { // só mostra na lista, não no permalink
			for(k in vItem.tags) {
				vHTMLtags += "<a href='/salao/videos/?tag="+encodeURI(vItem.tags[k])+"'>"+vItem.tags[k]+"</a>";
				vHTMLtags += ", ";
			}
			vHTMLtags = vHTMLtags.substr(0,vHTMLtags.length-2); // tira última vírgula
			vHTMLtags =  'Tags: '+vHTMLtags;
		}
		var vTag  = (document.getElementById("mod_lista")) ? "h5" : "h2";
		vid_index.innerHTML += '<li class="clearfix">'+
							   '	<a href="/salao/videos/'+vItem.p+'"><img src="/imagem/fwa/'+vItem.img+'" /></a>' +
							   '	<'+vTag+'><a href="/salao/videos/'+vItem.p+'">'+vItem.tit+'</a></'+vTag+'>'+
							   '  <div class="add">Adicionado em '+vItem.dt+'</div>'+
							   '	<a href="'+vItem.p+'#comments"><div class="icon comments"></div> '+vItem.comments+'</a><br />'+
							   vHTMLtags +
							   '</li>';
	}
}

function mostraPagina(pag) {
	var cmb_ordem = document.getElementById("cmb_ordem");
	p = pag;
	geraPaginacao();
	writePaginacao();
	listaVideos(cmb_ordem.options[cmb_ordem.selectedIndex].value,intStart,perPag+intStart);
	contaHit();
}

function comboTags() {
	if(typeof(videos_arr) != "object") return void(null);

	var iTags = 0;
	var vHTML = "";
	for(i in videos_arr) {
		if(typeof(videos_arr[i].tags) != "object") continue;
		for(j in videos_arr[i].tags) {
			arrTags[iTags] = videos_arr[i].tags[j];
			iTags++;
		}
	}

	arrTags.sort();
	var vLastTag = "";
	var vSelected = "";

	vSelected = ('Mais vistos' == sTag) ? "selected" : "";
	for(i in arrTags) {
		if(vLastTag == arrTags[i] || arrTags[i] == "Mais vistos") continue;
		vSelected = (arrTags[i] == sTag) ? "selected" : "";
		vHTML += "<option value='/salao/videos/?tag="+encodeURI(arrTags[i])+"' "+vSelected+">"+arrTags[i]+"</option>\n";
		vLastTag = arrTags[i];
	}

	document.write(vHTML);
}

function filtraVideosPorTag() {
	if(!sTag) return void(null);

	var the_arr = new Array();
	for(i in videos_arr) {
		var vItem = videos_arr[i];
		if(sTag && !(inArray(vItem.tags,sTag))) continue; // retira os de outras categorias
		the_arr.push(vItem);
	}
	videos_arr = the_arr;
}

function geraPaginacao() {
	videos_arr_p = videos_arr;

	nPags = Math.ceil(videos_arr.length / perPag);
	intStart = (p-1) * perPag;
}

function inArray(arr,str) {
	for(iArr in arr) if(arr[iArr] == str) return true;
	return false;
}

function writePaginacao() {
	if(nPags <= 1) return void(null);

	var vHTML = "";
	var pP = p-1;
	if(p>1) vHTML += '<a href="javascript:mostraPagina('+pP+');">&laquo;</a>';

	vHTML += " | ";
	var vStyle = "";
	for(var i=1;i<=nPags;i++) {
		vStyle = (i == p) ? 'font-weight:bold' : '';
		vHTML += '<a href="javascript:mostraPagina('+i+')" style="'+vStyle+'">'+i+'</a> | ';
	}

	var nP = p+1;
	if(p<nPags) vHTML += '<a href="javascript:mostraPagina('+nP+');">&raquo;</a>';

	document.getElementById('paginacao').innerHTML = vHTML;
}

function sortByDt(a, b) {
	var x = a.dtSis;
	var y = b.dtSis;

	return ((x > y) ? -1 : ((x < y) ? 1 : 0));
}

function sortByTit(a, b) {
	var x = a.tit.toLowerCase();
	var y = b.tit.toLowerCase();

	return ((x < y) ? -1 : ((x > y) ? 1 : 0));
}

function sortByComments(a, b) {
	var x = a.comments;
	var y = b.comments;

	return ((x > y) ? -1 : ((x < y) ? 1 : 0));
}