var
    popupStatus = 0,
    ng_loaded = false,
    getting_sl = false,
    np_patt = /\d+$/g,
    lb_fixed = false;


//function get_sl_success(data) {
//    var result = jQuery.parseJSON(data);    
//    $('#statuses').append(result.html);
//    next_page = result.next_page;
//    $('#preloader').css('display', 'none');
//    add_controls();
//    getting_sl = false;    
//}

//loading popup with jQuery magic!  
function loadPopup(){  
//loads popup only if it is disabled  
if(popupStatus==0){  
$("#backgroundPopup").css({  
"opacity": "0.7"  
});  
$("#backgroundPopup").fadeIn("slow");  
$("#popupEmailSubscr").fadeIn("slow");  
popupStatus = 1;  
}  
}

//disabling popup with jQuery magic!  
function disablePopup(){  
//disables popup only if it is enabled  
if(popupStatus==1){  
$("#backgroundPopup").fadeOut("slow");  
$("#popupEmailSubscr").fadeOut("slow");  
popupStatus = 0;  
}  
}

//centering popup  
function centerPopup(){  
//request data for centering  
var windowWidth = document.documentElement.clientWidth;  
var windowHeight = document.documentElement.clientHeight;  
var popupHeight = $("#popupEmailSubscr").height();  
var popupWidth = $("#popupEmailSubscr").width();  
//centering  
$("#popupEmailSubscr").css({  
"position": "absolute",  
"top": windowHeight/2-popupHeight/2,  
"left": windowWidth/2-popupWidth/2  
});  
//only need force for IE6  
  
$("#backgroundPopup").css({  
"height": windowHeight  
});  
  
}

function NavigateThrough (event)
{    
    var link = '';
	switch (event.keyCode ? event.keyCode : event.which ? event.which : null)
	{		
        case 0x25:			
            if($('#PrevLink').length != 0) {
                link = $('#PrevLink').attr('href');
            }
            break;
        case 0x27:			
            if($('#NextLink').length != 0) {
                link = $('#NextLink').attr('href');
            }
            break;
	}
	if (link != '') document.location = link;
}

function on_ams_success(data)
{
    $('#popupEmailSubscr').css('cursor', '');
    
    data = data.split(';');
    $('#es_answer').html(data[0]);
    switch (data[1])
    {
        case '0':
            $('#es_answer').css('color', 'green');
            break;
        case '1':
            $('#es_answer').css('color', 'red');
            break;
        case '2':
            $('#es_answer').css('color', 'blue');
            break;
    }
}

function add_mail_subscription(mail)
{
    $.post(
        '/ajax/add_mail_subscription/',
        {
            mail: mail
        },
        on_ams_success
    );
    return false;
}

function v(n, a)
{    
    $.post(
        '/ajax/vote/',
        {
            n: n,
            a: a
        },
        onAjaxVoteSuccess
    );
    return false;
}

function disable_thumbs(id) {
    $('#s'+id+' .right').addClass('toff');
    $('#s'+id+' .tu').unbind('click');
    $('#s'+id+' .td').unbind('click');
}

function onAjaxVoteSuccess(data) {
    data = data.split(';');
    $('#s'+data[0]+' .v').text(data[1]);    
    color_votes($('#s'+data[0]+' .v'));    
}

function color_votes(v) {
    if($(v).text() > 0) {
        $(v).css('color', '#008800');
    }
    else if($(v).text() < 0) {
        $(v).css('color', '#880000');
    }
    else {
        $(v).css('color', '#888888');
    }
}

function add_controls()
{
    $('.s:not([id])').each(
        function() {            
            var id = $('.id', this).text();
            $(this).attr('id', 's'+id);
            $(' .info .right', this).html('<span class="tu"></span><span class="v">'+$(' .info .right', this).text()+'</span><span class="td"></span>');
            $('.right:not(.toff) .tu', this).click(function() {v(id, 1); disable_thumbs(id);});
            $('.right:not(.toff) .td', this).click(function() {v(id, 0); disable_thumbs(id);});

            $('.id', this).html('<a href="/status/'+id+'">'+id+'</a>');

            $('.sb', this).html(VK.Share.button({
                url: 'http://statuso.ru/',
                title: $('.text', this).text(),
                description: ""                    
            },{
                type: "round_nocount", 
                text: "Сохранить себе"
            }));

//            $('.left', this).after('<span class="ctcb tooltip"><span>Скопировать в буфер обмена</span></span>');
//            var temp_this = this;
//            $('.ctcb', this).zclip({
//                path:'/js/ZeroClipboard.swf',
//                copy:$('.text', this).text(),
//                beforeCopy:function(){                        
//                    $('.text', temp_this).css('color','blue');
//                },
//                afterCopy:function(){                        
//                    $('.text', temp_this).css('color','black');
//                }
//            });

        }
    );

    $('.v').each(
        function() {
            color_votes(this);
        }
    );    
}

