// JavaScript Document
var filterId = 0;
var path = "/json/noticia/";
var esIe6 = ($.browser.msie && parseInt($.browser.version)<7);
var destacadoJson = "";
var destacadoItem = 0;
var itemDisplayqBoxUM = 10;
var itemDisplayqBox = 5;
var esIndex = false;
var updaterId = null;
var colBannerId = "";
var esMundial = (typeof(mundial) == "boolean") ? mundial : false;
//$(window).load(function(){
$(function(){
	esIndex = $("body.portada").length>0;
	$("#filter-icons li.click").click(function(e){
		var o = $(e.currentTarget);
		var i = $("#icons");
		if (this.id=="sh-icons"){
			if (i.is(":visible")){
				i.hide();
				o.addClass("more");
				o.siblings(".select").removeClass("select");
			}else {
				i.show();
				o.removeClass("more");
				o.siblings("#filter_"+filterId).addClass("select");
			}
			saveConfig();
		}else{
			o.siblings(".select").removeClass("select");
			o.addClass("select");
			//if (!i.is(":visible")) return false;
			filterId = o.attr("id").split("_")[1];
			if (filterId==0)
				$("#icons-list ul li").show();
			else
				$("#icons-list ul li").hide().siblings(".filter_"+filterId).show();
			if (!i.is(":visible")) o.siblings("#sh-icons").click();
			renderIcons();
			/*
			$("#icons").qscroll({
				prev: "img#icons-prev",
				next: "img#icons-next",
				wrapper: "div#icons-list ul",
				area: "div#icons-list"
			});			
			*/
		}
	});
	renderIcons();
	/*
	$("#icons").qscroll({
		prev: "img#icons-prev",
		next: "img#icons-next",
		wrapper: "div#icons-list ul",
		area: "div#icons-list"
	});
	*/
	var lticker = $("#ticker").qticker({
		control: "div#ticker-btn",
		wrapper: "div#ticker-cnt"
	});
	if (esIe6){
		$("li .click", "#icons-list").click(function(){
			var col = $("#column-2");
			var t = $(this);
			out = $("<div class='helper-out' style='top:"+t.offset().top+"px;left:"+t.offset().left+"px;width:68px;height:68px'></div>");
			$("body").append(out);
			out.animate({ 
				width: 304,
				height: 24,
				top:col.offset().top,
				left:col.offset().left
			}, 150 , function(){
				out.remove();
				createBox(t.get(0).id.split("_")[1], t.get(0).title);
			});
		});
	}else{
		$("li div", "#icons-list").click(function(){
			var col = $("#column-2");
			var t = $(this).siblings("img");
			out = $("<div class='helper-out' style='top:"+t.offset().top+"px;left:"+t.offset().left+"px;width:68px;height:68px'></div>");
			$("body").append(out);
			out.animate({ 
				width: 304,
				height: 24,
				top:col.offset().top,
				left:col.offset().left
			}, 150 , function(){
				out.remove();
				createBox(t.get(0).id.split("_")[1], t.get(0).title);
			});
		});
	}
	var lpool = $("div#pools").qpool({
		form: "form#pool",
		result: "div#pool_result",
		path:"/app/encuestas/get"
	});

	$("div.box","#content").each(function(){
		renderBox(this,true);
	});
	renderBox($("#ticker-cnt"),true);
	//renderBox("#content div.box",true);

	$("div.span-6").sortable({
		handle: 'div.box-title',
		axis:'y',
		revert:155,
		cancel: '#box-1009, .nomove',
		helper:function(e, ui) {
			return '<div><img style="position:absolute; left:'+((e.clientX - ui.offset().left)-34)+'px" width="68" height="68" src="'+$("#ico_"+ui.get(0).id.split("-")[1]).attr("src")+'" /></div>';
		},
		stop:sortableStop,
		over: function(event, ui) { 
			if (ui.item.is("li")) $(".fuera-column").hide();
		},
		activate: function(event, ui) { 
			if (ui.item.is("li")) {
				$col1 = $(this);
				$col1.prepend("<li class='fuera-column ui-draggable ui-sortable-placeholder'></li>");
			}
		},
		out: function(event, ui) {
			if (ui.item.is("li"))  $(".fuera-column").show();
			$("body").css("cursor","auto");
		}
	});
	
	$("li:not(:first)","#icons-list").draggable({
		revert: 'true', 
		containment: 'document', 
		helper: 'clone',
		cursor: 'move',
		appendTo: 'body',
		scroll: true,
		revert:200,
		connectToSortable: "div.span-6",
		stop: function(event, ui) {
			if ($(".span-6 .fuera-column").is(":visible")) {
				ui.item = ui.helper;
				ui.helper = null;
				draggableBeforeOut(event, ui);
			}
		}
	});	
	if (esIndex){
		var fotoVideo = $('#fotovideo');
		if (typeof(fotoVideo)=="object") {
			if (esMundial) EcoPlayer.playlist = '/f/playlist/playlist-mundial.txt?x='+parseInt(Math.random()*10000);
			EcoPlayer.init('#fotovideo');
		}
		$("#update-0 a","#column-1").click(function(){
			var layer = $(".box-cnt-all","#box-0");
			setJson("0.js",layer, "0");
			s = $(this);
			s.empty().attr("name",s.attr("rel"));
			return false;
		});
		bannerAlign();
		updaterId = setInterval("update()",40000);
		
		//banner expandible
		
		var banner_expand = $("#banner_expand");
		if (banner_expand.height()<10) banner_expand.hide();

	}else{
		//rate
		if (typeof($.rating)=="object") $('.torate .star').rating();
		
		//redes sociales
		$(".sharethis","#box-0").sharethis();
		
		//twiter
		$(".tools .url-twitter","#box-0").attr("href","http://twitter.com/home?status="+String(encodeURIComponent(window.location)) );
		
		//interna botones head
		$(".text-tools li a","#box-0").click(function(){
			var id = this.id;
			if (id=="btn-sizemore"){
				var o=$(".box-cnt-all","#box-0");
				var i=parseInt(o.css("font-size"));
				if(i<=12&&i>=10){
					o.animate({fontSize:(i+2)},"fast");
				}
				return false;
			}else if (id=="btn-sizeless"){
				var o=$(".box-cnt-all","#box-0");
				var i=parseInt(o.css("font-size"));
				if(i<=14&&i>=12){ 
					o.animate({fontSize:(i-2)},"fast");
				}
				return false;
			}else if (id=="btn-print"){
				window.print();
				return false;
			}		
		});
	}
	buildSimplePlayer();
	//if (esIe6) 
	$(window).bind('resize', function() {  resizeWindow () }); 
	
	//retardo para evitar sobrecarga de procesamiento de scripts
	setTimeout(loaded,4000);

});
function renderIcons(){
	$("#icons").qscroll({
		prev: "img#icons-prev",
		next: "img#icons-next",
		wrapper: "div#icons-list ul",
		area: "div#icons-list",
		widthScreen: true
	});	
}

