var activeTasksTab = 1; // Aktywna zakladka "archiwum" czy "do rozwiazania"; 1 - archiwum, 2 - do rozwiazania
var activeSchoolsTab = 0; // Aktywna zakladka "szkoly"; 0 - wszystkie, 1 - podstawowa, 2 - gimnazjum, 3 - ponadgimnazjalna
var loader = '<img style="display: block; margin: 3px auto;" src="/img/loadingAnimation.gif">';

// Cache zmiennych - troche optymalniej
var wszystkieLink;
var podstawowkaLink;
var gimnazjumLink;
var ponadgimnazjalnaLink;
var subjectsBox;
var tasksBox;
var essaysBox;

$(document).ready(function(){

    /*var startingGradeId = 0; // Wczytywany poziom szkoly przy wejsciu na strone
    wszystkieLink = $('#wszystkie');
    podstawowkaLink = $('#podstawowa');
    gimnazjumLink = $('#gimnazjum');
    ponadgimnazjalnaLink = $('#ponadgimnazjalna');
    subjectsBox = $('#subjectsBox');
    tasksBox = $('#tasksBox'); */
	essaysBox = $('#essaysBox');
    
    // ************ INITIAL LOAD ****************** //    
    
    //subscribeSubjectClicks();    
	//subscribeDivPaginationClicks('.pager', '#tasksBox');
	subscribeDivPaginationClicks('.pager-essays', '#essaysBox');    
    
    //$("#search-query").click(function(){
    //    $(this).css('backgroundImage', 'none');
    //});    
    
    // ************ END OF INITIAL LOAD ****************** //
    
    
    /*wszystkieLink.click(function(){
        switchSchoolTabs(0);
        loadSubjects(0, true);
        if (activeTasksTab == 1) {
            loadArchive(0, 0, null);
        }
        else {
            loadToSolve(0, 0, null);
        }
        
        return false;
    });
    
    podstawowkaLink.click(function(){
        switchSchoolTabs(1);
        loadSubjects(1, true);
        if (activeTasksTab == 1) {
            loadArchive(1, 0, null);
        }
        else {
            loadToSolve(1, 0, null);
        }
        
        return false;
    });
    
    gimnazjumLink.click(function(){
        switchSchoolTabs(2);
        loadSubjects(2, true);
        if (activeTasksTab == 1) {
            loadArchive(2, 0, null);
        }
        else {
            loadToSolve(2, 0, null);
        }
        
        return false;
    });
    
    ponadgimnazjalnaLink.click(function(){
        switchSchoolTabs(3);
        loadSubjects(3, true);
        if (activeTasksTab == 1) {
            loadArchive(3, 0, null);
        }
        else {
            loadToSolve(3, 0, null);
        }
        
        return false;
    });
    
    $('#ostatnio').click(function(){
    
        switchMainTabs(1);
        activeTasksTab = 1;
        loadArchive(activeSchoolsTab, 0, null);
        subscribeDivPaginationClicks('.pager', '#tasksBox');    
        
        return false;
    });
    
    
    $('#do_rozwiazania').click(function(){
    
        switchMainTabs(2);
        activeTasksTab = 2;
        loadToSolve(activeSchoolsTab, 0, null);
        subscribeDivPaginationClicks('.pager', '#tasksBox');    
        
        return false;
    });
    */
}); 

// **************** FUNKCJE LADUJACE CONTENT *********************** //

function loadSubjects(gradeId){

    subjectsBox.fadeOut('slow', function(){
        subjectsBox.html(loader).fadeIn('slow');
        $.post('/tasks/ajax_home_subjects/' + gradeId, {}, function(data){
        
            subjectsBox.html(data).show();
            unbindClicks();
            subscribeSubjectClicks();
            subscribeDivPaginationClicks('.pager', '#tasksBox');    
        });
    });
    
}

function loadArchive(gradeId, subjectId, href){

    var hrefLink;
    
    if (href === null) {
        hrefLink = '/tasks/ajax_archive/' + subjectId + '/' + gradeId
    }
    else {
        var tempArray = href.split('/');
        hrefLink = '/tasks/ajax_archive/' + tempArray[3] + '/' + tempArray[4];
    }
    
    tasksBox.fadeOut('slow', function(){
        tasksBox.html(loader).fadeIn('slow');
        $.post(hrefLink, {}, function(data){
            tasksBox.html(data).show();
            subscribeDivPaginationClicks('.pager', '#tasksBox');
        });
    });
}

function loadToSolve(gradeId, subjectId, href){

    var hrefLink;
    
    if (href === null) {
        hrefLink = '/tasks/ajax_solve_list/' + subjectId + '/' + gradeId
    }
    else {
        var tempArray = href.split('/');
        hrefLink = '/tasks/ajax_solve_list/' + tempArray[3] + '/' + tempArray[4];
    }
    
    tasksBox.fadeOut('slow', function(){
        tasksBox.html(loader).fadeIn('slow');
        $.post(hrefLink, {}, function(data){
            tasksBox.html(data).show();
            subscribeDivPaginationClicks('.pager', '#tasksBox');
        });
    });
}

// *************************** KLIKANIE W PRZEDMIOT ********************* //

function subscribeSubjectClicks(){
    subscribeDivPaginationClicks('.pager', '#tasksBox');
    $('a.category-name').click(function(){
        var href = this.href;
        
        if (activeTasksTab == 1) {
            loadArchive(0, 0, href);
        }
        else {
            loadToSolve(0, 0, href);
        }
        
        return false;
    });
}

function unbindClicks(){
    $('a.category-name').unbind();
}

// *************************** OBSLUGA ZAKLADEK ********************* //

function switchMainTabs(active){
    if (active == 1) {
        $('#ostatnio-li').removeClass();
        $('#do_rozwiazania-li').removeClass();
        $('#ostatnio-li').addClass('ui-tabs-selected');
    }
    else {
        $('#ostatnio-li').removeClass();
        $('#do_rozwiazania-li').removeClass();
        $('#do_rozwiazania-li').addClass('ui-tabs-selected');
    }
}

function switchSchoolTabs(active){
    switch (active) {
        case 0:
            $('span').removeClass('active');
            $('span', wszystkieLink).addClass('active');
            activeSchoolsTab = 0;
            break;
        case 1:
            $('span').removeClass('active');
            $('span', podstawowkaLink).addClass('active');
            activeSchoolsTab = 1;
            break;
        case 2:
            $('span').removeClass('active');
            $('span', gimnazjumLink).addClass('active');
            activeSchoolsTab = 2;
            break;
        case 3:
            $('span').removeClass('active');
            $('span', ponadgimnazjalnaLink).addClass('active');
            activeSchoolsTab = 3;
            break;
    }
}

function loadPagination(href, divName, targetName){
    $(targetName).fadeOut('slow', function(){
        $(targetName).html(loader).fadeIn('slow');
        $(targetName).load(href, {}, function(){
            subscribeDivPaginationClicks(divName, targetName);
        });
    });
    
}

function subscribeDivPaginationClicks(divName, targetName){
    var divPaginationLinks = divName + " a";
    $(divPaginationLinks).click(function(){
        var thisHref = $(this).attr("href");
        loadPagination(thisHref, divName, targetName);
        return false;
    });
}


