
document.observe('dom:loaded',fadeinInit);function fadeinInit(){switch(FadeIn.TYPE()){case"ARTICLE":FadeIn.ARTICLE();break;default:FadeIn.BASIC();break;};}
var FadeIn={TYPE:function(pt){function returnTYPE(){if(!this.pageType){this.pageType="BASIC";}
if(pt){this.pageType=pt;}
return this.pageType;}
return returnTYPE();},BASIC:function(){},ARTICLE:function(){new PageNavigation();}}
PageNavigation=Class.create({initialize:function(){this.animate=true;this.viewport=$("viewablePage");this.pages=$$("#pages .page").collect(function(pg){return pg.id;});this.initializeEventObservers();if(document.location.hash&&this.pages.indexOf(document.location.hash.substring(1))>=0){this.gotoPage(document.location.hash.substring(1));$("pageNo").innerHTML=document.location.hash.substring(5);}else{this.gotoPage(this.pages.first());}},initializeEventObservers:function(){Event.observe(window,"keypress",function(e){e.stop();})
Event.observe("nextButton","click",this.gotoNextPage.bindAsEventListener(this));Event.observe("prevButton","click",this.gotoPrevPage.bindAsEventListener(this));},nextPage:function(){return this.pages[this.pages.indexOf(this.currentPage)+1];},prevPage:function(){return this.pages[this.pages.indexOf(this.currentPage)-1];},gotoPage:function(){var page_id=(arguments[1])?arguments[1]:arguments[0];this.currentPage=page_id;var queue=Effect.Queues.get("page_navigation");queue.each(function(effect){effect.cancel();});if(this.animate){new Effect.Move("pages",{x:-($(page_id).offsetLeft),mode:"absolute",scope:"page_navigation"});}else{$("pages").makePositioned()
$("pages").setStyle({left:-($(page_id).offsetLeft)+'px'});}},pagination:function(pageNo){if(pageNo==1){$("prevButton").hide();}else{$("prevButton").show();}
if(pageNo==this.pages.length){$("nextButton").hide();}else{$("nextButton").show();}
$("pageNo").innerHTML=pageNo;},gotoNextPage:function(){this.gotoPage(this.nextPage());this.pagination(this.currentPage.substring(4));},gotoPrevPage:function(){this.gotoPage(this.prevPage());this.pagination(this.currentPage.substring(4));}});