function renderBox(layer, isOnLoad, onlyBody){
	onlyBody = typeof(onlyBody)=="undefined"?false:true;
	var t = $(layer);
	
	// botones head
	if (!onlyBody){
		$("div.box-head .click",t).click(function(){
			var tt = $(this);
			if (tt.hasClass("box-tab") || tt.hasClass("box-tab-min")){
				s = tt.hasClass("box-tab-min");
				if (s){ 
					tt.removeClass("box-tab-min").addClass("box-tab");
					tt.parent().siblings().removeClass("hide");
				}else{
					tt.removeClass("box-tab").addClass("box-tab-min");
					tt.parent().siblings().addClass("hide");
				}
				saveConfig();
			}else if (tt.hasClass("box-close")){
				deleteBox(tt.parent().parent().attr("id").split("-")[1]);
			}else if (tt.hasClass("box-update")){
				var mom = tt.parent().parent();
				idbox = mom.attr("id");
				var id = idbox.split("-")[1]
				url = id+".js";
				layer = "#"+idbox+" .box-cnt-all";
				setJson(url,layer,id);
			}
			return false;
		});
	}

	// boton +, categorias
	var icosMore = (t.attr("id")=="ticker-cnt") ? ".click" : "p.more .click";
	$(icosMore,t).click(function(){
		var m = $(this);
		id = m.attr("class");
		id = id.substring(id.indexOf("icomore-"));
		id = (id.indexOf(" ")>-1) ? (id.substring(0,id.indexOf(" ")).split("-")[1]) : id.split("-")[1]; //id

		if (m.hasClass("display")){
			var title = (t.attr("id")=="ticker-cnt") ? "En vivo!" : m.attr("href").replace("#","");
			createBox(id, title);
			scrollTo(0,( $("#column-2","#content").offset().top - 65) );
		}else{
			deleteBox(id);
		}
		return false;
	});
	
	// compartir
	if (esIndex){
		$("a.shareme",t).sendmail();
		renderDestacado();
	}else{
		$("a.shareme, a.sendmail",t).sendmail();
	}
	// dropdownlist - estadisticas, diosadepor. vivo, impresa
	$("ul.qdd",t).qdd(); 
	
	// filtro - scroll en estadisticas
	$("div.filter",t).qscroll({
		prev: "img.prev",
		next: "img.next",
		wrapper: "div.cnt ul",
		area: "div.cnt",
		goActive:true
	});
	
	// click - filtro - scroll en estadisticas
	$("div.filter ul li.click",t).click(function(){
		var tf = this.id.split("-")[1];
		$(".filter-lst",t).find(".filter_"+tf).show().siblings(":not(.filter_"+tf+")").hide();
		$(this).addClass("active").siblings(".active").removeClass("active");
	});
	
	//pie de box
	$(".box-foot a",t).click(function(e) {
		var b = $(this).parents(".box");
		cs = b.find(".box-cnt").filter(".hide");
		var i = (b.attr("id")=="box-0") ? itemDisplayqBoxUM : itemDisplayqBox;
		for (var n=1; n<=i; n++){
			var ci = cs[(n-1)];
			if (typeof(cs[(n-1)]) == "undefined"){
				$(this).parent().remove();
				bannerAlign();
				return false;
			}else{
				$(ci).removeClass("hide");
			}
		}
		bannerAlign();
		//saveConfig();
		return false;
	});
	if (!isOnLoad) {
		bannerAlign();
		buildSimplePlayer();
	}

	/*
	if (esIe6){
		$(".box-cnt",t).hover(
			function(){
				$(this).addClass("box-cnt-hover-ie");
			},
			function(){
				$(this).removeClass("box-cnt-hover-ie");
			}
		);
	}
	*/	
}
function renderDestacado(){
	$("#destacados div.hand").click(function(e){
		var t = $(this);
		var d = t.parent();
		
		if (t.hasClass(".disabled")) return false;
		if (t.siblings(".loader").length>0) return false;
		if (typeof(destacadoJson) != "object"){
			loading = $('<div class="loader"></div>');
			t.parent().prepend(loading);
			moveto = t.hasClass("qbox-next") ? "next" : "prev";
			url = path+(esMundial?"dest-mundial":"1004")+".js?r=" + parseInt(Math.random()*10000);
			$.getJSON(url, function(json){
				destacadoJson = json.items;
				loading.remove();
				destacadoItem = destacadoJson.length;
				t.click();
			});
			return false;
		}
		addclass="";
		if (t.hasClass("box-prev")){
			if 	(destacadoItem==(destacadoJson.length)) destacadoItem=0;
			destacadoItem++;
			if 	(destacadoItem==(destacadoJson.length-1)) addclass=".box-prev";
		}else{
			destacadoItem--;
			if (destacadoItem==0) addclass=".box-next";
		}
		
		t.parent().replaceWith(destacadoJson[destacadoItem].description);
		if (addclass != "") $("#destacados "+addclass).addClass("disabled");
		
		if (destacadoJson[destacadoItem].description.indexOf("json")>0) buildSimplePlayer();
		renderDestacado();
	});
	$("#destacados").mouseenter(function(){ $(this).children(".hand").removeClass("hide")}).mouseleave(function(){ $(this).children(".hand").addClass("hide")});	
}

