var glb_subgen;
var glb_gen;
var glb_cat;
var currentPage=0;
var currentPlPage=0;
var maxPage    =0;
var maxPlPage    =0;
var searchword  =   '';
var disablesearch   =   false;

function showPlList(data,page){
    //Paging
    $('#listMes').html('');
    if(data.plpagecount!=undefined) maxPlPage=data.plpagecount;
    
    if(data.plresult!='Empty'){
        $('#plResult').html(data.plresult);        
        $('.plNavi').html(data.plnavi);      
    }else{
        $('.plNavi').html('');
        $('#plResult').html('<div class="pl_mes"><div class="search_extrem_img"></div>Không có playlist nào thuộc thể loại này ! Bạn có thể <a class="search_focus" onclick="searchFocus();">tìm kiếm</a> để có kết quả mong muốn<div class="close_noti" onclick="closeNotiP();"></div></div>');
    }
    
    //Hien t
    if(page==undefined) page=1;
    currentPlPage=page;
    
    $('.plNavi .srPage').removeClass('pageSelected');
    $('.spPl-'+page).addClass('pageSelected');
    
    if(page==1){
        $('.plNavi .naviprev').replaceWith("");
        $('.plNavi .navifirst').replaceWith("");
    }else{
        $('.plNavi .naviprevdisable').replaceWith('<a class="navi naviprev" href="#" onclick="return naviPlPrev()"></a>');
        $('.plNavi .navifirstdisable').replaceWith('<a class="navi navifirst" href="#" onclick="return naviPl(1)"></a>');
    }
    
    if(page==maxPlPage){
        //chuyen thanh span
        $('.plNavi .navinext').replaceWith("");
        $('.plNavi .navilast').replaceWith("");
    }else{
        $('.plNavi .navinextdisable').replaceWith('<a class="navi navinext" href="#" onclick="return naviPlNext()"></a>');
        $('.plNavi .navilastdisable').replaceWith('<a class="navi navilast" href="#" onclick="return naviPl('+maxPlPage+')"></a>');
    }
}            
function showVidList(data,page){
    
    $('#listMes').html('');
    if(data.vdpagecount!=undefined) maxPage=data.vdpagecount;
    
    if(data.vdresult!='Empty'){
        $('#vdResult').html(data.vdresult);        
        $('.vdNavi').html(data.vdnavi);      
    }else{
        $('.vdNavi').html('');
        $('#vdResult').html('<div class="vid_mes"><div class="search_info_img"></div>Không có video nào thuộc thể loại này ! Bạn có thể <a class="search_focus" onclick="searchFocus();">tìm kiếm</a> để có kết quả mong muốn<div class="close_noti" onclick="closeNotiV();"></div></div>');
    }
    if(page==undefined) page=1;
    currentPage=page;
    $('.vdNavi .srPage').removeClass('pageSelected');
    $('.sp-'+page).addClass('pageSelected');
    
    if(page==1){
        $('.vdNavi .naviprev').replaceWith("");
        $('.vdNavi .navifirst').replaceWith("");
    }else{
        $('.vdNavi .naviprevdisable').replaceWith('<a class="navi naviprev" href="#" onclick="return naviNext()"></a>');
        $('.vdNavi .navifirstdisable').replaceWith('<a class="navi navifirst" href="#" onclick="return navi(1)"></a>');
    }    
    
    if(page==maxPage){
        //chuyen thanh span
        $('.vdNavi .navinext').replaceWith("");
        $('.vdNavi .navilast').replaceWith("");
    }else{
        $('.vdNavi .navinextdisable').replaceWith('<a class="navi navinext" href="#" onclick="return naviNext()"></a>');
        $('.vdNavi .navilastdisable').replaceWith('<a class="navi navilast" href="#" onclick="return navi('+maxPage+')"></a>');
    }
}
function formatCurrency(num) 
 {
    num = num.toString().replace(/\$|\,/g,'');
    if(isNaN(num))
    num = "0";
    sign = (num == (num = Math.abs(num)));
    num = Math.floor(num*100+0.50000000001);
    num = Math.floor(num/100).toString();
    for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
    num = num.substring(0,num.length-(4*i+3))+','+
    num.substring(num.length-(4*i+3));
    return (((sign)?'':'-') + num);
}
function vidLine(name,value){
    var rt  = '<div class="vidLine">';
    rt      +=  '<span class="vidHeader">'+name+'</span>'
    rt      +=  '<span class="vidFooter">'+value+'</span>';
    rt      +=  '</div>';
    return rt;
}
var uploader='';
function getYoutube(keyword,start){
    if(uploader!=undefined&&uploader!='') var url   =   'http://gdata.youtube.com/feeds/api/videos?max-results=20&start-index='+start+'&alt=json&author='+uploader;
    else var url     =   'http://gdata.youtube.com/feeds/api/videos?max-results=20&start-index='+start+'&alt=json&q='+keyword;
   
    //xoa nhung video hien co da;
    //get
    $.get(url,function(data){
        //console.log(data.feed.entry);
        if(data.feed.entry==undefined) {
            $('.navinext').replaceWith('<span class="navi navinextdisable"></span>');
            if(uploader!=undefined) $('#listMes').html('Không tìm được video nào upload bởi <b>'+uploader+'</b> nữa.');
            else   $('#listMes').html('Không tìm được kết quả nào.');
            return false;
        }else{
            var navi    =   '<a href="#" class="navi naviprev';
            if(start==1) navi+='disable';
            navi        +=  '" onclick="return customPrev();">« Trước</a>';
            
            if(uploader!=undefined) {navi+='<div id="naviMes"><b>'+uploader+'</b> Kết quả từ <span id="customstart">'+start+'</span> - <span id="customend">'+(start+19)+'</span></div><!--end#naviMes-->';}
            
            else {navi        +=      '<div id="naviMes">Từ khóa "'+keyword+'" Kết quả từ <span id="customstart">'+start+'</span> - <span id="customend">'+(start+19)+'</span></div><!--end#naviMes-->';}
            navi        +=  '<a href="#" class="navi navinext" onclick="return customNext();">Tiếp »</a>';
            $('.vdNavi').html(navi);
            var entry   =   data.feed.entry;
            $('#vdResult').html('<ul id="rlul"></ul>');
            for(i=0;i<entry.length;i++){
                
                var temp =   entry[i];
                //console.log(temp);
                var author  =   temp.author[0].name.$t;
                var title   =   temp.title.$t;
                if(temp.content==undefined) var content='Không có mô tả nào!';
                else var content =   temp.content.$t;
                var cat     =   temp.category[1].label;
                var tag     =   temp.id.$t;
                var link    =   tag.substr(tag.lastIndexOf("/")+1);
                //console.log(link);
                //$('#myLink').html(link);
                var view    =   0;
                var favo    =   0;
                if(temp.yt$statistics!=undefined){
                    view    =   temp.yt$statistics.viewCount;
                    favo    =   temp.yt$statistics.favoriteCount;  
                }
					 view	=	formatCurrency(view); 
					 favo	=	formatCurrency(favo); 
                var time    =   temp.published.$t;
                var big     =   temp.media$group.media$thumbnail[0].url;
                var small   =   temp.media$group.media$thumbnail[1].url;
                var reTime	 =	  temp.media$group.yt$duration.seconds;
                var reTimeSecond	=	reTime%60;
                var reTimeMinute	=	(reTime-reTimeSecond)/60;
                var reTimeHours	=	(reTimeMinute-(reTimeMinute%60))/60;
                if (reTimeMinute/60 < 1) {
             	    reTimeHours	=	'';
                }
                else {
              	 reTimeMinute = reTimeMinute-(reTimeHours*60);
              	 if (reTimeMinute < 10 & reTimeHours > 0) {
                    		reTimeMinute  = '0' + reTimeMinute;
                    	}
              	 reTimeHours = reTimeHours + ':';
                }
                if (reTimeSecond < 10) {
                    		reTimeSecond  = '0' + reTimeSecond;
                }
                var liid    =   'rlli-'+link;
                $('#rlul').append('<li id="'+liid+'"></li>');
                $('#'+liid).append('<div class="vidItem"></div>');
                var vidItem  =   '<div class="vidImg"><a href="/video/'+link+'"><div class="preview"></div></a><div class="overlay"></div><div class="up_background"></div>';		
                vidItem      +=      '<a href="/video/'+link+'"><img src="'+small+'" width="120px" height="90px"/></a>';
                vidItem      +=      '<div class="rdTime">'+reTimeHours+reTimeMinute+':'+reTimeSecond+'</div>';
					 vidItem      +=  '</div>';
                
                vidItem     +=  '<div class="vidDes">';
                vidItem     +=      '<div class="vidTitle">';
                vidItem     +=          '<a href="/video/'+link+'">'+title+'</a>'
                vidItem     +=      '</div><!--.vidTitle-->'
                vidItem     +=      '<div class="vidCon">';
                //console.log('before : '+content);
                var apct    =       content.length>200?'...':'';
                content     =       content.substr(0,200)+apct;
                vidItem     +=          content;
                vidItem     +=      '</div><!--.vidCon-->'
                vidItem     +=  '</div><!--.vidDes-->';  
                  
                vidItem     +=  '<div class="vidInfo">';
                vidItem     +=  vidLine('<span class="user"></span>','<a href="/author/'+author+'">'+author+'</a>');
                //vidItem     +=  vidLine('Ngày up',da);
                vidItem     +=  vidLine('<span class="play"></span>',view);
                vidItem     +=  vidLine('<span class="like"></span>',favo);
                vidItem     +=  '</div><!--end.vidInfo--><div class="bottom_line"></div>';
                $('#'+liid+' .vidItem').append(vidItem);                            
            }
        }
    },'json');
}
function customPrev(){
    var start = $('#customstart').html();
    start-=20;
    if(start>0){
        getYoutube($('#searchword').val(),start);
    }
    return false;
}
function customNext(){
    
    var start = $('#customend').html();
    start++;
    if(start<1000){
        getYoutube($('#searchword').val(),start);
    }
    return false;
}

