From b7ea8aada66dd64cd5c2898bd6775a16635207cf Mon Sep 17 00:00:00 2001 From: raviks789 Date: Tue, 27 Aug 2024 17:10:10 +0200 Subject: [PATCH] Monitoring/CustomVarRenderer: Cast data field setting value data_list_id to integer for postgres database --- .../ProvidedHook/Monitoring/CustomVarRenderer.php | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/library/Director/ProvidedHook/Monitoring/CustomVarRenderer.php b/library/Director/ProvidedHook/Monitoring/CustomVarRenderer.php index 113da5d7..44a035ec 100644 --- a/library/Director/ProvidedHook/Monitoring/CustomVarRenderer.php +++ b/library/Director/ProvidedHook/Monitoring/CustomVarRenderer.php @@ -109,6 +109,12 @@ class CustomVarRenderer extends CustomVarRendererHook } if (! empty($fieldsWithDataLists)) { + if ($this->db()->getDbType() === 'pgsql') { + $joinCondition = 'CAST(dds.setting_value AS INTEGER) = dde.list_id'; + } else { + $joinCondition = 'dds.setting_value = dde.list_id'; + } + $dataListEntries = $db->select()->from( ['dds' => 'director_datafield_setting'], [ @@ -118,7 +124,7 @@ class CustomVarRenderer extends CustomVarRendererHook ] )->join( ['dde' => 'director_datalist_entry'], - 'dds.setting_value = dde.list_id', + $joinCondition, [] )->where('dds.datafield_id', array_keys($fieldsWithDataLists)) ->where('dds.setting_name', 'datalist_id');