function deleteBox(id){
	$("#box-" + id).remove();
	$(".icomore-"+id).addClass("display");
	$("#ico_"+id,"#icons-list").parent().removeClass("showing");
	saveConfig();
	bannerAlign();
}
function createBox(id, title, createIn){
	var idbox = "box-" + parseInt(id);
	var html = "";
	createIn = (typeof(createIn) == "undefined")  ? "" : createIn;
	
	$(".icomore-"+id).removeClass("display");
	$("#ico_"+id,"#icons-list").parent().addClass("showing");
	
	if (id==1003){ // encuesta
		defa = $("#ico_1002","#icons-list").attr("name");
		html = '<div id="'+idbox+'" class="box"><div class="box-head"><div class="box-close click"></div><div class="box-tab hide click"></div><div class="box-update hide click"></div><div class="box-title"><h3>'+title+'<a href="/static/rss" title="RSS"><img class="rss" src="/f/image/blank.gif"/></a></h3></div></div><div class="box-cnt-all"><div class="box-cnt nohover"> <div name="'+defa+'" id="pools"></div> </div></div></div>';
		$("div.span-6","#content").prepend(html);
		lpool = $("div#pools","#"+idbox).qpool({
			form: "form#pool",
			result: "div#pool_result",
			path:"/app/encuestas/get"
		});
		
	}else if (id==1002 || id == 1012){ // fotos y videos
		defa = $("#ico_"+id,"#icons-list").attr("name");
		html = '<div id="'+idbox+'" class="box"><div class="box-head"><div class="box-close click"></div><div class="box-title"><h3>'+title+'<a href="/static/rss"><img class="rss" src="/f/image/blank.gif"/></a></h3></div></div><div class="box-cnt-all"><div class="box-cnt last-border nohover" id="fotovideo"><span class="hide">'+defa+'</span></div></div></div>'; 
		$("div#column-1","#content").prepend(html);
		if (esMundial) EcoPlayer.playlist = '/f/playlist/playlist-mundial.txt?x='+parseInt(Math.random()*10000);
		EcoPlayer.init('#fotovideo');
	}else{
		html = '<div id="'+idbox+'" class="box"><div class="box-head"><div class="box-close click"></div><div class="box-tab hide click"></div><div class="box-update hide click"></div><div class="box-title"><h3>'+title+'<a href="/static/rss" title="RSS"><img class="rss" src="/f/image/blank.gif"/></a></h3></div></div><div class="box-cnt-all"><div class="box-cnt nohover"><div class="loading">Cargando...</div></div></div> <div class="box-foot hide"><a href="#VER M&Aacute;S NOTAS">VER M&Aacute;S NOTAS</a></div> </div>';
		if (createIn.indexOf("draggable")>0){
			$(createIn).after(html);
		}else{
			$("div.span-6","#content").prepend(html);
		}	
		setJson(parseInt(id)+".js", "div#"+idbox+" .box-cnt-all", id);
	}
	//html = html.replace('[id]',idbox).replace('[title]',title);
	renderBox("#"+idbox);
	saveConfig();
	bannerAlign();
}
function setHtml(layer,url){
	var t = $(layer);
	t.prepend("<div class='box-cnt nohover loading'>Cargando...</div>");
	$.get(path+url, {r: parseInt(Math.random()*10000) }, function(html){
		html = html=="" ? "<p>&nbsp;</p>" : html;
		t.empty().html(html);
		renderBox(t);
	});	
}
function setJson(url,layer, id){
	url = path+url+"?r=" + parseInt(Math.random()*10000);
	$.getJSON(url, function(json){
		t =  $(layer);
		var c = "";
		var ns = 0;
		$.each(json.items, function(i,item){
			c +=  item.description;
			ns ++;
		});
		var lbox = $("#box-"+id,"#column-2");
		if (id ==1 || id==1000 || id==1006 || id==1005 ){
			lbox.children(":not(.box-head)").remove().end().append(c);
		}else{
			t.replaceWith('<div class="box-cnt-all">' + c + '</div>');
		}
		/*
		if (parseInt(id)>-1){
			t = $(".box-cnt-all",lbox);
		}
		*/
		if (ns<=itemDisplayqBox){
			lbox.children(".box-foot").remove();
		}else{
			lbox.children(".box-foot").removeClass("hide");
		}
		lbox.find(".box-head .hide").removeClass("hide");
		renderBox(lbox, false, true);
	});
}

