diff --git a/system/dbupdate_3.4.php b/system/dbupdate_3.4.php index 0e2b4e7c6..8ff7fab2b 100644 --- a/system/dbupdate_3.4.php +++ b/system/dbupdate_3.4.php @@ -74,6 +74,8 @@ require_once('dbupdate_3.4/55968_index_anrechnung.php'); require_once('dbupdate_3.4/25999_locale_update.php'); require_once('dbupdate_3.4/55289_pep_fine_tuning.php'); require_once('dbupdate_3.4/55614_perm_verwaltetoe.php'); +require_once('dbupdate_3.4/61730_Dashboard_Anpassungen.php'); + // *** Pruefung und hinzufuegen der neuen Attribute und Tabellen echo '

Pruefe Tabellen und Attribute!

'; diff --git a/system/dbupdate_3.4/61730_Dashboard_Anpassungen.php b/system/dbupdate_3.4/61730_Dashboard_Anpassungen.php new file mode 100644 index 000000000..a35c6188f --- /dev/null +++ b/system/dbupdate_3.4/61730_Dashboard_Anpassungen.php @@ -0,0 +1,34 @@ +db_query("SELECT preset_id FROM dashboard.tbl_dashboard_preset WHERE preset ? 'widgets'"); +$result_num_rows = $db->db_num_rows($result); +$errorList = array(); +for($i = 0; $i < $result_num_rows; $i++) +{ + $row = $db->db_fetch_object($result, $i); + + $qry = " + UPDATE dashboard.tbl_dashboard_preset + SET preset = + COALESCE( + (SELECT jsonb_object_agg(keys,values) FROM ( + SELECT key AS keys,jsonb_build_object('widgets',to_jsonb(value)) AS values + FROM jsonb_each(preset->'widgets') + ) AS subquery + ),preset) + WHERE preset_id = ".$row->preset_id; + + $db->db_query($qry); + if (!$db->db_query($qry)) + array_push($errorList,'
dashboard.tbl_dashboard_preset: ' . $db->db_last_error() . '
') ; + +} + +if(empty($errorList)){ + echo '
successfully updated dashboard.tbl_dashboard_preset'; +} +else{ + foreach($errorList as $error){ + echo $error; + } +}