changes how the pagination is done in the DB_Model

This commit is contained in:
SimonGschnell
2024-05-08 11:28:16 +02:00
parent 36c8862b99
commit c017014171
7 changed files with 120 additions and 33 deletions
+31 -2
View File
@@ -25,6 +25,11 @@ class Cms extends FHC_Controller
$this->loadPhrases([
'global'
]);
$this->load->model('content/News_model', 'NewsModel');
// setting up the papgination_size
$this->pagination_size = 10;
}
// -----------------------------------------------------------------------------------------------------------------
@@ -67,12 +72,36 @@ class Cms extends FHC_Controller
public function getNews($infoscreen = false, $studiengang_kz = null, $semester = null, $mischen = true, $titel = '', $edit = false, $sichtbar = true)
{
$page = intval($this->input->get('page', true));
$pagination_size = 10;
$news = $this->cmslib->getNews($infoscreen, $studiengang_kz, $semester, $mischen, $titel, $edit, $sichtbar, $page, $pagination_size);
$news = $this->cmslib->getNews($infoscreen, $studiengang_kz, $semester, $mischen, $titel, $edit, $sichtbar, $page, $this->pagination_size);
if (isError($news)) {
echo json_encode(getError($news));
}
echo json_encode(getData($news));
}
public function getNewsMaxPage($infoscreen = false, $studiengang_kz = null, $semester = null, $mischen = true, $titel = '', $fachbereich_kurzbz = null, $maxalter = 0, $edit = false, $sichtbar = true, $page = 1, $page_size = 10)
{
$this->load->model('crm/Student_model', 'StudentModel');
$this->load->model('organisation/Studiengang_model', 'StudiengangModel');
if (!$infoscreen && ($studiengang_kz === null || $semester === null)) {
//Zum anzeigen der Studiengang-Details neben den News
$student = $this->StudentModel->loadWhere(['student_uid' => get_uid()]);
if (isError($student))
return $student;
if (getData($student)) {
$student = current(getData($student));
if ($studiengang_kz === null)
$studiengang_kz = $student->studiengang_kz;
if ($semester === null)
$semester = $student->semester;
}
}
$all = $edit;
$query = $this->NewsModel->getNewsWithContentQuery(getSprache(), $studiengang_kz, $semester, $fachbereich_kurzbz, $sichtbar, $maxalter, $page, $this->pagination_size, $all, $mischen);
echo json_encode($query->maxPageCount);
}
}