/* __________________________________________________________________
		Name: piroBox v.1.1
		Date: february 2009
		Use: just  another gallery.
		Autor: Diego Valobra (http://www.pirolab.it),(http://www.diegovalobra.com)
		Version: 1.1
		Licence: CC-BY-SA http://creativecommons.org/licenses/by-sa/2.5/it/
_______________________________________________________________________________*/

/*_____________________ HTML FOR THE GALLERY _____________________*/

$(document).ready(function(){
$('body').append(
		'<!-- :::::::: PIROBOX :::::::::: -->'+
		'<div class="pre"></div>'+
		'<div class="bg_thumbs"></div>'+
		'<!-- :::::::: END PIROBOX :::::::::: -->'
		);	
});



(function($) {

	$.fn.piroBox = function(opt) {
		opt = jQuery.extend({
			border: 1, 
			mySpeed: null,
			open_speed : 1000,
			close_speed : 1000,
			bg_alpha: 0.5,
			pathLoader : 'null', 
			gallery : null, 
			gallery_li : null,
			single : null,
			next_class : null,
			previous_class : null,
			padding: '0',
			gloabal : true,
			minHeight : 200,
			minWidth : 300
		}, opt);


return this.each(function() {
		
	

		/*___________________ CLOSE FUNCTION ______________________________*/
		function getForm() {
		  alert('');
		}
		function closeIt() {
		    $('.box_cont').empty();
				$('.pre').hide();
				$('.caption').remove();				
				$('li.begin').remove();
				$('li.end').remove();
				$('.thumbs_close').css('display','none');
				$('.thumbs_info').css('display','none');
				$(opt.next_class+','+opt.previous_class).css({'visibility':'hidden'});
				$((opt.gallery_li)).removeClass('start');
				$((opt.gallery_li)).removeClass('back');
				$('.box_next_in, .box_previous_in,.box_next,.box_previous ').css('display','none');
				$('.loader').fadeTo(300,0);
				$('.loader').queue(function(){
					$('.bg_thumbs').fadeTo(500,0);
					$('.img_box img').remove();
					$('.img_box ').queue(function(){
  					$('.all').css({
    					'top':'50%',
    					'height':'80px',
    					'width':'80px',
    					'marginLeft':'-45px',
    					'marginTop':'-40px',
    					'visibility':'hidden',
    					'padding':'10px'
  					});
  					$('.img_box').css({
    					'height':'50px',
    					'width' : '50px',
    					'visibility':'hidden'
  					}).removeClass('unloader');
  					$('.bg_thumbs').hide().css('visibility','hidden');
  					$('.thumbs').hide();
  					$('.img_box').dequeue();
					});
				$('.loader').dequeue().remove('<div class="loader"><span style=" background:' + opt.pathLoader + ' "></span></div>');
				});
				$('.img_box img, .thumbs_close, .thumbs_info').fadeTo(400,0);			
				$('.img_box img').queue(function(){
					$('.img_box').animate({
					height : '50px' ,
					width : '50px' 
					},50).css('visibility','hidden'); 												 
					$('.all').animate({
					top:'50%',
					height : '80px' ,
					width : '80px' , 
					marginLeft : '-45px',
					marginTop : '-40px',
					padding : '10px'
					},(opt.close_speed)); 												     
					$('.img_box img').remove();
					$('.img_box').removeClass('unloader');
					$('.bg_thumbs').fadeTo(500,0);
						$('.all').queue(function(){
							$('.bg_thumbs,.thumbs_close,.thumbs_info').hide().css('visibility','hidden');
							$('.thumbs').css('display','none');	
						$('.all').css('visibility','hidden').dequeue()
				
						});
				$('.img_box img').dequeue();
				});
		}
		/*___________________	END FUNCTION CLOSE     ________________________*/	

		/*___________________	START PIROBOX	    ________________________*/

			var next_out = $('.box_next').width();
			var idPiro = $(this).attr('id');			
			var b_size = (opt.border)+2;
				  if($.browser.msie && $.browser.version < 7)   {
					$('.img_box').css('padding','2px');
					$('head').append(
									'<!--[if lte IE 6]>'+
									'<style type="text/css">@media screen{* html{overflow-y: hidden;}* html body{height: 100%;overflow: auto;}}</style>'+
									'<![endif]-->'
									);

					} else {
						$('.img_box').css('padding','2px');
						(opt.mySpeed);
					}
					
				$('.bg_thumbs, .thumbs, .thumbs_close,.thumbs_info').hide();
			$(window).resize(function(){
				var new_w_bg = $(window).height();
				$('.bg_thumbs').css({'visibility':'visible','height':+ new_w_bg+30 +'px'});				  
			});	
			var w_bg = $(window).height();
			$('.bg_thumbs').css({'visibility':'hidden','height':+ w_bg+30 +'px'});
		/*___________________	LAUNCH GALLERY     ________________________*/
		
			$(opt.gallery + ',' + opt.single).unbind('click');
			$(opt.gallery + ',' + opt.single).bind('click',function() {	
				$(this).parent('li').parent('ul').prepend('<li  class="begin"></li>');
				$(this).parent('li').parent('ul').append('<li  class="end"></li>');
				$('.pre').append('<div class="loader"><span style=" background:' + opt.pathLoader + ' "></span></div>').hide();
				$('.all').prepend('<div class="caption"><p title="caption"></p></div>');
				$('.caption').css({'opacity':'0','visibility':'hidden'});
				$(opt.next_class+','+opt.previous_class).css({'visibility':'hidden'});

		/*___________________SINGLE, NEXT AND PREVIOUS PREPARE    ________________________*/				
						
					$('.img_box img').remove('img');
					$(window).resize(function(){
						var new_w_bg = $(window).height();
						$('.bg_thumbs').css({'visibility':'visible','height':+ new_w_bg+30 +'px'});
					});
					var w_bg = $(window).height();
					$('.pre').css('visibility','visible').show();
					$('.thumbs').show();
					$('.all').css({'visibility':'visible','height':'100px','width':'100px','margin-left':'-' +((100)/2) +'px','margin-top':'-' +((100)/2 ) +'px'}).show();
					var pathImg = $(this).children('div.img').children('img').attr('alt');
					var titleImg = $(this).attr('title');
					var textImg = $(this).parent().children('div.text').html();
					var myImg = new Image();
					
						if($(this).parent().next('li').is('.end') && $(this).parent().prev('li').is('.begin')) {
  						$(this).parent().next('li').removeClass('start');
            }
            else {
              if($(this).parent().next('li').is('.end') || $(this).parent('span').is('.single')){
    						$(this).parent().next('li').removeClass('start');
    					} else {
    						$(this).parent().next('li').addClass('start');
    					}
    					if($(this).parent().prev('li').is('.begin') || $(this).parent('span').is('.single')){
    					} else {
    						$(this).parent().prev('li').addClass('back');
    					}
  					}
  					real_parent = $(this);
          $(myImg).load(function() {
					
						if(real_parent.parent().next('li').is('.end') && real_parent.parent().prev('li').is('.begin')) {
  						$('.box_next_in').css('display','none');
  						$('.box_previous_in').css('display','none');
  						real_parent.parent().next('li').removeClass('start');
            }
            else {
              if(real_parent.parent().next('li').is('.end') || real_parent.parent('span').is('.single')){
    						real_parent.parent().next('li').removeClass('start');
    					} else {
    						$('.box_next_in').css('display','block');
    						$('.box_next_in a').css('visibility','');
    						real_parent.parent().next('li').addClass('start');
    					}
    					if(real_parent.parent().prev('li').is('.begin') || real_parent.parent('span').is('.single')){
    						$('.box_next_in').css('display','block');
    						$('.box_next_in a').css('visibility','');
    					} else {
    						$('.box_previous_in').css('display','block');
    						$('.box_previous_in a').css('visibility','');
    						real_parent.parent().prev('li').addClass('back');
    					}
  					}
					
					   var imgH = myImg.height;
						if (imgH < opt.minHeight)
						  imgHS = opt.minHeight;
						else
						  imgHS = imgH;
						var imgW = myImg.width;
						if (imgW < opt.minWidth)
						  imgWS = opt.minWidth;
						else
						  imgWS = imgW;
						var w_H = $(window).height();
						var w_W = $(window).width();
						$('#' + idPiro + ' .img_box').append(this);
						
						var box_info = $('div.box_info');
						var box_cont = $('div.box_cont');
						$('#' + idPiro + ' .img_box img').mouseover(function(){
              box_info.show();
              box_info.fadeTo("fast",0.8,function(){
                box_cont.width = box_info.width;
                box_cont.height = box_info.height;
                box_cont.show();
                $('div.bg_thumbs').mouseover(function(){
                  box_cont.hide();
                  box_info.fadeTo("fast",0,function(){
                    box_info.hide();
                  });
                  $('div.bg_thumbs').unbind('mouseover');
                });
              });
            });
          
            $('div.box_info').width(imgWS);
						$('div.box_info').height(imgHS);
						
						if(imgH+100 > w_H || imgW+100 > w_W){
								var new_img_W = imgW;
								var new_img_H = imgH;
								var _x = (imgW + 100)/w_W;
								var _y = (imgH + 100)/w_H;

								if ( _y > _x ){
								new_img_W = Math.round(imgW * (0.9/_y));
								new_img_H = Math.round(imgH * (0.9/_y));
								} else {
								new_img_W = Math.round(imgW * (0.9/_x));
								new_img_H = Math.round(imgH * (0.9/_x));
								}
								imgH += new_img_H;
								imgW += new_img_W;
								$('.thumbs').show();
								$('.bg_thumbs').show().css({'opacity':'0','visibility':'visible','height':+ w_bg +'px'}).fadeTo(300,(opt.bg_alpha));
								$('.img_box img').css('visibility','hidden').hide();
								$('.all').css({'visibility':'visible'}).animate({
									height : (new_img_H) + 'px' ,
									width : (new_img_W) + 'px' , 
									marginLeft : '-' +((new_img_W)/2) +'px',
									marginTop : '-' +((new_img_H)/2+20 ) +'px'
								},(opt.open_speed));
								$('.all').queue(function(){
								$('.img_box').css({
									visibility :'visible',
									height : (new_img_H) + 'px' ,
									width : (new_img_W) + 'px' 
								});
								$('.img_box').queue(function(){
									$(myImg).height(new_img_H).width(new_img_W).css('opacity',0);
									$('.img_box img').css('visibility','visible').show().fadeTo(300,1);
									$('.img_box ').addClass('unloader');
									$('.loader').remove('<div class="loader"><span style=" background:'+ opt.pathLoader + ' "></span></div>');
								$('.img_box').dequeue()
									if(titleImg == ""){							
										$('.caption').css('visibility','hidden');
										$('.thumbs_close,.thumbs_info').show().css({'opacity':'0','visibility':'visible'}).fadeTo(200,1);
										$('.unloader, .thumbs_close, .box_cont, .box_info, .thumbs_info').unbind('click');
										$('.unloader, .thumbs_close, .box_cont, .box_info').bind('click',function(){closeIt();});
										$('.thumbs_info').bind('click',function(){getForm();});
									}else{
										$('.caption p').html(titleImg);
										$('.box_cont').html(textImg);
										var caption_h = $('.caption').height();										
										$('.all').animate({
											height :new_img_H+ (caption_h+10) + 'px'
										},300);
										$('.all').queue(function(){
										$('.caption').css({'visibility':'visible'/*,'width':+ new_img_W+'px'*/}).fadeTo(400,1);
										$('.thumbs_close,.thumbs_info').show().css({'opacity':'0','visibility':'visible'}).fadeTo(200,1);
										$('.unloader, .thumbs_close, .box_cont, .box_info, .thumbs_info').unbind('click');
										$('.unloader, .thumbs_close, .box_cont, .box_info').bind('click',function(){closeIt();});	
										$('.thumbs_info').bind('click',function(){getForm();});
										$('.all').dequeue()
										});
									}
								});
								$('.all').dequeue();
								});		
								
						} else {
										
								$('.thumbs').show();
								$('.bg_thumbs').show().css({'opacity':'0','visibility':'visible','height':+ w_bg +'px'}).fadeTo(300,(opt.bg_alpha));
								$('.img_box img').css('visibility','hidden').hide();
								$('.all').css({'visibility':'visible'}).animate({
									height : (imgHS)+ 'px' ,
									width : (imgWS) + 'px' , 
									marginLeft : '-' +((imgWS)/2) +'px',
									marginTop : '-' +((imgHS)/2+10) +'px'
								},(opt.open_speed));
								$('.all').queue(function(){
								$('.img_box').css({
									visibility :'visible',
									height : (imgHS) + 'px' ,
									width : (imgWS) + 'px' 
								});
								$('.img_box').queue(function(){
									$(myImg).height(imgH).width(imgW).css('opacity',0);
									if (imgHS > imgH)
                    mTop = imgHS / 2 - imgH / 2;
                  else
                    mTop = 0;
									if (imgWS > imgW)
                    mLeft = imgWS / 2 - imgW / 2;
                  else
                    mLeft = 0;
									$(myImg).css({'margin-top':mTop,'margin-left':mLeft});
									$('.img_box img').css('visibility','visible').show().fadeTo(300,1);
									$('.img_box ').addClass('unloader');
									$('.loader').remove(' <div class="loader"><span style=" background:' + opt.pathLoader + ' "></span></div>');								
								$('.img_box').dequeue()
								
									if(titleImg == ""){							
										$('.caption').css('visibility','hidden');
										$('.thumbs_close,.thumbs_info').show().css({'opacity':'0','visibility':'visible'}).fadeTo(200,1);
										$('.unloader, .thumbs_close, .box_cont, .box_info, .thumbs_info').unbind('click');
										$('.unloader, .thumbs_close, .box_cont, .box_info').bind('click',function(){closeIt();});
										$('.thumbs_info').bind('click',function(){getForm();});
									}else{
										$('.caption p').html(titleImg);
										$('.box_cont').html(textImg);
										var caption_h = $('.caption').height();										
										$('.all').animate({
											height :imgHS+ (caption_h+10) + 'px'
										},300);
										$('.all').queue(function(){
										$('.caption').css({'visibility':'visible'/*,'width':+ imgW+'px'*/}).fadeTo(400,1);
										$('.thumbs_close,.thumbs_info').show().css({'opacity':'0','visibility':'visible'}).fadeTo(200,1);
										$('.unloader, .thumbs_close, .box_cont, .box_info, .thumbs_info').unbind('click');
										$('.unloader, .thumbs_close, .box_cont, .box_info').bind('click',function(){closeIt();});	
										$('.thumbs_info').bind('click',function(){getForm();});
										$('.all').dequeue()
										});
									}
		
								});		
								$('.all').dequeue();

								});	
						  }

					});
				$(myImg).attr('src', pathImg);
				return false;
			});
		/*___________________	NEXT    ________________________*/

			$((opt.next_class)).unbind('click');
			$((opt.next_class)).bind('click',function() {	
		    $('.box_info').hide();
		    $('.box_cont').hide();
				$('.thumbs_close,.thumbs_info').css({'opacity':'0','visibility':'hidden'});
				$('.img_box img').remove('img');
				$('.pre').css('visibility','visible').show();
				$('.caption').css({'opacity':'0','visibility':'hidden'});
				$('.pre').append('<div class="loader"><span style=" background:'+ opt.pathLoader +' "></span></div>');				
				var pathImg = $('.start>a').children('div.img').children('img').attr('alt');
				var titleImg = $('.start>a').attr('title');
				var textImg = $('.start>a').parent().children('div.text').html();
				$('.start').next('li').addClass('start');
				$('.start').queue(function(){
					$(this).prev('li').removeClass('start');
					$((opt.gallery_li)).removeClass('back');
					$('.start').prev('li').prev('li').addClass('back');
					$((opt.previous_class)).animate({left: '0px'},300);
				$('.start').dequeue();
				});
				$((opt.next_class)).css('visibility','hidden');
				$((opt.previous_class)).css('visibility','hidden');
				var myImg = new Image(); 
				$(myImg).load(function() {
					var imgH = myImg.height;
					if (imgH < opt.minHeight)
					  imgHS = opt.minHeight;
					else
					  imgHS = imgH;
					var imgW = myImg.width;	
					
						if (imgW < opt.minWidth)
						  imgWS = opt.minWidth;
						else
						  imgWS = imgW;
					var w_H = $(window).height();
					var w_W = $(window).width();		
						$('#' + idPiro + ' .img_box').append(this);
						
						var box_info = $('div.box_info');
						var box_cont = $('div.box_cont');
						$('#' + idPiro + ' .img_box img').mouseover(function(){
              box_info.show();
              box_info.fadeTo("fast",0.8,function(){
                box_cont.width = box_info.width;
                box_cont.height = box_info.height;
                box_cont.show();
                $('div.bg_thumbs').mouseover(function(){
                  box_cont.hide();
                  box_info.fadeTo("fast",0,function(){
                    box_info.hide();
                  });
                  $('div.bg_thumbs').unbind('mouseover');
                });
              });
            });
						
            $('div.box_info').width(imgWS);
						$('div.box_info').height(imgHS);
						
							if(imgH+100 > w_H || imgW+100 > w_W){
								var new_img_W = imgW;
								var new_img_H = imgH;
								var _x = (imgW + 100)/w_W;
								var _y = (imgH + 100)/w_H;
								if ( _y > _x ){
								new_img_W = Math.round(imgW * (0.9/_y));
								new_img_H = Math.round(imgH * (0.9/_y));
								} else {
								new_img_W = Math.round(imgW * (0.9/_x));
								new_img_H = Math.round(imgH * (0.9/_x));
								}
								imgH += new_img_H;
								imgW += new_img_W;
							$('.thumbs').show();
							$('.img_box ').css('visibility','hidden');							
							$('.img_box img').css('visibility','hidden').hide();
								$('.all').css({'visibility':'visible'}).animate({
									height : (new_img_H) + 'px' ,
									width : (new_img_W) + 'px' , 
									marginLeft : '-' +((new_img_W)/2 ) +'px',
									marginTop : '-' +((new_img_H)/2+20 ) +'px'
								},(opt.mySpeed));
								$('.all').queue(function(){
								$('.img_box').css({
									visibility :'visible',
									height : (new_img_H) + 'px' ,
									width : (new_img_W) + 'px' 
								});
							$('.img_box').queue(function(){
								$(myImg).height(new_img_H).width(new_img_W).css('opacity',0);
								$('.img_box img').css('visibility','visible').show().fadeTo(200,1)
								$('div.box_previous_in,div.box_previous').css({'display':'block'});
								$('.img_box ').addClass('unloader');
								$('.loader').remove('<div class="loader"><span style=" background:'+ opt.pathLoader +' "></span></div>');
								$('.img_box').dequeue()
		
									if(titleImg == ""){							
										$('.caption').css('visibility','hidden');
										$('.thumbs_close,.thumbs_info').show().css({'opacity':'0','visibility':'visible'}).fadeTo(300,1);
										$('.unloader, .thumbs_close, .box_cont, .box_info, .thumbs_info').unbind('click');
										$('.unloader, .thumbs_close, .box_cont, .box_info').bind('click',function(){closeIt();});
										$('.thumbs_info').bind('click',function(){getForm();});
									}else{	
										$('.caption p').html(titleImg);
										$('.box_cont').html(textImg);
										//$('.caption').css({'width':+ new_img_W+'px'});
										var caption_h = $('.caption').height();
										var caption_w = new_img_W;
										$('.all').animate({
											height :new_img_H+ (caption_h+10) + 'px'
										},300);
										$('.all').queue(function(){
										$('.caption').css({'visibility':'visible'}).fadeTo(600,1);
										$('.thumbs_close,.thumbs_info').show().css({'opacity':'0','visibility':'visible'}).fadeTo(300,1);
										$('.unloader, .thumbs_close, .box_cont, .box_info, .thumbs_info').unbind('click');
										$('.unloader, .thumbs_close, .box_cont, .box_info').bind('click',function(){closeIt();});	
										$('.thumbs_info').bind('click',function(){getForm();});
										$('.all').dequeue()
										});

									}										
								
							});
									if($(opt.next_class).is('.next_in')){
										$('.box_next_in ,.box_previous_in ').css('display','block');
										$('.box_next,.box_previous ').css('display','none');
										$(opt.next_class + ',' + opt.previous_class).css({'visibility':'visible'});
										}else if($(opt.next_class).is('.next')) {
										$('.box_next_in, .box_previous_in ').css('display','none');
										$('.box_next,.box_previous ').css('display','block');
										$(opt.next_class + ',' + opt.previous_class).css({'visibility':'visible'});
									}
									if($('.start ').is('li.end')){
										$((opt.next_class)).css('visibility','hidden');
										$('div.box_next_in,div.box_next').css({'display':'none'});
											$('.end').removeClass('start');
										$(opt.previous_class).css({'visibility':'visible'});
										}else{						
										$(opt.next_class + ',' + opt.previous_class).css({'visibility':'visible'});
										}
								$('.all').dequeue();
								});	
								
					} else {
		
							$('.thumbs').show();
							$('.img_box ').css('visibility','hidden');
							$((opt.previous_class)).css('visibility','hidden');
							$('.img_box img').css('visibility','hidden').hide();
								$('.all').css({'visibility':'visible'}).animate({
									height : (imgHS) + 'px' ,
									width : (imgWS) + 'px' , 
									marginLeft : '-' +((imgWS)/2) +'px',
									marginTop : '-' +((imgHS)/2+10) +'px'
								},(opt.mySpeed));
								$('.all').queue(function(){
								$('.img_box').css({
									visibility :'visible',
									height : (imgHS) + 'px' ,
									width : (imgWS) + 'px'
								});
							$('.img_box').queue(function(){
								$(myImg).height(imgH).width(imgW).css('opacity',0);
									if (imgHS > imgH)
                    mTop = imgHS / 2 - imgH / 2;
                  else
                    mTop = 0;
									if (imgWS > imgW)
                    mLeft = imgWS / 2 - imgW / 2;
                  else
                    mLeft = 0;
									$(myImg).css({'margin-top':mTop,'margin-left':mLeft});
								$('.img_box img').css('visibility','visible').show().fadeTo(200,1);
								$('div.box_previous_in,div.box_previous').css({'display':'block'});
								$('.img_box ').addClass('unloader');									 
								$('.loader').remove('<div class="loader"><span style=" background:'+opt.pathLoader+' "></span></div>');
							$('.img_box').dequeue()
		
									if(titleImg == ""){							
										$('.caption').css('visibility','hidden');
										$('.thumbs_close,.thumbs_info').show().css({'opacity':'0','visibility':'visible'}).fadeTo(300,1);
										$('.unloader, .thumbs_close, .box_cont, .box_info, .thumbs_info').unbind('click');
										$('.unloader, .thumbs_close, .box_cont, .box_info').bind('click',function(){closeIt();});
										$('.thumbs_info').bind('click',function(){getForm();});
									}else{	
										$('.caption p').html(titleImg);
										$('.box_cont').html(textImg);
										var caption_w = imgW;
										//$('.caption').css({'width':+ imgW+'px'});
										var caption_h = $('.caption').height();
										$('.all').animate({
											height :imgHS+ (caption_h+10) + 'px'
										},300);
										$('.all').queue(function(){
										$('.caption').css({'visibility':'visible'}).fadeTo(600,1);
										$('.thumbs_close,.thumbs_info').show().css({'opacity':'0','visibility':'visible'}).fadeTo(300,1);
										$('.unloader, .thumbs_close, .box_cont, .box_info, .thumbs_info').unbind('click');
										$('.unloader, .thumbs_close, .box_cont, .box_info').bind('click',function(){closeIt();});	
										$('.thumbs_info').bind('click',function(){getForm();});
										$('.all').dequeue()
										});
									}	
							});
									if($(opt.next_class).is('.next_in')){
										$('.box_next_in ,.box_previous_in ').css('display','block');
										$('.box_next,.box_previous ').css('display','none');
										$(opt.next_class + ',' + opt.previous_class).css({'visibility':'hidden'});
										//alert('next_in');
										}else {
										$('.box_next_in, .box_previous_in ').css('display','none');
										$('.box_next,.box_previous ').css('display','block');
										$(opt.next_class + ',' + opt.previous_class).css({'visibility':'hidden'});
									}
									if($('.start ').is('li.end')){
										$((opt.next_class)).css('visibility','hidden');
										$('div.box_next_in,div.box_next').css({'display':'none'});
											$('.end').removeClass('start');
										$(opt.previous_class).css({'visibility':'visible'});
										
										}else{						
										$(opt.next_class + ',' + opt.previous_class).css({'visibility':'visible'});
										}
								$('.all').dequeue();
								});			
						}
					});
					$(myImg).attr('src', pathImg);
					return false;
			});
		/*___________________	PREVIOUS   ________________________*/
		
			$((opt.previous_class)).unbind('click');
			$((opt.previous_class)).bind('click',function() {
		    $('.box_info').hide();
		    $('.box_cont').hide();
				$('.thumbs_close,.thumbs_info').css({'opacity':'0','visibility':'hidden'});
				$('.img_box img').remove('img');
				$('.pre').css('visibility','visible').show();
				$('.caption').css({'opacity':'0','visibility':'hidden'});
				$('.pre').append('<div class="loader"><span style=" background:'+opt.pathLoader+' "></span></div>');							
				var pathImg = $('.back>a').children('div.img').children('img').attr('alt');
				var titleImg = $('.back>a').attr('title');		
				var textImg = $('.back>a').parent().children('div.text').html();
				$((opt.gallery_li)).removeClass('start');
					$((opt.gallery_li)).queue(function(){
						$('.back').next('li').addClass('start');
					$((opt.gallery_li)).dequeue();
					});
					$('.back').queue(function(){
						$((opt.gallery_li)).removeClass('back');
						$('.start').prev('li').prev('li').addClass('back');
						//$((opt.next_class)).animate({right: '0px'},300);
					$('.back').dequeue();
					});
					$((opt.previous_class)).css('visibility','hidden');	
					$((opt.next_class)).css('visibility','hidden');
					var myImg = new Image();
					$(myImg).load(function() {
						var imgH = myImg.height;
						if (imgH < opt.minHeight)
						  imgHS = opt.minHeight;
						else
						  imgHS = imgH;
						var imgW = myImg.width;	
						
						if (imgW < opt.minWidth)
						  imgWS = opt.minWidth;
						else
						  imgWS = imgW;
						var w_H = $(window).height();
						var w_W = $(window).width();		
						$('#' + idPiro + ' .img_box').append(this);
						
						var box_info = $('div.box_info');
						var box_cont = $('div.box_cont');
						$('#' + idPiro + ' .img_box img').mouseover(function(){
              box_info.show();
              box_info.fadeTo("fast",0.8,function(){
                box_cont.width = box_info.width;
                box_cont.height = box_info.height;
                box_cont.show();
                $('div.bg_thumbs').mouseover(function(){
                  box_cont.hide();
                  box_info.fadeTo("fast",0,function(){
                    box_info.hide();
                  });
                  $('div.bg_thumbs').unbind('mouseover');
                });
              });
            });
						
            $('div.box_info').width(imgWS);
						$('div.box_info').height(imgHS);
						
							if(imgH+100 > w_H || imgW+100 > w_W){
								var new_img_W = imgW;
								var new_img_H = imgH;
								var _x = (imgW + 100)/w_W;
								var _y = (imgH + 100)/w_H;
								if ( _y > _x ){
								new_img_W = Math.round(imgW * (0.9/_y));
								new_img_H = Math.round(imgH * (0.9/_y));
								} else {
								new_img_W = Math.round(imgW * (0.9/_x));
								new_img_H = Math.round(imgH * (0.9/_x));
								}
								imgH += new_img_H;
								imgW += new_img_W;
								$('.thumbs').show();
							$('.img_box ').css('visibility','hidden');
							$('.img_box img').css('visibility','hidden').hide();
								$('.all').css({'visibility':'visible'}).animate({
									height : (new_img_H) + 'px' ,
									width : (new_img_W) + 'px' , 
									marginLeft : '-' +((new_img_W)/2) +'px',
									marginTop : '-' +((new_img_H)/2+20) +'px'
								},(opt.mySpeed));
								$('.all').queue(function(){
								$('.img_box').css({
									visibility :'visible',
									height : (new_img_H) + 'px' ,
									width : (new_img_W) + 'px'
								});
								$('.img_box').queue(function(){
									$(myImg).height(new_img_H).width(new_img_W).css('opacity',0);
									$('.img_box img').css('visibility','visible').show().fadeTo(200,1)
									$('div.box_next_in,div.box_next').css({'display':'block'});
									$('.img_box ').addClass('unloader');
									$('.loader').remove('<div class="loader"><span style=" background:'+opt.pathLoader+' "></span></div>');
								$('.img_box').dequeue()
		
									if(titleImg == ""){							
										$('.caption').css('visibility','hidden');
										$('.thumbs_close,.thumbs_info').show().css({'opacity':'0','visibility':'visible'}).fadeTo(300,1);
										$('.unloader, .thumbs_close, .box_cont, .box_info, .thumbs_info').unbind('click');
										$('.unloader, .thumbs_close, .box_cont, .box_info').bind('click',function(){closeIt();});
										$('.thumbs_info').bind('click',function(){getForm();});
									}else{	
										$('.caption p').html(titleImg);
										$('.box_cont').html(textImg);
										var caption_w = new_img_W;
										//$('.caption').css({'width':+ new_img_W+'px'});
										var caption_h = $('.caption').height();
										$('.all').animate({
											height :new_img_H+ (caption_h+10) + 'px'
										},300);
										$('.all').queue(function(){
										$('.caption').css({'visibility':'visible'}).fadeTo(600,1);
										$('.thumbs_close,.thumbs_info').show().css({'opacity':'0','visibility':'visible'}).fadeTo(300,1);
										$('.unloader, .thumbs_close, .box_cont, .box_info, .thumbs_info').unbind('click');
										$('.unloader, .thumbs_close, .box_cont, .box_info').bind('click',function(){closeIt();});	
										$('.thumbs_info').bind('click',function(){getForm();});
										$('.all').dequeue()
										});
									}	
								});
									if($(opt.next_class).is('.next_in')){
										$('.box_next_in ,.box_previous_in ').css('display','block');
										$('.box_next,.box_previous ').css('display','none');
										$(opt.next_class + ',' + opt.previous_class).css({'visibility':'hidden'});
										}else {
										$('.box_next_in, .box_previous_in ').css('display','none');
										$('.box_next,.box_previous ').css('display','block');
										$(opt.next_class + ',' + opt.previous_class).css({'visibility':'hidden'});
									}
									if($('.back').is('li.begin')){
											$((opt.previous_class)).css('visibility','hidden');
											$((opt.next_class)).css('visibility','visible');
											$('div.box_previous_in,div.box_previous').css({'display':'none'});
											$('.begin').removeClass('back');
											$((opt.gallery_li)).removeClass('start');
											$((opt.gallery_li)).queue(function(){						  
												$('.begin').next('li').next('li').addClass('start');
											$((opt.gallery_li)).dequeue()
											});
										} else{	
										$(opt.next_class + ',' + opt.previous_class).css('visibility','visible');
										}
								$('.all').dequeue();
								});	
								
						} else {
		
							$('.thumbs').show();
							$('.img_box ').css('visibility','hidden');
							$((opt.next_class)).css('visibility','hidden');
							$('.img_box img').css('visibility','hidden').hide();
								$('.all').css({'visibility':'visible'}).animate({
									height : (imgHS) + 'px' ,
									width : (imgWS) + 'px' , 
									marginLeft : '-' +((imgWS)/2) +'px',
									marginTop : '-' +((imgHS)/2+10) +'px'
								},(opt.mySpeed));
								$('.all').queue(function(){
								$('.img_box').css({
									visibility :'visible',
									height : (imgHS) + 'px' ,
									width : (imgWS) + 'px'
								});
							$('.img_box').queue(function(){
								$(myImg).height(imgH).width(imgW).css('opacity',0);
								if (imgHS > imgH)
                  mTop = imgHS / 2 - imgH / 2;
                else
                  mTop = 0;
									if (imgWS > imgW)
                    mLeft = imgWS / 2 - imgW / 2;
                  else
                    mLeft = 0;
									$(myImg).css({'margin-top':mTop,'margin-left':mLeft});	
								$('.img_box img').css('visibility','visible').show().fadeTo(200,1);
								$('div.box_next_in,div.box_next').css({'display':'block'});
								$('.img_box ').addClass('unloader');														 
								$('.loader').remove('<div class="loader"><span style=" background:' + opt.pathLoader + ' "></span></div>');
							$('.img_box').dequeue()
		
									if(titleImg == ""){							
										$('.caption').css('visibility','hidden');
										$('.thumbs_close,.thumbs_info').show().css({'opacity':'0','visibility':'visible'}).fadeTo(300,1);
										$('.unloader, .thumbs_close, .box_cont, .box_info, .thumbs_info').unbind('click');
										$('.unloader, .thumbs_close, .box_cont, .box_info').bind('click',function(){closeIt();});
										$('.thumbs_info').bind('click',function(){getForm();});
									}else{
										$('.caption p').html(titleImg);
										$('.box_cont').html(textImg);
										var caption_w = imgW;
										//$('.caption').css({'width':+ imgW+'px'});
										var caption_h = $('.caption').height();
										$('.all').animate({
											height :imgHS+ (caption_h+10) + 'px'
										},300);
										$('.all').queue(function(){
										$('.caption').css({'visibility':'visible'}).fadeTo(600,1);
										$('.thumbs_close,.thumbs_info').show().css({'opacity':'0','visibility':'visible'}).fadeTo(300,1);
										$('.unloader, .thumbs_close, .box_cont, .box_info, .thumbs_info').unbind('click');
										$('.unloader, .thumbs_close, .box_cont, .box_info').bind('click',function(){closeIt();});	
										$('.thumbs_info').bind('click',function(){getForm();});
										$('.all').dequeue()
										});
									}
								
							});
									if($(opt.next_class).is('.next_in')){
										$('.box_next_in ,.box_previous_in ').css('display','block');
										$('.box_next,.box_previous ').css('display','none');
										$(opt.next_class + ',' + opt.previous_class).css({'visibility':'hidden'});
										}else {
										$('.box_next_in, .box_previous_in ').css('display','none');
										$('.box_next,.box_previous ').css('display','block');
										$(opt.next_class + ',' + opt.previous_class).css({'visibility':'hidden'});
									}	
									if($('.back').is('li.begin')){
											$((opt.previous_class)).css('visibility','hidden');
											$((opt.next_class)).css('visibility','visible');
											$('div.box_previous_in,div.box_previous').css({'display':'none'});
											$('.begin').removeClass('back');
											$((opt.gallery_li)).removeClass('start');
											$((opt.gallery_li)).queue(function(){						  
												$('.begin').next('li').next('li').addClass('start');
											$((opt.gallery_li)).dequeue()
											});
										} else{	
										$(opt.next_class + ',' + opt.previous_class).css('visibility','visible');
										}
								$('.all').dequeue();
								});								
						}
				});
				$(myImg).attr('src', pathImg);
				return false;
			});			
		});
	}   
})(jQuery);

