$(document).ready(function() {
    //Shadowbox.setup();
    if ($('.album').length > 0) {
        $('.album').cycle({
            fx: 'blindX, blindY, cover, curtainX, curtainY, fade, fadeZoom, growX, growY, scrollUp, scrollDown, scrollLeft, scrollRight, slideX, slideY, turnUp, turnDown, turnLeft, turnRight, uncover, zoom', // choose your transition type, ex: fade, scrollUp, shuffle, etc...
            continuous: 0,
            speed: 500,
        });
    }
    if ($('.addtofav').length > 0) {
        $('.addtofav').live('click', function() {
            //$('#favheader').removeClass('ui-priority-secondary').addClass('ui-priority-primary');
            var idobj = $(this).attr('id');
            var objX = $('#f_' + idobj).position().left;
            var objY = $('#f_' + idobj).position().top;
            var favX = $('#favheader').offset().left;
            var favY = $('#favheader').offset().top;
            var objW = $('#f_' + idobj).width();
            var objH = $('#f_' + idobj).height();
            var newImageWidth = objW / 3;
            var newImageHeight = objH / 3;

            if ($("#" + idobj).is('.ui-state-error')) {
                var gotoX = favX - objX + 15;
                var gotoY = favY - objY;
                var objclone = $('#f_' + idobj).clone();
                $(objclone).prependTo('#d_' + idobj);
                $(objclone).css({'position': 'absolute', 'z-index': '1000'});
                $(objclone).animate({opacity: 0.8}, 100);
                $(objclone).animate({
                    opacity: 0, 
                    marginLeft: gotoX, 
                    marginTop: gotoY, 
                    width: newImageWidth, 
                    height: newImageHeight
                    }, 
                    1000, 
                    function() {
                        $(this).remove();
                        //$('#favheader').addClass('ui-priority-secondary').removeClass('ui-priority-primary');
                        $.getJSON('json.php', {'get': 'add_to_favorites', 'id' : idobj}, function(data){
                            if ((!!data.response) && (data.response == "SUCCESS")) {
                                $('#f_' + idobj).addClass('ui-state-error').removeClass('ui-state-highlight');
                                $('#' + idobj).addClass('ui-state-highlight').removeClass('ui-state-error');
                            }
                        });
                    }
                );
            };
            if ($("#" + idobj).is('.ui-state-highlight')) {
                var gotoX = objX - favX;
                var gotoY = objY - favY;
                var objclone = $('#f_' + idobj).clone();
                $(objclone).prependTo('#d_' + idobj)
                $(objclone).css({'position': 'absolute', 'z-index': '1000', 'width': newImageWidth, 'height': newImageHeight, 'left': favX, 'top': favY})
                $(objclone).animate({opacity: 0.8}, 100);
                $(objclone).animate(
                    {opacity: 0, marginLeft: gotoX, marginTop: gotoY, width: objW, height: objH }, 
                    1000, 
                    function() {
                        $(this).remove();
                        $('#favheader').addClass('ui-priority-secondary').removeClass('ui-priority-primary');
                        $.getJSON('json.php', {'get': 'remove_from_favorites', 'id' : idobj}, function(data){
                            if ((!!data.response) && (data.response == "SUCCESS")) {
                                $('#f_' + idobj).removeClass('ui-state-error').addClass('ui-state-highlight');
                                $('#' + idobj).removeClass('ui-state-highlight').addClass('ui-state-error');
                            }
                        });
                    }
                );
            };
        });
    };
    if ($('.removefromfav').length > 0) {
        $('.removefromfav').live('click', function() {
            var idobj = $(this).attr('id');
            var objX = $('#f_' + idobj).position().left;
            var objY = $('#f_' + idobj).position().top;
            var favX = $('#favheader').offset().left;
            var favY = $('#favheader').offset().top;
            var objW = $('#f_' + idobj).width();
            var objH = $('#f_' + idobj).height();
            var newImageWidth = objW / 3;
            var newImageHeight = objH / 3;
            var objo = $('#d_' + idobj);
            $(objo).animate(
                {opacity: 0}, 
                1000,
                function() {
                    $(objo).remove();
                    $.getJSON('json.php', {'get': 'remove_from_favorites', 'id' : idobj});
                }
            );
        });
    };
    
    if ($('.album_download').length > 0) {
        $.each($('.album_download'),function(i,n) {
            var parent = $(n).parent();
            var parentX = $(parent).offset().left + 15;
            var parentY = $(parent).offset().top - 29;
            $(n).css({'position':'absolute', 'top':parentY, 'left':parentX}).show();
        });
    }
    
    if ($('#password').length > 0) {
        var winH = $(document).height();
        var winW = $(document).width();
        $('#password').css('position','absolute');
        $('#password').css('top', winH/2-$('#password').height()/2);
        $('#password').css('left', winW/2-$('#password').width()/2);
    }
    if ($('#ads').length > 0) {
        var winH = $(window).height();
        var winW = $(window).width();
        var divH = $('#ads').height();
        var divW = $('#ads').width();
        var top = winH - divH;
        var left = winW - divW;
        $('#ads').css('position','fixed');
        $('#ads').css('top', top - 10);
        $('#ads').css('left', left - 17);
        $('#ads').click(function(){
            window.open('http://www.nunti-online.com');
        });
        $('#ads').show();
    }
    
    $(".vote_png").live('click mousemove', function(event) {
        if (event.type == 'click') {
            var objX = $(this).offset().left;
            var objY = $(this).offset().top;
            var x = event.pageX;
            var y = event.pageY;
            var left = x - objX;
            var top = y - objY;
            var puncte = makedecimals(((left * 10) / 200),1);
            var fotoid = $(this).parent().attr('id');
            var fotoref = $('#a_' + fotoid).attr('href');
            $.getJSON('json.php', {'get': 'voteaza_foto', 'id' : fotoid, 'puncte': puncte});
            $('#a_'+fotoid).attr('rel',"<div id='" + fotoid + "' style='display: inline-block'><div id='puncte_nota'>Nota " + puncte + "</div></div>");
            for (var shid in Shadowbox.gallery) {
                if (Shadowbox.gallery[shid].content.indexOf(fotoref) >= 0) {
                    Shadowbox.gallery[shid].title = "<div id='" + fotoid + "' style='display: inline-block'><div id='puncte_nota'>Nota " + puncte + "</div></div>";
                }
                //var ref = Shadowbox.gallery[shid].content.split("/");
                //if ((!!ref[3]) && (ref[3] == fotoref)) {
                //    Shadowbox.gallery[shid].title = "<div id='" + fotoid + "' style='display: inline-block'><div id='puncte_nota'>Nota " + puncte + "</div></div>";
                //}
            }
            for (var shid in Shadowbox.cache) {
                if (Shadowbox.cache[shid].content.indexOf(fotoref) >= 0) {
                    Shadowbox.cache[shid].title = "<div id='" + fotoid + "' style='display: inline-block'><div id='puncte_nota'>Nota " + puncte + "</div></div>";
                }
                //var ref = Shadowbox.cache[shid].content.split("/");
                //if ((!!ref[3]) && (ref[3] == fotoref)) {
                //    Shadowbox.cache[shid].title = "<div id='" + fotoid + "' style='display: inline-block'><div id='puncte_nota'>Nota " + puncte + "</div></div>";
                //}
            }
            $(this).remove();
            Shadowbox.next();
        }
        if (event.type == 'mousemove') {
            var objX = $(this).offset().left;
            var objY = $(this).offset().top;
            var x = event.pageX;
            var y = event.pageY;
            var left = x - objX;
            var top = y - objY;
            var puncte = makedecimals(((left * 10) / 200),1);
            $('#puncte_nota').html('Nota ' + puncte);
        }
    });

    if ($('#dock').length > 0) {
        var objW = $('#dock').width();
        var winW = $(document).width();
        var left = Math.round(winW/2) - Math.round(objW/2);
        $('#dock').css('left', left);
        $('#dock').show();
        $('#dock').Fisheye({
            maxWidth: 80,
            items: 'a',
            itemsText: 'span',
            container: '.dock-container',
            itemWidth: 40,
            proximity: 40,
            halign : 'center'
        })
    }
    
});



function favorites_download(){
    var mail=prompt("Introduceti adresa de e-mail","");
    if (mail!=null && mail!=""){
        $.getJSON('json.php', {'get': 'favorites_download', 'mail': mail}, function(data){
            alert("In cateva minute o sa primiti link-ul de download in adresa de e-mail.");
        });
    }
}

function makedecimals (number,decimals) {
    var rounder = Math.pow(10, decimals);
    var newnumber = Math.round(number * rounder) / rounder;
    var nrstr = newnumber.toString();
    var lenstr = newnumber.toString().length;
    var pospoint = newnumber.toString().lastIndexOf('.');
    var valret = '';
    if (pospoint == -1) {
        valret = nrstr + '.' + repl('0',decimals);
        return valret
    }
    if ((lenstr - pospoint - 1) < (decimals)) {
        var rep = decimals - (lenstr - pospoint - 1);
        valret = nrstr + repl('0',rep);
        return valret;
    }
    return nrstr;
}

function repl(s,n) {
    var r='';
    while(n) {
        if(n&1) {r+=s;}
        s+=s;
        n>>=1;
    }
    return r;
}


