jQuery(function(){
   jQuery("div.svw").prepend("<p class='ldrgif'></p>"); 
});
var j = 0;
var quantofamo = 0;
var curr = 0;
var count = 0;
var play = false;
var slidedelay = 3000;
var timer;
function advance() {
	if (curr<count-1) curr++; else curr = 0;
	jQuery("#slide"+curr).trigger("show");
	
}

jQuery.fn.slideView = function(settings) {
	  settings = jQuery.extend({
     easeFunc: "easeInOutCubic",
     easeTime: 400,
	 autoplay: false,
	backify:false,
     toolTip: false
  }, settings);
	return this.each(function(){
		var bi = "<strong>";
		var bo = "</strong>";
		if (!settings.backify) {
			bi = ""; bo = "";
		}
		var container = jQuery(this);
		container.find("p.ldrgif").remove(); // removes the preloader gif
		container.removeClass("svw").addClass("stripViewer");		
		var pictWidth = container.find("img").width();
		var pictHeight = container.find("img").height();
		var pictEls = container.find("li").size();
		count = pictEls;
		var stripViewerWidth = pictWidth*pictEls;
		container.find("ul").css("width" , stripViewerWidth); //assegnamo la larghezza alla lista UL	
		container.css("width" , pictWidth);
		container.css("height" , pictHeight);
		container.each(function(i) {
			
			transmit = jQuery(this).after("<div class='stripTransmitter' id='stripTransmitter" + (j) + "'><ul><\/ul><div class='stripCaption' id='stripCaption'><\/div><\/div>");
//			jQuery('#stripTransmitter').append("<div class='stripCaption' id='stripCaption'><\/div>");

			jQuery(this).find("li").each(function(n) {
						jQuery(this).find("img").attr("id","slide"+n);
						i++;
						jQuery("div#stripTransmitter" + j + " ul").append("<li><a title='" + jQuery(this).find("img").attr("alt") + "' href='#'>"+(n+1)+"<\/a><\/li>");												
				});
			jQuery("div#stripTransmitter" + j + " a").each(function(z) {
				jQuery(this).bind("click", function(){
					clearTimeout(timer);
					var title = "";
					var alt = "";
					if (jQuery("#slide"+z).attr("title")) title = jQuery("#slide"+z).attr("title");
					if (jQuery("#slide"+z).attr("alt")) alt = jQuery("#slide"+z).attr("alt");
					
					if (title.length >1) title = bi+title+bo; else title = "";
					if (alt.length >1) alt = bi+alt+bo; else title = "";
					jQuery('#stripCaption').html("<p class='title'>"+title+"<\/p>"+"<p class='desc'>"+alt+"<\/p>");
					jQuery(this).addClass("current").parent().parent().find("a").not(jQuery(this)).removeClass("current"); // wow!
					
					var cnt = -(pictWidth*z);
					curr = z;
					container.find("ul").animate({ left: cnt}, settings.easeTime, settings.easeFunc);


					if (play) {
						timer = window.setTimeout(function() {
					 advance();
					}, slidedelay);
					}
					return false;
					});
				});
			
			
				// next image via image click	14/01/2009
				jQuery("div#stripTransmitter" + j + " a").parent().parent().parent().prev().find("img").each(function(z) {
				jQuery(this).bind("click", function(){
					var ui 	= 	jQuery(this).parent().parent().parent().next().find("a");
					if(z+1 < pictEls){
						ui.eq(z+1).trigger("click");
					}
					else ui.eq(0).trigger("click");
				   });
				jQuery(this).bind("show", function(){
					var ui 	= 	jQuery(this).parent().parent().parent().next().find("a");
					ui.eq(z).trigger("click");
				   });

				});
				
				
			jQuery("div#stripTransmitter" + j).css("width" , pictWidth);
			jQuery("div#stripTransmitter" + j + " a:first").addClass("current");
			//jQuery('#stripCaption').html("<p class='title'>"+jQuery("div#stripTransmitter" + j + " a:first").attr('title')+"<\/p>"+"<p class='desc'>"+jQuery("div#stripTransmitter" + j + " a:first").attr('alt')+"<\/p>");
			jQuery("div#stripTransmitter" + j + " a:first").trigger("click");

			if (settings.autoplay) {
				play = true;
				timer = window.setTimeout(function() {
			 advance();
			}, slidedelay);
			}
			
			
			if(settings.toolTip){
			container.next(".stripTransmitter ul").find("a").Tooltip({
				track: true,
				delay: 0,
				showURL: false,
				showBody: false
				});
			}
			});
		j++;
  });	
};