
(function(jQuery){jQuery.fn.cjFlashySlideShow=function(options){var settings={xBlocks:12,yBlocks:3,minBlockSize:3,delay:3000,direction:'left',style:'normal',translucent:false,sloppy:false};var sys={version:'1.0',elem:null,imgs:[],block_dim_x:0,block_dim_y:0,sec_y:0,sec_x:0,current_img:0,current_blocks:0,current_direction:'left',total_blocks:0};function RandRange(a,b,f){var v=a+(Math.random()*(b-a));return typeof f=='undefined'?Math.round(v):v.toFixed(f);}function getNextImage(n){if(parseInt(n,10)+1<sys.imgs.length){return sys.imgs[n+1].src;}else{return sys.imgs[0].src;}}function resetBlocks(){var next_img=getNextImage(sys.current_img);jQuery(sys.elem).find('div#cjFlashyTransitionTop div.cjFlashyTransitionBlock').each(function(){if(settings.direction==='random'){var d=['top','left','bottom','right'];settings.current_direction=d[RandRange(0,d.length-1)];if(settings.current_direction==='top'){jQuery(this)[0]._start_top=settings.minBlockSize*-1;jQuery(this)[0]._start_left=parseInt((sys.block_dim_x*jQuery(this)[0]._x)+(sys.block_dim_x/2)-(settings.minBlockSize/2),10);}else if(settings.current_direction==='left'){jQuery(this)[0]._start_top=parseInt((sys.block_dim_y*jQuery(this)[0]._y)+(sys.block_dim_y/2)-(settings.minBlockSize/2),10);jQuery(this)[0]._start_left=settings.minBlockSize*-1;}else if(settings.current_direction==='bottom'){jQuery(this)[0]._start_top=jQuery(sys.elem).height()+settings.minBlockSize;jQuery(this)[0]._start_left=parseInt((sys.block_dim_x*jQuery(this)[0]._x)+(sys.block_dim_x/2)-(settings.minBlockSize/2),10);}else if(settings.current_direction==='right'){jQuery(this)[0]._start_top=parseInt((sys.block_dim_y*jQuery(this)[0]._y)+(sys.block_dim_y/2)-(settings.minBlockSize/2),10);jQuery(this)[0]._start_left=jQuery(sys.elem).width()+settings.minBlockSize;}else{jQuery(this)[0]._start_top=parseInt((sys.block_dim_y*jQuery(this)[0]._y)+(sys.block_dim_y/2)-(settings.minBlockSize/2),10);jQuery(this)[0]._start_left=parseInt((sys.block_dim_x*jQuery(this)[0]._x)+(sys.block_dim_x/2)-(settings.minBlockSize/2),10);}}jQuery(this).css({'top':jQuery(this)[0]._start_top+'px','left':jQuery(this)[0]._start_left+'px','width':settings.minBlockSize+'px','height':settings.minBlockSize+'px','background-image':'url('+next_img+')','opacity':jQuery(this)[0]._opacity});});}function handleBlocksDone(){sys.current_blocks++;if(sys.current_blocks===sys.total_blocks){var next_img=getNextImage(sys.current_img);jQuery(sys.elem).find('div#cjFlashyTransitionBottom').css({'background-image':'url('+next_img+')','background-attachment':'scroll'});sys.current_blocks=0;sys.current_img++;if(sys.current_img>sys.imgs.length-1){sys.current_img=0;}resetBlocks();if(jQuery(sys.elem)[0]._timer!==null){clearTimeout(jQuery(sys.elem)[0]._timer);}jQuery(sys.elem)[0]._timer=setTimeout(animateBlocks,settings.delay);}}function animateBlocks(){jQuery(sys.elem).find('div#cjFlashyTransitionTop div.cjFlashyTransitionBlock').each(function(){var self=jQuery(this)[0];jQuery(self).animate({"top":parseInt(((sys.block_dim_y*self._y)+(sys.block_dim_y/2)-(settings.minBlockSize/2))+(settings.sloppy?RandRange(0,settings.minBlockSize)-(settings.minBlockSize/2):0),10)+"px","left":parseInt(((sys.block_dim_x*self._x)+(sys.block_dim_x/2)-(settings.minBlockSize/2))+(settings.sloppy?RandRange(0,settings.minBlockSize)-(settings.minBlockSize/2):0),10)+"px"},settings.sloppy?RandRange(350,1250):650,'linear',function(){jQuery(self).animate({'top':self._end_top+'px','left':self._end_left+'px','width':(sys.block_dim_x*2)+'px','height':(sys.block_dim_y*2)+'px','opacity':1},settings.sloppy?RandRange(250,850):650,function(){handleBlocksDone();});});});}function correctOffset(){jQuery(sys.elem).find('div#cjFlashyTransitionTop div.cjFlashyTransitionBlock').each(function(){jQuery(this).css({'background-position':(jQuery(sys.elem).offset().left-jQuery(window).scrollLeft())+'px '+(jQuery(sys.elem).offset().top-jQuery(window).scrollTop())+'px'});});}function createBlocks(){var x,y,next_img=getNextImage(sys.current_img);for(y=0;y<settings.yBlocks;y++){for(x=0;x<settings.xBlocks;x++){var elem=jQuery(sys.elem).find('div#cjFlashyTransitionTop');jQuery(elem).append('<div id="cjFlashyTransitionBlock_'+y+'_'+x+'" class="cjFlashyTransitionBlock">');elem=jQuery(sys.elem).find('div#cjFlashyTransitionTop div#cjFlashyTransitionBlock_'+y+'_'+x);jQuery(elem)[0]._x=x;jQuery(elem)[0]._y=y;jQuery(elem)[0]._end_top=parseInt(((sys.block_dim_y*y)-(sys.block_dim_y/2)),10);jQuery(elem)[0]._end_left=parseInt(((sys.block_dim_x*x)-(sys.block_dim_x/2)),10);if(settings.direction==='random'){var d=['top','left','bottom','right'];settings.current_direction=d[RandRange(0,d.length-1)];}if(settings.current_direction==='top'){jQuery(elem)[0]._start_top=settings.minBlockSize*-1;jQuery(elem)[0]._start_left=parseInt((sys.block_dim_x*x)+(sys.block_dim_x/2)-(settings.minBlockSize/2),10);}else if(settings.current_direction==='left'){jQuery(elem)[0]._start_top=parseInt((sys.block_dim_y*y)+(sys.block_dim_y/2)-(settings.minBlockSize/2),10);jQuery(elem)[0]._start_left=settings.minBlockSize*-1;}else if(settings.current_direction==='bottom'){jQuery(elem)[0]._start_top=jQuery(sys.elem).height()+settings.minBlockSize;jQuery(elem)[0]._start_left=parseInt((sys.block_dim_x*x)+(sys.block_dim_x/2)-(settings.minBlockSize/2),10);}else if(settings.current_direction==='right'){jQuery(elem)[0]._start_top=parseInt((sys.block_dim_y*y)+(sys.block_dim_y/2)-(settings.minBlockSize/2),10);jQuery(elem)[0]._start_left=jQuery(sys.elem).width()+settings.minBlockSize;}else{jQuery(elem)[0]._start_top=parseInt((sys.block_dim_y*y)+(sys.block_dim_y/2)-(settings.minBlockSize/2),10);jQuery(elem)[0]._start_left=parseInt((sys.block_dim_x*x)+(sys.block_dim_x/2)-(settings.minBlockSize/2),10);}jQuery(elem)[0]._opacity=settings.translucent?RandRange(0.1,0.5,2):1;jQuery(elem).css({'position':'absolute','top':jQuery(elem)[0]._start_top+'px','left':jQuery(elem)[0]._start_left+'px','display':'block','width':settings.minBlockSize+'px','height':settings.minBlockSize+'px','margin':'0px','padding':'0px','background-image':'url('+next_img+')','background-repeat':'no-repeat','background-position':jQuery(sys.elem).offset().left+'px '+jQuery(sys.elem).offset().top+'px','background-attachment':'fixed','opacity':jQuery(elem)[0]._opacity});if(settings.style==='rounded'){jQuery(elem).css({'-moz-border-radius':jQuery(sys.elem).height()+'px','-webkit-border-radius':jQuery(sys.elem).height()+'px'});}}}jQuery(window).scroll(function(){correctOffset();});jQuery(window).resize(function(){correctOffset();});}function init(){settings.yBlocks=typeof settings.yBlocks!=="number"?3:settings.yBlocks<0?1:settings.yBlocks;settings.xBlocks=typeof settings.xBlocks!=="number"?3:settings.xBlocks<0?1:settings.xBlocks;settings.minBlockSize=typeof settings.minBlockSize!=="number"?5:settings.minBlockSize<0?0:settings.minBlockSize;if(jQuery(sys.elem).width()>jQuery(sys.elem).height()&&settings.minBlockSize>jQuery(sys.elem).width()){settings.minBlockSize=jQuery(sys.elem).width();}else if(settings.minBlockSize>jQuery(sys.elem).height()){settings.minBlockSize=jQuery(sys.elem).height();}settings.delay=typeof settings.delay!=="number"?3000:settings.delay<0?0:settings.delay;if(settings.style!=='rounded'){settings.style='normal';}settings.translucent=typeof settings.translucent!=="boolean"?false:settings.translucent;settings.sloppy=typeof settings.sloppy!=="boolean"?false:settings.sloppy;if(settings.direction!=='top'&&settings.direction!=='left'&&settings.direction!=='bottom'&&settings.direction!=='right'&&settings.direction!=='random'&&settings.direction!=='none'){settings.direction='left';}else if(settings.direction==='random'){var d=['top','left','bottom','right'];settings.current_direction=d[RandRange(0,d.length-1)];}else{settings.current_direction=settings.direction;}sys.imgs=jQuery(sys.elem).find('img');sys.block_dim_x=Math.ceil(jQuery(sys.elem).width()/settings.xBlocks);sys.block_dim_y=Math.ceil(jQuery(sys.elem).height()/settings.yBlocks);sys.offset_x=parseInt((parseInt(jQuery(sys.elem).css("width"),10)-(sys.block_dim_x*settings.xBlocks))/2,10);sys.offset_y=parseInt((parseInt(jQuery(sys.elem).css("height"),10)-(sys.block_dim_y*settings.yBlocks))/2,10);sys.total_blocks=settings.xBlocks*settings.yBlocks;sys.current_img=0;sys.current_blocks=0;jQuery(sys.elem).append('<div id="cjFlashyTransitionBottom">');jQuery(sys.elem).find('div#cjFlashyTransitionBottom').css({'position':'absolute','top':'0px','left':'0px','display':'block','width':jQuery(sys.elem).css("width"),'height':jQuery(sys.elem).css("height"),'margin':'0px','padding':'0px','background-image':'url("'+sys.imgs[sys.current_img].src+'")','background-repeat':'no-repeat','background-attachment':'scroll','z-index':1,'overflow':'hidden'});jQuery(sys.elem).append('<div id="cjFlashyTransitionTop">');jQuery(sys.elem).find('div#cjFlashyTransitionTop').css({'position':'absolute','top':sys.offset_y+'px','left':sys.offset_x+'px','display':'block','width':sys.block_dim_x*settings.xBlocks+'px','height':sys.block_dim_y*settings.yBlocks+'px','margin':'0px','padding':'0px','z-index':2,'overflow':'hidden'});createBlocks();jQuery(sys.elem)[0]._timer=setTimeout(animateBlocks,settings.delay);}if(options){jQuery.extend(settings,options);}return this.each(function(){sys.elem=this;if(sys.elem){init();}});};})(jQuery);