$(document).ready(
    function() {        
        
        add_controls();
        
        $('#sb_wrapper').html('<div id="vk_like"></div><a href="https://twitter.com/share" class="twitter-share-button" data-url="http://statuso.ru/" data-text="Statuso.RU - Прикольные статусы!" data-count="horizontal" data-lang="ru">Tweet</a><script type="text/javascript" src="//platform.twitter.com/widgets.js"></script><iframe src="//www.facebook.com/plugins/like.php?href=http%3A%2F%2Fstatuso.ru%2F&amp;send=false&amp;layout=button_count&amp;width=150&amp;show_faces=true&amp;action=like&amp;colorscheme=light&amp;font&amp;height=21" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:150px; height:21px;" allowTransparency="true"></iframe><a target="_blank" class="mrc__plugin_uber_like_button" href="http://connect.mail.ru/share?share_url=http%3A%2F%2Fstatuso.ru%2F" data-mrc-config="{\'type\' : \'button\', \'caption-mm\' : \'1\', \'caption-ok\' : \'1\', \'counter\' : \'true\', \'text\' : \'true\', \'width\' : \'300\'}">Нравится</a><script src="http://cdn.connect.mail.ru/js/loader.js" type="text/javascript" charset="UTF-8"></script><g:plusone size="medium" href="http://statuso.ru/"></g:plusone><script type="text/javascript" src="https://apis.google.com/js/plusone.js">{lang: \'ru\'}</script>');
        
        $('#vk_like').html(VK.Share.button({
                    url: 'http://statuso.ru/',
                    title: 'Statuso.RU - Прикольные статусы!',
                    description: 'Ежедневно пополняемая коллекция статусов на все случаи жизни!'
                },{
                    type: "round", 
                    text: "Мне нравится"
        }));
        
        if($('.pag_left').length != 0) {
            $('head').append('<link rel="prev" href="'+$('.pag_left').attr('href')+'" id="PrevLink" />');
        }
        if($('.pag_right').length != 0) {
            $('head').append('<link rel="next" href="'+$('.pag_right').attr('href')+'" id="NextLink" />');
        }
        
        $('#header').append('<div id="subscr"><a href="http://twitter.com/#!/statuso" target="_blank" title="Twitter"><img src="/img/twitter.png" alt="Twitter" /></a><img src="/img/mail.png" id="email_subscr" alt="E-Mail" title="Подпишись на E-Mail" /><a href="http://vkontakte.ru/app2675878_4247876" title="Приложение ВКонтакте" target="_blank"><img src="/img/vk.png" alt="ВКонтакте" /></a></div>')
        $('#header').append('<div id="vk_groups"></div>');
        VK.Widgets.Group("vk_groups", {mode: 0, width: "200", height: "200"}, 32027748);
        $('body').append('<div id="popupEmailSubscr"><a id="popupEmailSubscrClose">x</a><h1>Лучшие статусы недели на E-Mail</h1><p>Введите свой адрес электронной почты. Вы всегда сможете отписаться от рассылки из письма в любое время.</p><p><input name="nick" type="text" size="40" id="user_mail" /><input type="button" value="Подписаться" id="email_subscribe" /></p><p id="es_answer"></p></div>');        
        $('body').append('<div id="backgroundPopup"></div>');        
        
        document.onkeydown = NavigateThrough;
        
        $("#email_subscr").click(function(){  
        //centering with css  
        centerPopup();  
        //load popup  
        loadPopup();  
        });
        
        
        //CLOSING POPUP  
        //Click the x event!  
        $("#popupEmailSubscrClose").click(function(){  
        disablePopup();  
        });  
        //Click out event!  
        $("#backgroundPopup").click(function(){  
        disablePopup();  
        });
        
        $('#email_subscribe').click(function() {
            $('#popupEmailSubscr').css('cursor', 'wait');
            add_mail_subscription($('#user_mail').val());
        });
        
        
//        if ($("a.pag_right").length > 0){
//            next_page = np_patt.exec($("a.pag_right").attr('href'))[0];
//            $("a.pag_right").css('display', 'none');
//        }
        
        $('#to_top').click(function() {
           $(window).scrollTop(0);
        });
        
        $('#to_main').click(function() {
           window.location = 'http://statuso.ru/';
        });
        
        $(window).scroll(function () {
            if($(window).scrollTop() > 280 && !lb_fixed) {
                $('#to_top, #to_main').css('display', 'block');
            }
            else {
                $('#to_top, #to_main').css('display', 'none');
            }
                
                
                
            if(getting_sl || next_page == -1)
                return false;
            
//            if($(document).height() - $(window).height() - $(window).scrollTop() < 500) {
//                    getting_sl = true;
//                    $('#preloader').css('display', 'block');
//                    $.post(
//                        '/ajax/next_sl/',
//                        {
//                            p: next_page,
//                            c: cat
//                        },
//                        get_sl_success
//                    );                
//            }
        });
        
    }
);
    
function vk_comments_handler(num, last_comment, date, sign)
{
    $('.cc').text(num);
    $.post(
        "/ajax/vk_comment/",
        {
            num: num,
            last_comment: last_comment,
            date: date,
            sign: sign,
            sid: $('.id').text()
        }
    );
        
    
}
