var player;
var autoPlay = 1;
var autoload = 0;
function pready(obj)
{
        player = gid(obj.id);
        addListeners();
};
function addListeners()
{
    playlist = player.getPlaylist();
    if(playlist.length > 0 )
    {
       
        player.addModelListener('STATE', 'stateMonitor');
    }
    else
    {
       
        setTimeout("addListeners()", 2000);
    }
};

function gid(name)
{
    return document.getElementById(name);
}

function stateMonitor(obj)
{
    if(obj.newstate == 'COMPLETED')
    {
          // drop out of fullscreen
          // this.window.focus();

          // load a new page
          // window.location = 'http://www.google.com';
          videoPanel.playNextVideo();
    }
}
function ajax_update(POSTDATA,callback){
    $.ajax({
        url: 'v3_ajax.php',
        dataType:'json',
        type:'post',
        data:POSTDATA,
        success: function(response){
            callback (response);
        },
        error :function (xhr){
            alert('Error!  Status = ' + xhr.status + xhr.responseText);
        }
    })
}
var GLOBAL_CAT_ID = 0;
var GLOBAL_VID_ID = 0;

var topCatPanel = {
    'firstPageLoad': 1,
    'curCatId' : 0,
    'page': 1,
    'Init':function(){
        $('#category-menu > div > a').each(function(){
            $(this).bind('click',function(ev){
                autoPlay = 0;
                Jumper.didJump = false;
                videoPanel.jumpId = 0;
                ev.preventDefault();
                topCatPanel.SetId($(this).attr('cat_id'));
                topCatPanel.firstPageLoad = 0;
                MiddleBanners.Load();
                
            });
        })
    },
    'SetId' : function(cat_id)
    {
        this.page = 1;
        if(cat_id != this.curCatId)
        {
            if(this.curCatId > 0) $('#top-cat-' + this.curCatId).parent().removeClass('clicked').removeClass('onhover');
            $('#top-cat-' + cat_id).parent().addClass('clicked').addClass('onhover');
            this.curCatId = cat_id; // 1-5, it's also the topcatnum
            SubCatMenu.subcat_curPage = 1;
            this.LoadVideos();
        }
    },
    'LoadVideos':function()
    {
        
        SubCatMenu.pageBtnPanel.css("display",'none');
        $("#program-list").html('<img src="img/ajax.gif">');
        POSTDATA = "action=loadvideo&cattype=top&cat_id=" + this.curCatId + "&page=" + this.page;
       //alert(POSTDATA);
        ajax_update(POSTDATA, this.callback);
    },
    'callback':function(res)
    {
        if(res.total > 0)
        {
            autoload = 1;
            SubCatMenu.ReInit(res);
        }
    },
    'initLoad':function()
    {
        topCatPanel.curCatId = 1;
        SubCatMenu.pageBtnPanel.css("display",'none');
        $("#program-list").html('<img src="img/ajax.gif">');
        POSTDATA = "action=loadvideo&cattype=top&cat_id=1&page=1";
        ajax_update(POSTDATA, this.callback);
    },
    'playNextTopCat':function()
    {
        
        nextTopCatId = parseInt(topCatPanel.curCatId) + 1;
        if(nextTopCatId > 5) nextTopCatId = 1;
        topCatPanel.SetId(nextTopCatId);
    },
    'startJump':function(topCatId, page, subCatId)
    {
        if(this.curCatId != topCatId) $('#top-cat-' + this.curCatId).parent().removeClass('clicked').removeClass('onhover');
        this.curCatId = topCatId;
        this.page = page;
        $('#top-cat-' + topCatId).parent().addClass('clicked').addClass('onhover');
        SubCatMenu.subcat_curPage = page;
        SubCatMenu.jumperId = subCatId;
        Jumper.didJump = true;
        this.LoadVideos();
    }
};
var Jumper = {
        'didJump':0,
        'type' :'',
        'topCatId':0,
        'subCatId':0,
        'subCatNum':0,
        'page':1,
        'jump':function(){
                if(this.type == 'category'){
                        POSTDATA = "action=checkSubCat&type=" + this.type + "&subCatId="+ this.subCatId;
                        ajax_update(POSTDATA, this.catcallback);
                }
        },
        'catcallback':function(res){
                //alert("total: " + res.total + " topcatid: " + res.topCatId + " page:" + res.page);
                this.page = res.page;
                topCatPanel.startJump(res.topCatId, res.page, this.subCatId );
        }
}

