Ersetze mal dies:
Code: Alles auswählen
$rtng_start = min($total_topics_limit - 1, $rtng_start);Code: Alles auswählen
$total_topics_limit = min($total_topics_limit, $topics_count);
$rtng_start = min($total_topics_limit - 1, $rtng_start);
Code: Alles auswählen
$rtng_start = min($total_topics_limit - 1, $rtng_start);Code: Alles auswählen
$total_topics_limit = min($total_topics_limit, $topics_count);
$rtng_start = min($total_topics_limit - 1, $rtng_start);
gettopiclist() nicht zweimal ausführen muss, was ja Murks gewesen wäre, habe ich meinen Fix in die Funktion direkt integriert, wie du jetzt ja auch. Damit du sehen kannst, was mein Versuch gewesen wäre, habe ich eben den Branch temp angelegt, mit Basis auf dev11, damit du die effektiven Änderungen sehen kannst. Ich war mir nur beim 3ten Parameter von validate_start() nicht sicher, deshalb habe ich hier einfach den Rückgabewert von gettopiclist() genommen. Mein Fix hat deutlich weniger Änderungen, aber da war ich mir eben auch nicht sicher, ob ich alles berücksichtigt hatte.Die habe ich gesehen. Sonst hätte ich nicht so schnell den Fehler entdeckt. Nachstellen konnte ich ihn nicht.
Der Fehler ist bei dir aufgetreten weil bei dir die Anzahl der Topics niedriger ist als Anzahl der maximal anzuzeigenden Topics (Seiten x Themen pro Seite). Schön das dadurch wieder ein Fehler aufgedeckt wurde.Ist aber auch egal, denn wenn es bei mir auftreten kann, ist die Wahrscheinlichkeit hoch, das es auch bei anderen auftreten kann.
Das ist so auch richtig.deshalb habe ich hier einfach den Rückgabewert vongettopiclist()genommen.
Fast genau so wie ich es jetzt gemacht habe. Ich habe mich am Ende entschiedenDamit du sehen kannst, was mein Versuch gewesen wäre, habe ich eben den Branch temp angelegt
$rtng_start nicht als Referenz zu nutzen sondern nach der Ermittlung des richtigen Wertes als Eigenschaft den Wert zuzuweisen. Passt gut zu den anderen Eigenschaften der Klasse.
Code: Alles auswählen
$this->topics_start = 0;
$this->topics_per_page = 0;
$this->topics_page_number = 0;
$rtng_start = min($total_topics_limit - 1, $rtng_start); hat bei RTNG dafür gesorgt, dass das letzte Thema angezeigt wird, wenn der Startwert der Pagination zu hoch ist. Meine Funktion hat ihn ersetzt.Das heisst, der Fehler - wenn im Index gar nichts angezeigt wird - tritt nicht auf, wenn sich die Anzahl der zur Anzeige verfügbaren Themen exakt durch die Anzahl der Themen pro Seite teilen lässt.IMC hat geschrieben: 31.12.2025 16:18 Der Fehler ist bei dir aufgetreten weil bei dir die Anzahl der Topics niedriger ist als Anzahl der maximal anzuzeigenden Topics (Seiten x Themen pro Seite).
Ja. Es war so wenn die Anzahl gleich, oder die Anzahl der Themen pro Seite größer war trat der Fehler nicht auf.LukeWCS hat geschrieben: 31.12.2025 17:52 Das heisst, der Fehler - wenn im Index gar nichts angezeigt wird - tritt nicht auf, wenn sich die Anzahl der zur Anzeige verfügbaren Themen exakt durch die Anzahl der Themen pro Seite teilen lässt.
sql_query_limit in ein sql_query geändert. Hat noch ein paar Millisekunden gebracht.Ähnliches Optimier-Potential entdecke ich auch immer wieder bei meinen eigenen Sachen, zuletzt bei File Check 1.5.1, wo durch mehr RAM Nutzung deutlich Zeit eingespart werden kann. Zeit ist oftmals eh wertvoller als RAM-Nutzung. Insbesondere wenn Exts in Foren laufen, wo die gleichzeitige Nutzung durch sehr viele User entsprechendes Gewicht haben kann bei der Ausführungszeit.IMC hat geschrieben: 01.01.2026 16:05 [*] Einensql_query_limitin einsql_querygeändert. Hat noch ein paar Millisekunden gebracht.
Darum also bei mir keine Meldung im Index, nur auf der separaten Seite.Da wir das Script wegen fehlenden Foren oder Topics bereits for der Ausgabe von Templatevariaben abgebrochen haben konnte die Meldung "Es sind keine neuen Themen vorhanden." nicht angezeigt werden.
Insbesondere auf der separaten Seite hilfreich, denn da fehlte ja das umgebende RTNG Gerüst in so einer Situation.Zusätzlich habe ich das Template für die Anzeige geändert damit die Meldung RTNG klar zugeordnet werden kann.