/*
 * jQuery myGallery
 *
 * Copyright (c) 2009 Domenico M. Maresca - domenico.maresca@gmail.com
 *
 * $Date: 2009-12-01 $
 * $Rev: 0.3.8511 $
 */
;(function($){var ver='myGallery 0.3';var defaults={perPage:5,thumbWidth:80,thumbHeight:60,thumbScroll:1000,thumbMargin:0,bigFade:800,oneByOne:false};var gallery;var images;var currentIndex;var currentPage;var totalPages;$.fn.myGallery=function(customSetting){var settings;$.extend(this,{ver:function(){return ver;},init:function(el){var data=[];gallery=el;var wrapper=gallery.find('div.wrapper');gallery.prepend('<div class="image"></div>');gallery.append('<a class="prevThumbPage">Prev</a>');gallery.append('<a class="nextThumbPage">Next</a>');$(gallery).find('a.nextThumbPage').click(nextPage);$(gallery).find('a.prevThumbPage').click(prevPage);$(gallery).find('a.prevThumbPage').animate({'opacity':0.5},400);if(defaults.oneByOne==true){gallery.append('<a class="prevPhoto">Prev</a>');gallery.append('<a class="nextPhoto">Next</a>');$(gallery).find('a.nextPhoto').click(nextPhoto);$(gallery).find('a.prevPhoto').click(prevPhoto);}
wrapper.find('a').each(function(i){data.push({element:$(this),big:$(this).attr('href'),thumb:$(this).find('img:first').attr('src')});$(this).find('img:first').css({margin:defaults.thumbMargin+'px'});$(this).click(function(){showImage(i);return false;});});images=data;currentPage=0;defaults.thumbMargin=defaults.thumbMargin*2;totalPage=Math.ceil(images.length/defaults.perPage);gallery.find('div.container').css({width:((defaults.thumbWidth+defaults.thumbMargin)*defaults.perPage)+'px'});wrapper.css({width:((defaults.thumbWidth+defaults.thumbMargin)*images.length)+'px',height:defaults.thumbHeight});showImage(0);}});if($(this).length>0){defaults=$.extend({},defaults,customSetting);this.init($(this));}else return false;};showImage=function(index){if(index==currentIndex&&currentIndex>=0)return;gallery.find('div.image img').remove();var imageObj=new Image();imageObj.onload=function(){var image=gallery.find('div.image').append(imageObj);var newHeight=$(imageObj).height()+15;image.animate({height:newHeight});$(imageObj).css({display:"none"}).fadeIn(defaults.bigFade);}
imageObj.src=images[index].big;currentIndex=index;};nextPage=function(){if(currentPage+1>=totalPage)return;if(currentPage+1==totalPage-1)$(gallery).find('a.next').animate({'opacity':0.4},400);if(currentPage+1==1)$(gallery).find('a.prev').animate({'opacity':1.0},400);currentPage++;var wrapper=gallery.find('div.wrapper');var newMargin=-(currentPage*((defaults.thumbWidth+defaults.thumbMargin)*defaults.perPage));wrapper.animate({marginLeft:newMargin},defaults.thumbScroll);};prevPage=function(){if(currentPage-1<0)return;if(currentPage-1==0)$(gallery).find('a.prev').animate({'opacity':0.4},400);if(currentPage==totalPage-1)$(gallery).find('a.next').animate({'opacity':1.0},400);currentPage--;var wrapper=gallery.find('div.wrapper');var newMargin=-(currentPage*((defaults.thumbWidth+defaults.thumbMargin)*defaults.perPage));wrapper.animate({marginLeft:newMargin},defaults.thumbScroll);};nextPhoto=function(){var newIndex=currentIndex+1;if(newIndex>images.length-1)return;showImage(newIndex);if(newIndex%defaults.perPage==0)nextPage();};prevPhoto=function(){var newIndex=currentIndex-1;if(newIndex<0)return;showImage(newIndex);if((Math.ceil(newIndex+1/defaults.perPage)/currentPage+1)%defaults.perPage==1)prevPage();};})(jQuery);