var SubCatMenu = {
        'jumperId':false,
    'subcat_id': 0,
    'subcat_curNum' : 1,
    'subcat_total': 0,
    'subcat_curPage':1,
    'leftPageBtn':{},
    'rightPageBtn':{},
    'pageBtnPanel':{},
    'Init':function(){
        this.pageBtnPanel = $('#nav-left');
        this.leftPageBtn = $("#subCatLeftPageBtn");
        this.rightPageBtn = $("#subCatRightPageBtn");
        this.pageBtnPanel.css('display','none');

    },
    'ReInit':function(res){
        SubCatArray = eval(res.cat_data);

        if(SubCatArray.length > 0 )
        {
            $("#program-list").html('');
            SubCatMenu.subcat_total = res.total;
            SubCatMenu.subcat_curPage = res.curPage;
            firstSubCatId = SubCatArray[0][0];
            
        }else{
            return;
        }

        for(i = 0; i < SubCatArray.length; i++)
        {
            subCatNum = "id='subcatnum_" + (i + 1) + "' subcat_num='"+(i+1)+ "'";
            $("#program-list").append("<a href='#' " + subCatNum + " subcat_id=" + SubCatArray[i][0]+ ">" + SubCatArray[i][2] + "<br>" + SubCatArray[i][1] + "</a>");
        }
        if(topCatPanel.curCatId >1 )
        {
                $("#program-list > a").each(function(){
                        $(this).bind('click',function(ev){
                        ev.preventDefault();
                        autoPlay = 0;
                        autoload = 1;
                        videoPanel.jumpId = 0;
                        $("#program-list > a").each(function(){
                            $(this).removeClass('onhover');
                        });
                        $(this).addClass('onhover');
                        SubCatMenu.subcat_id = $(this).attr('subcat_id');
                        videoPanel.catId = SubCatMenu.subcat_id;
                        SubCatMenu.subcat_curNum = $(this).attr('subcat_num');
                        SubCatMenu.LoadVideos();
                        })
                 });
        }else{
                $("#program-list > a").each(function(){
                        $(this).bind('click',function(ev){
                        ev.preventDefault();
                        autoPlay = 0;
                        $("#program-list > a").each(function(){
                            $(this).removeClass('onhover');
                        });
                        $(this).addClass('onhover');
                        SubCatMenu.subcat_id = $(this).attr('subcat_id');
                        
                        if($(this).attr('subcat_id')  == 0 )
                        {
                                SubCatMenu.subcat_curNum = $(this).attr('subcat_num');
                                SubCatMenu.LoadVideos();
                        }else
                        {
                                Jumper.type = 'category';
                                Jumper.subCatId = $(this).attr('subcat_id');
                                Jumper.jump();
                        }
                      
                        })
                 });
        }
        
       
        if(topCatPanel.firstPageLoad == 1 || autoload == 1)
        {
                $('#top-cat-'+topCatPanel.curCatId).parent().addClass('clicked').addClass('onhover');
                if(Jumper.didJump == false)
                {
                        $("#program-list >a:first-child").addClass('onhover').addClass('clicked');
                        SubCatMenu.subcat_id = $("#program-list >a:first-child").attr('subcat_id');
                }else
                {
                        Jumper.didJump = false;
                        $("#program-list >a").each(function(){
                                //alert($(this).attr('subcat_id') + " == " + SubCatMenu.subcat_id);
                                if($(this).attr('subcat_id') == SubCatMenu.subcat_id)
                                {
                                        $(this).addClass('onhover').addClass('clicked');
                                }
                        });
                }
                this.pagination();
                SubCatMenu.LoadVideos();
        }
        
    },
    'LoadVideos':function()
    {
        m = parseInt(this.subcat_id);
        if(parseInt(videoPanel.jumpId) == 0)
        {
                videoPanel.page = 1;
                videoPanel.catId = m;
        }
        //alert(videoPanel.catId);
        videoPanel.LoadVideo();
      
    },
    'pagination':function()
    {
        if(this.subcat_total > 9)
        {
            this.leftPageBtn.unbind('click').bind('click',function(ev){
                autoPlay = 0;
                ev.preventDefault();
                topCatPanel.page = parseInt(SubCatMenu.subcat_curPage) -1 ;
                topCatPanel.LoadVideos();
            });
            this.rightPageBtn.unbind('click').bind('click',function(ev){
                autoPlay = 0;
                ev.preventDefault();
                topCatPanel.page = parseInt(SubCatMenu.subcat_curPage) + 1 ;
                topCatPanel.LoadVideos();
            });
            if(this.subcat_curPage == 1)
            {
                this.leftPageBtn.css('display','none').unbind('click');
                this.rightPageBtn.css('display','block');
            }else if((this.subcat_curPage) * 9 > this.subcat_total){
                this.rightPageBtn.css('display','none').unbind('click');
                this.leftPageBtn.css('display','block');
            }else
            {
                this.leftPageBtn.css('display','block');
                this.rightPageBtn.css('display','block');
            }
            this.pageBtnPanel.css('display','block');
        }else{
            this.pageBtnPanel.css('display','none');
        }
    },
    'playNextSubMenu':function()
    {
        nextSubCatNum = parseInt(SubCatMenu.subcat_curNum) + 1;
        if(nextSubCatNum + (parseInt(SubCatMenu.subcat_curPage) - 1) * 9 > SubCatMenu.subcat_total )
        {
            topCatPanel.playNextTopCat();
        }else if(nextSubCatNum > 9 )
        {
            topCatPanel.page = parseInt(SubCatMenu.subcat_curPage) + 1 ;
            topCatPanel.LoadVideos();
        }else
        {
            $("#subcatnum_" + SubCatMenu.subcat_curNum).removeClass('onhover');
            SubCatMenu.subcat_curNum  = nextSubCatNum;
            SubCatMenu.subcat_id = $("#subcatnum_" + SubCatMenu.subcat_curNum).attr("subcat_id");
            $("#subcatnum_" + nextSubCatNum).addClass('onhover');
            SubCatMenu.LoadVideos();
        }
    }
};
var MiddleBanners = {
    'curTopCatId':1,
    'total':0,
    'lastBannerId':0,
    'Load':function()
    {
        if(this.curTopCatId != topCatPanel.curCatId)
        {
            this.lastBannerId = 0;
            this.curTopCatId = topCatPanel.curCatId;
        }
        POSTDATA = "action=loadMiddleBanners&cat_id="+ topCatPanel.curCatId + "&lastBannerId="+this.lastBannerId;
        ajax_update(POSTDATA, this.callback);
    },
    'callback':function(res)
    {
        
        if(res.total <= 0) return;
        Banners = eval(res.Banners);
        for(i = 0; i < 4; i++)
        {
            if(i  >= Banners.length ){
                $("#midBanner-"+i).html("");
            }else
            {
                new BannerLoader($("#midBanner-"+ i), Banners[i][1], Banners[i][0]);
                MiddleBanners.lastBannerId = Banners[i][2];
            }
        }
    }
}
var videoPanel = {
        'jumpId':0,
    'ImgArray':[],
    'page': 1,
    'curPlayVideoNum':1,
    'catId':0,
    'total':0,
    'videoSrc':'',
    'firstPageBtn':{},
    'nextPageBtn':{},
    'prePageBtn':{},
    'lastPageBtn':{},
    'numNavBox':{},
    'navBox':{},
    'clickedBox':'',
    'Init':function(){
        this.firstPageBtn = $('#videoFirstPage');
        this.nextPageBtn = $('#videoNextPage');
        this.prePageBtn = $('#videoPrePage');
        this.lastPageBtn = $('#videoLastPage');
        this.numNavBox = $('#videoNumNav');
        this.navBox = $('#nav-right');
        this.navBox.css('display','none');
        this.ImgArray = new Array();
        this.clickedBox = '';
    },
    'LoadVideo':function(){
        POSTDATA = "action=loadcatvideo&catId=" + this.catId + "&page=" + this.page;
       // alert(POSTDATA);
        ajax_update(POSTDATA, this.callback);
    },
    'callback':function(res){
        videoPanel.total = parseInt(res.total);
        videoPanel.page = parseInt(res.page);
        if(videoPanel.total > 12) // VIDEO PANEL PAGINATION
        {
            videoPanel.navBox.css("display",'block');
            tp = parseInt(videoPanel.total / 12);
            if(videoPanel.total % 12 > 0 ) tp += 1;
            $('#videoFirstPage').css('display','block').unbind('click').bind('click',function(ev){
                ev.preventDefault();
                autoPlay = 0;
                POSTDATA = "action=loadcatvideo&catId=" + videoPanel.catId + "&page=1";
                ajax_update(POSTDATA, videoPanel.callback);
            });
            $('#videoPrePage').css('display','block').unbind('click').bind('click',function(ev){
                ev.preventDefault();
                autoPlay = 0;
                POSTDATA = "action=loadcatvideo&catId=" + videoPanel.catId + "&page=" + (videoPanel.page - 1);
                ajax_update(POSTDATA, videoPanel.callback);
            });
            $('#videoNextPage').css('display','block').unbind('click').bind('click',function(ev){
                ev.preventDefault();
                autoPlay = 0;
                POSTDATA = "action=loadcatvideo&catId=" + videoPanel.catId + "&page=" + (videoPanel.page + 1);
                ajax_update(POSTDATA, videoPanel.callback);
            });
            $('#videoLastPage').css('display','block').unbind('click').bind('click',function(ev){
                ev.preventDefault();
                autoPlay = 0;
                POSTDATA = "action=loadcatvideo&catId=" + videoPanel.catId + "&page=" + tp;
                ajax_update(POSTDATA, videoPanel.callback);
            });
            if(videoPanel.page == 1)
            {
                $('#videoFirstPage').css('display','none').unbind('click');
                $('#videoPrePage').css('display','none').unbind('click');
            }else if(videoPanel.page == tp)
            {
                $('#videoNextPage').css('display','none').unbind('click');
                $('#videoLastPage').css('display','none').unbind('click');
            }
            videoNumNavHtml = '';
            numNavCount = 0;
            numArray = new Array();
            for(i = 1; i <= tp; i++ )
            {
                if(numArray.length < 5) numArray.push(i);
                else
                {
                    if(i - videoPanel.page <= 2)
                    {
                        numArray.shift();
                        numArray.push(i);
                    }
                }
                
            }
            //alert(numArray + " " + videoPanel.page);
            for(i =0; i< numArray.length; i++){
                if(numArray[i] == videoPanel.page){
                    videoNumNavHtml += "<a href='#' onclick='return false;' class='on'>"+ (videoPanel.page)+"</a>";
                    
                }else{
                    videoNumNavHtml += "<a href='#' onclick='javascript:videoPanel.page="+ (numArray[i]) +";videoPanel.LoadVideo(); autoPlay = 0;return false;'>"+ (numArray[i])+"</a>";
                }
            }
            
            $('#videoNumNav').html(videoNumNavHtml);
        }else{
            videoPanel.navBox.css("display",'none');
        }   // END - VIDEO PANEL PAGINATION
        videoHtml = '';
       // alert(res.cat_data);
        if(videoPanel.total > 0 && typeof(res.cat_data) != 'undefined')
        {
        
            videoArray = eval(res.cat_data);
        
                var vidnum = 0;
            for(i = 0; i < videoArray.length; i++)
            {
                clickedClass='';
                if(videoPanel.videoSrc == videoArray[i][1])
                {
                    clickedClass = 'clicked';
                    vidnum = i + 1;
                }
                vNum = 'id="vnum_' + (i + 1) + '"';
                longDesc = videoArray[i][3];
                if(longDesc.length > 40)
                        shortDesc = longDesc.substring(0,40) + " ...";
                else shortDesc = longDesc;
                videoHtml += '<div class="videodetail-box '+ clickedClass +'" vidnum='+(i+1)+' title="'+longDesc+'"><div ' + vNum + ' class="img" src="'+videoArray[i][2] +'" video_path="'+ videoArray[i][1]+'"><img class="ajax" src="img/ajax.gif"></div><div class="desc">'+ shortDesc +'</div></div>';
                if(i == 3 || i == 7)
                {
                    videoHtml += '<div class="gray-bar"></div>';
                }
            }
        
            if(i != 4 && i != 8 && i != 11)  videoHtml += '<div class="gray-bar"></div>';
            $('#videolist-box').html(videoHtml);
            videoPanel.DisplayVideoImg();
            
            
            if( autoPlay == 1 && parseInt(videoPanel.jumpId) == 0)
            {
                //$("#program-list >a:first-child").addClass('onhover');
                videoPanel.playFirst(1);
            }
            if(videoPanel.jumpId != "")
            {
                videoPanel.jumpId = "";
                videoPanel.playFirst(vidnum);
            }
           
                
        }
    },
    'DisplayVideoImg':function(){
        $(".img").each(function(){
            imgSrc = $(this).attr('src'); 
            videoPanel.ImgArray.push(new ImgLoader($(this), imgSrc));
        });
       // $('.videodetail-box').tooltip({ offset: [10, 2], opacity: 1,delay: 0});
      
    },
    'playFirst':function(num)
    {
        videoPanel.videoSrc = $("#vnum_" + num).attr('video_path');
        videoPanel.clickedBox = $("#vnum_" + num).parent();
        videoPanel.clickedBox.addClass('clicked');
        videoPanel.curPlayVideoNum = num;
        playVideo(videoPanel.videoSrc);
    },
    'playNextVideo':function()
    {
        autoPlay = 1;

        nextVideoNum = parseInt(videoPanel.curPlayVideoNum) + 1;
        if(nextVideoNum + (videoPanel.page - 1 ) * 12  > videoPanel.total)
        {
            SubCatMenu.playNextSubMenu();
        }
        else if(nextVideoNum > 12 )
        {
            videoPanel.playNextPage();
        }else{
            $("#vnum_" + videoPanel.curPlayVideoNum).parent().removeClass('clicked');
            
            videoPanel.curPlayVideoNum = nextVideoNum;
            videoSrc = $("#vnum_" + videoPanel.curPlayVideoNum).attr('video_path');
            $("#vnum_" + videoPanel.curPlayVideoNum).parent().addClass('clicked');
            playVideo(videoSrc);
        }
    },
    'playNextPage':function()
    {
        videoPanel.page += 1;
        videoPanel.LoadVideo();
    }
};
// functions inside a function can access parent function's varibale by THAT
// when using prototype, use setters and getters to access variables in parent functions
function ImgLoader(obj, src)
{
    var domObj = obj;
    var imgSrc = src;
    this._getImgSrc = function(){return imgSrc;}
    this._getDomObj = function(){return domObj;}
    this.LoadImg();
}
ImgLoader.prototype.LoadImg = function(){
    var ImgObj = new Image();
    var DomObj = this._getDomObj();
    var imgSrc = this._getImgSrc();
    ImgObj.onload = function(){
        setTimeout(function(){
            DomObj.html("<a href=''><img src='"+imgSrc+"'></a>");
            DomObj.parent().bind("click",function(ev){
                autoPlay = 1;
                ev.preventDefault();
                if(typeof(videoPanel.clickedBox) == 'object')
                {
                    videoPanel.clickedBox.removeClass('clicked'); 
                }
                $(this).addClass("clicked");
                
                videoPanel.clickedBox = $(this);
                videoPanel.curPlayVideoNum = $(this).attr('vidnum');
                videoSrc =  DomObj.attr('video_path');
                videoPanel.videoSrc = videoSrc;
                bcode = Base64.encode(DomObj.attr('video_path'));
                window.location.hash = "#!play="+bcode;
                //so.addVariable('sharing.link', "http://www.nytv8.com/index.php?play=" + bcode)
                playVideo(videoSrc);

            });
        },500);
    }
    ImgObj.src = imgSrc;
}
function BannerLoader(obj, src, website)
{
        var myRegExp = /swf/;
    var domObj = obj;
    var imgSrc = src;
    var link = website;
    if(imgSrc.search(myRegExp) >= 0)
    {
        var str = '<a href="'+website+'" target="_blank"><object width="336" height="80"><param name="movie" value="'+imgSrc+'"><embed src="'+imgSrc+ '" width="336" height="80"></embed></object></a>';
        domObj.html(str);
        return;
    }
    
    domObj.html("<span class='middle'><img src='img/ajax.gif'></span>")
    this._getImgSrc = function(){return imgSrc;}
    this._getDomObj = function(){return domObj;}
    this._getLink = function(){return link;}
    this.LoadImg();
}
BannerLoader.prototype.LoadImg = function(){
    var ImgObj = new Image();
    var DomObj = this._getDomObj();
    var imgSrc = this._getImgSrc();
    var link  = this._getLink();
    ImgObj.onload = function(){
        setTimeout(function(){
            DomObj.html("<a href='" + link + "' target='_blank'><img src='" + imgSrc + "'></a>");
        },1500);
    }
    ImgObj.src = imgSrc;
}
var bannerPanel = {};
var newsPanel = {};

