function RollingArchives(pagetext){this.pageText=pagetext;this.active=false;};RollingArchives.prototype.setState=function(pagenumber,pagecount,query,pagedates){var self=this;this.pageNumber=pagenumber;this.pageCount=pagecount;this.query=query;this.pageDates=pagedates;jQuery('body').addClass('showrollingarchives');if(this.validatePage(pagenumber)){jQuery('#rollingarchives').show();jQuery('#rollload').hide();jQuery('#rollhover').hide();this.pageSlider=new K2Slider('#pagehandle','#pagetrackwrap',{minimum:1,maximum:self.pageCount,value:self.pageCount-self.pageNumber+1,onSlide:function(value){jQuery('#rollhover').show();self.updatePageText(self.pageCount-value+1);},onChange:function(value){self.updatePageText(self.pageCount-value+1);self.gotoPage(self.pageCount-value+1);}});jQuery('#rollnext').click(function(){self.pageSlider.setValueBy(1);return false;});jQuery('#rollprevious').click(function(){self.pageSlider.setValueBy(-1);return false;});jQuery('#rollhome').click(function(){self.pageSlider.setValue(self.pageCount);self.validatePage(1);return false;});this.updatePageText(this.pageNumber);this.trimmer=new TextTrimmer(100);this.active=true;}else{jQuery('body').addClass('hiderollingarchives');}};RollingArchives.prototype.saveState=function(){this.prevQuery=this.query;};RollingArchives.prototype.restoreState=function(){if(this.prevQuery!=null){var query=jQuery.extend(this.prevQuery,{k2dynamic:'init'});K2.ajaxGet(query,function(data){jQuery('#dynamic-content').html(data);});}};RollingArchives.prototype.updatePageText=function(page){jQuery('#rollpages').html((this.pageText.replace('%1$d',page)).replace('%2$d',this.pageCount));jQuery('#rolldates').html(this.pageDates[page-1]);};RollingArchives.prototype.validatePage=function(newpage){if(this.pageCount>1){if(newpage>=this.pageCount){jQuery('#dynamic-content').removeClass('onepageonly firstpage nthpage').addClass('lastpage');return this.pageCount;}else if(newpage<=1){jQuery('#dynamic-content').removeClass('onepageonly nthpage lastpage').addClass('firstpage');return 1;}else{jQuery('#dynamic-content').removeClass('onepageonly firstpage lastpage').addClass('nthpage');return newpage;}}
jQuery('#dynamic-content').removeClass('firstpage nthpage lastpage').addClass('onepageonly');return 0;};RollingArchives.prototype.gotoPage=function(newpage){var self=this;var page=this.validatePage(newpage);if((page!=this.pageNumber)&&(page>0)){this.pageNumber=page;jQuery('#rollload').fadeIn('fast');jQuery.extend(this.query,{paged:this.pageNumber,k2dynamic:1});K2.ajaxGet(this.query,function(data){jQuery('#rollhover').fadeOut('slow');jQuery('#rollload').fadeOut('fast');jQuery('#rollingcontent').html(data);self.trimmer.trimAgain();});}
if(page==1)
this.trimmer.slider.setValue(100);};;function TextTrimmer(value){var self=this;this.minValue=0;this.maxValue=100;this.chunks=false;this.prevValue=0;if(value>=this.maxValue){this.curValue=this.maxValue;}else if(value<this.minValue){this.curValue=this.minValue;}else{this.curValue=value;}
this.slider=new K2Slider('#trimmerhandle','#trimmertrack',{minimum:0,maximum:10,value:10,onSlide:function(x){self.doTrim(x*10);},onChange:function(x){self.doTrim(x*10);}});jQuery('#trimmermore').click(function(){self.slider.setValueBy(1);return false;});jQuery('#trimmerless').click(function(){self.slider.setValueBy(-1);return false;});jQuery('#trimmertrim').click(function(){self.slider.setValue(self.minValue);return false;});jQuery('#trimmeruntrim').click(function(){self.slider.setValue(self.maxValue);return false;});};TextTrimmer.prototype.trimAgain=function(){this.loadChunks();this.doTrim(this.curValue);};TextTrimmer.prototype.loadChunks=function(){var everything=jQuery('#dynamic-content .entry-content');this.chunks=[];for(i=0;i<everything.length;i++){this.chunks.push({ref:everything[i],html:jQuery(everything[i]).html(),text:jQuery.trim(jQuery(everything[i]).text())});}};TextTrimmer.prototype.doTrim=function(interval){if(!this.chunks)
this.loadChunks();this.curValue=interval;for(i=0;i<this.chunks.length;i++){if(interval==this.maxValue){jQuery(this.chunks[i].ref).html(this.chunks[i].html);}else if(interval==this.minValue){jQuery(this.chunks[i].ref).html('');}else{var a=this.chunks[i].text.split(' ');a=a.slice(0,Math.round(interval*a.length/100));jQuery(this.chunks[i].ref).html('<p>'+a.join(' ')+'&nbsp;[...]</p>');}}
if(this.curValue!=this.maxValue){jQuery('#dynamic-content').addClass("trimmed");}else{jQuery('#dynamic-content').removeClass("trimmed");}};;function K2Slider(handle,track,options){var self=this;this.handle=jQuery(handle);this.track=jQuery(track);this.options=options||{};this.value=this.options.value||0;this.maximum=this.options.maximum||1;this.minimum=this.options.minimum||0;this.trackLength=this.track.width();this.handleLength=this.handle.width();this.handle.css('position','absolute');this.active=false;this.dragging=false;this.setValue(this.value);this.handle.mousedown(function(event){self.active=true;var pointer=self.pointerX(event);var offset=self.track.offset();self.setValue(self.translateToValue(pointer-offset.left-(self.handleLength/2)));var offset=self.handle.offset();self.offsetX=(pointer-offset.left);});this.track.mousedown(function(event){var offset=self.track.offset();var pointer=self.pointerX(event);self.setValue(self.translateToValue(pointer-offset.left-(self.handleLength/2)));});jQuery(document).mouseup(function(event){if(self.active&&self.dragging){self.active=false;self.dragging=false;self.updateFinished(self);}
self.active=false;self.dragging=false;});jQuery(document).mousemove(function(event){if(self.active){if(!self.dragging)self.dragging=true;self.draw(event);if(navigator.appVersion.indexOf('AppleWebKit')>0)window.scrollBy(0,0);}});this.initialized=true;};K2Slider.prototype.getNearestValue=function(value){if(value>this.maximum)return this.maximum;if(value<this.minimum)return this.minimum;return value;};K2Slider.prototype.setValue=function(value){this.value=this.getNearestValue(value);this.handle.css('left',this.translateToPx(this.value));if(!this.dragging||!this.event)this.updateFinished(this);};K2Slider.prototype.setValueBy=function(delta){this.setValue(this.value+delta);};K2Slider.prototype.translateToPx=function(value){return Math.round(((this.trackLength-this.handleLength)/(this.maximum-this.minimum))*(value-this.minimum))+"px";};K2Slider.prototype.translateToValue=function(offset){return Math.round(((offset/(this.trackLength-this.handleLength)*(this.maximum-this.minimum))+this.minimum));};K2Slider.prototype.draw=function(event){var pointer=this.pointerX(event);var offset=this.track.offset();pointer-=this.offsetX+offset.left;this.event=event;this.setValue(this.translateToValue(pointer));if(this.initialized&&this.options.onSlide)
this.options.onSlide(this.value);};K2Slider.prototype.updateFinished=function(self){if(self.initialized&&self.options.onChange)
self.options.onChange(self.value);self.event=null;};K2Slider.prototype.pointerX=function(event){return event.pageX||(event.clientX+
(document.documentElement.scrollLeft||document.body.scrollLeft));};K2Slider.prototype.isLeftClick=function(event){return(((event.which)&&(event.which==1))||((event.button)&&(event.button==1)));};
