芝麻web文件管理V1.00
编辑当前文件:/home/p/r/i/prismawe/clients/canaldegap.fr/modules/CTLModuleMaker/src/functions/paginate.php
function paginate($what,$total,$id,$returnid,$params,$action="default"){ // for frontend usage // this assigns the different parts of the page menu $nbperpage = isset($params["nbperpage"])?$params["nbperpage"]:0; $nbperpage = (int) $nbperpage; if($nbperpage == 0 || $nbperpage >= $total){ // we're not using pagination $this->smarty->assign(array("page_showing"=>false,"page_totalitems"=>false,"page_pagenumbers"=>false,"page_next"=>false,"page_previous"=>false)); return false; } // we're using pagination $curpage = isset($params["pageindex"])?$params["pageindex"]:1; $nbpages = ceil($total/$nbperpage); $showing = ((($curpage -1) * $nbperpage) + 1); $tmpend = $showing + $nbperpage - 1; if($tmpend > $total) $tmpend = $total; if($tmpend != $showing) $showing .= "-".$tmpend; $this->smarty->assign("page_showing",$showing); $this->smarty->assign("page_totalitems",$total); $newparams = $params; $previouslink = false; $nextlink = false; if($curpage > 1){ // we create the link to the previous page $newparams["pageindex"] = $curpage - 1; $previouslink = $this->CreateLink($id, $action, $returnid, "<", $newparams, "", false, true, " class=\"previouslink\"", false, ($action != "default")?"":$this->BuildPrettyUrls($newparams, $returnid)); } if($curpage < $nbpages){ // we create the link to the next page $newparams["pageindex"] = $curpage + 1; $nextlink = $this->CreateLink($id, $action, $returnid, ">", $newparams, "", false, true, " class=\"nextlink\"", false, ($action != "default")?"":$this->BuildPrettyUrls($newparams, $returnid)); } $this->smarty->assign("page_next",$nextlink); $this->smarty->assign("page_previous",$previouslink); // we create links for each page number $i = 1; $links = array(); while($i <= $nbpages && $nbpages > 1){ $newparams["pageindex"] = $i; if($i == $curpage){ $links[] = "
".$i."
"; }else{ $links[] = $this->CreateLink($id, $action, $returnid, $i, $newparams, "", false, true, " class=\"pagenumber\"", false, ($action != "default")?"":$this->BuildPrettyUrls($newparams, $returnid)); } $i++; } $i = 0; $tmpflag = true; $maxpages = $this->GetPreference("maxshownpages",7); $maxpages = (int) $maxpages; $pagemenu = ""; if($maxpages < 1) $maxpages = 999; while($i < count($links)){ if($i < ($maxpages-1) || $nbpages <= $maxpages){ $pagemenu .= ($pagemenu == ""?"":$this->Lang("pagemenudelimiter")).$links[$i]; }elseif($i == count($links)){ $pagemenu .= $links[$i]; }elseif($tmpflag){ $tmpflag = false; $pagemenu .= "
".$this->Lang("pagemenuoverflow")."
"; } $i++; } $this->smarty->assign("page_pagenumbers",$pagemenu); }