function enablesearch(){
    disablesearch   =   false;
    if($('#searchword').val()!=searchword){
        customsearch();    
    }
}

var saveSearch=0;
function customsearch(event){
	 if(event!=undefined){
	 	 var keycode =	event.keyCode?event.keyCode:event.charCode;
		 if(keycode==13) saveSearch=1;
	 };
	 
	 
	 uploader='';
    //Cai nay de kiem tra,chi search nhieu nhat 1s 1 lan;
    if(disablesearch) return false;
    searchword      =   $('#searchword').val();
    disablesearch   =   true;
    setTimeout(enablesearch,1000);//chi tim kiem nhieu nhat 1s 1 lan    
    //go vao o tim kiem chi de tim video youtube thoi...
    $('#plResult').html('');
    if(searchword.length==0) {
        //neu xoa het o tim kiem thi xoa o video
        $('#vdResult').html('');   
        return false;   
    }    
    //Lay danh sach video(truc tiep tu youtube)
    
    getYoutube(searchword,1);
    //Lay danh sach playlist;
    $.get('/beta/home/getlist.php',{"keyword":searchword,"saveSearch":saveSearch},function(data){  
            if(data.success==1){ 
                showPlList(data);           
            }
        },'json'); 
    if(saveSearch==1)saveSearch=0;
    
    return false;
   
}
/*
        VIDEO NAVIGATOR
*/
function navi(page){
    $('#listMes').html('<div id="listMesLoading"><img src="/beta/images/loadingsmall.gif"/></div>');
    currentPage=page;       
    var sendData={
        "itemperpage":10,
        "keyword":$('#searchword').val(),
        "gen":glb_gen,
        "subgen":glb_subgen,
        "cat":glb_cat,
        "trang":page,
        "pagecount":maxPage
    };   
    $.get('/beta/home/getlist.php',sendData,function(data){        
        if(data.success==1){    
            showVidList(data,page);            
        }
    },'json');
    return false;
}
function naviPrev(){
    currentPage=currentPage-1;
    navi(currentPage);
    return false;
}
function naviNext(){
    currentPage=currentPage+1;
    navi(currentPage);
    return false;
}
/*
        Playlist NAVIGATOR
*/
function naviPl(page){
    $('#listMes').html('<div id="listMesLoading"><img src="/beta/images/loadingsmall.gif"/></div>');
    currentPlPage=page;       
    
    var sendData={
        "itemperpage":10,
        "keyword":$('#searchword').val(),
        "gen":glb_gen,
        "subgen":glb_subgen,
        "cat":glb_cat,
        "trang":page,
        "plpagecount":maxPlPage
    };   
    $.get('/beta/home/getlist.php',sendData,function(data){        
        if(data.success==1){    
            showPlList(data,page);            
        }
    },'json');
    return false;
}


