﻿/** newsj4 jQuery plugin 
*	@version 0.7
*	@author derki
*/

jQuery.fn.extend({
    newsj4: function (dataf) {
        var o = this;
        function goToPage(page) {
            if (o.attr('process') == 1) {
                return false;
            }
            o.attr('process', 1);
            var actual = o.attr('rel');

            o.attr('rel', page);
            o.find('div.newsj4_pages div.newsj4_page div.newsj4_active').fadeOut(200, function () {
                $(this).appendTo($(this).parent().parent().find('div.newsj4_page[rel="' + page + '"]'));
                $(this).fadeIn(200);
            });
            o.find('div.newsj4-sub-' + defaul + ' div.newsj4_page' + actual).fadeOut(250, function () {
                o.find('div.newsj4-sub-' + defaul + ' div.newsj4_page' + page + ' div.newsj4_article').css('display', 'none');
                o.find('div.newsj4-sub-' + defaul + ' div.newsj4_page' + page).css('display', 'block');
                var current = 0;
                var arts = o.find('div.newsj4-sub-' + defaul + ' div.newsj4_page' + page + ' div.newsj4_article');
                window.newsj4_anim = setInterval(function () {
                    $(arts.get(current)).fadeIn(260);
                    current++;
                    if (current >= 3) {
                        clearInterval(window.newsj4_anim);
                        o.attr('process', 0);
                    }
                }, 70);
            });
        }

        var articleW = o.find('div.newsj4_articles');
        articleW.html('');

        function makeActive(rel) {
            // document.getElementById('newsj4_headings').style.background = '#EEF5FB url(/sites/kinema2/images/backmain' + rel + '.png) center top';
            document.getElementById('mba1').style.background = '';
            document.getElementById('mba2').style.background = '';
            if (rel=='a1') document.getElementById('mb' + rel).style.background = 'transparent url(/images/backdowntwo2.png) no-repeat';
            if (rel == 'a2')  document.getElementById('mb' + rel).style.background = 'transparent url(/images/backdowntwo2.png) no-repeat';
            articleW.find('div.newsj4-sub-active').slideUp(100).removeClass('newsj4-sub-active');
            articleW.find('div.newsj4-sub-' + rel).slideDown(200).addClass('newsj4-sub-active');
            goToPage(1);
            defaul = rel;
        }

        var headings = o.find('div.newsj4_heading div.newsj4_headings');
        headings.html('');

        var defaul = '';

        $.each(dataf, function (id, data) {
            if (!defaul) defaul = id;
            var $title = $('<h4 id="mb' + id + '" style=""><a rel="' + id + '" href="#" style="color:#0B5896;font-size:14px">' + data.title + '</a></h4>');
            $title.find('a').click(function () {
                makeActive($(this).attr('rel'));
                return false;
            });
            $title.css('cursor', 'pointer');
            headings.append($title);

            var $sprm = $('<div class="newsj4-sub-' + id + '" style="display:none"/>');
            for (var p = 1; p <= 5; p++) {
                var $page = $('<div class="newsj4_page newsj4_page' + p + '" style="display:none"/>');
                for (var a = p * 3 - 3; a <= p * 3 - 1; a++) {
                    if (!data.articles[a]) { break; }
                    
                    var source = data.articles[a];
                    var score = 0;

                    if (source.score) {
                        score = parseFloat(source.score);
                    }

                    var score1 = score * 13;
                    var score2 = (10 - score) * 13;


                    var article = $('<div class="newsj4_article"/>');

                    if (id == 'a1') {
                        article.append($('<a href="' + source.url + '"><div class="newsj4_image" style="background-image: url(' + source.img + ');"><div class="newsj4_score"><div class="stars" style="width:' + score1 + 'px;"></div><div class="stars2" style="width:' + score2 + 'px;"></div><div class="score"><strong>' + score + '</strong> z 10</div></div></div></a>'));
                    } else {
                        article.append($('<a href="' + source.url + '"><div class="newsj4_image" style="background-image: url(' + source.img + ');"></div></a>'));
                    }

                    article.append($(''));

                    article.append($('<div class="newsj4_article_info">' +
						'<h4><a href="' + source.url + '">' + source.title + '</a></h4>' +
						'<p class="newsj4_date">' + source.date + '</p>' +
						'<p class="newsj4_article">' + source.text + '<a href="' + source.url + '">Celý článok</a></p>'
						));
                    $page.append(article);
                }
                $sprm.append($page);
            }
            articleW.append($sprm);

            o.find('div.newsj4_pages div.newsj4_page').click(function () {
                goToPage($(this).attr('rel'));
                return false;
            });

            var movers = o.find('div.newsj4_bottom div.newsj4_mover');
            $(movers.find('a').get(0)).click(function () {
                var actual = o.attr('rel');
                actual--;
                if (actual < 1) {
                    actual = 5;
                }
                goToPage(actual);
                return false;
            });
            $(movers.find('a').get(1)).click(function () {
                var actual = o.attr('rel');
                actual++;
                if (actual > 5) {
                    actual = 1;
                }
                goToPage(actual);
                return false;
            });
        });
        makeActive(defaul);
    }
});
