$(document).ready(function(){
    //Теневой слой
    $("<div id='shadow'></div>").appendTo("body");
    $("#shadow").css("opacity", "0.8")
                .css("height",$("html").height());

    var clickNumber="";
    var str="";
    var thisID="";
    var thisLength="";
    var pres=0;
    var intervalID;
    $('.gallery a').click(function(){
        thisID=$(this).parent().attr("id").substr(7);
        clickNumber=$('#gallery'+thisID+' a').index(this);
        
        thisLength=arrayGallery["imgL"+thisID].length;
        //формируем карусель
        for(i=0;i<thisLength;i++){
            str+="<li><img src='"+arrayGallery["imgL"+thisID][i]+"' alt=''></li>";
        };
        //формируем область с большой фотографией
        str="<div id='carouselOut'><div id='headerFoto'><h2>"+arrayGallery["title"+thisID][0]+"</h2>" +
            "<span id='number'>("+thisLength+" фотографий)</span>" +
            "<div id='pres'><span>Режим презентации</span></div>" +
            "<div id='close'><span>Закрыть окно просмотра</span></div>" +
            "</div>" +
            "<ul class='jcarousel-skin-my' id='carousel'>"+str+"</ul>" +
            "<div id='bigFoto'><div><ul>"+
			"<li id='imgFoto'><img src='"+arrayGallery["imgB"+thisID][clickNumber]+"' alt=''>" +
            "<h3>"+arrayGallery["caption"+thisID][clickNumber]+"</h3></li>"+
			"</ul></div>" +
            "<img src='/d/prev.gif' alt='следующая' id='prev'>" +
            "<img src='/d/next.gif' alt='предыдущая' id='next'></div></div>";
        $(str).appendTo("body");
        
        widthLi(thisID,clickNumber);

        $("#shadow").css("display", "block");
        $("#carouselOut").css("top", getBodyScrollTop())
                        .css("display", "block");
        //запускаем карусель
        jQuery(document).ready(function() {
            jQuery('#carousel').jcarousel();
        });
        $('.jcarousel-list li:nth-child('+(clickNumber+1)+') img').addClass('act');
        return false;
    });

    $('.jcarousel-list li').live("click",function(){    
        $('.jcarousel-list img.act').removeClass('act');
        $('img',this).addClass('act');
        clickNumber=$('.jcarousel-list li').index(this);
        
        widthLi(thisID,clickNumber);

        $('#imgFoto img').attr('src',arrayGallery["imgB"+thisID][clickNumber]);
        $('#imgFoto h3').empty()
                        .append(arrayGallery["caption"+thisID][clickNumber]);
        $('#prev').css('cursor','pointer');
        $('#next').css('cursor','pointer');
        if(clickNumber+1==thisLength) $('#next').css('cursor','default');
        if(clickNumber==1) $('#prev').css('cursor','pointer');
        if(clickNumber==0) $('#prev').css('cursor','default');
        if(clickNumber==thisLength-2) $('#next').css('cursor','pointer');
    });

    $('#next').live("click",function(){
        if(clickNumber+1!=thisLength){
            clickNumber++;
            $('.jcarousel-list img.act').removeClass('act');
            $('.jcarousel-list li:nth-child('+(clickNumber+1)+') img').addClass('act');
            widthLi(thisID,clickNumber);
            $('#imgFoto img').attr('src',arrayGallery["imgB"+thisID][clickNumber]);
            $('#imgFoto h3').empty()
                            .append(arrayGallery["caption"+thisID][clickNumber]);
            if(clickNumber+1==thisLength) $('#next').css('cursor','default');
            if(clickNumber==1) $('#prev').css('cursor','pointer');
        }
    });

    $('#prev').live("click",function(){
        if(clickNumber!=0){
            clickNumber--;
            $('.jcarousel-list img.act').removeClass('act');
            $('.jcarousel-list li:nth-child('+(clickNumber+1)+') img').addClass('act');
            widthLi(thisID,clickNumber);
            $('#imgFoto img').attr('src',arrayGallery["imgB"+thisID][clickNumber]);
            $('#imgFoto h3').empty()
                            .append(arrayGallery["caption"+thisID][clickNumber]);
            if(clickNumber==0) $('#prev').css('cursor','default');
            if(clickNumber==thisLength-2) $('#next').css('cursor','pointer');
        }
    });

    $('#pres span').live("click",
        function () {
            if(pres==0){
                pres=1;
                $(this).empty()
                        .append("Отключить режим презентации");
                $('#prev').css('cursor','pointer');
                $('#next').css('cursor','pointer');
                $('#next').css('display','none');
                $('#prev').css('display','none');
                intervalID = setInterval(function(){
                    if(clickNumber+1==thisLength) clickNumber=0;
                    else clickNumber++;
                    presentation(thisID,clickNumber,thisLength);
                }, '3000');
            } else {
                clearInterval(intervalID);
                pres=0;
                $(this).empty()
                            .append("Режим презентации");
                $('#next').css('display','block');
                $('#prev').css('display','block');
                if(clickNumber+1==thisLength) $('#next').css('cursor','default');
                if(clickNumber==1) $('#prev').css('cursor','pointer');
                if(clickNumber==0) $('#prev').css('cursor','default');
                if(clickNumber==thisLength-2) $('#next').css('cursor','pointer');
            }
        }
    );

    $('#close').live("click",function(){
        $("#shadow").css("display", "none");
        $("#carouselOut").remove();
        clickNumber="";
        str="";
        thisID="";
        thisLength="";
        pres=0;
        if(intervalID) clearInterval(intervalID);
    });
});

//презентация
function presentation(thisID,clickNumber,thisLength){
    $('.jcarousel-list img.act').removeClass('act');
    $('.jcarousel-list li:nth-child('+(clickNumber+1)+') img').addClass('act');
    widthLi(thisID,clickNumber);
    $('#imgFoto img').attr('src',arrayGallery["imgB"+thisID][clickNumber]);
    $('#imgFoto h3').empty()
                    .append(arrayGallery["caption"+thisID][clickNumber]);
    return clickNumber;
}

//определение ширины элемента, содержащего картинку
function widthLi(thisID,clickNumber){
        var imgBig=arrayGallery["imgB"+thisID][clickNumber];
        id = imgBig.substr(imgBig.lastIndexOf('/')+1,imgBig.lastIndexOf('.')-imgBig.lastIndexOf('/')-1);
        $.get('/ajax/image/' + id, {}, function(data) {
            w = data;
            $('#imgFoto').width(w+'px');
        });
}

//прокрутка страницы
function getBodyScrollTop()
{
  return self.pageYOffset ||
    (document.documentElement && document.documentElement.scrollTop) ||
    (document.body && document.body.scrollTop);
} 


