/*	
	CP Slider
	By: Tim Gieseking 

	Featured Posts Slider for the Complete Package template
	http://cpackage.timgweb.com
	
	Version 0.9 
*/
;(function($){$.fn.cpfeatured=function(options){var opts=$.extend({},$.fn.cpfeatured.defaults,options),$featured=this,$featuredparent=$featured.parent(),$featureditem=$featured.children('.featured-item'),$featureditemeq0=$featureditem.eq(0),h=$featuredparent.outerHeight(),w=$featuredparent.outerWidth(),originallength=$featureditem.length,clickable=true,paused=false,fnavhtml='';if(opts.method==="scroll")
{$featured.append($featureditemeq0.clone());$featureditemeq0.addClass('active');$featureditem=$featured.children('.featured-item');}
else if(opts.method==="fade"||opts.method==="seamless fade")
{$featureditem.not(':first').fadeTo(0,0).children('.featured-text').fadeTo(0,0);$featureditem.css({position:"absolute",top:"0px",left:"0px"});$featureditemeq0.addClass('active');}
else if(opts.method==="advanced scroll")
{$featured.width('99999em');var ftexthtml='<div id="featuredtexts">',i=1,$ftext=null,fh2text=null,$this=null;$featureditem.each(function(){$this=$(this);$ftext=$this.children('.featured-text');if($ftext.length>0)
{fh2text=$ftext.children('h2').text();ftexthtml+='<div class="featuredtexts-item"><div class="featured-text">'+$ftext.html()+'</div></div>';$ftext.remove();}
else
{ftexthtml+='<div class="featuredtexts-item"><!--no featured text--></div>';fh2text=$this.find('img').attr('alt');}
if(opts.generateNav===true){fnavhtml+='<li><a href="#slide'+i+'" title="'+fh2text+'">'+fh2text+'</a></li>';}
i++;});$featureditem.css('float','left');var $featuredtexts=$(ftexthtml).insertAfter($featured),$featuredtextsitem=$featuredtexts.children('.featuredtexts-item'),$featuredtextsitemeq0=$featuredtextsitem.eq(0);$featuredtextsitem.height(h);$featuredtexts.append($featuredtextsitemeq0.clone());$featured.append($featureditemeq0.clone());$featureditemeq0.addClass('active');$featuredtextsitemeq0.addClass('active');$featureditem=$featured.children('.featured-item');$featuredtextsitem=$featuredtexts.children('.featuredtexts-item');}
else
{return false;}
if(opts.method!=="advanced scroll"&&opts.generateNav===true)
{var $this=null,$ftext=null,fh2text=null,i=1;$featureditem.each(function(){if(((opts.method!=="fade"&&opts.method!=="seamless fade")&&i<$featureditem.length)||(opts.method==="fade"||opts.method==="seamless fade"))
{$this=$(this);$ftext=$this.children('.featured-text');if($ftext.length>0)
{fh2text=$ftext.children('h2').text();}
else
{fh2text=$this.find('img').attr('alt');}
fnavhtml+='<li><a href="#slide'+i+'" title="'+fh2text+'">'+fh2text+'</a></li>';}
i++;});}
if(opts.generateNav===true&&originallength>1)
{$('<div id="featurednav-container"><ul id="featurednav">'+fnavhtml+'</ul><a href="#pause" title="Pause" id="featuredpause">Pause</a></div>').insertAfter($featuredparent);}
var $featurednav=$('#featurednav-container > #featurednav'),$featurednavli=$featurednav.children('li'),$featurednavlia=$featurednavli.children('a'),$featuredpause=$('#featurednav-container a#featuredpause');$featurednavli.eq(0).addClass('active');if(originallength>1){var to=setTimeout(animate,opts.pause);}
function animate()
{clearTimeout(to);$featured.stop();$featureditem.stop();var newidx=$featurednavlia.index($('.clicked'));if(newidx<0)
{var idx=$featureditem.index($('.active'))+1,navdriven=false;if(opts.method==="fade"||opts.method==="seamless fade")
{if(idx===($featureditem.length)){idx=0;}}
else
{if(idx===($featureditem.length-1)){idx=0;}}}
else
{var idx=newidx,navdriven=true;$featurednavlia.removeClass('clicked');}
clickable=false;$featurednavli.removeClass('active');$featurednavli.eq(idx).addClass('active');if(opts.method==="scroll")
{if(navdriven===false)
{var newtop=(h*-1)+parseInt($featured.css('margin-top'));}
else
{var newtop=(h*idx)*-1;}
$featured.animate({marginTop:newtop+'px'},opts.speed,opts.easing,function(){$featureditem.removeClass('active');if(idx===0){$featured.css('margin-top',0);}
$featureditem.eq(idx).addClass('active');animateFinished();});}
else if(opts.method==="fade")
{$featureditem.filter('.active').fadeTo(opts.speed,0,function(){$(this).removeClass('active');$featureditem.eq(idx).children('.featured-text').fadeTo(opts.speed,1);$featureditem.eq(idx).addClass('active').fadeTo(opts.speed,1,function(){animateFinished();});});}
else if(opts.method==="seamless fade")
{$featureditem.filter('.active').children('.featured-text').fadeTo(opts.speed,0);$featureditem.filter('.active').fadeTo(opts.speed,0).removeClass('active');$featureditem.eq(idx).children('.featured-text').fadeTo(opts.speed,1);$featureditem.eq(idx).fadeTo(opts.speed,1,function(){$(this).addClass('active');animateFinished();});}
else if(opts.method==="advanced scroll")
{$featuredtexts.stop();if(navdriven===false)
{var newtop=(h*-1)+parseInt($featuredtexts.css('margin-top')),newleft=(w*-1)+parseInt($featured.css('margin-left'));}
else
{var newleft=(w*idx)*-1,newtop=(h*idx)*-1;}
$featuredtexts.animate({marginTop:newtop+'px'},opts.speed,opts.easing,function(){$featuredtextsitem.removeClass('active');if(idx===0){$featuredtexts.css('margin-top',0);}
$featuredtextsitem.eq(idx).addClass('active');});$featured.animate({marginLeft:newleft+'px'},opts.speed,opts.easing,function(){$featureditem.removeClass('active');if(idx===0){$featured.css('margin-left',0);}
$featureditem.eq(idx).addClass('active');animateFinished();});}
else
{return false;}}
function animateFinished()
{clickable=true;if(paused===false){to=setTimeout(animate,opts.pause);}}
$featuredpause.click(function()
{var $this=$(this);if(paused===true)
{paused=false;$this.removeClass('paused');animate();}
else
{paused=true;clearTimeout(to);$this.addClass('paused');}
return false;});$featurednav.click(function(e)
{var clicked=$(e.target);if(clicked.attr('tagName')=='A')
{clearTimeout(to);clicked.addClass('clicked');if(opts.pauseOnNav===true)
{paused=false;$featuredpause.trigger('click');}
animate();}
return false;});if(opts.pauseOnRollover===true)
{$featuredparent.hover(function(){paused=true;clearTimeout(to);$featuredpause.addClass('paused');},function(){paused=false;$featuredpause.removeClass('paused');to=setTimeout(animate,opts.pause);});}};$.fn.cpfeatured.defaults={method:"advanced scroll",pause:15000,speed:500,easing:"swing",generateNav:true,pauseOnRollover:false,pauseOnNav:false};})(jQuery);
