3 declare(strict_types=1);
    28     protected \ilDBInterface 
$db;
    47             "SELECT MAX(nr) max_nr, parent_type, page_id, lang FROM page_history " .
    48             " WHERE nr > %s AND hdate < %s GROUP BY parent_type, page_id, lang ",
    49             [
"integer", 
"timestamp"],
    52         while ($rec = $db->fetchAssoc($set)) {
    54                 "parent_type" => $rec[
"parent_type"],
    55                 "page_id" => $rec[
"page_id"],
    56                 "lang" => $rec[
"lang"],
    57                 "max_nr" => (
int) $rec[
"max_nr"]
    75             "SELECT MAX(nr) mnr FROM page_history " .
    76             " WHERE parent_type = %s AND page_id = %s AND lang = %s ",
    77             [
"text", 
"integer", 
"text"],
    78             [$parent_type, $page_id, $lang]
    81         if ($rec = $db->fetchAssoc($set)) {
    82             $max_old_nr = (
int) $rec[
"mnr"];
    84         $max_old_nr -= $keep_entries;
    85         if ($max_old_nr < 0) {
    92         int $delete_lower_than_nr,
   100         $q = 
"DELETE FROM page_history " .
   101             " WHERE parent_type = " . $db->quote($parent_type, 
"text") .
   102             " AND page_id = " . $db->quote($page_id, 
"integer") .
   103             " AND lang = " . $db->quote($lang, 
"text") .
   104             " AND nr <= " . $db->quote($delete_lower_than_nr, 
"integer");
   109         int $delete_lower_than_nr,
   117             "SELECT nr FROM page_history " .
   118             " WHERE parent_type = %s  " .
   119             " AND page_id = %s  " .
   122             [
"text", 
"integer", 
"text", 
"integer"],
   123             [$parent_type, $page_id, $lang, $delete_lower_than_nr]
   125         while ($rec = $db->fetchAssoc($set)) {
   126             yield (
int) $rec[
"nr"];
 getMaxDeletableNr(int $keep_entries, string $parent_type, int $page_id, string $lang)
Get the maximum deletable history nr for a single page, if $keep_entries entries should be kept...
 
__construct(\ilDBInterface $db)
 
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
 
queryF(string $query, array $types, array $values)
 
getHistoryNumbersOlderEqualThanNr(int $delete_lower_than_nr, string $parent_type, int $page_id, string $lang)
 
deleteHistoryEntriesOlderEqualThanNr(int $delete_lower_than_nr, string $parent_type, int $page_id, string $lang)
 
getMaxHistEntryPerPageOlderThanX(int $xdays)
Get the maximum history nr, that es older than x days for each page (and all pages) ...