For running J!5.1 you must https://fabrikar.com/forums/index.php?wiki/update-from-github/ or include the new file manually https://fabrikar.com/forums/index.php?threads/joomla-5-1-and-fabrik-cannot-find-files-error.54473/post-285151 See also Announcements
See Announcement
We are still working on the Joomla update.
/**
* makes the table navigation html to traverse the table data
* @param int the total number of records in the table
* @param int number of records to show per page
* @param int which record number to start at
*/
function pageNav( $total, $pageLimit, $limitStart ){
if($pageLimit == 0){
$pageLimit = 5;
}
$b = $limitStart + $pageLimit;
if($b > $total){ $b = $total;}
$prevLimitStart = $limitStart - $pageLimit;
if($prevLimitStart < 0){$prevLimitStart = 0;}
$pageCount = ceil(($total ) / $pageLimit);
$nextLimitStart = $limitStart + $pageLimit;
$lastLimit = floor(($total - 1) / $pageLimit) * $pageLimit;
if($nextLimitStart >= $total){$nextLimitStart = $lastLimit;}
/* makes sure thatthe end limits are not less than 0 */
if($nextLimitStart < 0){$nextLimitStart = 0;}
if($lastLimit < 0){ $lastLimit = 0;}
$str = "<table class=\"adminlist\"><tr><th>\n<span class=\"pagenav\">\n";
if($limitStart == 0){
$str .= "<<Start ";
}else{
$str .= "<a href=\"javascript: fabrikNav(0);\"><<Start</a> \n";
}
$str .= "</span>\n<span class=\"pagenav\">\n";
if($limitStart == $prevLimitStart){
$str .= "<Previous ";
}else{
$str .= "<a href=\"javascript: fabrikNav($prevLimitStart);\"><Previous</a> \n";
}
$str .= "</span>\n\n";
for($i=0;$i<$pageCount;$i++){
$thisLimit = $i * $pageLimit;
$j = $i +1;
if($limitStart == $thisLimit){
$str .= "<span class=\"pagenav\">$j</span> ";
}else{
$str .= "<span class=\"pagenav\"><a href=\"javascript: fabrikNav($thisLimit);\">$j</a></span> \n";
}
}
$str .= "<span class=\"pagenav\">\n";
if($limitStart == $nextLimitStart){
$str .= "Next> ";
}else{
$str .= "<a href=\"javascript: fabrikNav($nextLimitStart);\">Next></a> \n";
}
$str .= "</span>\n<span class=\"pagenav\">\n";
if($limitStart == $lastLimit){
$str .= "Last>>";
}else{
$str .= "<a href=\"javascript: fabrikNav($lastLimit);\">Last>></a>\n";
}
$str .= "</span>\n";
$str .= "</th</tr><tr><td style=\"text-align:center;\">Display # ";
$str .= getLimitBox ($pageLimit ) ;
$str .= " Results $limitStart to $b of $total</td></tr></table>";
return $str;
}
/**
* makes the table navigation html to traverse the table data
* @param int the total number of records in the table
* @param int number of records to show per page
* @param int which record number to start at
*/
function pageNav( $total, $pageLimit, $limitStart ){
if($pageLimit == 0){
$pageLimit = 5;
}
$b = $limitStart + $pageLimit;
if($b > $total){ $b = $total;}
$prevLimitStart = $limitStart - $pageLimit;
if($prevLimitStart < 0){$prevLimitStart = 0;}
$pageCount = ceil(($total ) / $pageLimit);
$nextLimitStart = $limitStart + $pageLimit;
$lastLimit = floor(($total - 1) / $pageLimit) * $pageLimit;
if($nextLimitStart >= $total){$nextLimitStart = $lastLimit;}
/* makes sure thatthe end limits are not less than 0 */
if($nextLimitStart < 0){$nextLimitStart = 0;}
if($lastLimit < 0){ $lastLimit = 0;}
if (!defined( '_PN_LT' ) || !defined( '_PN_RT' ) ) {
DEFINE('_PN_LT','<');
DEFINE('_PN_RT','>');
}
$str = "<table class=\"adminlist\"><tr><th>\n<span class=\"pagenav\">\n";
if($limitStart == 0){
$str .= "<<Start ";
}else{
$str .= "<a href=\"javascript: fabrikNav(0);\">" _PN_LT . _PN_LT .$pnSpace . _PN_START . "</a> \n";
}
$str .= "</span>\n<span class=\"pagenav\">\n";
if($limitStart == $prevLimitStart){
$str .= "<Previous ";
}else{
$str .= "<a href=\"javascript: fabrikNav($prevLimitStart);\">" . _PN_LT . $pnSpace . _PN_PREVIOUS ."</a> \n";
}
$str .= "</span>\n\n";
for($i=0;$i<$pageCount;$i++){
$thisLimit = $i * $pageLimit;
$j = $i +1;
if($limitStart == $thisLimit){
$str .= "<span class=\"pagenav\">$j</span> ";
}else{
$str .= "<span class=\"pagenav\"><a href=\"javascript: fabrikNav($thisLimit);\">$j</a></span> \n";
}
}
$str .= "<span class=\"pagenav\">\n";
if($limitStart == $nextLimitStart){
$str .= "Next> ";
}else{
$str .= "<a href=\"javascript: fabrikNav($nextLimitStart);\">" . _PN_NEXT . "></a> \n";
}
$str .= "</span>\n<span class=\"pagenav\">\n";
if($limitStart == $lastLimit){
$str .= "Last>>";
}else{
$str .= "<a href=\"javascript: fabrikNav($lastLimit);\">" . _PN_END . ">></a>\n";
}
$str .= "</span>\n";
$str .= "</th</tr><tr><td style=\"text-align:center;\">" . _PN_DISPLAY_NR ;
$str .= getLimitBox ($pageLimit ) ;
$str .= _PN_RESULTS . " $limitStart - $b " . _PN_OF . " $total</td></tr></table>";
return $str;
}
$str = "<table class=\"adminlist\"><tr><th>\n<span class=\"pagenav\">\n";
if($limitStart == 0){
$str .= "<<Start ";
}else{
$str .= "<a href=\"javascript: fabrikNav(0);\">" ._PN_LT . _PN_LT .$pnSpace . _PN_START . "</a> \n";
}
$str .= "</span>\n<span class=\"pagenav\">\n";
if($limitStart == $prevLimitStart){
$str .= "<Previous ";
}else{
$str .= "<a href=\"javascript: fabrikNav($prevLimitStart);\">" . _PN_LT . $pnSpace . _PN_PREVIOUS ."</a> \n";
define("_START", "<< Start");
define("_PREV", "< Prev");
define("_NEXT", "Next >");
define("_END", "End >>");
define("_START", "<< start_in_french");
define("_PREV", "< previous_in_french");
define("_NEXT", "next_in_french >");
define("_END", "end_in_french >>");
if ($this_page > 1) {
$page = ($this_page - 2) * $this->limit;
$html .= "\n<a href=\"#beg\" class=\"pagenav\" title=\"first page\" onclick=\"javascript:fabrikNav(0);return false;\"><< Start</a>";
$html .= "\n<a href=\"#prev\" class=\"pagenav\" title=\"previous page\" onclick=\"javascript:fabrikNav($page);return false;\">< Previous</a>";
} else {
$html .= "\n<span class=\"pagenav\"><< Start</span>";
$html .= "\n<span class=\"pagenav\">< Previous</span>";
}
for ($i=$start_loop; $i <= $stop_loop; $i++) {
$page = ($i - 1) * $this->limit;
if ($i == $this_page) {
$html .= "\n<span class=\"pagenav\"> $i </span>";
} else {
$html .= "\n<a href=\"#$i\" class=\"pagenav\" onclick=\"javascript:fabrikNav($page);return false;\"><strong>$i</strong></a>";
}
}
if ($this_page < $total_pages) {
$page = $this_page * $this->limit;
$end_page = ($total_pages-1) * $this->limit;
$html .= "\n<a href=\"#next\" class=\"pagenav\" title=\"next page\" onclick=\"javascript: fabrikNav($page);;return false;\"> Next ></a>";
$html .= "\n<a href=\"#end\" class=\"pagenav\" title=\"end page\" onclick=\"javascript: fabrikNav($end_page);return false;\"> End >></a>";
} else {
$html .= "\n<span class=\"pagenav\">Next ></span>";
$html .= "\n<span class=\"pagenav\">End >></span>";
}
return $html;
}
if ($this_page > 1) {
$page = ($this_page - 2) * $this->limit;
$html .= "\n<a href=\"#beg\" class=\"pagenav\" title=\"first page\" onclick=\"javascript:fabrikNav(0);return false;\">"._START."</a>";
$html .= "\n<a href=\"#prev\" class=\"pagenav\" title=\"previous page\" onclick=\"javascript:fabrikNav($page);return false;\">"._PREV."</a>";
} else {
$html .= "\n<span class=\"pagenav\">"._START."</span>";
$html .= "\n<span class=\"pagenav\">"._PREV."</span>";
}
for ($i=$start_loop; $i <= $stop_loop; $i++) {
$page = ($i - 1) * $this->limit;
if ($i == $this_page) {
$html .= "\n<span class=\"pagenav\"> $i </span>";
} else {
$html .= "\n<a href=\"#$i\" class=\"pagenav\" onclick=\"javascript:fabrikNav($page);return false;\"><strong>$i</strong></a>";
}
}
if ($this_page < $total_pages) {
$page = $this_page * $this->limit;
$end_page = ($total_pages-1) * $this->limit;
$html .= "\n<a href=\"#next\" class=\"pagenav\" title=\"next page\" onclick=\"javascript: fabrikNav($page);;return false;\">"._NEXT."</a>";
$html .= "\n<a href=\"#end\" class=\"pagenav\" title=\"end page\" onclick=\"javascript: fabrikNav($end_page);return false;\">"._END."</a>";
} else {
$html .= "\n<span class=\"pagenav\">"._NEXT."</span>";
$html .= "\n<span class=\"pagenav\">"._END."</span>";
}
return $html;
}
Hugh Messenger said:I think the "Display #" is on Joomla's administrator/includes/pageNavigation, as we're using the built in table footer function, and unfortunately they aren't using their own language file definition for that string in the pagenav code.
Not sure where "Results x of y" is coming from, I'll carry on digging.
-- hugh