//////////////////////////////////////////VARIABLES GLOBALES//////////////////////////////////////////////////////

//para guardar info del video q se esta reproduciendo actualmente
var playing_playlist   = null;
var playing_page       = null;
var playing_pos        = null;
var playing_element    = null;
var playing_valoration = null;
var playing_votes      = null;

//variable para cargar el video la primera vez q se cargue la pagina
var first_load = 1;

//variables configuracion station
var first_playlist = null;
var link_destacado = null;
var link_mini      = null;

//CONSTANTES
var MAX_PLAYLISTS = 4;
var MAX_ELEMENTS  = 30;

//variables de acceso directo
direct_element  = null;
direct_playlist = null;
direct_position = null;
direct_page     = null;

//timer
var timer = null;

//puta mierda de cache de IE
var refresco = 0;

//variable q controla si se han de cargar las imagenes 
var load_images = 0;

//indica en q capa hay q mostrar la respuesta del servlet
var div; 

//id de la station
var id_station = 1;

//variables q indican en q canal/playlist stamos
var current_channel  = null;
var current_playlist = null;
var currentDuration  = null;
var currentType      = null;
var offset           = 0;

//variables donde guardar datos de los canales
var channels_num  = null;
var channels_id   = new Array();
var channels_name = new Array();

//variables de subcanales(playlists)
var playlists_num  = null;
var playlists_id   = new Array();
var playlists_name = new Array();

//variables donde guardar datos de la pagina de la playlist actual
var num_elements   = null;
var id_element     = new Array();
var new_element    = new Array();
var publi_element  = new Array();
var image_paths    = new Array();
var titles         = new Array();
var descriptions   = new Array();
var video_format   = new Array();
var video_path     = new Array();
var durations      = new Array();
var valorations    = new Array();
var votes          = new Array();
var num_comments   = new Array();
var pre_path       = new Array();
var pre_duration   = new Array();
var pre_format     = new Array();
var playlist_page  = 0;

//info del elemento playlist seleccionado
var current  = -1;
var previous = -1;

//variables de comentarios
var comments_num   = null;
var comments_text  = new Array();
var comments_user  = new Array();
var comments_date  = new Array();


//función que resetea las variables de la playlist
function reset_playlist_vars(){
    
    //variables donde guardar datos de la playlist
    num_elements  = null;
    id_element    = new Array();
    new_element   = new Array();
    publi_element = new Array();
    image_paths   = new Array();
    titles        = new Array();
    descriptions  = new Array();
    video_format  = new Array();
    video_path    = new Array();
    durations     = new Array();
    valorations   = new Array();
    votes         = new Array();
    num_comments  = new Array();
    pre_path      = new Array();
    pre_duration  = new Array();
    pre_format    = new Array();
    
    //reseteamos links
    while(document.getElementById("playlist_links").rows.length != 0){ 
        for(i=0;i<document.getElementById("playlist_links").rows.length;i++) 
            document.getElementById("playlist_links").deleteRow(i); 
    }
    
    //reseteamos la tabla de la playlist
    while(document.getElementById("playlist_table").rows.length != 0){ 
        for(i=0;i<document.getElementById("playlist_table").rows.length;i++) 
            document.getElementById("playlist_table").deleteRow(i); 
    }
}

//función q guarda las variables de los canales
function set_channel_vars(num,ids,names){
    
    //alert("set_channel_vars --> num: "+num+" ids="+ids+" names="+names);
    
    //guardamos los parámetros de los canales en vars globales
    channels_num = num;
    channels_id  = ids.split("|");
    channels_name = names.split("|"); 
    
}

