﻿var _divWidth,_divHeight,_divOuterWidth,_divOuterHeight,_divTotalHeight,_itemCount,_interval,_imgID;
    function myGallery(container,speed,duration,width,height)
    {
     myNamespaceNik={
     _mainDiv:container,
     _slidesDiv:$('div:eq(0)',container),
     _link:$('div:eq(0) a',container),
     _img:$('div:eq(0) a img',container),
     _speed:speed,
     _duration:duration,
     _width:width,
     _height:height
     };
     gallerySlideshow_initializer();
      slideShow_animation('play');
     if(_itemCount<2)
     {
      slideShow_animation('pause');
     $('#slides_nav',myNamespaceNik._mainDiv).remove();
     $('#slides_nav_bar',myNamespaceNik._mainDiv).remove();
     }
    }
    
    function slideShow_animation(type)
    {
    switch(type)
    {
    case 'next':
    $('a:last',myNamespaceNik._slidesDiv).after($('a:first',myNamespaceNik._mainDiv));
    $('a:first img',myNamespaceNik._slidesDiv).css('z-index','1');
     $('a:first img',myNamespaceNik._slidesDiv).css('opacity','1');
    $('a:first img',myNamespaceNik._slidesDiv).fadeIn(myNamespaceNik._speed);
    $('a:last img',myNamespaceNik._slidesDiv).css('display','none');
    $('a:last img',myNamespaceNik._slidesDiv).css('opacity','0');
    $('a:last img',myNamespaceNik._slidesDiv).css('z-index','0');
    slideShow_animation('content');
    break;
    case 'prev':
    slideShow_animation('pause');
     $('a:first',myNamespaceNik._slidesDiv).before($('a:last',myNamespaceNik._mainDiv));
    $('a:first img',myNamespaceNik._slidesDiv).css('z-index','1');
     $('a:first img',myNamespaceNik._slidesDiv).css('opacity','1');
    $('a:first img',myNamespaceNik._slidesDiv).fadeIn(myNamespaceNik._speed);
    $('a:eq(1) img',myNamespaceNik._slidesDiv).css('display','none');
    $('a:eq(1) img',myNamespaceNik._slidesDiv).css('opacity','0');
    $('a:eq(1) img',myNamespaceNik._slidesDiv).css('z-index','0');
    slideShow_animation('content');
    break;
    case 'gallery':
    var toTop=$('#slides_gallery',myNamespaceNik._mainDiv).css('top');
    toTop=toTop.replace('px','');
    if(toTop==0)
    {
    toTop=_divTotalHeight;
    }
    else
    {
    toTop=0;
    }
    $('#slides_gallery',myNamespaceNik._mainDiv).animate({top:toTop},{duration:500,queue:false});
    break;
    case 'play':
    _interval=setInterval('slideShow_animation("next")',myNamespaceNik._duration);
     $('#slides_nav_bar #slides_trigger_slide',myNamespaceNik._mainDiv).attr('title','pause');
     $('#slides_nav_bar #slides_trigger_slide',myNamespaceNik._mainDiv).attr('class','gallery_pause');
    break;
    case 'pause':
    clearInterval(_interval);
    $('#slides_nav_bar #slides_trigger_slide',myNamespaceNik._mainDiv).attr('title','play');
     $('#slides_nav_bar #slides_trigger_slide',myNamespaceNik._mainDiv).attr('class','gallery_play');
    break;
    case 'content':
    $('#slides_content div',myNamespaceNik._mainDiv).css('opacity','0');
     var id=$('a:first img',myNamespaceNik._slidesDiv).attr('id');
     id=parseInt(id);
     id=id-1;
     $('#slides_content div:eq('+id+')',myNamespaceNik._mainDiv).animate({'opacity':'0.5'},{duration:500});
    break;
    case 'jump':
    ID=_imgID;
    ID=parseInt(ID);
    var curPos=$('a:eq(0) img',myNamespaceNik._slidesDiv).attr('id');
    curPos=parseInt(curPos);
    if(curPos==ID)
    {
    slideShow_animation('gallery');
    }
    else if(ID==1)
    {
    while(curPos!=_itemCount)
    {
    $('a:last',myNamespaceNik._slidesDiv).after($('a:first',myNamespaceNik._slidesDiv));
    curPos=$('a:eq(0) img',myNamespaceNik._slidesDiv).attr('id');
    curPos=parseInt(curPos);
    }
    $('a img',myNamespaceNik._mainDiv).css('display','none');
    $('a img',myNamespaceNik._mainDiv).css('opacity','0');
    $('a img',myNamespaceNik._mainDiv).css('z-index','0');
    slideShow_animation('gallery');
    slideShow_animation('next');
    }
    else
    {
    while(curPos+1!=ID)
    {
    $('a:last',myNamespaceNik._slidesDiv).after($('a:first',myNamespaceNik._slidesDiv));
    curPos=$('a:eq(0) img',myNamespaceNik._slidesDiv).attr('id');
    curPos=parseInt(curPos);
    }
    $('a img',myNamespaceNik._slidesDiv).css('display','none');
    $('a img',myNamespaceNik._slidesDiv).css('opacity','0');
    $('a img',myNamespaceNik._slidesDiv).css('z-index','0');
    slideShow_animation('gallery');
    slideShow_animation('next');
    }
    break;
    case 'preview':
    $('#slides_gallery ul li',myNamespaceNik._mainDiv).hover(function(){
   var key=$('img',this).attr('id');
   $(myNamespaceNik._mainDiv).append('<div id="slide_preview" style="position:absolute;z-index:4;padding:5px;margin:5px;border:solid 1px;"></div>');
   $('#slide_preview',myNamespaceNik._mainDiv).css('top',_divHeight);
   var width=Math.floor(_divWidth/2);
   var height=Math.floor(_divHeight/2);
   $('#slide_preview',myNamespaceNik._mainDiv).width(width);
   $('#slide_preview',myNamespaceNik._mainDiv).height(height);
   var toTop=$('#slide_preview',myNamespaceNik._mainDiv).outerHeight(true);
   toTop=_divHeight-toTop;
   $('#slide_preview',myNamespaceNik._mainDiv).append($(this).html());
   $('#slide_preview img',myNamespaceNik._mainDiv).width(width);
   $('#slide_preview img',myNamespaceNik._mainDiv).height(height);
   $('#slide_preview',myNamespaceNik._mainDiv).css('left',Math.floor(width/2));
   $('#slide_preview',myNamespaceNik._mainDiv).animate({'top':toTop},{duration:500,queue:false});
   },
   function()
   {
   $('#slide_preview',myNamespaceNik._mainDiv).remove();
   });
    break;
    default:
    $(myNamespaceNik._mainDiv).hover(function(){
    $('#slides_nav #slides_nav_next',this).animate({'right':'36'},{duration:500,queue:false});
    $('#slides_nav #slides_nav_prev',this).animate({'left':'36'},{duration:500,queue:false});
    },
    function(){
    $('#slides_nav #slides_nav_next',this).animate({'right':'-36'},{duration:500,queue:false});
    $('#slides_nav #slides_nav_prev',this).animate({'left':'-36'},{duration:500,queue:false});
    });
    }
    $('#slides_nav_bar #slides_counter',myNamespaceNik._mainDiv).html($('a:eq(0) img',myNamespaceNik._slidesDiv).attr('id')+'/'+_itemCount);
    }

    
    function gallerySlideshow_initializer()
    {
     $('#slides_nav',myNamespaceNik._mainDiv).append('<div id="slides_nav_next" onclick="javascript:void(0);" class="slides_nav_next"></div>');
    $('#slides_nav',myNamespaceNik._mainDiv).append('<div id="slides_nav_prev" onclick="javascript:void(0);" class="slides_nav_prev"></div>');
  $(myNamespaceNik._slidesDiv).width(myNamespaceNik._width);
  $(myNamespaceNik._slidesDiv).height(myNamespaceNik._height);
   _divWidth=$(myNamespaceNik._slidesDiv).width();
     _divHeight=$(myNamespaceNik._slidesDiv).height();
     _divOuterWidth=$(myNamespaceNik._slidesDiv).outerWidth(true);
     _divOuterHeight=$(myNamespaceNik._slidesDiv).outerHeight(true);
     _divTotalHeight=_divOuterHeight+$('#slides_nav_bar',myNamespaceNik._mainDiv).outerHeight(true);
    $(myNamespaceNik._img).width(_divWidth);
    $(myNamespaceNik._img).height(_divHeight);
    $(myNamespaceNik._mainDiv).width(_divOuterWidth);
    $(myNamespaceNik._mainDiv).height(_divTotalHeight);
     _itemCount=$(myNamespaceNik._img).length;
    $(myNamespaceNik._link).each(function(counter)
    {
    $('img',this).attr('id',counter+1);
    if(counter==0)
    {
    $('img',this).css('opacity','1');
    $('img',this).css('z-index','1');
    }
    else
    {
    $('img',this).css('display','none');
    $('img',this).css('opacity','0');
    $('img',this).css('z-index','0');
    }
    });
    
     $('#slides_gallery',myNamespaceNik._mainDiv).width(_divOuterWidth);
    $('#slides_gallery',myNamespaceNik._mainDiv).height(_divOuterHeight);
    $('#slides_gallery',myNamespaceNik._mainDiv).css('top',_divTotalHeight);
    $('#slides_gallery ul',myNamespaceNik._mainDiv).width(_divWidth);
    $('#slides_gallery ul',myNamespaceNik._mainDiv).height(_divHeight);
    var _liWidthDivision=Math.floor(_divWidth/10);
    var _liHeightDivision=Math.floor(_divHeight/10);
    $('#slides_gallery ul li',myNamespaceNik._mainDiv).width(_liWidthDivision);
    $('#slides_gallery ul li',myNamespaceNik._mainDiv).height(_liHeightDivision);
    $('#slides_gallery ul li img',myNamespaceNik._mainDiv).width(_liWidthDivision);
    $('#slides_gallery ul li img',myNamespaceNik._mainDiv).height(_liHeightDivision);
    $('#slides_gallery ul li img',myNamespaceNik._mainDiv).each(function(count){
    $(this).attr('id',count+1);
    });
    $('#slides_nav_bar #slides_counter',myNamespaceNik._mainDiv).html('1/'+_itemCount);
    $('#slides_content div',myNamespaceNik._mainDiv).css('bottom',_divTotalHeight-_divHeight);
    $('#slides_content div',myNamespaceNik._mainDiv).each(function(id){
    if(id==0)
    {
    $(this).css('opacity','0.5');
    }
    else
    {
     $(this).css('opacity','0');
    }
    $(this).attr('id',id+1);
    });
    $('#slides_nav_bar #slides_trigger_slide',myNamespaceNik._mainDiv).click(function(){
    var title=$('#slides_nav_bar #slides_trigger_slide',myNamespaceNik._mainDiv).attr('title');
    if(title=='play')
    {
     slideShow_animation('play');
    }
    else
    {
     slideShow_animation('pause');
    }
    });
    $('#slides_nav #slides_nav_next',myNamespaceNik._mainDiv).click(function(){
    slideShow_animation('pause');
    slideShow_animation('next');
    });
    $('#slides_nav #slides_nav_prev',myNamespaceNik._mainDiv).click(function(){
   slideShow_animation('prev');
    });
     $('#slides_nav_bar #slides_trigger_gallery',myNamespaceNik._mainDiv).click(function(){
    slideShow_animation('gallery');
    });
    slideShow_animation('');
    $('#slides_gallery ul li img',myNamespaceNik._mainDiv).click(function(){
    slideShow_animation('pause');
    _imgID=$(this).attr('id');
    slideShow_animation('jump');
    });
    slideShow_animation('preview');
    }
    
