(function(){function a(f){var b=a.VALUE_UNLIMITED,c=YAHOO.lang,e,i,h,g,d;f=c.isObject(f)?f:{};this.initConfig();this.initEvents();this.set("rowsPerPage",f.rowsPerPage,true);if(a.isNumeric(f.totalRecords)){this.set("totalRecords",f.totalRecords,true)}this.initUIComponents();for(e in f){if(c.hasOwnProperty(f,e)){this.set(e,f[e],true)}}i=this.get("initialPage");h=this.get("totalRecords");g=this.get("rowsPerPage");if(i>1&&g!==b){d=(i-1)*g;if(h===b||d<h){this.set("recordOffset",d,true)}}}YAHOO.lang.augmentObject(a,{id:0,ID_BASE:"yui-pg",VALUE_UNLIMITED:-1,TEMPLATE_DEFAULT:"{FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink}",TEMPLATE_ROWS_PER_PAGE:"{FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}",ui:{},isNumeric:function(b){return isFinite(+b)},toNumber:function(b){return isFinite(+b)?+b:null}},true);a.prototype={_containers:[],_batch:false,_pageChanged:false,_state:null,initConfig:function(){var b=a.VALUE_UNLIMITED,c=YAHOO.lang;this.setAttributeConfig("rowsPerPage",{value:0,validator:a.isNumeric,setter:a.toNumber});this.setAttributeConfig("containers",{value:null,validator:function(d){if(!c.isArray(d)){d=[d]}for(var e=0,f=d.length;e<f;++e){if(c.isString(d[e])||(c.isObject(d[e])&&d[e].nodeType===1)){continue}return false}return true},method:function(d){d=YAHOO.util.Dom.get(d);if(!c.isArray(d)){d=[d]}this._containers=d}});this.setAttributeConfig("totalRecords",{value:0,validator:a.isNumeric,setter:a.toNumber});this.setAttributeConfig("recordOffset",{value:0,validator:function(d){var e=this.get("totalRecords");if(a.isNumeric(d)){d=+d;return e===b||e>d||(e===0&&d===0)}return false},setter:a.toNumber});this.setAttributeConfig("initialPage",{value:1,validator:a.isNumeric,setter:a.toNumber});this.setAttributeConfig("template",{value:a.TEMPLATE_DEFAULT,validator:c.isString});this.setAttributeConfig("containerClass",{value:"yui-pg-container",validator:c.isString});this.setAttributeConfig("alwaysVisible",{value:true,validator:c.isBoolean});this.setAttributeConfig("updateOnChange",{value:false,validator:c.isBoolean});this.setAttributeConfig("id",{value:a.id++,readOnly:true});this.setAttributeConfig("rendered",{value:false,readOnly:true})},initUIComponents:function(){var b=a.ui,c,d;for(c in b){if(YAHOO.lang.hasOwnProperty(b,c)){d=b[c];if(YAHOO.lang.isObject(d)&&YAHOO.lang.isFunction(d.init)){d.init(this)}}}},initEvents:function(){this.createEvent("render");this.createEvent("rendered");this.createEvent("changeRequest");this.createEvent("pageChange");this.createEvent("beforeDestroy");this.createEvent("destroy");this._selfSubscribe()},_selfSubscribe:function(){this.subscribe("totalRecordsChange",this.updateVisibility,this,true);this.subscribe("alwaysVisibleChange",this.updateVisibility,this,true);this.subscribe("totalRecordsChange",this._handleStateChange,this,true);this.subscribe("recordOffsetChange",this._handleStateChange,this,true);this.subscribe("rowsPerPageChange",this._handleStateChange,this,true);this.subscribe("totalRecordsChange",this._syncRecordOffset,this,true)},_syncRecordOffset:function(b){var e=b.newValue,c,d;if(b.prevValue!==e){if(e!==a.VALUE_UNLIMITED){c=this.get("rowsPerPage");if(c&&this.get("recordOffset")>=e){d=this.getState({totalRecords:b.prevValue,recordOffset:this.get("recordOffset")});this.set("recordOffset",d.before.recordOffset);this._firePageChange(d)}}}},_handleStateChange:function(c){if(c.prevValue!==c.newValue){var b=this._state||{},d;b[c.type.replace(/Change$/,"")]=c.prevValue;d=this.getState(b);if(d.page!==d.before.page){if(this._batch){this._pageChanged=true}else{this._firePageChange(d)}}}},_firePageChange:function(c){if(YAHOO.lang.isObject(c)){var b=c.before;delete c.before;this.fireEvent("pageChange",{type:"pageChange",prevValue:c.page,newValue:b.page,prevState:c,newState:b})}},render:function(){if(this.get("rendered")){return}var h=this.get("totalRecords"),o=YAHOO.util.Dom,g=this.get("template"),e=this.get("containerClass"),m,k,i,n,p,q,f,b,c,d,j,l;if(h!==a.VALUE_UNLIMITED&&h<this.get("rowsPerPage")&&!this.get("alwaysVisible")){return}g=g.replace(/\{([a-z0-9_ \-]+)\}/gi,'<span class="yui-pg-ui $1"></span>');for(m=0,k=this._containers.length;m<k;++m){i=this._containers[m];n=a.ID_BASE+this.get("id")+"-"+m;if(!i){continue}i.style.display="none";o.addClass(i,e);i.innerHTML=g;p=o.getElementsByClassName("yui-pg-ui","span",i);for(q=0,f=p.length;q<f;++q){b=p[q];c=b.parentNode;d=b.className.replace(/\s*yui-pg-ui\s+/g,"");j=a.ui[d];if(YAHOO.lang.isFunction(j)){l=new j(this);if(YAHOO.lang.isFunction(l.render)){c.replaceChild(l.render(n),b)}}}i.style.display=""}if(this._containers.length){this.setAttributeConfig("rendered",{value:true});this.fireEvent("render",this.getState());this.fireEvent("rendered",this.getState())}},destroy:function(){this.fireEvent("beforeDestroy");this.fireEvent("destroy");this.setAttributeConfig("rendered",{value:false})},updateVisibility:function(d){var h=this.get("alwaysVisible"),b,c,f,e,g,i;if(d.type==="alwaysVisibleChange"||!h){b=this.get("totalRecords");c=true;f=this.get("rowsPerPage");e=this.get("rowsPerPageOptions");if(YAHOO.lang.isArray(e)){for(g=0,i=e.length;g<i;++g){f=Math.min(f,e[g])}}if(b!==a.VALUE_UNLIMITED&&b<=f){c=false}c=c||h;for(g=0,i=this._containers.length;g<i;++g){YAHOO.util.Dom.setStyle(this._containers[g],"display",c?"":"none")}}},getContainerNodes:function(){return this._containers},getTotalPages:function(){var c=this.get("totalRecords"),b=this.get("rowsPerPage");if(!b){return null}if(c===a.VALUE_UNLIMITED){return a.VALUE_UNLIMITED}return Math.ceil(c/b)},hasPage:function(b){if(!YAHOO.lang.isNumber(b)||b<1){return false}var c=this.getTotalPages();return(c===a.VALUE_UNLIMITED||c>=b)},getCurrentPage:function(){var b=this.get("rowsPerPage");if(!b||!this.get("totalRecords")){return 0}return Math.floor(this.get("recordOffset")/b)+1},hasNextPage:function(){var c=this.getCurrentPage(),b=this.getTotalPages();return c&&(b===a.VALUE_UNLIMITED||c<b)},getNextPage:function(){return this.hasNextPage()?this.getCurrentPage()+1:null},hasPreviousPage:function(){return(this.getCurrentPage()>1)},getPreviousPage:function(){return(this.hasPreviousPage()?this.getCurrentPage()-1:1)},getPageRecords:function(c){if(!YAHOO.lang.isNumber(c)){c=this.getCurrentPage()}var d=this.get("rowsPerPage"),e=this.get("totalRecords"),b,f;if(!c||!d){return null}b=(c-1)*d;if(e!==a.VALUE_UNLIMITED){if(b>=e){return null}f=Math.min(b+d,e)-1}else{f=b+d-1}return[b,f]},setPage:function(b,c){if(this.hasPage(b)&&b!==this.getCurrentPage()){if(this.get("updateOnChange")||c){this.set("recordOffset",(b-1)*this.get("rowsPerPage"))}else{this.fireEvent("changeRequest",this.getState({page:b}))}}},getRowsPerPage:function(){return this.get("rowsPerPage")},setRowsPerPage:function(b,c){if(a.isNumeric(b)&&+b>0&&+b!==this.get("rowsPerPage")){if(this.get("updateOnChange")||c){this.set("rowsPerPage",b)}else{this.fireEvent("changeRequest",this.getState({rowsPerPage:+b}))}}},getTotalRecords:function(){return this.get("totalRecords")},setTotalRecords:function(b,c){if(a.isNumeric(b)&&+b>=0&&+b!==this.get("totalRecords")){if(this.get("updateOnChange")||c){this.set("totalRecords",b)}else{this.fireEvent("changeRequest",this.getState({totalRecords:+b}))}}},getStartIndex:function(){return this.get("recordOffset")},setStartIndex:function(b,c){if(a.isNumeric(b)&&+b>=0&&+b!==this.get("recordOffset")){if(this.get("updateOnChange")||c){this.set("recordOffset",b)}else{this.fireEvent("changeRequest",this.getState({recordOffset:+b}))}}},getState:function(g){var e=a.VALUE_UNLIMITED,i=Math,h=i.max,f=i.ceil,b,d,j;function c(m,l,k){if(m<=0||l===0){return 0}if(l===e||l>m){return m-(m%k)}return l-(l%k||k)}b={paginator:this,totalRecords:this.get("totalRecords"),rowsPerPage:this.get("rowsPerPage"),records:this.getPageRecords()};b.recordOffset=c(this.get("recordOffset"),b.totalRecords,b.rowsPerPage);b.page=f(b.recordOffset/b.rowsPerPage)+1;if(!g){return b}d={paginator:this,before:b,rowsPerPage:g.rowsPerPage||b.rowsPerPage,totalRecords:(a.isNumeric(g.totalRecords)?h(g.totalRecords,e):+b.totalRecords)};if(d.totalRecords===0){d.recordOffset=d.page=0}else{j=a.isNumeric(g.page)?(g.page-1)*d.rowsPerPage:a.isNumeric(g.recordOffset)?+g.recordOffset:b.recordOffset;d.recordOffset=c(j,d.totalRecords,d.rowsPerPage);d.page=f(d.recordOffset/d.rowsPerPage)+1}d.records=[d.recordOffset,d.recordOffset+d.rowsPerPage-1];if(d.totalRecords!==e&&d.recordOffset<d.totalRecords&&d.records&&d.records[1]>d.totalRecords-1){d.records[1]=d.totalRecords-1}return d},setState:function(b){if(YAHOO.lang.isObject(b)){this._state=this.getState({});b={page:b.page,rowsPerPage:b.rowsPerPage,totalRecords:b.totalRecords,recordOffset:b.recordOffset};if(b.page&&b.recordOffset===undefined){b.recordOffset=(b.page-1)*(b.rowsPerPage||this.get("rowsPerPage"))}this._batch=true;this._pageChanged=false;for(var c in b){if(b.hasOwnProperty(c)){this.set(c,b[c])}}this._batch=false;if(this._pageChanged){this._pageChanged=false;this._firePageChange(this.getState(this._state))}}}};YAHOO.lang.augmentProto(a,YAHOO.util.AttributeProvider);YAHOO.widget.Paginator=a})();(function(){var b=YAHOO.widget.Paginator,a=YAHOO.lang;b.ui.CurrentPageReport=function(c){this.paginator=c;c.subscribe("recordOffsetChange",this.update,this,true);c.subscribe("rowsPerPageChange",this.update,this,true);c.subscribe("totalRecordsChange",this.update,this,true);c.subscribe("pageReportTemplateChange",this.update,this,true);c.subscribe("destroy",this.destroy,this,true);c.subscribe("pageReportClassChange",this.update,this,true)};b.ui.CurrentPageReport.init=function(c){c.setAttributeConfig("pageReportClass",{value:"yui-pg-current",validator:a.isString});c.setAttributeConfig("pageReportTemplate",{value:"({currentPage} of {totalPages})",validator:a.isString});c.setAttributeConfig("pageReportValueGenerator",{value:function(d){var e=d.getCurrentPage(),f=d.getPageRecords();return{currentPage:f?e:0,totalPages:d.getTotalPages(),startIndex:f?f[0]:0,endIndex:f?f[1]:0,startRecord:f?f[0]+1:0,endRecord:f?f[1]+1:0,totalRecords:d.get("totalRecords")}},validator:a.isFunction})};b.ui.CurrentPageReport.sprintf=function(c,d){return c.replace(/\{([\w\s\-]+)\}/g,function(f,e){return(e in d)?d[e]:""})};b.ui.CurrentPageReport.prototype={span:null,render:function(c){this.span=document.createElement("span");this.span.id=c+"-page-report";this.span.className=this.paginator.get("pageReportClass");this.update();return this.span},update:function(c){if(c&&c.prevValue===c.newValue){return}this.span.innerHTML=b.ui.CurrentPageReport.sprintf(this.paginator.get("pageReportTemplate"),this.paginator.get("pageReportValueGenerator")(this.paginator))},destroy:function(){this.span.parentNode.removeChild(this.span);this.span=null}}})();(function(){var b=YAHOO.widget.Paginator,a=YAHOO.lang;b.ui.PageLinks=function(c){this.paginator=c;c.subscribe("recordOffsetChange",this.update,this,true);c.subscribe("rowsPerPageChange",this.update,this,true);c.subscribe("totalRecordsChange",this.update,this,true);c.subscribe("pageLinksChange",this.rebuild,this,true);c.subscribe("pageLinkClassChange",this.rebuild,this,true);c.subscribe("currentPageClassChange",this.rebuild,this,true);c.subscribe("destroy",this.destroy,this,true);c.subscribe("pageLinksContainerClassChange",this.rebuild,this,true)};b.ui.PageLinks.init=function(c){c.setAttributeConfig("pageLinkClass",{value:"yui-pg-page",validator:a.isString});c.setAttributeConfig("currentPageClass",{value:"yui-pg-current-page",validator:a.isString});c.setAttributeConfig("pageLinksContainerClass",{value:"yui-pg-pages",validator:a.isString});c.setAttributeConfig("pageLinks",{value:10,validator:b.isNumeric});c.setAttributeConfig("pageLabelBuilder",{value:function(e,d){return e},validator:a.isFunction})};b.ui.PageLinks.calculateRange=function(g,f,h){var c=b.VALUE_UNLIMITED,d,i,e;if(!g||h===0||f===0||(f===c&&h===c)){return[0,-1]}if(f!==c){h=h===c?f:Math.min(h,f)}d=Math.max(1,Math.ceil(g-(h/2)));if(f===c){i=d+h-1}else{i=Math.min(f,d+h-1)}e=h-(i-d+1);d=Math.max(1,d-e);return[d,i]};b.ui.PageLinks.prototype={current:0,container:null,render:function(d){var c=this.paginator;this.container=document.createElement("span");this.container.id=d+"-pages";this.container.className=c.get("pageLinksContainerClass");YAHOO.util.Event.on(this.container,"click",this.onClick,this,true);this.update({newValue:null,rebuild:true});return this.container},update:function(g){if(g&&g.prevValue===g.newValue){return}var l=this.paginator,h=l.getCurrentPage();if(this.current!==h||!h||g.rebuild){var e=l.get("pageLabelBuilder"),i=b.ui.PageLinks.calculateRange(h,l.getTotalPages(),l.get("pageLinks")),c=i[0],k=i[1],f="",d,j;d='<a href="#" class="'+l.get("pageLinkClass")+'" page="';for(j=c;j<=k;++j){if(j===h){f+='<span class="'+l.get("currentPageClass")+" "+l.get("pageLinkClass")+'">'+e(j,l)+"</span>"}else{f+=d+j+'">'+e(j,l)+"</a>"}}this.container.innerHTML=f}},rebuild:function(c){c.rebuild=true;this.update(c)},destroy:function(){YAHOO.util.Event.purgeElement(this.container,true);this.container.parentNode.removeChild(this.container);this.container=null},onClick:function(c){var d=YAHOO.util.Event.getTarget(c);if(d&&YAHOO.util.Dom.hasClass(d,this.paginator.get("pageLinkClass"))){YAHOO.util.Event.stopEvent(c);this.paginator.setPage(parseInt(d.getAttribute("page"),10))}}}})();(function(){var b=YAHOO.widget.Paginator,a=YAHOO.lang;b.ui.FirstPageLink=function(c){this.paginator=c;c.subscribe("recordOffsetChange",this.update,this,true);c.subscribe("rowsPerPageChange",this.update,this,true);c.subscribe("totalRecordsChange",this.update,this,true);c.subscribe("destroy",this.destroy,this,true);c.subscribe("firstPageLinkLabelChange",this.update,this,true);c.subscribe("firstPageLinkClassChange",this.update,this,true)};b.ui.FirstPageLink.init=function(c){c.setAttributeConfig("firstPageLinkLabel",{value:"&lt;&lt;&nbsp;first",validator:a.isString});c.setAttributeConfig("firstPageLinkClass",{value:"yui-pg-first",validator:a.isString})};b.ui.FirstPageLink.prototype={current:null,link:null,span:null,render:function(e){var d=this.paginator,c=d.get("firstPageLinkClass"),f=d.get("firstPageLinkLabel");this.link=document.createElement("a");this.span=document.createElement("span");this.link.id=e+"-first-link";this.link.href="#";this.link.className=c;this.link.innerHTML=f;YAHOO.util.Event.on(this.link,"click",this.onClick,this,true);this.span.id=e+"-first-span";this.span.className=c;this.span.innerHTML=f;this.current=d.getCurrentPage()>1?this.link:this.span;return this.current},update:function(c){if(c&&c.prevValue===c.newValue){return}var d=this.current?this.current.parentNode:null;if(this.paginator.getCurrentPage()>1){if(d&&this.current===this.span){d.replaceChild(this.link,this.current);this.current=this.link}}else{if(d&&this.current===this.link){d.replaceChild(this.span,this.current);this.current=this.span}}},destroy:function(){YAHOO.util.Event.purgeElement(this.link);this.current.parentNode.removeChild(this.current);this.link=this.span=null},onClick:function(c){YAHOO.util.Event.stopEvent(c);this.paginator.setPage(1)}}})();(function(){var b=YAHOO.widget.Paginator,a=YAHOO.lang;b.ui.LastPageLink=function(c){this.paginator=c;c.subscribe("recordOffsetChange",this.update,this,true);c.subscribe("rowsPerPageChange",this.update,this,true);c.subscribe("totalRecordsChange",this.update,this,true);c.subscribe("destroy",this.destroy,this,true);c.subscribe("lastPageLinkLabelChange",this.update,this,true);c.subscribe("lastPageLinkClassChange",this.update,this,true)};b.ui.LastPageLink.init=function(c){c.setAttributeConfig("lastPageLinkLabel",{value:"last&nbsp;&gt;&gt;",validator:a.isString});c.setAttributeConfig("lastPageLinkClass",{value:"yui-pg-last",validator:a.isString})};b.ui.LastPageLink.prototype={current:null,link:null,span:null,na:null,render:function(f){var d=this.paginator,c=d.get("lastPageLinkClass"),g=d.get("lastPageLinkLabel"),e=d.getTotalPages();this.link=document.createElement("a");this.span=document.createElement("span");this.na=this.span.cloneNode(false);this.link.id=f+"-last-link";this.link.href="#";this.link.className=c;this.link.innerHTML=g;YAHOO.util.Event.on(this.link,"click",this.onClick,this,true);this.span.id=f+"-last-span";this.span.className=c;this.span.innerHTML=g;this.na.id=f+"-last-na";switch(e){case b.VALUE_UNLIMITED:this.current=this.na;break;case d.getCurrentPage():this.current=this.span;break;default:this.current=this.link}return this.current},update:function(d){if(d&&d.prevValue===d.newValue){return}var e=this.current?this.current.parentNode:null,c=this.link;if(e){switch(this.paginator.getTotalPages()){case b.VALUE_UNLIMITED:c=this.na;break;case this.paginator.getCurrentPage():c=this.span;break}if(this.current!==c){e.replaceChild(c,this.current);this.current=c}}},destroy:function(){YAHOO.util.Event.purgeElement(this.link);this.current.parentNode.removeChild(this.current);this.link=this.span=null},onClick:function(c){YAHOO.util.Event.stopEvent(c);this.paginator.setPage(this.paginator.getTotalPages())}}})();(function(){var b=YAHOO.widget.Paginator,a=YAHOO.lang;b.ui.NextPageLink=function(c){this.paginator=c;c.subscribe("recordOffsetChange",this.update,this,true);c.subscribe("rowsPerPageChange",this.update,this,true);c.subscribe("totalRecordsChange",this.update,this,true);c.subscribe("destroy",this.destroy,this,true);c.subscribe("nextPageLinkLabelChange",this.update,this,true);c.subscribe("nextPageLinkClassChange",this.update,this,true)};b.ui.NextPageLink.init=function(c){c.setAttributeConfig("nextPageLinkLabel",{value:"next&nbsp;&gt;",validator:a.isString});c.setAttributeConfig("nextPageLinkClass",{value:"yui-pg-next",validator:a.isString})};b.ui.NextPageLink.prototype={current:null,link:null,span:null,render:function(f){var d=this.paginator,c=d.get("nextPageLinkClass"),g=d.get("nextPageLinkLabel"),e=d.getTotalPages();this.link=document.createElement("a");this.span=document.createElement("span");this.link.id=f+"-next-link";this.link.href="#";this.link.className=c;this.link.innerHTML=g;YAHOO.util.Event.on(this.link,"click",this.onClick,this,true);this.span.id=f+"-next-span";this.span.className=c;this.span.innerHTML=g;this.current=d.getCurrentPage()===e?this.span:this.link;return this.current},update:function(c){if(c&&c.prevValue===c.newValue){return}var d=this.paginator.getTotalPages(),e=this.current?this.current.parentNode:null;if(this.paginator.getCurrentPage()!==d){if(e&&this.current===this.span){e.replaceChild(this.link,this.current);this.current=this.link}}else{if(this.current===this.link){if(e){e.replaceChild(this.span,this.current);this.current=this.span}}}},destroy:function(){YAHOO.util.Event.purgeElement(this.link);this.current.parentNode.removeChild(this.current);this.link=this.span=null},onClick:function(c){YAHOO.util.Event.stopEvent(c);this.paginator.setPage(this.paginator.getNextPage())}}})();(function(){var b=YAHOO.widget.Paginator,a=YAHOO.lang;b.ui.PreviousPageLink=function(c){this.paginator=c;c.subscribe("recordOffsetChange",this.update,this,true);c.subscribe("rowsPerPageChange",this.update,this,true);c.subscribe("totalRecordsChange",this.update,this,true);c.subscribe("destroy",this.destroy,this,true);c.subscribe("previousPageLinkLabelChange",this.update,this,true);c.subscribe("previousPageLinkClassChange",this.update,this,true)};b.ui.PreviousPageLink.init=function(c){c.setAttributeConfig("previousPageLinkLabel",{value:"&lt;&nbsp;prev",validator:a.isString});c.setAttributeConfig("previousPageLinkClass",{value:"yui-pg-previous",validator:a.isString})};b.ui.PreviousPageLink.prototype={current:null,link:null,span:null,render:function(e){var d=this.paginator,c=d.get("previousPageLinkClass"),f=d.get("previousPageLinkLabel");this.link=document.createElement("a");this.span=document.createElement("span");this.link.id=e+"-prev-link";this.link.href="#";this.link.className=c;this.link.innerHTML=f;YAHOO.util.Event.on(this.link,"click",this.onClick,this,true);this.span.id=e+"-prev-span";this.span.className=c;this.span.innerHTML=f;this.current=d.getCurrentPage()>1?this.link:this.span;return this.current},update:function(c){if(c&&c.prevValue===c.newValue){return}var d=this.current?this.current.parentNode:null;if(this.paginator.getCurrentPage()>1){if(d&&this.current===this.span){d.replaceChild(this.link,this.current);this.current=this.link}}else{if(d&&this.current===this.link){d.replaceChild(this.span,this.current);this.current=this.span}}},destroy:function(){YAHOO.util.Event.purgeElement(this.link);this.current.parentNode.removeChild(this.current);this.link=this.span=null},onClick:function(c){YAHOO.util.Event.stopEvent(c);this.paginator.setPage(this.paginator.getPreviousPage())}}})();(function(){var b=YAHOO.widget.Paginator,a=YAHOO.lang;b.ui.RowsPerPageDropdown=function(c){this.paginator=c;c.subscribe("rowsPerPageChange",this.update,this,true);c.subscribe("rowsPerPageOptionsChange",this.rebuild,this,true);c.subscribe("totalRecordsChange",this._handleTotalRecordsChange,this,true);c.subscribe("destroy",this.destroy,this,true);c.subscribe("rowsPerPageDropdownClassChange",this.rebuild,this,true)};b.ui.RowsPerPageDropdown.init=function(c){c.setAttributeConfig("rowsPerPageOptions",{value:[],validator:a.isArray});c.setAttributeConfig("rowsPerPageDropdownClass",{value:"yui-pg-rpp-options",validator:a.isString})};b.ui.RowsPerPageDropdown.prototype={select:null,all:null,render:function(c){this.select=document.createElement("select");this.select.id=c+"-rpp";this.select.className=this.paginator.get("rowsPerPageDropdownClass");this.select.title="Rows per page";YAHOO.util.Event.on(this.select,"change",this.onChange,this,true);this.rebuild();return this.select},rebuild:function(f){var d=this.paginator,k=this.select,e=d.get("rowsPerPageOptions"),c,g,j,i,h;this.all=null;for(i=0,h=e.length;i<h;++i){g=e[i];c=k.options[i]||k.appendChild(document.createElement("option"));j=a.isValue(g.value)?g.value:g;c.innerHTML=a.isValue(g.text)?g.text:g;if(a.isString(j)&&j.toLowerCase()==="all"){this.all=c;c.value=d.get("totalRecords")}else{c.value=j}}while(k.options.length>e.length){k.removeChild(k.firstChild)}this.update()},update:function(c){if(c&&c.prevValue===c.newValue){return}var d=this.paginator.get("rowsPerPage")+"",f=this.select.options,e,g;for(e=0,g=f.length;e<g;++e){if(f[e].value===d){f[e].selected=true;break}}},onChange:function(c){this.paginator.setRowsPerPage(parseInt(this.select.options[this.select.selectedIndex].value,10))},_handleTotalRecordsChange:function(c){if(!this.all||(c&&c.prevValue===c.newValue)){return}this.all.value=c.newValue;if(this.all.selected){this.paginator.set("rowsPerPage",c.newValue)}},destroy:function(){YAHOO.util.Event.purgeElement(this.select);this.select.parentNode.removeChild(this.select);this.select=null}}})();YAHOO.register("paginator",YAHOO.widget.Paginator,{version:"2.7.0",build:"1799"});