//función q guarda las variables de las playlists
function set_playlists_vars(num,ids,names,lengths,config){
    
    //alert("set_playlists_vars --> num: "+num+" ids="+ids+" names="+names);
    
    //guardamos los parámetros de las playlists en vars globales
    playlists_num = num;
    playlists_id = ids.split("|");
    playlists_name = names.split("|"); 
    
    //PARAMETROS CONFIGURACION STATION
    first_playlist=config.split("|")[0];
    link_mini=config.split("|")[1];
    link_destacado=config.split("|")[2];
    
    if(playlists_num > 1){ //tenemos VARIAS playlists en el canal
       
        //vaciamos la lista de playlists
        for(i=0;i<MAX_PLAYLISTS;i++) document.getElementById("playlist"+i).innerHTML=""; 
        /*if(document.getElementById("previous_playlist") != null){
            document.getElementById("previous_playlist").innerHTML=""; 
            document.getElementById("next_playlist").innerHTML=""; 
        }*/
        
        //ponemos imagenes playlists
        var limit = playlists_num;
        if(playlists_num > MAX_PLAYLISTS) limit=MAX_PLAYLISTS;
        for(i=0;i<limit;i++) document.getElementById("playlist"+i).innerHTML = "<a href='javascript:load_playlist(0,"+i+");'><img border=0 src='http://media.directa.tv/images_web/Botons/botons_playlist/"+playlists_name[i]+"_inactivo.gif'></a>";
       
        //ponemos botones navegación playlists inactivos
        /*if(document.getElementById("previous_playlist") != null){
            document.getElementById("previous_playlist").innerHTML = "<img src='http://media.directa.tv/images_web/Botons/botons_playlist/anterior_inactivo.gif'>";
            document.getElementById("next_playlist").innerHTML = "<img src='http://media.directa.tv/images_web/Botons/botons_playlist/siguiente_inactivo.gif'>";
        }*/
    } 
    
    //por defecto cargaremos la primera playlist de la lista
    var playlist_pos=0;
    
    //ACCESO DIRECTO, buscamos posicion 
    if(direct_element != null && direct_playlist != null && direct_playlist != "null" && direct_element != "null"){ 
        
        //alert("Direct playlist: "+direct_playlist+" direct element: "+direct_element);
        
        //calculamos posicion del array de la playlist 
        for(i=0;i<playlists_num;i++){
            
            //alert("Playlists_id: "+playlists_id[i]+" direct_playlist: "+direct_playlist);
            if(direct_playlist == playlists_id[i]) 
                playlist_pos = i; 
            
        }
        
        //guardamos playlist actual
        current_playlist = playlist_pos;
        
        //si tenemos mas de una playlist en el canal la marcamos como activa
        if(playlists_num > 1) 
            document.getElementById("playlist"+current_playlist).innerHTML = "<a href='javascript:load_playlist(0," + playlist_pos + ");'><img border=0 src='http://media.directa.tv/images_web/Botons/botons_playlist/" + playlists_name[playlist_pos] + "_activo.gif'></a>";
        
        //buscamos posicion elemento directo dentro de la playlist
        refresco = Math.round(Math.random()*10000);
        http.open("GET","./DB_management?refresco="+refresco+"&operation=search&id_playlist="+direct_playlist+"&id_element="+direct_element+"&playlist_length="+MAX_ELEMENTS, true); 
        http.onreadystatechange = handleHttpResponse; 
        http.send(null); 
    
        
    //ACCESO NORMAL, cargamos playlist del fichero de configuracion    
    }else{ 
        
        //calculamos posicion del array de la playlist 
        for(i=0;i<playlists_num;i++){
            
            //alert("Playlists_id: "+playlists_id[i]+" direct_playlist: "+first_playlist);
            if(first_playlist == playlists_id[i]) playlist_pos=i; 
            
        }
        
        //actualizamos playlist actual
        current_playlist=playlist_pos;
        
        //si tenemos mas de una playlist en el canal la marcamos como activa
        if(playlists_num > 1) document.getElementById("playlist"+current_playlist).innerHTML = "<a href='javascript:load_playlist(0,"+playlist_pos+");'><img border=0 src='http://media.directa.tv/images_web/Botons/botons_playlist/"+playlists_name[playlist_pos]+"_activo.gif'></a>";
        
        //cargamos playlist 
        load_playlist(0,current_playlist);
    }
}