function saveConfig(){
	if (!esIndex) return false;
	var lBox = "";
	$(".box:not(#box-0)").each(function(){
		var obj = $(this);
		lBox += (lBox=="" ? "" : ",") + '{"id":"' + this.id.split("-")[1] + '","show":' + (obj.find(".box-tab").length>0?1:0) + '}';
	})
	lBox  = '"qBoxs":[' + lBox + "],";
	lBox += '"showIcos":' + $("#icons:visible").length+",";
	lBox += '"showPlayer":' + $("#box-1002").length+",";
	lBox += '"showPlayer2":' + $("#box-1012").length;
	lBox = "{" + lBox + "}";
	$.cookie((esMundial?"dm":"d"),lBox);
	//$.cookie("d",lBox);
}

function log(o){ try {dump(o);}catch (e) {}}

function sortableStop(e,ui){
	if (typeof(ui.item)=="object" && ui.item.is("li")){
		ui.item.hide();
		if ($(".span-6 li.ui-draggable").length>1) $(".span-6 .fuera-column").remove();
		if ($(".span-6 li.ui-draggable").is("li")){
			lid = ui.item.children(0).get(0).id.split("_")[1]; 
			if (lid=="1002" || lid=="1012" || lid=="1004"){
				$("#content li.ui-draggable").remove();
				deleteBox(lid);
			}else{
				createBox(lid, ui.item.children(0).attr("title"),".span-6 li.ui-draggable");
				$("#content li.ui-draggable").remove();
			}
		}
	}
	saveConfig(); 
	return true;
}
function sortableBeforeOut(obj){
	img = obj.children();
	out = null;
	out = $("<div class='helper-out' style='top:0;left:"+img.css("left")+";width:"+img.css("width")+";height:"+img.css("height")+"'></div>");
	obj.empty().prepend(out);
	//f=f;
	out.animate({
		width: 304,
		height: obj.height(),
		top:0,
		left:0
	}, 150 );
}
function draggableBeforeOut(event, ui){
	out = null;
	out = $("<div class='helper-out' style='top:"+ui.item.offset().top+"px;left:"+ui.item.offset().left+"px;width:68px;height:68px'></div>");
	som = $(".fuera-column");
	$("body").append(out);
	ui.item.hide();
	out.animate({ 
		width: 304,
		height: 24,
		top:som.offset().top,
		left:som.offset().left
	}, 150 , function(){
		$(".helper-out").remove();
		sortableStop(event, ui);
	});
}

