(function($){$.slideFader=function(appHolder,itemsQuery,options){var defaults={zLevel:100,prev:null,next:null,hideIdleNavButtons:true,timerEnabled:true,timerInterval:3000,onComplete:function(){slideTimer.stop()
}};
var options=$.extend(defaults,options);
var buttons={prev:options.prev,next:options.next};
var init=function(items){currIndex=0;
$(items).css("z-index",options.zLevel);
var firstItem=$($(items).get(0));
firstItem.css("z-index",options.zLevel+2)
};
var setupButtons=function(){if(!options.prev){buttons.prev=$('<div id="slide-prev" class="slide-button" onselectstart="return false"><span></span></div>');
buttons.prev.appendTo(appHolder)
}if(!options.next){buttons.next=$('<div id="slide-next" class="slide-button" onselectstart="return false"><span>'+$.nowness.translations.nextimage+" 2/"+items.length+"</span></div>");
buttons.next.appendTo(appHolder)
}buttons.prev.click(function(){if(!$(this).hasClass("disabled")){movePrev()
}});
buttons.next.click(function(){if(!$(this).hasClass("disabled")){moveNext()
}});
return buttons
};
var moveNext=function(){if(currIndex>=items.length){return
}else{if((currIndex+1)<items.length){currState=states.middle;
switchImg(currIndex+1)
}}};
var movePrev=function(){if(currIndex<1){return
}else{if((currIndex-1)<items.length){currState=states.middle;
switchImg(currIndex-1)
}}};
var moveStart=function(){currState=states.start;
switchImg(0)
};
var switchImg=function(index){if(index===currIndex){return
}var newImg=$(items.get(index));
var currImg=$(items.get(currIndex));
newImg.css("z-index",options.zLevel+1);
$(items[currIndex]).fadeTo(800,0,function(){newImg.css("z-index",options.zLevel+2);
currImg.css("z-index",options.zLevel);
currImg.fadeTo(0,1)
});
currIndex=index;
updateStates();
refreshButtons();
appHolder.trigger("changed",newImg)
};
var updateStates=function(){if(items.length===1){currState=states.single
}else{if(currIndex<1){currState=states.start
}else{if(currIndex>=items.length-1){currState=states.end
}else{currState=states.middle
}}}};
var refreshButtons=function(){buttons.next.find("span").text($.nowness.translations.nextimage+" "+parseInt(currIndex+2,10)+"/"+items.length,10);
buttons.prev.find("span").text($.nowness.translations.previmage+" "+parseInt(currIndex)+"/"+items.length,10);
switch(currState){case states.start:buttons.next.removeClass("disabled");
buttons.prev.addClass("disabled");
break;
case states.end:buttons.next.addClass("disabled");
buttons.prev.removeClass("disabled");
break;
case states.middle:buttons.next.removeClass("disabled");
buttons.prev.removeClass("disabled");
break;
case states.single:buttons.next.addClass("disabled");
buttons.prev.addClass("disabled");
break
}};
var runButtonTimer=function(){var timer;
var buttonsVisible=false;
var stopTimer=function(){clearTimeout(timer)
};
var restartTimer=function(){clearTimeout(timer);
timer=setTimeout(hideAll,1500)
};
var showAll=function(){if(!buttonsVisible){if(options.hideIdleNavButtons==true){buttons.next.stop();
buttons.next.fadeTo(300,1);
buttons.prev.stop();
buttons.prev.fadeTo(300,1);
buttonsVisible=true
}restartTimer()
}};
var hideAll=function(){stopTimer();
if(options.hideIdleNavButtons==true){buttons.next.stop();
buttons.next.fadeTo(1000,0.01);
buttons.prev.stop();
buttons.prev.fadeTo(1000,0.01);
buttonsVisible=false
}};
$(appHolder).mousemove(showAll);
$(appHolder).mouseenter(showAll);
$(appHolder).click(showAll);
$(appHolder).mouseout(hideAll);
return restartTimer()
};
var slideTimer=(function(){var slideshow=this;
var timer;
var timerInterval;
var enabled=true;
var lastTime=(new Date()).getTime();
var slideNext=function(){var newTime=(new Date()).getTime();
var timeSinceLastSlide=newTime-lastTime;
lastTime=newTime;
if(!enabled){return
}if(currState==states.end){options.onComplete.apply(timerControl)
}else{moveNext()
}};
var timerControl={init:function(interval){timerInterval=interval;
$(appHolder).mousemove(timerControl.stop);
$(appHolder).mouseenter(timerControl.stop);
$(appHolder).click(timerControl.stop);
$(appHolder).mouseout(timerControl.start);
return this
},start:function(){if(enabled){if(timer){clearInterval(timer)
}timer=setInterval(slideNext,timerInterval)
}return this
},stop:function(){if(timer){clearInterval(timer)
}return this
},disable:function(){enabled=false;
timerControl.stop();
return this
},enable:function(){enabled=true;
return this
}};
return timerControl
})();
var items=$(appHolder).find(itemsQuery);
var states={start:0,end:1,middle:2,single:3};
var currState=items.length>1?states.start:states.single;
var currIndex=0;
var buttons=setupButtons();
init(items);
refreshButtons();
runButtonTimer();
slideTimer.init(options.timerInterval);
if(options.timerEnabled&&currState!=states.single){slideTimer.start()
}else{slideTimer.disable()
}return{getCurrItem:function(){return items[currIndex]
},getCurrFullLink:function(){return $(items[currIndex]).find("a.fullImage").attr("href")
},buttons:buttons,timer:slideTimer,control:{restart:moveStart,next:moveNext,prev:movePrev}}
}
})(jQuery);
(function(){$.fn.slideshow=function(settings){settings=jQuery.extend({paging:true,name:"Images",callback:null},settings);
var imagelist=$(this).find("li");
var imagelength=imagelist.length;
var cur_img=0;
if(imagelength<=1){return
}var indexlist=((imagelength==1)||(settings.name==null))?$("<ul></ul>"):$("<ul><li>"+settings.name+"</li></ul>");
$(this).after(indexlist);
$(indexlist).addClass("indexList clear");
if(imagelength>1){for(var i=1;
i<=imagelength;
i++){$(imagelist[i-1]).attr("id","img_"+i);
$(indexlist).append("<li><a href='"+i+"' rel='"+i+"'>"+i+"</a></li>")
}if(settings.paging){$(indexlist).append("<li><a href='#' class='slideLeft'>&lt;</a></li>");
$(indexlist).append("<li><a href='#' class='slideRight'>&gt;</a></li>")
}}if($(this).find("a").hasClass("viewFilm")){var filmlink=$(this).find("a.viewFilm").clone(true);
$(this).find("a.viewFilm").remove();
$(indexlist).append(filmlink);
$(indexlist).find("a.viewFilm").wrap("<li class='viewFilm'></li>")
}$(indexlist).addClass("indexList");
$(this).find("ul").after(indexlist);
$(imagelist).hide();
$(indexlist).find("a").not(".viewFilm, .slideRight, .slideLeft").each(function(){$(this).click(function(e){e.preventDefault();
cur_img=$(indexlist).find("a").index(this);
var img_id="img_"+$(this).attr("rel");
$(this).parents("ul").find("a").removeClass("current");
$(this).addClass("current");
if(cur_img!=img_id){$(imagelist).fadeOut("1000").find("img").hide().animate({opacity:1},200).parents("ul").find("#"+img_id).fadeIn("1000").find("img").show()
}if(cur_img==0){$(indexlist).find("a.slideLeft").addClass("disabled")
}else{if(cur_img==imagelength-1){$(indexlist).find("a.slideRight").addClass("disabled")
}else{$(indexlist).find("a.slideLeft").removeClass("disabled");
$(indexlist).find("a.slideRight").removeClass("disabled")
}}if(settings.callback){settings.callback()
}})
});
$(indexlist).find("a.slideLeft").click(function(e){e.preventDefault();
if(cur_img>0){cur_img=cur_img-1;
$(indexlist).find("li").eq(cur_img+1).find("a").trigger("click")
}});
$(indexlist).find("a.slideRight").click(function(e){e.preventDefault();
if(cur_img<imagelength-1){cur_img=cur_img+1;
$(indexlist).find("li").eq(cur_img+1).find("a").trigger("click")
}});
if((imagelength==1)||(settings.name==null)){$(indexlist).find("li").eq(cur_img).find("a").trigger("click")
}else{$(indexlist).find("li").eq(cur_img+1).find("a").trigger("click")
}}
})(jQuery);
(function($){$.fn.fancyletter=function(options){return this.each(function(){var $this=$(this);
var opts=$.extend({},$.fn.fancyletter.defaults,options||{},$.metadata?$this.metadata():$.meta?$this.data():{});
var node=this;
while(node.childNodes.length){node=node.firstChild
}var text=node.nodeValue;
if(text==null||typeof text===undefined||text.length<1){return
}var firstLetter=text.slice(0,1);
var re=new RegExp(opts.characters);
if(re.test(firstLetter)){node.nodeValue=text.slice(1);
var $span=$(['<span class="',opts.commonClass," ",opts.ltrClassPrefix,firstLetter.toLowerCase(),'">',firstLetter,"</span>"].join("")).prependTo(this);
if(opts.bgImgPath!==null){$span.css("backgroundImage","url("+opts.bgImgPath+firstLetter.toLowerCase()+opts.bgImgExt+")")
}}})
};
$.fn.fancyletter.defaults={commonClass:"fancy-letter",ltrClassPrefix:"ltr-",characters:"[a-zA-Z]",bgImgPath:null,bgImgExt:null}
})(jQuery);
$(document).ready(function(){(function(){$.nowness.setupTodayStories();
$("#article-page .content-text").fancyletter({commonClass:"dropcap"});
$(".slideshow").slideshow({paging:false,name:null,callback:function(){}})
})()
});