function LoadStaticBanners_CB(res)
{
        var myRegExp = /swf/;
        
    if(res.banner_top != '')
    {
        domObj = $('#banner-top');
        var imgSrc = res.banner_top;
        var link = (res.banner_top_link) ? res.banner_top_link : "";
        
        if(imgSrc.search(myRegExp) >= 0)
                {
                    if(link)
                        str = '<a href="'+link+'" target="_blank"><object width="1200" height="100"><param name="movie" value="'+imgSrc+'"><embed src="'+imgSrc+ '" width="1200" height="100"></embed></object></a>';
                    else
                        str = '<object width="1200" height="100"><param name="movie" value="'+imgSrc+'"><embed src="'+imgSrc+ '" width="1200" height="100"></embed></object>';    
                    
                    domObj.html(str);
                    return;
                }else{
                        $("#banner-top").html("<span class='middle'><img src='img/ajax.gif'></span>");
                        new BannerLoader(domObj, res.banner_top, res.banner_top_link);
                }
        
       
    }
    if(res.banner_group != '')
    {
        banner_group = eval(res.banner_group);
        for(i = 0; i < banner_group.length; i++)
        {
            website = banner_group[i][0];
            file = banner_group[i][1];
            $("#banner-bottom-" + i).html("<span class='middle'><img src='img/ajax.gif'></span>");
            domObj = $("#banner-bottom-" + i);
            
            new BannerLoader(domObj, file, website);
        }
    }
    if(res.banner_middle != '')
    {
                var domObj = $('#banner-box-a');
                var imgSrc = res.banner_middle;
                var link = (res.banner_middle_link) ? res.banner_middle_link : "";
                if(imgSrc.search(myRegExp) >= 0)
                {
                    if(link)
                     str = '<a href="'+link+'" target="_blank"><object width="336" height="110"><param name="movie" value="'+imgSrc+'"><embed src="'+imgSrc+ '" width="336" height="110"></embed></object></a>';
                    else
                         str = '<object width="336" height="110"><param name="movie" value="'+imgSrc+'"><embed src="'+imgSrc+ '" width="336" height="110"></embed></object>';    
                    domObj.html(str);
                    return;
                }else{
                    
                    
                    $("#banner-box-a").html("<span class='middle'><img src='img/ajax.gif'></span>");
                    new BannerLoader(domObj, res.banner_middle, res.banner_middle_link);
                }
        }
        

}
function LoadStaticBanners()
{
    POSTDATA = "action=loadStaticBanners";
    ajax_update(POSTDATA, LoadStaticBanners_CB);
}
function LoadNews_CB(res)
{
    News = eval(res.News);
    news_html = "";
    for(i = 0; i < News.length; i++)
    {
        news_html += "<li><a href='" + News[i][1] + "' target='_blank'>" + News[i][0] + "</a></li>";
    }
    news_html = "<ul>" + news_html + "</ul>";
    $("#news-content-box").html(news_html);
    $('#news-content-box').vTicker({height: 173});


}
function LoadNews()
{
    $("#news-content-box").html("<span class='middle'><img src='img/ajax.gif'></span>");
    POSTDATA = "action=LoadNews";
    ajax_update(POSTDATA, LoadNews_CB);
}
function hashInit(res)
{
    if(res.found == '0')
    {
        topCatPanel.initLoad();
    }else
    {
        //alert('video_path:' + res.video_path + '  vid:' + res.vid + '  menupage:' + res.page + ' menuId:' + res.subCatId + '  topCatId:' + res.topCatId + " video_page:" + res.video_page + " vidCount:" + res.count);
        if(topCatPanel.curCatId != res.topCatId)
        {
            $("#top-cat-"+topCatPanel.curCatId).parent().removeClass('clicked').removeClass('onhover');
            topCatPanel.curCatId = parseInt(res.topCatId);
        }

        
        
        $('#top-cat-' + res.topCatId).parent().removeClass('clicked').removeClass('onhover');
        topCatPanel.curCatId = res.topCatId;
        topCatPanel.page = res.page;
        $('#top-cat-' + res.topCatId).parent().addClass('clicked').addClass('onhover');
        SubCatMenu.subcat_curPage = res.page;
        SubCatMenu.subcat_id = res.subCatId;
        
        Jumper.didJump = true;
        videoPanel.jumpId = res.vid;
        videoPanel.catId  = res.subCatId;
        videoPanel.videoSrc = res.video_path;
        videoPanel.page = res.video_page;
        topCatPanel.LoadVideos();
        
    }
}
$(document).ready(function(){
    $('.div-menu').each(function(){
        $(this).bind('mouseover', function(){
                    $(this).addClass("onhover");
                }).bind("mouseout",function(){
                    if(! $(this).hasClass('clicked')) $(this).removeClass("onhover");
                });
    });
    //alert($('#fb-box').css("height") + " " + $('#fb-box').css("width"));
    topCatPanel.Init();
    SubCatMenu.Init();
    videoPanel.Init();
    LoadStaticBanners();
    LoadNews();
    if(window.location.hash != '')
    {
        str = window.location.hash;
        str =  "action=hasHash&" + str.replace('#!','');
        ajax_update(str + str, hashInit);
        
    }else
    {
        topCatPanel.initLoad();
    }
  

});
count = 1;
function playVideo(videoFN)
{
        
    MiddleBanners.Load();
    bcode = Base64.encode(videoFN);
    id = "jwplayer" + count;
	ad_id = 'ad_' + count;
    count++;
    //file = "http://209.59.198.25/videos/" + videoFN;
    if(videoFN.search(/http/i) < 0){
        file = "http://209.59.198.25/videos/" + videoFN;
    }else{
        file = videoFN;
    }
    link = "http://www.nytv8.com/index_101222.php#!play=" + bcode;
    var so = new SWFObject('http://www.nytv8.com/jwplayer/player.swf', id, '810', '450', '8');
    so.addParam('allowscriptaccess', 'always');
    so.addParam('allowfullscreen', 'true');
    so.addParam('wmode','transparent');
    so.addVariable('link',link);
    so.addVariable('sharing.link',link);
    so.addVariable('plugins', 'ltas,fbit-1,sharing');
    so.addVariable('dock', true);
    so.addVariable('playerready', 'pready');
    so.addVariable('ltas.cc', "zvecfzycypcjhtx");
    so.addVariable('ltas.mediaid', "v1");
	so.addVariable('width', '810');
    so.addVariable('height', '455');
    so.addVariable('skin', 'http://www.nytv8.com/jwplayer/darksunset.zip');
    so.addVariable('controlbar','over');
    so.addVariable('file', file);
    so.addVariable('autostart', true);
   //so.addVariable('tracecall','');
    so.write('player-box');
}