function buildSimplePlayer(){
	try
	{
		var area = "";
		if (esIndex){
			area = $('#playerdestacado');
			EcoPlayer2.config.menu = $('.destacados-4 .summary .preamble p',"#destacados");
		}else{
			EcoPlayer2.size = {viewer:[602,340],slider:[602,120]};
			area = $('#ecoPlayerViewer');
			EcoPlayer2.config.menu = $('#ecoPlayerMenu',"#ecoPlayer");
		}
		var flvars = eval( '(' + jQuery.trim( $(".json",area).text()) + ')' );
		var media = eval('(' +flvars.MEDIA_FILE+ ')');
		
		EcoPlayer2.config.viewer = area;
		switch(media.type) {
			case 'Youtube':
				EcoPlayer2.changeViewer(media.type,media.src,media.coverpic,media.legend);
				break;
			case 'Gmaps':
				EcoPlayer2.changeViewer(media.type,decodeURIComponent(media.src),media.coverpic,media.legend);
				break;
			default:
				EcoPlayer2.buildViewer(flvars);
				break;
		}
	}catch(e){
		//
	}
}
// con mas tiempo 
function bannerAlign(){
	$("#ct-banner").css("margin", "auto");
	var columns = new Array();
	
	$c1 = $('#column-1');
	$c2 = $('#column-2');
	if ($c1.height()>$c2.height()){
		columns.push({id:$c2.attr("id"),height:$c2.height() },{id:$c1.attr("id"),height:$c1.height() });
	}else{
		columns.push({id:$c1.attr("id"),height:$c1.height() },{id:$c2.attr("id"),height:$c2.height() });
	}
	
	bh=174; //bannerHeight
	dif = columns[1].height-columns[0].height;
	$("#bg-banner div").hide();
	if (columns[0].id=="column-1" &&  (dif>=(bh*2)) ){
		banner = "2x2";
	}else if (columns[0].id=="column-2" &&  (dif>=bh) ){
		banner = "1x1";
	}else{
		banner = "3x3";
	}
	if (banner != "3x3"){
		$apegarCol = $("#"+columns[0].id);
		bannerTop =   $("#ct-banner").offset().top - ($("#content").offset().top+columns[0].height);
		//$('#column-1').css("height",columns[1].height);
		$("#ct-banner").css("margin-top",  bannerTop*-1 );
		$("#bg-banner").css("margin-left",  $apegarCol.offset().left + 6 );
	}else{
		$apegarCol = $("#column-1");
	}
	colBannerId = $apegarCol.attr("id");
	$("#bg-banner").css("margin-left",  $apegarCol.offset().left + 6 );
	$("#bg-banner .bg-banner-"+banner).show();
}
function update(){
	$.get("/f/noticia/updates.htm", {r: parseInt(Math.random()*10000) }, function(html){
		var cp = $("#update-0 a","#column-1");
		var at = parseInt(cp.attr("name"));
		at = (at>0) ? at : 0;
		var cn = parseInt(html);
		cn = (cn>0) ? cn : 0;
		at = cn - at;
		if (at>0){
			s = (at==1) ? "" : "s";
			cp.attr("rel",cn);
			cp.html("<span>"+at+"</span> nueva"+s+" noticia"+s+". Actualizar");
		}
	});
	
	if ($("#ticker").length>0){
		$.get("/f/deportes/ticket.htm", {r: parseInt(Math.random()*10000) }, function(html){
			$o = $("#ticker-cnt");
			html = html=="" ? "&nbsp;" : html;
			$o.empty().html(html);
			renderBox("#ticker-cnt");
		});
	}
	if ($("#box-1").length>0){
		$("#box-1").find(".box-update").click();
	}	
}

function resizeWindow(){
	var b = $("body");
	//var minWidth = 974; // parseInt(b.css("min-width")) IE no funciona
	//if ( parseInt(b.width()) <= minWidth ) return false;
	if ( b.hasClass("wait") ) return false;
	b.addClass("wait");
	renderIcons();
	b.removeClass("wait");
	$("#bg-banner").css("margin-left",  $("#"+colBannerId).offset().left + 6 );
}
function loaded(){
	var isPageStats = $("body.estadisticas").length>0;
	if (isPageStats){
		//refrscamos partidos en vivo
		updaterId = setInterval(function(){
			var id = $("ul.qdd li.selected ul li:first a","#box-0").attr("name").split("-");
			$.get("/f/"+id[0]+"/"+(id[1].split("/")[0])+"/actual.html", {r: parseInt(Math.random()*10000) }, function(html){
				if(html.length>0){
					if (!(html.indexOf("<tr")==0)) return false;
					var idl = $("div.filter ul li.actual","#box-0").attr("id").split("-")[1];
					$("table#stats tr.filter_"+idl,"#box-0").filter(":not(:first)").remove();
					$("table#stats tr.filter_"+idl,"#box-0").replaceWith(html);
				}
			});			
		},40000);
	}
}