Después de buscar mucho y de mucho mirar código, veo que se llama a la clase mospagenav del fichero \plugins\system\legacy\pagination.php y encontré este link donde decía que había que editar este archivo para solucionar una incidencia... http://joomlacode.org/gf/project/joomla ... m_id=14654 Pero he editado y no se soluciona mi problema...
Os dejo el código de la función listJobPostings donde se llama la paginación:
Code: Select all
function listJobPostings( $listtype = 0 ) {
global $database, $mosConfig_absolute_path, $option, $cfgfile, $cfgjl, $mainframe;
$category = null;
$search = "";
$limit = $mainframe->getUserStateFromRequest( "viewlistlimit", 'limit', 10 );
$limitstart = $mainframe->getUserStateFromRequest( "view{$option}limitstart",
'limitstart', 0 );
$levellimit = $mainframe->getUserStateFromRequest( "view{$option}limit",
'levellimit', 10 );
$where = array();
if ( $listtype == 1 ) {
$where[] = "c.state = -2";
} else {
$where[] = "c.state >= 0";
}
if ($category) {
$where[] = "catid='$category->id'";
}
if ($search) {
$where[] = "LOWER(title) LIKE '%$search%'";
}
$database->setQuery( "SELECT COUNT(*) FROM #__jl_jobposting AS c"
. (count( $where ) ? "\nWHERE " . implode( ' AND ', $where ) : "")
);
$total = $database->loadResult();
require_once( $mosConfig_absolute_path . '/includes/pageNavigation.php' );
$pageNav = new mosPageNav( $total, $limitstart, $limit );
/*
switch ( $cfgjl['adminlistorder'] ) {
case "pricedesc": $ordering = "c.price DESC"; break;
case "priceasc": $ordering = "c.price ASC"; break;
case "orderingdesc": $ordering = "c.ordering DESC"; break;
case "orderingasc": $ordering = "c.ordering ASC"; break;
case "addressdesc": $ordering = "c.address DESC"; break;
case "addressasc": $ordering = "c.address ASC"; break;
case "createddesc": $ordering = "c.created DESC"; break;
case "createdasc": $ordering = "c.created ASC"; break;
default: $ordering = "c.id DESC";
}
*/
if ( $listtype == 1 ) {
$ordering = "c.created DESC";
} else {
$ordering = "c.created DESC";
}
// Read job postings from db.
if ( $listtype == 1 ) {
$database->setQuery( "SELECT c.*, u.name AS editor"
. "\nFROM #__jl_jobposting AS c"
. "\nLEFT JOIN #__users AS u ON u.id = c.checked_out"
. "\n WHERE c.jobtype!=2 and c.title!=''"
// . "\nWHERE c.catid='$category->id' AND c.access<='$gid' $xwhere "
//. (count( $where ) ? "\nWHERE " . implode( ' AND ', $where ) : "")
. "\nORDER BY $ordering"
. "\nLIMIT $limitstart, $limit"
);
} else if( $listtype == 0 ) {
$database->setQuery( "SELECT c.*, u.name AS editor"
. "\nFROM #__jl_jobposting AS c"
. "\nLEFT JOIN #__users AS u ON u.id = c.checked_out"
. "\n WHERE c.jobtype=2"
// . "\nWHERE c.catid='$category->id' AND c.access<='$gid' $xwhere "
//. (count( $where ) ? "\nWHERE " . implode( ' AND ', $where ) : "")
. "\nORDER BY $ordering"
. "\nLIMIT $limitstart, $limit"
);
}else {
$database->setQuery( "SELECT c.*, u.name AS editor"
. "\nFROM #__jl_jobposting AS c"
. "\nLEFT JOIN #__users AS u ON u.id = c.checked_out"
. "\n WHERE c.title=''"
// . "\nWHERE c.catid='$category->id' AND c.access<='$gid' $xwhere "
//. (count( $where ) ? "\nWHERE " . implode( ' AND ', $where ) : "")
. "\nORDER BY $ordering"
. "\nLIMIT $limitstart, $limit"
);
}
$items = $database->loadObjectList();
if ($database->getErrorNum()) {
echo $database->getQuery();
echo $database->stderr();
return false;
}
if ( $listtype == 2 ) {
HTML_jobline_admin::listJobQueue( $items, $pageNav );
} else {
HTML_jobline_admin::listJobPostings( $items, $pageNav );
}
}