/*
 * @name:     Gallery
 * @version:  0.1 
 * @release:  2008-10-15
 * @type:     jQuery plugin
 * @author:   David Sklar
--------------------------------------- */
(function($){var Gallery=function(box,opts){var $this=box;var frame;var slider;var slide;var btnPrev;var btnNext;var fWidth=0;var sWidth=0;var count=0;var page=1;var pages=0;var status=true;var options=opts;var length=opts.length-1;var msie7=($.browser.msie&&parseInt(navigator.userAgent.toLowerCase().match(/msie (\d\.0)/)[1])==7)?true:false;$this.find('a').wrapAll('<div class="g-frame"><div class="g-slider"></div></div>');$this.append('<a class="prev"></a>').append('<a class="next"></a>');slide=$this.find('img');slide.each(function(j){sWidth+=$(this).width()+parseInt($(this).css('margin-right'))+parseInt($(this).css('margin-left'));if(j<length){fWidth+=$(this).width()+parseInt($(this).css('margin-right'))+parseInt($(this).css('margin-left'));}else if(j==length){fWidth+=$(this).width();}
count++;if(!msie7){$(this).css({'opacity':options.opacity}).hover(function(){$(this).fadeTo(100,1.0);},function(){$(this).fadeTo(300,options.opacity);});}});pages=Math.ceil(count/(length+1));slider=$this.find('div.g-slider');slider.width(sWidth).css({'padding':0,'margin':0,'position':'relative'});frame=$this.find('div.g-frame');frame.width(fWidth).css({'padding':0,'margin':0,'position':'relative','overflow':'hidden'});btnPrev=$this.find('a.prev');btnPrev.addClass(options.css).bind('click',function(e){if(status&&page>1){rewind();status=false;}
e.preventDefault();});btnNext=$this.find('a.next');btnNext.bind('click',function(e){if(status&&page<pages){forward();status=false;}
e.preventDefault();});var forward=function(){var x=slider.position().left-(fWidth+parseInt(slide.css('margin-right'))+parseInt(slide.css('margin-left')));run(x);page++;};var rewind=function(){var x=slider.position().left+(fWidth+parseInt(slide.css('margin-right'))+parseInt(slide.css('margin-left')));run(x);page--;};var run=function(x){btnPrev.addClass(options.css);btnNext.addClass(options.css);slider.animate({'left':x+'px'},{queue:false,easing:options.easing,duration:options.duration,complete:function(){if(page>1){btnPrev.removeClass(options.css);}
if(page<pages){btnNext.removeClass(options.css);}
status=true;}});};};$.fn.gallery=function(options){var opts=$.extend({},{length:5,easing:'easeOutQuint',duration:500,opacity:0.5,css:'disabled'},options);return this.each(function(){return new Gallery($(this),opts);});};})(jQuery);
