var ThumbPaginator=new Class({Implements:[Options],options:{jsonData:'',nextButton:$$('a.gallery_next'),previousButton:$$('a.gallery_prev'),thumbContainer:$('gallery_thumbs'),ULClass:'gallery_nav_thumbs',thumbPageInfo:$('thumb_page_info'),thumbsPerPage:36,currentPage:1},initialize:function(options){this.setOptions(options);this.parseJSON();this.init();},parseJSON:function(){this.options.thumbData=JSON.decode(this.options.jsonData);this.options.numThumbs=this.options.thumbData.length;this.options.numPages=Math.floor(this.options.numThumbs/this.options.thumbsPerPage);if(((this.options.numThumbs/this.options.thumbsPerPage)%2)>0){this.options.numPages+=1;}
},init:function(){if(this.options.numPages>1){this.options.nextButton.each(function(item){item.addEvent('click',function(){this.nextPage()}.bind(this))}.bind(this))
this.options.previousButton.each(function(item){item.addEvent('click',function(){this.previousPage()}.bind(this))}.bind(this))}
this.checkPaginator()
this.options.ULElement=new Element('ul',{'class':this.options.ULClass})
this.options.thumbContainer.adopt(this.options.ULElement)
this.createPage()},createPage:function(){var beginIndex;var endIndex;var pageContents=[];this.options.currentPage==1?beginIndex=0:beginIndex=(this.options.thumbsPerPage*(this.options.currentPage-1));this.options.currentPage==this.options.numPages?endIndex=(this.options.numPages*this.options.thumbsPerPage)-((this.options.thumbsPerPage*this.options.numPages)-this.options.numThumbs):endIndex=this.options.currentPage*this.options.thumbsPerPage
for(var i=beginIndex;i<endIndex;i++){var tmpImg=new Image();tmpImg.src=this.options.thumbData[i].gallery_image
var tmpA=new Element('a',{'href':'javascript:void(0)','rel':i,'events':{'click':function(){changeSSImage(this.getProperty('rel'))}}}).adopt(tmpImg)
var tmpItem=new Element('li').adopt(tmpA)
pageContents.push(tmpItem)}
this.options.ULElement.innerHTML=''
pageContents.each(function(item){this.options.ULElement.adopt(item)}.bind(this))
this.updatePageInfo()},nextPage:function(){this.options.currentPage++;this.createPage()
this.checkPaginator()
},previousPage:function(){this.options.currentPage--;this.createPage()
this.checkPaginator()
},checkPaginator:function(){if(this.options.currentPage==this.options.numPages){this.options.nextButton.each(function(item){item.set('styles',{'display':'none'})})}else{this.options.nextButton.each(function(item){item.set('styles',{'display':'block'})})}
if(this.options.currentPage==1){this.options.previousButton.each(function(item){item.set('styles',{'display':'none'})})}else{this.options.previousButton.each(function(item){item.set('styles',{'display':'block'})})}},updatePageInfo:function(){this.options.thumbPageInfo.innerHTML="page "+this.options.currentPage+" / "+this.options.numPages}});
