/usr/src/csf
<script type="text/javascript"> /*********************************************** * Virtual Pagination script- � Dynamic Drive DHTML code library (www.dynamicdrive.com) * This notice MUST stay intact for legal use * Visit Dynamic Drive at http://www.dynamicdrive.com/ for full source code * Additions and Modifications � Way to the Web Limited (www.configserver.com) ***********************************************/ function virtualpaginate(config){ //config: {piececlass:, piececontainer:, pieces_per_page:, defaultpage:, wraparound:, persist} this.piececlass=config.piececlass var elementType=(typeof config.piececontainer=="undefined")? "div" : config.piececontainer //The type of element used to divide up content into pieces. Defaults to "div" this.pieces=virtualpaginate.collectElementbyClass(config.piececlass, elementType) //get total number of divs matching class name this.chunksize=(typeof config.pieces_per_page=="undefined")? 1 : (config.pieces_per_page>0 && config.pieces_per_page<this.pieces.length)? config.pieces_per_page : this.pieces.length this.pagecount=Math.ceil(this.pieces.length/this.chunksize) //calculate number of "pages" needed to show the divs this.wraparound=config.wraparound || false this.paginatediv=[], this.flatviewlinks=[], this.cpspan=[], this.selectmenu=[], this.prevlinks=[], this.nextlinks=[] this.persist=config.persist var persistedpage=virtualpaginate.getCookie("dd_"+this.piececlass) || 0 var urlselectedpage=virtualpaginate.urlparamselect(this.piececlass) //returns null or index from: mypage.htm?piececlass=index this.currentpage=(typeof urlselectedpage=="number")? urlselectedpage : ((this.persist)? persistedpage : config.defaultpage) this.currentpage=(this.currentpage<this.pagecount)? parseInt(this.currentpage) : 0 //ensure currentpage is within range of available pages this.showpage(this.currentpage) //Show selected page } virtualpaginate.prototype.navigate=function(keyword){ if ((!this.wraparound && keyword=="previous" && this.currentpage==0) || (!this.wraparound && keyword=="next" && this.currentpage==this.pagecount-1)) return //exit immediately if wraparound is disabled and prev link is clicked when on 1st content or last link is clicked when on final content var prevlinkindex=this.currentpage //Get index of last clicked on page if (keyword=="previous") this.currentpage=(this.currentpage>0)? this.currentpage-1 : (this.currentpage==0)? this.pagecount-1 : 0 else if (keyword=="next") this.currentpage=(this.currentpage<this.pagecount-1)? this.currentpage+1 : 0 else if (keyword=="first") this.currentpage=0 else if (keyword=="last") this.currentpage=this.pagecount-1 //last page number else this.currentpage=parseInt(keyword) this.currentpage=(this.currentpage<this.pagecount)? this.currentpage : 0 //ensure pagenumber is within range of available pages this.showpage(this.currentpage) for (var p=0; p<this.paginatediv.length; p++){ //loop through all pagination DIVs if (this.flatviewpresent) this.flatviewlinks[p][prevlinkindex].className="" //"Unhighlight" previous page (before this.currentpage increments) if (this.selectmenupresent) this.selectmenu[p].selectedIndex=this.currentpage if (this.flatviewpresent) this.flatviewlinks[p][this.currentpage].className="selected" //"Highlight" current page } if (!this.wraparound){ for (var i=0; i<this.prevlinks.length; i++) //add or remove "disable" class from prev links depending on current page number virtualpaginate.setcssclass(this.prevlinks[i], "disabled", (this.currentpage==0)? "add" : "remove") for (var i=0; i<this.nextlinks.length; i++) //add or remove "disable" class from next links depending on current page number virtualpaginate.setcssclass(this.nextlinks[i], "disabled", (this.currentpage==(this.pagecount-1))? "add" : "remove") } } virtualpaginate.prototype.buildpagination=function(divids, optnavtext){ var divids=(typeof divids=="string")? [divids] : divids //force divids to be an array of ids var primarypaginatediv=divids.shift() //get first id within divids[] var paginaterawHTML=document.getElementById(primarypaginatediv).innerHTML this.paginate_build(primarypaginatediv, 0, optnavtext) for (var i=0; i<divids.length; i++){ document.getElementById(divids[i]).innerHTML=paginaterawHTML this.paginate_build(divids[i], i+1, optnavtext) } } virtualpaginate.collectElementbyClass=function(classname, element){ //Returns an array containing DIVs with specified classname. Requires setcssclass() if (document.querySelectorAll){ var pieces=document.querySelectorAll(element+"."+classname) //return pieces as HTMLCollection } else{ var pieces=[] var alltags=document.getElementsByTagName(element) for (var i=0; i<alltags.length; i++){ if (virtualpaginate.setcssclass(alltags[i], classname, "check")) //if element carries class name in question pieces[pieces.length]=alltags[i] //return pieces as array } } return pieces } virtualpaginate.setcssclass=function(el, targetclass, action){ var needle=new RegExp("(^|\\s+)"+targetclass+"($|\\s+)", "ig") if (action=="check") return needle.test(el.className) else if (action=="remove") el.className=el.className.replace(needle, "") else if (action=="add" && !needle.test(el.className)) el.className+=" "+targetclass } virtualpaginate.urlparamselect=function(vpclass){ var result=window.location.search.match(new RegExp(vpclass+"=(\\d+)", "i")) //check for "?piececlass=2" in URL return (result==null)? null : parseInt(RegExp.$1) //returns null or index, where index (int) is the selected virtual page's index } virtualpaginate.getCookie=function(Name){ var re=new RegExp(Name+"=[^;]+", "i"); //construct RE to search for target name/value pair if (document.cookie.match(re)) //if cookie found return document.cookie.match(re)[0].split("=")[1] //return its value return null } virtualpaginate.setCookie=function(name, value){ document.cookie = name+"="+value } virtualpaginate.prototype.showpage=function(pagenumber){ var totalitems=this.pieces.length //total number of broken up divs var showstartindex=pagenumber*this.chunksize //array index of div to start showing per pagenumber setting var showendindex=showstartindex+this.chunksize-1 //array index of div to stop showing after per pagenumber setting for (var i=0; i<totalitems; i++){ if (i>=showstartindex && i<=showendindex) this.pieces[i].style.display="block" else this.pieces[i].style.display="none" } if (this.persist){ //if persistence enabled virtualpaginate.setCookie("dd_"+this.piececlass, this.currentpage) } if (this.cpspan.length>0){ //if <span class="paginateinfo> element is present, update it with the most current info (ie: Page 3/4) for (var p=0; p<this.cpspan.length; p++) this.cpspan[p].innerHTML='Page '+(this.currentpage+1)+'/'+this.pagecount } } virtualpaginate.prototype.paginate_build=function(divid, divpos, optnavtext){ var instanceOfBox=this var paginatediv=document.getElementById(divid) if (this.chunksize==this.pieces.length){ //if user has set to display all pieces at once, no point in creating pagination div paginatediv.style.display="none" return } var paginationcode=paginatediv.innerHTML //Get user defined, "unprocessed" HTML within paginate div if (paginatediv.getElementsByTagName("select").length>0) //if there's a select menu in div this.paginate_build_selectmenu(paginatediv.getElementsByTagName("select")[0], divpos, optnavtext) if (paginatediv.getElementsByTagName("a").length>0) //if there are links defined in div this.paginate_build_regularlinks(paginatediv.getElementsByTagName("a")) var allspans=paginatediv.getElementsByTagName("span") //Look for span tags within passed div for (var i=0; i<allspans.length; i++){ if (allspans[i].className=="flatview") this.paginate_output_flatview(allspans[i], divpos, optnavtext) else if (allspans[i].className=="paginateinfo") this.paginate_build_cpinfo(allspans[i], divpos) } this.paginatediv[divpos]=paginatediv } virtualpaginate.prototype.paginate_output_flatview=function(flatviewcontainer, divpos, anchortext){ var flatviewhtml="" var anchortext=anchortext || new Array() for (var i=0; i<this.pagecount; i++){ if (typeof anchortext[i]!="undefined") //if custom anchor text for this link exists flatviewhtml+='<a href="#flatview" rel="'+i+'">'+anchortext[i]+'</a> ' //build pagination link using custom anchor text else flatviewhtml+='<a href="#flatview" rel="'+i+'">'+(i+1)+'</a> ' //build pagination link using auto incremented sequential number instead } flatviewcontainer.innerHTML=flatviewhtml this.paginate_build_flatview(flatviewcontainer, divpos, anchortext) } virtualpaginate.prototype.paginate_build_flatview=function(flatviewcontainer, divpos, anchortext){ var instanceOfBox=this var flatviewhtml="" this.flatviewlinks[divpos]=flatviewcontainer.getElementsByTagName("a") for (var i=0; i<this.flatviewlinks[divpos].length; i++){ this.flatviewlinks[divpos][i].onclick=function(){ var prevlinkindex=instanceOfBox.currentpage //Get index of last clicked on flatview link var curlinkindex=parseInt(this.getAttribute("rel")) instanceOfBox.navigate(curlinkindex) return false } } this.flatviewlinks[divpos][this.currentpage].className="selected" //"Highlight" current flatview link this.flatviewpresent=true //indicate flat view links are present } virtualpaginate.prototype.paginate_build_selectmenu=function(paginatedropdown, divpos, anchortext){ var instanceOfBox=this var anchortext=anchortext || new Array() this.selectmenupresent=1 for (var i=0; i<this.pagecount; i++){ if (typeof anchortext[i]!="undefined") //if custom anchor text for this link exists, use anchor text as each OPTION's text paginatedropdown.options[i]=new Option(anchortext[i], i) else //else, use auto incremented, sequential numbers paginatedropdown.options[i]=new Option("Page "+(i+1)+" of "+this.pagecount, i) } paginatedropdown.selectedIndex=this.currentpage setTimeout(function(){paginatedropdown.selectedIndex=instanceOfBox.currentpage}, 500) //refresh currently selected option (for IE's sake) paginatedropdown.onchange=function(){ instanceOfBox.navigate(this.selectedIndex) } this.selectmenu[divpos]=paginatedropdown this.selectmenu[divpos].selectedIndex=this.currentpage //"Select" current page's corresponding option } virtualpaginate.prototype.paginate_build_regularlinks=function(paginatelinks){ var instanceOfBox=this for (var i=0; i<paginatelinks.length; i++){ var currentpagerel=paginatelinks[i].getAttribute("rel") if (/^(previous)|(next)|(first)|(last)$/.test(currentpagerel)){ //screen for these "rel" values paginatelinks[i].onclick=function(){ instanceOfBox.navigate(this.getAttribute("rel")) return false } } if (currentpagerel=="previous" || paginatelinks[i].href.indexOf("previous")!=-1){ //check if this is a "previous" link if (!this.wraparound && this.currentpage==0) //if current page is first page, disable "prev" link virtualpaginate.setcssclass(paginatelinks[i], "disabled", "add") this.prevlinks.push(paginatelinks[i]) } else if (currentpagerel=="next" || paginatelinks[i].href.indexOf("next")!=-1){ //check if this is a "next" link if (!this.wraparound && this.currentpage==this.pagecount-1) //if current page is last page, disable "next" link virtualpaginate.setcssclass(paginatelinks[i], "disabled", "add") this.nextlinks.push(paginatelinks[i]) } } } virtualpaginate.prototype.paginate_build_cpinfo=function(cpspan, divpos){ this.cpspan[divpos]=cpspan cpspan.innerHTML='Page '+(this.currentpage+1)+'/'+this.pagecount } virtualpaginate.prototype.showall=function(){ for (var i=0; i<this.pieces.length; i++) this.pieces[i].style.display="block" this.currentpage = -1; for (var p=0; p<this.paginatediv.length; p++){ //loop through all pagination DIVs if (this.flatviewpresent) this.flatviewlinks[p][prevlinkindex].className="" //"Unhighlight" previous page (before this.currentpage increments) if (this.selectmenupresent) this.selectmenu[p].selectedIndex=this.currentpage if (this.flatviewpresent) this.flatviewlinks[p][this.currentpage].className="selected" //"Highlight" current page } if (!this.wraparound){ for (var i=0; i<this.prevlinks.length; i++) //add or remove "disable" class from prev links depending on current page number virtualpaginate.setcssclass(this.prevlinks[i], "disabled", (this.currentpage<1)? "add" : "remove") for (var i=0; i<this.nextlinks.length; i++) //add or remove "disable" class from next links depending on current page number virtualpaginate.setcssclass(this.nextlinks[i], "disabled", (this.currentpage==(this.pagecount-1))? "add" : "remove") } } </script>
.
Edit
..
Edit
.gitattributes
Edit
ConfigServer
Edit
Crypt
Edit
HTTP
Edit
JSON
Edit
Module
Edit
Net
Edit
accounttracking.txt
Edit
alert.txt
Edit
apache.http.txt
Edit
apache.https.txt
Edit
apache.main.txt
Edit
apf_stub.pl
Edit
auto.cwp.pl
Edit
auto.cyberpanel.pl
Edit
auto.directadmin.pl
Edit
auto.generic.pl
Edit
auto.interworx.pl
Edit
auto.pl
Edit
auto.vesta.pl
Edit
changelog.txt
Edit
connectiontracking.txt
Edit
consolealert.txt
Edit
cpanel
Edit
cpanel.allow
Edit
cpanel.comodo.allow
Edit
cpanel.comodo.ignore
Edit
cpanel.ignore
Edit
cpanelalert.txt
Edit
csf
Edit
csf.1.txt
Edit
csf.allow
Edit
csf.blocklists
Edit
csf.c
Edit
csf.cloudflare
Edit
csf.conf
Edit
csf.cwp.allow
Edit
csf.cwp.conf
Edit
csf.cwp.ignore
Edit
csf.cwp.pignore
Edit
csf.cyberpanel.allow
Edit
csf.cyberpanel.conf
Edit
csf.cyberpanel.ignore
Edit
csf.cyberpanel.pignore
Edit
csf.deny
Edit
csf.directadmin.allow
Edit
csf.directadmin.conf
Edit
csf.directadmin.ignore
Edit
csf.directadmin.pignore
Edit
csf.dirwatch
Edit
csf.div
Edit
csf.dyndns
Edit
csf.fignore
Edit
csf.generic.allow
Edit
csf.generic.conf
Edit
csf.generic.ignore
Edit
csf.generic.pignore
Edit
csf.help
Edit
csf.ignore
Edit
csf.interworx.allow
Edit
csf.interworx.conf
Edit
csf.interworx.ignore
Edit
csf.interworx.pignore
Edit
csf.logfiles
Edit
csf.logignore
Edit
csf.mignore
Edit
csf.pignore
Edit
csf.pl
Edit
csf.rblconf
Edit
csf.rbls
Edit
csf.redirect
Edit
csf.resellers
Edit
csf.rignore
Edit
csf.service
Edit
csf.sh
Edit
csf.signore
Edit
csf.sips
Edit
csf.smtpauth
Edit
csf.suignore
Edit
csf.syslogs
Edit
csf.syslogusers
Edit
csf.uidignore
Edit
csf.vesta.allow
Edit
csf.vesta.conf
Edit
csf.vesta.ignore
Edit
csf.vesta.pignore
Edit
csfajaxtail.js
Edit
csfcron.sh
Edit
csftest.pl
Edit
csget.pl
Edit
cwp
Edit
cyberpanel
Edit
da
Edit
downloadservers
Edit
exploitalert.txt
Edit
filealert.txt
Edit
forkbombalert.txt
Edit
install.cpanel.sh
Edit
install.cwp.sh
Edit
install.cyberpanel.sh
Edit
install.directadmin.sh
Edit
install.generic.sh
Edit
install.interworx.sh
Edit
install.sh
Edit
install.txt
Edit
install.vesta.sh
Edit
integrityalert.txt
Edit
interworx
Edit
lfd.logrotate
Edit
lfd.pl
Edit
lfd.service
Edit
lfd.sh
Edit
lfdcron.directadmin.sh
Edit
lfdcron.sh
Edit
license.txt
Edit
litespeed.http.txt
Edit
litespeed.https.txt
Edit
litespeed.main.txt
Edit
loadalert.txt
Edit
logalert.txt
Edit
logfloodalert.txt
Edit
messenger
Edit
migratedata.sh
Edit
modsecipdbalert.txt
Edit
netblock.txt
Edit
os.pl
Edit
perf.sh
Edit
permblock.txt
Edit
portknocking.txt
Edit
portscan.txt
Edit
processtracking.txt
Edit
profiles
Edit
pt_deleted_action.pl
Edit
queuealert.txt
Edit
readme.txt
Edit
recaptcha.txt
Edit
regex.custom.pm
Edit
regex.txt
Edit
relayalert.txt
Edit
remove_apf_bfd.sh
Edit
resalert.txt
Edit
reselleralert.txt
Edit
restricted.txt
Edit
sanity.txt
Edit
scriptalert.txt
Edit
sshalert.txt
Edit
sualert.txt
Edit
sudoalert.txt
Edit
syslogalert.txt
Edit
tracking.txt
Edit
ui
Edit
uialert.txt
Edit
uidscan.txt
Edit
uninstall.cwp.sh
Edit
uninstall.cyberpanel.sh
Edit
uninstall.directadmin.sh
Edit
uninstall.generic.sh
Edit
uninstall.interworx.sh
Edit
uninstall.sh
Edit
uninstall.vesta.sh
Edit
upgrade.txt
Edit
usertracking.txt
Edit
version
Edit
version.txt
Edit
vestacp
Edit
watchalert.txt
Edit
webmin
Edit
webminalert.txt
Edit
x-arf.txt
Edit