function naviPlPrev(){
    currentPlPage=currentPlPage-1;
    naviPl(currentPlPage);
    return false;
}
function naviPlNext(){
    currentPlPage=currentPlPage+1;
    naviPl(currentPlPage);
    return false;
}



function browse(gen,subgen,cat,itemperpage){
    uploader='';//het tim theo tac gia
    //console.log(gen);
    //Tìm video thuộc thể loại nào đos
    $('#searchword').val('');
    $('#listMes').html('<div id="listMesLoading"><img src="/beta/images/loadingsmall.gif"/></div>');
    //neu ko nhap itemperpage thi mac dinh la 10
    if(itemperpage==undefined) itemperpage=10;
    //neu ko nhap category thi mac dinh la tat ca
    if(cat==undefined) cat=0;
    //neu ko nhap subgen thi = 0
    if(subgen==undefined)subgen=0;
    //neu ko nhap gen thi = 0 
    if(gen==undefined) gen=0;
    if(cat>0){
        glb_cat=cat;
        glb_gen=0;
        glb_subgen=0;
        $('.plNavi').html('');
        //la do click vao cho~ phan loai        
    }else{
        glb_cat=0;
        //thu chuyem muc
        if(subgen==0){
            //thu the loai
            if(gen==0){
                //the loai = 0 not thi xem thu chuyen muc dang browse
                if(glb_subgen>0) {
                    subgen=glb_subgen;
                    gen=0;
                    glb_gen=0;   //uu tien subgen hon
                }else{                    
                    //chuyen muc dang browse=0 not thi thu the loai dang browse
                     if(glb_gen>0){
                        gen =   glb_gen;
                    }//con khong nua thi chiu
                }                       
            }
            //thu xem truoc do da chon subgen nao chua
        }
    }
    if(subgen>0){
        //css
        $('.subliActive').removeClass('subliActive');
        $('.subli-'+subgen).addClass('subliActive');
        //css
    }
    glb_subgen=subgen;
    glb_gen=gen;
    var sendData    =   {
        "itemperpage":itemperpage,
        "gen":gen,
        "subgen":subgen,
        "cat":cat
    };
    console.log(sendData);
    $.get('/beta/home/getlist.php',sendData,function(data){
        if(data.success==1){     
            showPlList(data);
            //Phong truong hop search = keyword thi chi hien thi playlist thoi.
            showVidList(data,1);
                     
        }
    },'json');
    return false;
}
function listShowVD(){
    $('#vdResult').slideDown();
    $('.vdNavi').show();
    $('#btnShowVD').hide();
    $('#btnHideVD').show();
    return false;
}
function listHideVD(){
    $('#vdResult').slideUp();
    $('.vdNavi').hide();
    $('#btnShowVD').show();
    $('#btnHideVD').hide();
    return false;
}
function listShowPL(){
    $('#plResult').slideDown();
    $('.plNavi').show();
    $('#btnShowPL').hide();
    $('#btnHidePL').show();
    return false;
}
function listHidePL(){
    $('#plResult').slideUp();
    $('.plNavi').hide();
    $('#btnShowPL').show();
    $('#btnHidePL').hide();
    return false;
}

$(document).ready(function(){
   $('#searchword').keyup(customsearch);
   var author   =   $('#searchAuthor').val();
   if(author!=undefined) {
       uploader=author;
       getYoutube('',1);
       
       return false;
   }
   var q  =   $('#searchword').val();
   if(q!=undefined&&q.length>0){
        customsearch();
        return false;
   }
   $subgen  =   $('#subgenval').val();
   $gen  =   $('#genval').val();
   $cat  =   $('#catval').val();
   browse($gen,$subgen,$cat);
    
});
