Skip to content

Commit 4205d77

Browse files
committed
Internal: Improve get_hosting_limit() return type (avoid conversion errors)
1 parent d682ed3 commit 4205d77

2 files changed

Lines changed: 13 additions & 11 deletions

File tree

public/main/inc/lib/api.lib.php

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -6881,23 +6881,23 @@ function api_get_configuration_value($variable)
68816881
}
68826882

68836883
/**
6884-
* Gets a specific hosting limit.
6884+
* Gets a specific hosting limit, as defined in config/settings_overrides.yaml
68856885
*
68866886
* @param int $urlId The URL ID.
68876887
* @param string $limitName The name of the limit.
6888-
* @return mixed The value of the limit, or null if not found.
6888+
* @return ?int The value of the limit, or null if not found.
68896889
*/
6890-
function get_hosting_limit(int $urlId, string $limitName): mixed
6890+
function get_hosting_limit(int $urlId, string $limitName): ?int
68916891
{
68926892
if (!Container::$container->hasParameter('settings_overrides')) {
6893-
return [];
6893+
return null;
68946894
}
68956895

68966896
$settingsOverrides = Container::$container->getParameter('settings_overrides') ?? [];
68976897

68986898
// Defensive: ensure array
68996899
if (!is_array($settingsOverrides)) {
6900-
return [];
6900+
return null;
69016901
}
69026902

69036903
$urlOverrides = (isset($settingsOverrides[$urlId]) && is_array($settingsOverrides[$urlId]))
@@ -6908,16 +6908,18 @@ function get_hosting_limit(int $urlId, string $limitName): mixed
69086908
? $settingsOverrides['default']
69096909
: [];
69106910

6911-
$limits = $urlOverrides['hosting_limit'] ?? ($defaultOverrides['hosting_limit'] ?? []);
6911+
$limits = $urlOverrides['hosting_limit'] ?? ($defaultOverrides['hosting_limit'] ?? null);
69126912

69136913
// Defensive: ensure iterable array
69146914
if (!is_array($limits)) {
6915-
$limits = [];
6915+
$limits = null;
69166916
}
69176917

6918-
foreach ($limits as $limitArray) {
6919-
if (is_array($limitArray) && array_key_exists($limitName, $limitArray)) {
6920-
return $limitArray[$limitName];
6918+
if (is_array($limits)) {
6919+
foreach ($limits as $limitArray) {
6920+
if (is_array($limitArray) && array_key_exists($limitName, $limitArray)) {
6921+
return (int) $limitArray[$limitName];
6922+
}
69216923
}
69226924
}
69236925

public/main/inc/lib/diagnoser.lib.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -370,7 +370,7 @@ public function get_chamilo_data()
370370
$limit = 0;
371371
}
372372

373-
$message2 .= sprintf(get_lang('Total space used by portal %s limit is %s MB'), $size, $limit);
373+
$message2 .= sprintf(get_lang('Total space used by portal %s limit is %s MB'), $size, (string) $limit);
374374
}
375375

376376
$array[] = $this->build_setting(

0 commit comments

Comments
 (0)