/**
*
*  Base64 encode / decode
*  http://www.webtoolkit.info/
*
**/
 
var Base64 = {
 
	// private property
	_keyStr : "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",
 
	// public method for encoding
	encode : function (input) {
		var output = "";
		var chr1, chr2, chr3, enc1, enc2, enc3, enc4;
		var i = 0;
 
		input = Base64._utf8_encode(input);
 
		while (i < input.length) {
 
			chr1 = input.charCodeAt(i++);
			chr2 = input.charCodeAt(i++);
			chr3 = input.charCodeAt(i++);
 
			enc1 = chr1 >> 2;
			enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);
			enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);
			enc4 = chr3 & 63;
 
			if (isNaN(chr2)) {
				enc3 = enc4 = 64;
			} else if (isNaN(chr3)) {
				enc4 = 64;
			}
 
			output = output +
			this._keyStr.charAt(enc1) + this._keyStr.charAt(enc2) +
			this._keyStr.charAt(enc3) + this._keyStr.charAt(enc4);
 
		}
 
		return output;
	},
 
	// public method for decoding
	decode : function (input) {
		var output = "";
		var chr1, chr2, chr3;
		var enc1, enc2, enc3, enc4;
		var i = 0;
 
		input = input.replace(/[^A-Za-z0-9\+\/\=]/g, "");
 
		while (i < input.length) {
 
			enc1 = this._keyStr.indexOf(input.charAt(i++));
			enc2 = this._keyStr.indexOf(input.charAt(i++));
			enc3 = this._keyStr.indexOf(input.charAt(i++));
			enc4 = this._keyStr.indexOf(input.charAt(i++));
 
			chr1 = (enc1 << 2) | (enc2 >> 4);
			chr2 = ((enc2 & 15) << 4) | (enc3 >> 2);
			chr3 = ((enc3 & 3) << 6) | enc4;
 
			output = output + String.fromCharCode(chr1);
 
			if (enc3 != 64) {
				output = output + String.fromCharCode(chr2);
			}
			if (enc4 != 64) {
				output = output + String.fromCharCode(chr3);
			}
 
		}
 
		output = Base64._utf8_decode(output);
 
		return output;
 
	},
 
	// private method for UTF-8 encoding
	_utf8_encode : function (string) {
		string = string.replace(/\r\n/g,"\n");
		var utftext = "";
 
		for (var n = 0; n < string.length; n++) {
 
			var c = string.charCodeAt(n);
 
			if (c < 128) {
				utftext += String.fromCharCode(c);
			}
			else if((c > 127) && (c < 2048)) {
				utftext += String.fromCharCode((c >> 6) | 192);
				utftext += String.fromCharCode((c & 63) | 128);
			}
			else {
				utftext += String.fromCharCode((c >> 12) | 224);
				utftext += String.fromCharCode(((c >> 6) & 63) | 128);
				utftext += String.fromCharCode((c & 63) | 128);
			}
 
		}
 
		return utftext;
	},
 
	// private method for UTF-8 decoding
	_utf8_decode : function (utftext) {
		var string = "";
		var i = 0;
		var c = c1 = c2 = 0;
 
		while ( i < utftext.length ) {
 
			c = utftext.charCodeAt(i);
 
			if (c < 128) {
				string += String.fromCharCode(c);
				i++;
			}
			else if((c > 191) && (c < 224)) {
				c2 = utftext.charCodeAt(i+1);
				string += String.fromCharCode(((c & 31) << 6) | (c2 & 63));
				i += 2;
			}
			else {
				c2 = utftext.charCodeAt(i+1);
				c3 = utftext.charCodeAt(i+2);
				string += String.fromCharCode(((c & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63));
				i += 3;
			}
 
		}
 
		return string;
	}
}