//función q guarda los datos de los videos en variables
function set_playlist_vars(num,ids,news,publi,img,tit,desc,form,paths,durat,valorat,vot,num_c,p_path,p_dur,p_form){

    //alert("set_playlist_vars \n \n num: "+num+"\n \n ids: "+ids+"\n \n news: "+news+"\n \n images: "+img+"\n \n titles: "+tit+"\n \n descriptions: "+desc+"\n \n formats: "+form+"\n \n paths: "+paths+"\n \n durations: "+durat+"\n \n valorations: "+valorat+"\n \n votes: "+vot+"\n \n num_comments: "+num_c+"\n \n p_path: "+p_path+"\n \n p_dur: "+p_dur+"\n \n p_form: "+p_form);
    
    //variables donde guardar datos de la playlist
    num_elements=num;
    id_element=ids.split("|");
    new_element=news.split("|");
    publi_element=publi.split("|");
    image_paths=img.split("|");
    titles=tit.split("|");
    descriptions=desc.split("|");
    video_format=form.split("|");
    video_path=paths.split("|");
    durations=durat.split("|");
    valorations=valorat.split("|");
    votes=vot.split("|");
    num_comments=num_c.split("|");
    pre_path=p_path.split("|");
    pre_duration=p_dur.split("|");
    pre_format=p_form.split("|");
    
    
    //borramos datos playlist
    while(document.getElementById("playlist_links").rows.length > 0){
        document.getElementById("playlist_links").deleteRow(document.getElementById("playlist_links").rows.length-1);
    }
    
    //cargamos la playlist en una tabla
    //calculamos cuantas filas de la tabla hemos de crear
    var limit = MAX_ELEMENTS;
    var offset = num_elements - (playlist_page*MAX_ELEMENTS);
    if(offset < MAX_ELEMENTS) limit=offset;
    
    //alert("limit: "+limit);
    
    //creamos las filas y insertamos datos
    for(i=0;i<limit;i++){
        
        var pos = i*3;
        
        //insertamos link
        var row=document.getElementById("playlist_links").insertRow(i);
        cell0 = row.insertCell(0);
        cell0.style.height="52px";
        cell0.innerHTML="<a href='javascript:manage_video("+i+");'><img height='50px' width='220px' border=0 src='http://media.directa.tv/images_web/transparent.gif'></a>";
        
        //insertamos datos
        //imagen
        var row = document.getElementById("playlist_table").insertRow(pos);
        row.style.backgroundColor = "#3a3a3a";
        cell0 = row.insertCell(0);
        cell0.style.width = "48px";
        cell0.style.height = "51px";
        cell0.rowSpan = "2";
        cell0.align = "center";
        cell0.innerHTML = "<img width='39px' height='36px' src='" + image_paths[i] + "'>";
        
        //titulo
        cell1 = row.insertCell(1);
        cell1.style.width = "170px";
        cell1.colSpan = "2";  
        cell1.innerHTML = titles[i]; //no canal música
        
        //icono de nuevo
        cell2 = row.insertCell(2);
        cell2.style.width = "15px";
        cell2.align = "right";
        cell2.vAlign = "top";
        if(new_element[i] == 1) 
            cell2.innerHTML = "<img src='http://media.directa.tv/images_web/nuevo.gif'>";
        else 
            cell2.innerHTML = "&nbsp;";
        
        row = document.getElementById("playlist_table").insertRow(pos+1);
        row.style.backgroundColor = "#3a3a3a";
        
        //estrellas
        cell0 = row.insertCell(0);
        cell0.innerHTML = "<img src='http://media.directa.tv/images_web/estrellas" + valorations[i] + "inactivo.gif'>";
        
        //duracion
        cell1 = row.insertCell(1);
        cell1.align = "right";
        if(durations[i] != "null" && durations[i] != null) 
            cell1.innerHTML = durations[i].split(":")[0] + "' " + durations[i].split(":")[1] + "''";
        
        //vacio
        cell2 = row.insertCell(2);
        cell2.innerHTML = "&nbsp;";
        
        //separacion entre elementos playlist
        row = document.getElementById("playlist_table").insertRow(pos+2);
        row.style.height = "1px";
        
    }
    
    row = document.getElementById("playlist_table").insertRow(limit*3);
    cell0 = row.insertCell(0);
    cell0.style.height = "14px";
    
    document.getElementById("dummy").innerHTML="";
    
    //navegación por PAGINAS de la playlist
    /*if(num_elements > MAX_ELEMENTS){
        
        //alert("Numero elementos: "+num_elements+" MAX_ELEMENTS: "+MAX_ELEMENTS)
        
        for(k=1;k<=Math.ceil(num_elements/MAX_ELEMENTS);k++){
        
            document.getElementById("dummy").innerHTML+="<a id='link_pagina' href='javascript:load_playlist("+(k-1)+","+current_playlist+");'>"+k+"</a>-"; 
        }
    } */
    
    //cargamos primer video de la playlist
    if(num_elements > 0) 
        wait_images();
}

//función q carga los comentarios
function set_comments_vars(num,users,texts,dates){

    //alert("set_comments_vars \n \n num: "+num+"\n \n users: "+users+"\n \n texts: "+texts+"\n \n dates: "+dates);
    
    //variables donde guardar datos de los comments
    comments_num = num;
    comments_text = texts.split("|");
    comments_user = users.split("|");
    comments_date = dates.split("|");
    
    //hay comentarios
    if(comments_num >0){
    
        //creamos las filas y insertamos datos
        for(i=0;i<comments_num;i++){
            
            pos = i*4;
            
            //insertamos link
            var row = document.getElementById("comments_table").insertRow(pos);
            row.style.backgroundColor = "#3a3a3a";
            cell0 = row.insertCell(0);
            cell0.style.width = "15px";
            cell1 = row.insertCell(1);
            cell1.style.height = "15px";
            cell1.style.textAlign = "left"
            cell1.innerHTML = "<font style='color: #ff6600; font-family: Arial; font-size: 11px;'>" + comments_user[i] + "&nbsp;&nbsp;" + comments_date[i] + "</font>";
            
            row = document.getElementById("comments_table").insertRow(pos+1);
            row.style.backgroundColor = "#3a3a3a";
            cell0 = row.insertCell(0);
            cell0.style.width = "15px";
            cell1 = row.insertCell(1);
            cell1.style.height = "45px";
            cell1.style.textAlign = "justify"
            cell1.style.verticalAlign = "middle";
            cell1.innerHTML = comments_text[i];
            
            //separacion entre comments
            row = document.getElementById("comments_table").insertRow(pos+2);
            row.style.backgroundColor = "#000000";
            cell0 = row.insertCell(0);
            cell0.colSpan = "2";
            cell0.style.height = "1px";
            
            row = document.getElementById("comments_table").insertRow(pos+3);
            row.style.backgroundColor = "#3a3a3a";
            cell0 = row.insertCell(0);
            cell0.colSpan = "2";
            cell0.style.height = "5px";
        }
        
    //no hay comentarios
    }else{ 
    
        //insertamos link
        var row = document.getElementById("comments_table").insertRow(0);
        cell0 = row.insertCell(0);
        cell0.style.height = "40px";
        cell0.innerHTML = "<font style='color: #ff6600; font-family: Arial; font-size: 11px;'>No hay comentarios</font>";
    
    }
}
        

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////
