﻿var hostURL = location.hostname;
var themeID = "090203";
var loaderImage = '<img src="/App_Themes/' + themeID + '/images/loader.gif" border="0" />'
var handlerURL = 'http://' + hostURL + '/handlers/treeTvHandler.ashx';

function setTheme(id) {
    themeID = id;
}

function openTreeTv(boxID) {
    var treeBlock = 'treeTv';
    var params = 'action=getSeasons&boxID=' + escape(boxID);
    $(treeBlock).hide();
    $(treeBlock).innerHTML = loaderImage;
    $(treeBlock).show();
    var myAjax = new Ajax.Updater({ success: treeBlock }, handlerURL, { method: 'post', parameters: params, onComplete: openSeasonFirst });
}

function openSeasonFirst(request) {
    var response = request.responseText;
    var sub = response.indexOf("openSeason(");
    var sub1 = response.indexOf("false);");
    var str = response.substring(sub, sub1).replace("openSeason(", "").split(",");
    openSeason(str[0], str[1], true);
}


function openSeason(boxID, seasonNumber, keepVisible) {
       
    var episodesBlock = 'episodes_' + seasonNumber;
    var arrowBlock = 'arrow_' + seasonNumber;
    if ($(episodesBlock).visible() && keepVisible == false)
    {
        $(episodesBlock).hide();
        $(arrowBlock).className = 'collapse';
    }
    else
    {
        var params = 'action=getEpisodes&boxID=' + escape(boxID) + '&seasonNumber=' + escape(seasonNumber);
        $(episodesBlock).show();
        $(episodesBlock).innerHTML = loaderImage;
        $(arrowBlock).className = 'expand';
        var myAjax = new Ajax.Updater({ success: episodesBlock }, handlerURL, { method: 'post', parameters: params });
    }
}


function openEpisode(seasonNumber, episodeNumber, catID, keepVisible)
{
    var linkBlock = 'links_' + seasonNumber + '_' + episodeNumber;
    var arrowBlock = 'arrow_' + seasonNumber + '_' + episodeNumber;
    var params = 'action=getLinks&catID=' + escape(catID);

    if ($(linkBlock).visible() && keepVisible == false)
    {
        $(linkBlock).hide()
        $(arrowBlock).className = 'collapse';
    }
    else
    {
        $(linkBlock).show();
        $(linkBlock).innerHTML = loaderImage;
        $(arrowBlock).className = 'expand';
        var myAjax = new Ajax.Updater({ success: linkBlock }, handlerURL, { method: 'post', parameters: params });
    }
}

function deleteEpisode(catID)
{
	var params = 'action=deleteEpisode&catID=' + escape(catID);
	var myAjax = new Ajax.Updater({ success: 'nil' }, handlerURL, { method: 'post', parameters: params, onComplete: responseDeleteEpisode });
}

function responseDeleteEpisode(request)
{
    var response = request.responseText.split(",");
    openTreeTv(response[0]);   
}



function updateTvLinksCount(catID) {
    var params = 'action=countTvLinks&catID=' + escape(catID);
    var myAjax = new Ajax.Updater({ success: 'nil' }, handlerURL, { method: 'post', parameters: params, onComplete: responseTvLinksCounter });
}

function responseTvLinksCounter(request) {
    var response = request.responseText.split(",");
    openEpisode(response[0], response[1], response[2], false);
    var counterBlock = 'counter_' + response[0] + '_' + response[1];
    $(counterBlock).innerHTML = '(' + response[3] + ' links)';    
}

function deleteLink(linkID, catID) {
    var params = 'action=deleteLink&catID=' + escape(catID) + '&linkID=' + escape(linkID);
    var myAjax = new Ajax.Updater({ success: 'nil' }, handlerURL, { method: 'post', parameters: params, onComplete: responseTvLinksCounter });
}


function reportLink(linkID, catID) {
    var params = 'action=reportLink&catID=' + escape(catID) + '&linkID=' + escape(linkID);
    var myAjax = new Ajax.Updater({ success: 'nil' }, handlerURL, { method: 'post', parameters: params, onComplete: responseReportLink });    
}

function responseReportLink(request) {
    alert("Thanks for reporting the link. Our moderators will check the link as soon as possible.");
}