Opened 6 months ago
Closed 6 months ago
#1859 closed Bug/Fehler (fixed)
Notice wegen MAX_DISPLAY_PAGE_LINKS in split_page_results.php
Reported by: | noRiddle | Owned by: | somebody |
---|---|---|---|
Priority: | normal | Milestone: | modified-shop-2.0.6.0 |
Component: | Shop | Version: | 2.0.5.1 |
Description
Wenn Konfiguration => Maximum Werte => "Seiten blättern" (= MAX_DISPLAY_PAGE_LINKS) auf 0 steht wirft Zeile 106 in /includes/classes/split_page_results.php im Produkt-Listing eine Notice à la "Modulo 0 nicht möglich":
if ($this->current_page_number % $max_page_links) $cur_window_num++;
Die Zeile darüber dürfte ebenfalls eine Notice oder ein Warning werfen wegen "dividing by 0":
$cur_window_num = (int)($this->current_page_number / $max_page_links);
Da man in configuration-Feldern keine Vorgabe machen kann sollte man das abfangen.
Als einfachste Variante würde mir folgendes erscheinen:
Direkt am Anfang der Methode display_links() das
$corr_max_page_links = $max_page_links > 0 ? $max_page_links : 1;
und im Code der Methode alle $max_page_links mit $corr_max_page_links ersetzen.
Gruß,
noRiddle
Attachments (0)
Change History (5)
comment:1 Changed 6 months ago by Tomcraft
comment:2 Changed 6 months ago by noRiddle
Ach die gibt's ja auch noch. Da hast du natürlich Recht.
Ich fänd's übrigens cool wenn die /admin/includes/configuration_limits.php ein auto_include hätte.
Gruß,
noRiddle
comment:3 Changed 6 months ago by noRiddle
*NACHTRAG*
...und in der /admin/configuration.php geschieht bei der Prüfung auf vorhandene Limits auch eine Prüfung auf numerischen POST-Wert mittels preg_match().
Das mittels Regex zu machen ist etwas aufwändig wo doch ein ctype_digit() ausreichen würde.
Gruß,
noRiddle
comment:4 Changed 6 months ago by Tomcraft
Werden wir dann entsprechend über die "/admin/includes/configuration_limits.php" lösen.
Das mit dem ctype_digit() und dem auto_include schauen wir uns noch an.
comment:5 Changed 6 months ago by GTB
- Resolution set to fixed
- Status changed from new to closed
In 12848:
Noch einfacher ist es der Minimum Wert einfach auf 1 zu setzen in der "/admin/includes/configuration_limits.php":