Update boolean settings

Settings of type boolean need to be set as boolean.
This commit is contained in:
FusionPBX 2024-10-23 12:00:01 -06:00 committed by GitHub
parent e83510c426
commit d91c7b4fe9
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 42 additions and 35 deletions

View File

@ -221,19 +221,21 @@ class settings {
$name = $row['default_setting_name'];
$category = $row['default_setting_category'];
$subcategory = $row['default_setting_subcategory'];
if (empty($subcategory)) {
if ($name == "array") {
if (!isset($this->settings[$category]) || !is_array($this->settings[$category])) {
$this->settings[$category] = array();
if (!empty($row['default_setting_value'])) {
if ($name == "boolean") {
if (gettype($row['default_setting_value']) === 'string') {
if ($row['default_setting_value'] === 'true') {
$this->settings[$category][$subcategory] = true;
}
else {
$this->settings[$category][$subcategory] = false;
}
}
elseif (gettype($row['default_setting_value']) === 'boolean') {
$this->settings[$category][$subcategory] = $row['default_setting_value'];
}
$this->settings[$category][] = $row['default_setting_value'];
}
else {
$this->settings[$category] = $row['default_setting_value'];
}
}
else {
if ($name == "array") {
elseif ($name == "array") {
if (!isset($this->settings[$category][$subcategory]) || !is_array($this->settings[$category][$subcategory])) {
$this->settings[$category][$subcategory] = array();
}
@ -276,18 +278,20 @@ class settings {
$name = $row['domain_setting_name'];
$category = $row['domain_setting_category'];
$subcategory = $row['domain_setting_subcategory'];
if (empty($subcategory)) {
if ($name == "array") {
if (!isset($this->settings[$category]) || !is_array($this->settings[$category])) {
$this->settings[$category] = array();
if (!empty($row['domain_setting_value'])) {
if ($name == "boolean") {
if (gettype($row['domain_setting_value']) === 'string') {
if ($row['domain_setting_value'] === 'true') {
$this->settings[$category][$subcategory] = true;
}
else {
$this->settings[$category][$subcategory] = false;
}
}
elseif (gettype($row['domain_setting_value']) === 'boolean') {
$this->settings[$category][$subcategory] = $row['domain_setting_value'];
}
$this->settings[$category][] = $row['domain_setting_value'];
}
else {
$this->settings[$category] = $row['domain_setting_value'];
}
}
else {
if ($name == "array") {
if (!isset($this->settings[$category][$subcategory]) || !is_array($this->settings[$category][$subcategory])) {
$this->settings[$category][$subcategory] = array();
@ -298,6 +302,7 @@ class settings {
$this->settings[$category][$subcategory] = $row['domain_setting_value'];
}
}
}
}
unset($result, $row);
@ -324,22 +329,26 @@ class settings {
$category = $row['user_setting_category'];
$subcategory = $row['user_setting_subcategory'];
if (!empty($row['user_setting_value'])) {
if (empty($subcategory)) {
if ($name == "array") {
$this->settings[$category][] = $row['user_setting_value'];
if ($name == "boolean") {
if (gettype($row['user_setting_value']) === 'string') {
if ($row['user_setting_value'] === 'true') {
$this->settings[$category][$subcategory] = true;
}
else {
$this->settings[$category][$subcategory] = false;
}
}
else {
$this->settings[$category] = $row['user_setting_value'];
}
}
else {
if ($name == "array") {
$this->settings[$category][$subcategory][] = $row['user_setting_value'];
}
else {
elseif (gettype($row['user_setting_value']) === 'boolean') {
$this->settings[$category][$subcategory] = $row['user_setting_value'];
}
}
elseif ($name == "array") {
$this->settings[$category][$subcategory][] = $row['user_setting_value'];
}
else {
$this->settings[$category][$subcategory] = $row['user_setting_value'];
}
}
}
}
@ -398,5 +407,3 @@ class settings {
}
}
}
?>