// JavaScript Document
// Custom
var _imgHost = "http:\/\/fsi.dmmotion.com\/10187\/img\/";
//var _imgHost = "http:\/\/desarrollo-cstv.nspmotion.com\/10087\/img\/new\/";
//var _imgHost = "img\/";
var selectedItem = [0, 0, 0];
var _channelsPerPage = 7;
var _channelsPage 	 = 0;
var _itemsPerPage	 = 6;
var _itemsPage		 = 0;
var _itemsPageMost	 = 0;
var _rdto;
var _rdtoLosMas;
var rdtoEnviados;
var rdtoRecientes;
var rdtoVistos;
var rdtoSugeridos;
var Recientes;
var Enviados;
var Vistos;
var admtv_MasRecientes 	= "admtv_MasRecientes";
var admtv_MasEnviados	= "admtv_MasEnviados";
var admtv_MasVistos		= "admtv_MasVistos";
var admtv_Sugeridos		= "admtv_Sugeridos";
var Recientes			= "Recientes";
var Enviados			= "Enviados";
var Vistos				= "Vistos";
var Sugeridos			= "Sugeridos";
var active;

//Test para traer Los Mas
var _RdtoTEST;

var seleccionado;
var _imgTime = "<img src='"+_imgHost+"img_hour.gif' width='9' height='9' \/>";
var _imgFlec = "<img src='"+_imgHost+"img_flecha.gif' width='11' height='11' \/>";

	/*Funciones para el Permalink*/
	function queryToObj (query) {
		var args=new Object(), pairs=query.split("&");
		var i = pairs.length;
		while (i--) {
			var pos=pairs[i].indexOf("=");
			if (pos==-1) continue;
			var argname=pairs[i].substring(0,pos), value=pairs[i].substring(pos+1);
			args[argname]=unescape(value);
		}
		return args;
	}

	function oEl(x) {
		return document.getElementById(x);
	}
	
	function onPlayerInit(PyIndex){
		
		var player = admtv.Players[PyIndex];
		
		player.onSearchFinished = function (evObj) {
			showSearch(this.Index, evObj);
		}
		
		player.onContentChange = function (evObj) {
			estasViendo(PyIndex);
		}
		
		player.onMostRecentFetched = function(mr) {
			showMost(player, this.Index, mr, "MAS RECIENTES", admtv_MasRecientes, Recientes, 1);
		}
		player.onMostSentFetched = function (ms) {
			showMost(player, this.Index, ms, "MAS ENVIADOS", admtv_MasEnviados, Enviados, 2);
		}
		player.onMostViewedFetched = function (mv) {
			showMost(player, this.Index, mv, "MAS VISTOS", admtv_MasVistos, Vistos, 3);
		}
		
		oEl("admtv_buscar").innerHTML = genSWF("SWFBuscar", 218, 30, _imgHost+"buscar.swf", "PyIndex="+player.Index, "transparent");
		
		mostrarCanales(PyIndex);
		
		showMost(player, PyIndex, showSugest(PyIndex), "SUGERIDOS", admtv_Sugeridos, Sugeridos, 4);
		
		
		player.getMostRecent(5);
		player.getMostSent(5, 4);
		player.getMostViewed(5, 4);
		
		// Destacados
		Destacados = player.getHighlights();
		showDestacados(Destacados, PyIndex, player);
		
		
		
	}
	
	function estasViendo(PyIndex){
		var player 	= admtv.Players[PyIndex];
		var ItemId 	= player.getCurrentItemInfo();
		var Item 	= player.getItemById(ItemId[0], ItemId[1], ItemId[2]);
		var fecha 	= new Date(Item.StartDateMS);
		var anio 	= formatDate(fecha).toString().substring(0,8);
		var hora 	= formatDate(fecha).toString().substring(11);
		
		oEl("admtv_fecha").innerHTML 	= ""+anio+" | "+_imgTime+" "+hora+"";
		oEl("admtv_evTitulo").innerHTML = ""+Item.Title+"";
		oEl("admtv_evDesc").innerHTML 	= ""+Item.Description+"";
		
		setADMactive(ItemId);
	}
	
	function showDestacados(rDTO, PyIndex, player){
		var result 	= new Array();
		var itemR 	= rDTO[Math.floor(Math.random()*rDTO.length)];					
		var Item 	= player.getItemById(itemR.ChannelId, itemR.PlaylistId, itemR.Id);

		var fecha 	= new Date(Item.StartDateMS);
		var anio 	= formatDate(fecha).toString().substring(0,8);

		var u = "";
			u+= "<div class='admtv_masTitle'><span style='color:#FFFFFF;'>DESTACADOS<\/span>";
			u+= "<\/div>";
			u+= '<div class="admtv_destCont"';
			u+= 'onclick="admtv.Players[' + PyIndex + '].playVideo({ChannelId:' + itemR.ChannelId + ', PlaylistId:' + itemR.PlaylistId + ', Id:' + itemR.Id + '})">';
				if (typeof(itemR.thumb) == "undefined") itemR.thumb = player.getItemThumbnail(itemR, "m");
				u+= "<div class='admtv_desThumb'>";
				u+= "<img src='"+player.getItemThumbnail(itemR, "m")+"' width='112' height='78' style='border-width:1px;border-style:solid;border-color:#555555' \/>";
				u+= "<\/div>";
				u+= "<div class='admtv_desTit'>"+Item.Title+"";
				u+= "<\/div>";
				u+= "<div class='admtv_desFecha'>"+anio+"";
				u+= "<\/div>";
				u+= "<div class='admtv_desDesc'>"+Item.Description+"";
				u+= "<\/div>";
				u+= "<div class='admtv_desVideo'>"+_imgFlec+" Reproducir video";
				u+= "<\/div>";
			u+= "<\/div>";
			oEl("admtv_destacados").innerHTML = u;
	}
	
	function formatDate(d) {
		var dia = (d.getDate()<10) ? "0"+d.getDate() : d.getDate();
		var mes = (d.getMonth()<9) ? "0"+(d.getMonth()+1) : d.getMonth()+1;
		
		var hora = d.getHours();
		var ind = "AM";
		if (hora >= 12) {
			hora = (hora!=12) ? hora-12 : hora;
			ind = "PM";
		} else if (hora == 0) {
			hora = 12;
		}
		hora = (hora<10) ? "0"+hora : hora;
	
		var minu = (d.getMinutes()<10) ? "0"+d.getMinutes() : d.getMinutes();
		return dia+"-"+mes+"-"+d.getFullYear().toString().substring(2,4)+" | "+hora+":"+minu+" "+ind;
	}
	
	function showMost(player, PyIndex, rdto, titulo, destino, pagina, caso){
		var iu 		= this._itemsPageMost*1;
		var it 		= Math.min(iu+1, rdto.length);

		var u = "";
			u+= "<div class='admtv_masTitle'><span style='color:#FFFFFF;'>"+titulo+"<\/span>";
			u+= "<\/div>";
		for (var i = iu; i<it; i++){
			var Item = player.getItemById(rdto[i].ChannelId, rdto[i].PlaylistId, rdto[i].Id);
			
			u+= '<div class="admtv_masCont"';
			u+= 'onclick="admtv.Players[' + PyIndex + '].playVideo({ChannelId:' + rdto[i].ChannelId + ', PlaylistId:' + rdto[i].PlaylistId + ', Id:' + rdto[i].Id + '})">';
				if (typeof(rdto[i].thumb) == "undefined") rdto[i].thumb = player.getItemThumbnail(rdto[i], "m");
				u+= "<div class='admtv_masThumb'>";
				u+= "<img src='"+player.getItemThumbnail(rdto[i], "m")+"' width='68' height='47' style='border-width:1px;border-style:solid;border-color:#555555' \/>";
				u+= "<\/div>";
				u+= "<div class='admtv_masTit'><span style=color:#6b1229;>"+Item.Title+"<\/span>";
				u+= "<\/div>";
				u+= "<div class='admtv_masDesc'>"+Item.Description+"";
				u+= "<\/div>";
			u+= "<\/div>";
			u+= "<div class='cont_pag'>";
				u+= "<div id='"+pagina+"'>";
				u+= "<\/div>";
			u+= "<\/div>";
			
			rdto[i].tit = titulo;
			rdto[i].pag = pagina;
			rdto[i].des = destino;
			rdto[i].id	= caso;
			rdto[i].cPag = 0;
		}
		
		oEl(destino).innerHTML = u;

		paginadoMost(PyIndex, rdto, titulo, pagina, destino, caso);
	}
	
	function generarCanal(PyIndex, ChIndex) {
		var thisPlayer = admtv.Players[PyIndex];
		var thisCanal = thisPlayer.Content.Channels[ChIndex];
		var activo = (ChIndex == selectedItem[0]);
		var oncl = " onclick='selectedItem[0]="+ChIndex+";mostrarCanales("+PyIndex+")' ";
		var	u = "<div"+oncl+"class='menuButton' style='";
			u+= (activo)? "background:#771341;" : "";
			u+= "'>"+thisCanal.Title.toUpperCase()+"<\/div>";
		return u;
	}
	
	function mostrarCanales(PyIndex) {
		var thisPlayer = admtv.Players[PyIndex];
		var iu = _channelsPage*_channelsPerPage;
		var it = Math.min(iu+_channelsPerPage, thisPlayer.Content.Channels.length);
		var u = "<div>";
		for (var i = iu; i<it; i++) {
			u+= generarCanal(PyIndex, i);
		}
			u+= "<\/div>";
			u+= "<div id='BTNmas'>";
			u+= "<input type='image' title='' alt='' onclick='masCanales("+PyIndex+", false)' ";
			if (_channelsPage==0) {
				u+= "src='"+_imgHost+"bt_ant_off_082008.gif' disabled='disabled'";
			} else u+= "src='"+_imgHost+"bt_ant_082008.gif' style='cursor:pointer;'border='0'";
			u+= " />";
			u+= "<input type='image' title='' alt='' onclick='masCanales("+PyIndex+", true)' ";
			if (iu+_channelsPerPage >= thisPlayer.Content.Channels.length) {
				u+= "src='"+_imgHost+"bt_sig_off_082008.gif' disabled='disabled'";
			} else u+= "src='"+_imgHost+"bt_sig_082008.gif' style='cursor:pointer;'border='0'";
			u+= " />";
			u+= "<\/div>";
		oEl("menuItems").innerHTML=u;
		selectedItem[1] = 0;
		mostrarPlaylists(PyIndex, selectedItem[0]);
	}

	function generarPlaylist(PyIndex, ChIndex, PlIndex) {
		_itemsPage = 0;
		var thisPlayer 		= admtv.Players[PyIndex];
		var thisCanal 		= thisPlayer.Content.Channels[ChIndex];
		var thisPlaylist 	= thisCanal.Playlists[PlIndex];
		
		var activo 	= (PlIndex == selectedItem[1]);
		var algo	= generateRDTOs(PyIndex, ChIndex, PlIndex);
		var oncl = " onclick='selectedItem[1]="+PlIndex+";mostrarPlaylists("+PyIndex+", "+ChIndex+")' ";
		
		var u = "<div"+oncl+"class='subMenuButton' style='";
			u+=	(activo)? "background:#A3A6AA;" : "";
			u+= "'>"+thisPlaylist.Title.toUpperCase()+"<\/div>";
		return u;
	}
	
	function mostrarPlaylists(PyIndex, ChIndex) {
		var thisPlayer = admtv.Players[PyIndex];
		var thisCanal = thisPlayer.Content.Channels[ChIndex];
		var it = thisCanal.Playlists.length;
		if (it<=selectedItem[1]) selectedItem[1] = 0;
		var u = "<div>";
		for (var i=0; i<it; i++) {
			u+= generarPlaylist(PyIndex, ChIndex, i);
		}
		u+= "<\/div>";
		oEl("admtv_sMenu").innerHTML = u;
		mostrarItems(PyIndex, generateRDTOs(PyIndex, selectedItem[0], selectedItem[1]))
	}
	
	function masCanales(PyIndex, avanza){
		_channelsPage = (avanza) ? _channelsPage+1 : _channelsPage-1;
		mostrarCanales(PyIndex);
	}
	
	function mostrarItems(PyIndex, RDTOs) {
		var iu 	= _itemsPage*_itemsPerPage;
		var it 	= Math.min(iu+_itemsPerPage, RDTOs.length);
		
		var u 	= "";
		for (var i = iu; i<it; i++){
			//alert("CH ID "+RDTOs[i].ChannelId+" PL ID "+RDTOs[i].PlaylistId+" ITEM ID "+RDTOs[i].Id);
			u += generarItem(PyIndex, RDTOs[i].ChannelId, RDTOs[i].PlaylistId, RDTOs[i].Id, i);
		}
				
		oEl("admtv_items").innerHTML=u;
		
		paginado(PyIndex, RDTOs,"admtv_paginado");
	}
	
	function generarItem(PyIndex, ChId, PlId, ItId, num) {
		var thisPlayer 		= admtv.Players[PyIndex];
		var thisCanal 		= thisPlayer.getChannelById(ChId);
		var thisPlaylist 	= thisPlayer.getPlaylistById(ChId, PlId);
		var thisItem 		= thisPlayer.getItemById(ChId, PlId, ItId);
		var assetId 		= "ADM_AS_"+thisItem.Id;
		
		var u = "<table id='"+assetId+"' class='admtv_Item' onclick='admtv.Players["+PyIndex+"].playVideo({ChannelId:"+thisCanal.Id+", PlaylistId:"+thisPlaylist.Id+", Id:"+thisItem.Id+"})' border='0' cellspacing='0' cellpadding='0'><tr";
		u+= "><td width='64' style='padding:3px;'  valign='top'><img src='"+thisPlayer.getItemThumbnail({ChannelId:thisCanal.Id, PlaylistId:thisPlaylist.Id, Id:thisItem.Id}, "s")+"' width='64' height='44' style='border-width:1px;border-style:solid;border-color:#555555' \/><\/td>";
		u+= "<td width='317' style='padding:3px 2px 0px 3px; color:#444444;' valign='top'>";
		u+= "<span class='admtv_itemTitle'>"+thisItem.Title+"<\/span><br \/>";
		if (typeof(thisItem.Description)!="undefined") {
			if (thisItem.Description!="null") u += thisItem.Description;
		}
		u+= "<\/td>";
		u+= "<\/tr><\/table>";
		return u;
	}
	
	function masItems(PyIndex, avanza){
		_itemsPage = (avanza) ? _itemsPage+1 : _itemsPage-1;
		mostrarItems(PyIndex, _rdto);
	}

	function masItems2(PyIndex, pagina, destino, a, avanza){
		var player 		= admtv.Players[PyIndex];
		
		switch (a){	
			case 1:
				_rdtoLosMas	= rdtoRecientes;
				_rdtoLosMas.cPag 	= (avanza) ? _rdtoLosMas.cPag+1 : _rdtoLosMas.cPag-1;
				break;
			case 2:
				_rdtoLosMas	= rdtoEnviados;
				_rdtoLosMas.cPag 	= (avanza) ? _rdtoLosMas.cPag+1 : _rdtoLosMas.cPag-1;
				break;
			case 3:
				_rdtoLosMas	= rdtoVistos;
				_rdtoLosMas.cPag 	= (avanza) ? _rdtoLosMas.cPag+1 : _rdtoLosMas.cPag-1;
				break;
			case 4:
				_rdtoLosMas	= rdtoSugeridos;
				_rdtoLosMas.cPag 	= (avanza) ? _rdtoLosMas.cPag+1 : _rdtoLosMas.cPag-1;
				break;
			
		}
		
		this._itemsPageMost 	= (avanza) ? _rdtoLosMas.cPag++ : _rdtoLosMas.cPag--;
		if(pagina == "SUGERIDOS"){
			titulo = pagina.toUpperCase();
		}else{
			titulo = "MAS "+pagina.toUpperCase();
		}
		
		showMost(player, PyIndex, _rdtoLosMas, titulo, destino, pagina, a);
	}
	
	function paginado(PyIndex, RDTOs, target){
		var iu 	= _itemsPage*_itemsPerPage;
		_rdto	=[];
		_rdto	= RDTOs;
		var to	= Math.floor(RDTOs.length/_itemsPerPage);
		var u 	= "";
			u+= "<div class='admtv_pag'>P&aacute;gina <span style=color:#721743;>"+(_itemsPage+1)+"<\/span> de "+(to+1)+"";
			u+= "<\/div>";
			u+= "<div id='paginadoMas'>";
			u+= "<input type='image' title='' alt='' onclick='masItems("+PyIndex+", false)' ";
			if (_itemsPage==0) {
				u+= " src='"+_imgHost+"pag_ant_off_082008.gif' disabled='disabled'";
			} else u+= "src='"+_imgHost+"pag_ant_082008.gif' style='cursor:pointer;'";
			u+= " />";
			u+= "<input type='image' title='' alt='' onclick='masItems("+PyIndex+", true)' ";
			if (iu+_itemsPerPage >= RDTOs.length) {
				u+= "src='"+_imgHost+"pag_sig_off_082008.gif' disabled='disabled'";
			} else u+= "src='"+_imgHost+"pag_sig_082008.gif' style='cursor:pointer;'";
			u+= " />";
			u+= "<\/div>"
		oEl(target).innerHTML=u;
	}
	
	function paginadoMost(PyIndex, RDTOs, titulo, pagina, destino, a){
		var iu 	= this._itemsPageMost*1;
		var to	= RDTOs.length;

		switch (a){
			case 1:
				rdtoRecientes = []
				rdtoRecientes = RDTOs;
				RDTOs.cPag = iu;
				break;
			case 2:
				rdtoEnviados = []
				rdtoEnviados = RDTOs;
				RDTOs.cPag = iu;
				break;
			case 3:
				rdtoVistos 	= [];
				rdtoVistos 	= RDTOs;
				RDTOs.cPag = iu;
				break;
			case 4:
				rdtoSugeridos	= [];
				rdtoSugeridos 	= RDTOs;
				RDTOs.cPag = iu;
				break;
		}
		
		var u 	= "";
			u+= "<div class='admtv_fondoPag'>";
				u+= "<div class='admtv_pag'>Video <span style=color:#721743;>"+(this._itemsPageMost+1)+"<\/span> de "+(to)+"";
				u+= "<\/div>";
				u+= "<div id='paginadoMas'>";
				u+= "<input type='image' title='' alt='' onclick='masItems2("+PyIndex+","+RDTOs[iu].pag+","+RDTOs[iu].des+","+RDTOs[iu].id+", false)' ";
				if (this._itemsPageMost==0) {
					u+= "src='"+_imgHost+"antMas_off_082008.gif' disabled='disabled'";
				} else u+= "src='"+_imgHost+"antMas_082008.gif' style='cursor:pointer;'";
				u+= " />";
				u+= "<input type='image' title='' alt='' onclick='masItems2("+PyIndex+","+RDTOs[iu].pag+","+RDTOs[iu].des+","+RDTOs[iu].id+", true)' ";
				if (this._itemsPageMost == to-1) {
					u+= "src='"+_imgHost+"sigMas_off_082008.gif' disabled='disabled'";
				} else u+= "src='"+_imgHost+"sigMas_082008.gif' style='cursor:pointer;'";
				u+= " />";
				u+= "<\/div>"
			u+= "<\/div>"
		oEl(pagina).innerHTML=u;
	}
	
	function showSearch(PyIndex, obj) {
		var oEl 	= document.getElementById("admtv_items");
		var player 	= admtv.Players[PyIndex];
		var iu 		= _itemsPage*_itemsPerPage;
		var it 		= Math.min(iu+_itemsPerPage, obj.length);
		
		if(it == 0){
			oEl.innerHTML = "No se encontraron resultados";
		}else{
			_itemsPage = 0;
			mostrarItems(PyIndex, obj);
		}
	}
	
	function showSugest(PyIndex){
		var thisPlayer 	= admtv.Players[PyIndex];
		var chan 		= thisPlayer.Content.Channels;
		var r = new Array();
		
		for(var i = 0; i< chan.length; i++){
			for(var e=0; e < chan[i].Playlists.length; e++){
				for(var j=0; j < chan[i].Playlists[e].Items.length; j++){
					r.push({ChannelId: chan[i].Id, PlaylistId: chan[i].Playlists[e].Id, Id: chan[i].Playlists[e].Items[j].Id});
				}
			}
		}
		
		var res = new Array();
		var _id;
		for(var h = 0; h < 5; h++){
			var itemR = r[Math.floor(Math.random()*r.length)];
			if(itemR.Id != _id){
				res.push(itemR);
			}
			_id = res[h].Id;
		}
		return res;
	}
	
	function admtvSL_setSelected(bool){
		//
		var aclass_0 = (bool) ? admtvSL_myClass_Channel+"_S" : admtvSL_myClass_Channel;
		var aclass_1 = (bool) ? admtvSL_myClass_playlist+"_S" : admtvSL_myClass_playlist;
		var aclass_2 = (bool) ? admtvSL_myClass_Items+"_S" : admtvSL_myClass_Items;
		
		var CH_elem = document.getElementById(admtvSL_ch);
		var PL_elem = document.getElementById(admtvSL_pl);
		var AS_elem = document.getElementById(admtvSL_as);
		if (CH_elem) AS_elem.className = aclass_0;
		if (PL_elem) PL_elem.className = aclass_1;
		if (AS_elem) AS_elem.className = aclass_2;
	}
		
	function genSWF(id, width, height, file, fv, wmode, bgcolor) {
		if (typeof(fv)=="undefined") fv="";
		if (typeof(wmode)=="undefined") wmode="window";
		var h = '';
		h+= '<object id="'+id+'" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http:\/\/download.macromedia.com\/pub\/shockwave\/cabs\/flash\/swflash.cab#version=8,0,0,0" width="'+width+'" height="'+height+'"><param name=movie value="'+file+'" \/><param name=quality value=high \/><param name=menu value=false \/>';
		if (typeof(bgcolor)!="undefined") h+= '<param name="bgcolor" value="'+bgcolor+'" \/>';
		h+= '<param name="wmode" value="'+wmode+'" \/>';
		h+= '<param name=FlashVars value="'+fv+'" \/>';
		h+= '<param name="allowScriptAccess" value="always" \/><param name="allowFullScreen" value="true" \/>';
		h+= '<embed name="'+id+'" src="'+file+'" menu=false quality=high width="'+width+'" height="'+height+'" type="application\/x-shockwave-flash" pluginspace="http:\/\/www.macromedia.com\/go\/getflashplayer" wmode="'+wmode+'"';
		if (typeof(bgcolor)!="undefined") h+= ' bgcolor="'+bgcolor+'"';
		h+= ' FlashVars="'+fv+'"';
		h+= ' allowScriptAccess="always" allowFullScreen="true"><\/embed>';
		h+= '<\/object>';
		return h;
	}

	function generateRDTOs(PyIndex, ChIn, PlIn) {
		var player 		= admtv.Players[PyIndex];
		var channel 	= player.Content.Channels[ChIn];
		var playlist 	= channel.Playlists[PlIn];
		var a 			= new Array();
		
		for (var i=0; i<playlist.Items.length; i++) {
			a.push({ChannelId:channel.Id, PlaylistId:playlist.Id, Id:playlist.Items[i].Id});
		}
		_rdto = a;
		return a;
	}
	
	/////////////////////////////////
	
	//************ ELEMENTO SELECIONADO ***********//
	var admtvSL_myClass_Channel = "admTV_Channel";
	var admtvSL_myClass_playlist = "admTV_Playlist";
	var admtvSL_myClass_Items = "admTV_Items";
	
	var admtvSL_ch = "";
	var admtvSL_pl = "";
	var admtvSL_as = "";
	
	function setADMactive(It){
		admtvSL_setSelected(false);
		try {
			admtvSL_myClass_Items = document.getElementById("ADM_AS_"+It[2]).className;
		} catch (e) {}
			
		admtvSL_ch = "ADM_CH_"+It[0];
		admtvSL_pl = "ADM_PL_"+It[1];
		admtvSL_as = "ADM_AS_"+It[2];
		admtvSL_setSelected(true);
	}
	
	function admtvSL_setSelected(bool){
		//
		var aclass_0 = (bool) ? admtvSL_myClass_Channel+"_S" : admtvSL_myClass_Channel;
		var aclass_1 = (bool) ? admtvSL_myClass_playlist+"_S" : admtvSL_myClass_playlist;
		var aclass_2 = (bool) ? admtvSL_myClass_Items+"_S" : admtvSL_myClass_Items;
		
		var CH_elem = document.getElementById(admtvSL_ch);
		var PL_elem = document.getElementById(admtvSL_pl);
		var AS_elem = document.getElementById(admtvSL_as);
		if (CH_elem) AS_elem.className = aclass_0;
		if (PL_elem) PL_elem.className = aclass_1;
		if (AS_elem) AS_elem.className = aclass_2;
	}
	
	
	