tablePaginater={tableInfo:{},uniqueID:0,text:["erste Seite","vorherige Seite (Seite %p)","eine Seite weiter (Seite %p)","Letzte Seite (Seite %t)","Seite %p von %t"],addEvent:function(a,b,c,d){d||(d=true);if(a.attachEvent){a["e"+b+c]=c;a[b+c]=function(){a["e"+b+c](window.event)};a.attachEvent("on"+b,a[b+c])}else{a.addEventListener(b,c,true)}},addClass:function(e,c){if(new RegExp("(^|\\s)"+c+"(\\s|$)").test(e.className))return;e.className+=(e.className?" ":"")+c},/*@cc_on/*@if(@_win32)removeClass:function(e,c){e.className=!c?"":e.className.replace(new RegExp("(^|\\s)"+c+"(\\s|$)")," ").replace(/^\s*((?:[\S\s]*\S)?)\s*$/,'$1')},@else@*/removeClass:function(e,c){e.className=!c?"":e.className.replace(new RegExp("(^|\\s)"+c+"(\\s|$)")," ").replace(/^\s\s*/,'').replace(/\s\s*$/,'')},/*@end@*/init:function(a){var b=a&&typeof(a)=="string"?[document.getElementById(a)]:document.getElementsByTagName('table');var c,maxPages,visibleRows,numPages,cp,cb,rowList;for(var t=0,tbl;tbl=b[t];t++){if(tbl.className.search(/paginate-([0-9]+)/)==-1){continue};if(!tbl.id){tbl.id="fdUniqueTableId_"+tablePaginater.uniqueID++};maxPages=tbl.className.search(/max-pages-([0-9]+)/)==-1?null:Number(tbl.className.match(/max-pages-([0-9]+)/)[1]);if(maxPages%2==0&&maxPages>1){maxPages--};c=tbl.getElementsByTagName('tbody');c=(c.length)?c[0]:tbl;visibleRows=tablePaginater.calculateVisibleRows(c);if(maxPages>(visibleRows/Number(tbl.className.match(/paginate-([0-9]+)/)[1]))){maxPages=null};numPages=Math.ceil(visibleRows/Number(tbl.className.match(/paginate-([0-9]+)/)[1]));if(numPages<2&&!(tbl.id in tablePaginater.tableInfo)){continue};cp=(tbl.id in tablePaginater.tableInfo)?Math.min(tablePaginater.tableInfo[tbl.id].currentPage,numPages):1;cb=tbl.className.search(/paginationcallback-([\S-]+)/)==-1?"":tbl.className.match(/paginationcallback-([\S]+)/)[1];cb=cb.replace("-",".");tablePaginater.tableInfo[tbl.id]={rowsPerPage:Number(tbl.className.match(/paginate-([0-9]+)/)[1]),currentPage:cp,totalRows:c.getElementsByTagName('tr').length,hook:c,maxPages:maxPages,numPages:numPages,rowStyle:tbl.className.search(/rowstyle-([\S]+)/)!=-1?tbl.className.match(/rowstyle-([\S]+)/)[1]:false,callback:cb||"paginationCallback"};tablePaginater.showPage(tbl.id);c=null}},calculateVisibleRows:function(a){var b=a.rows;var c=0;var d=/(^|\s)invisibleRow(\s|$)/;for(var i=0,tr;tr=b[i];i++){if(tr.parentNode!=a||tr.getElementsByTagName("th").length||(tr.parentNode&&tr.parentNode.tagName.toLowerCase().search(/thead|tfoot/)!=-1))continue;if(tr.className.search(d)==-1){c++}};return c},createButton:function(a,b,c){var d=document.createElement("li");var e=document.createElement(c?"div":"a");var f=document.createElement("span");if(!c){e.href="#"};if(!c){e.title=a.title};e.className=a.className;b.appendChild(d);d.appendChild(e);e.appendChild(f);f.appendChild(document.createTextNode(a.text));if(!c){d.onclick=e.onclick=tablePaginater.buttonClick};if(!c&&a.id){e.id=a.id};d=e=f=null},removePagination:function(a){var b=document.getElementById(a+"-fdtablePaginaterWrapTop");var c=document.getElementById(a+"-fdtablePaginaterWrapBottom");if(b){b.parentNode.removeChild(b)};if(c){c.parentNode.removeChild(c)}},buildPagination:function(c){if(!(c in tablePaginater.tableInfo)){return};tablePaginater.removePagination(c);var d=tablePaginater.tableInfo[c];if(d.numPages<2)return;function resolveText(a,b){b=b||d.currentPage;return a.replace("%p",b).replace("%t",d.numPages)};if(d.maxPages){findex=Math.max(0,Math.floor(Number(d.currentPage-1)-(Number(d.maxPages-1)/2)));lindex=findex+Number(d.maxPages);if(lindex>d.numPages){lindex=d.numPages;findex=Math.max(0,d.numPages-Number(d.maxPages))}}else{findex=0;lindex=d.numPages};var e=document.createElement("div");e.className="fdtablePaginaterWrap";e.id=c+"-fdtablePaginaterWrapTop";var f=document.createElement("div");f.className="fdtablePaginaterWrap";f.id=c+"-fdtablePaginaterWrapBottom";var g=document.createElement("ul");g.id=c+"-tablePaginater";var h=document.createElement("ul");h.id=c+"-tablePaginaterClone";g.className=h.className="fdtablePaginater";e.appendChild(g);f.appendChild(h);if(d.maxPages){tablePaginater.createButton({title:tablePaginater.text[0],className:"first-page",text:"\u00ab"},g,!findex);tablePaginater.createButton({title:tablePaginater.text[0],className:"first-page",text:"\u00ab"},h,!findex)};if(d.numPages>2){tablePaginater.createButton({title:resolveText(tablePaginater.text[1],d.currentPage-1),className:"previous-page",text:"\u2039",id:c+"-previousPage"},g,d.currentPage==1);tablePaginater.createButton({title:resolveText(tablePaginater.text[1],d.currentPage-1),className:"previous-page",text:"\u2039",id:c+"-previousPageC"},h,d.currentPage==1)};for(var i=findex;i<lindex;i++){tablePaginater.createButton({title:resolveText(tablePaginater.text[4],i+1),className:i!=(d.currentPage-1)?"page-"+(i+1):"currentPage page-"+(i+1),text:(i+1),id:i==(d.currentPage-1)?c+"-currentPage":""},g);tablePaginater.createButton({title:resolveText(tablePaginater.text[4],i+1),className:i!=(d.currentPage-1)?"page-"+(i+1):"currentPage page-"+(i+1),text:(i+1),id:i==(d.currentPage-1)?c+"-currentPageC":""},h)};if(d.numPages>2){tablePaginater.createButton({title:resolveText(tablePaginater.text[2],d.currentPage+1),className:"next-page",text:"\u203a",id:c+"-nextPage"},g,d.currentPage==d.numPages);tablePaginater.createButton({title:resolveText(tablePaginater.text[2],d.currentPage+1),className:"next-page",text:"\u203a",id:c+"-nextPageC"},h,d.currentPage==d.numPages)};if(d.maxPages){tablePaginater.createButton({title:resolveText(tablePaginater.text[3],d.numPages),className:"last-page",text:"\u00bb"},g,lindex==d.numPages);tablePaginater.createButton({title:resolveText(tablePaginater.text[3],d.numPages),className:"last-page",text:"\u00bb"},h,lindex==d.numPages)};if(document.getElementById(c+"-paginationListWrapTop")){document.getElementById(c+"-paginationListWrapTop").appendChild(e)}else{document.getElementById(c).parentNode.insertBefore(e,document.getElementById(c))};if(document.getElementById(c+"-paginationListWrapBottom")){document.getElementById(c+"-paginationListWrapBottom").appendChild(f)}else{document.getElementById(c).parentNode.insertBefore(f,document.getElementById(c).nextSibling)}},redraw:function(a,b){if(!a||!(a in fdTableSort.tableCache)||!(a in tablePaginater.tableInfo)){return};var c=fdTableSort.tableCache[a];var d=c.data;var e=d.length;var f=e?d[0].length-1:0;var g=c.hook;var h=c.colStyle;var j=c.rowStyle;var k=c.colOrder;var l=tablePaginater.tableInfo[a].currentPage-1;var m=tablePaginater.tableInfo[a].rowsPerPage*l;var n=Math.min(tablePaginater.tableInfo[a].totalRows,m+tablePaginater.tableInfo[a].rowsPerPage);var o=0;var p=0;var q=/(^|\s)invisibleRow(\s|$)/;var r,tds,cell,pos;for(var i=0;i<e;i++){r=d[i][f];if(h){tds=r.cells;for(thPos in k){if(!k[thPos])tablePaginater.removeClass(tds[thPos],h);else tablePaginater.addClass(tds[thPos],h)}};if(r.className.search(q)!=-1){continue};if(!b){o++;if(o>m&&o<=n){if(j){if(p++&1)tablePaginater.addClass(r,j);else tablePaginater.removeClass(r,j)};r.style.display=""}else{r.style.display="none"};g.appendChild(r)}};r=tds=g=null},showPage:function(a,b){if(!(a in tablePaginater.tableInfo)){return};var c=!b?tablePaginater.tableInfo[a].currentPage-1:b-1;var d=tablePaginater.tableInfo[a].rowsPerPage*c;var e=Math.min(tablePaginater.tableInfo[a].totalRows,d+tablePaginater.tableInfo[a].rowsPerPage);var f=tablePaginater.tableInfo[a].hook.rows;var g=0;var h=0;var j=f.length;var k=tablePaginater.tableInfo[a].rowStyle;var l=/(^|\s)invisibleRow(\s|$)/;for(var i=0;i<j;i++){if(f[i].getElementsByTagName("th").length||(f[i].parentNode&&f[i].parentNode.tagName.toLowerCase().search(/thead|tfoot/)!=-1))continue;if(f[i].className.search(l)!=-1){continue};g++;if(g>d&&g<=e){if(k){if(h++&1){tablePaginater.addClass(f[i],k)}else{tablePaginater.removeClass(f[i],k)}};f[i].style.display=""}else{f[i].style.display="none"}};tablePaginater.buildPagination(a);tablePaginater.callback(a)},callback:function(a){var b;if(tablePaginater.tableInfo[a].callback.indexOf(".")!=-1){var c=tablePaginater.tableInfo[a].callback.split(".");b=window;for(var i=0,f;f=c[i];i++){if(f in b){b=b[f]}else{b="";break}}}else if(tablePaginater.tableInfo[a].callback in window){b=window[tablePaginater.tableInfo[a].callback]};if(typeof b=="function"){b(a)};b=null},buttonClick:function(e){e=e||window.event;var a=this.tagName.toLowerCase()=="a"?this:this.getElementsByTagName("a")[0];if(a.className.search("currentPage")!=-1)return false;var b=this;while(b.tagName.toLowerCase()!="ul")b=b.parentNode;var c=b.id.replace("-tablePaginaterClone","").replace("-tablePaginater","");tablePaginater.tableInfo[c].lastPage=tablePaginater.tableInfo[c].currentPage;var d=0;if(a.className.search("previous-page")!=-1){tablePaginater.tableInfo[c].currentPage=tablePaginater.tableInfo[c].currentPage>1?tablePaginater.tableInfo[c].currentPage-1:tablePaginater.tableInfo[c].numPages;d=1}else if(a.className.search("next-page")!=-1){tablePaginater.tableInfo[c].currentPage=tablePaginater.tableInfo[c].currentPage<tablePaginater.tableInfo[c].numPages?tablePaginater.tableInfo[c].currentPage+1:1;d=2}else if(a.className.search("first-page")!=-1){tablePaginater.tableInfo[c].currentPage=1}else if(a.className.search("last-page")!=-1){tablePaginater.tableInfo[c].currentPage=tablePaginater.tableInfo[c].numPages}else{tablePaginater.tableInfo[c].currentPage=parseInt(a.className.match(/page-([0-9]+)/)[1])||1};tablePaginater.showPage(c);if(d==1){var f=document.getElementById(b.id.search("-tablePaginaterClone")!=-1?c+"-previousPageC":c+"-previousPage")}else if(d==2){var f=document.getElementById(b.id.search("-tablePaginaterClone")!=-1?c+"-nextPageC":c+"-nextPage")}else{var f=document.getElementById(b.id.search("-tablePaginaterClone")!=-1?c+"-currentPageC":c+"-currentPage")};if(f&&f.tagName.toLowerCase()=="a"){f.focus()};if(e.stopPropagation){e.stopPropagation();e.preventDefault()};/*@cc_on@if(@_win32)e.cancelBubble=true;e.returnValue=false;@end@*/return false},onUnLoad:function(e){var a,lis,pagination,uls;for(tblId in tablePaginater.tableInfo){uls=[tblId+"-tablePaginater",tblId+"-tablePaginaterClone"];for(var z=0;z<2;z++){pagination=document.getElementById(uls[z]);if(!pagination){continue};lis=pagination.getElementsByTagName("li");for(var i=0,li;li=lis[i];i++){li.onclick=null;if(li.getElementsByTagName("a").length){li.getElementsByTagName("a")[0].onclick=null}}}}}};tablePaginater.addEvent(window,"load",tablePaginater.init);tablePaginater.addEvent(window,"unload",tablePaginater.onUnLoad);
