From 1c74007dc4561a53b67cba541e12cb49ab4dfa1b Mon Sep 17 00:00:00 2001 From: valentina Date: Tue, 5 Nov 2024 16:54:48 +0100 Subject: [PATCH] fix: controlli database --- modules/aggiornamenti/database.php | 247 +++++++++++++++-------------- 1 file changed, 125 insertions(+), 122 deletions(-) diff --git a/modules/aggiornamenti/database.php b/modules/aggiornamenti/database.php index 6bec547d1..76c3ec100 100644 --- a/modules/aggiornamenti/database.php +++ b/modules/aggiornamenti/database.php @@ -77,7 +77,6 @@ $effettua_controllo = filter('effettua_controllo'); if (empty($effettua_controllo)) { echo '
-
@@ -143,25 +142,26 @@ $results_settings_added = settings_diff($settings, $data_settings); // Schermata di visualizzazione degli errori if (!empty($results) || !empty($results_added) || !empty($results_settings) || !empty($results_settings_added)) { - if (!empty($results)) { + if ($results) { echo ' -

'.tr("Segue l'elenco delle tabelle del database che presentano una struttura diversa rispetto a quella prevista nella versione ufficiale del gestionale").'.

-
- - '.tr('Attenzione: questa funzionalità può presentare dei risultati falsamente positivi, sulla base del contenuto del file _FILE_ e la versione di _MYSQL_VERSION_ di _DBMS_TYPE_ rilevata a sistema', [ +

'.tr("Segue l'elenco delle tabelle del database che presentano una struttura diversa rispetto a quella prevista nella versione ufficiale del gestionale").'.

+
+ + '.tr('Attenzione: questa funzionalità può presentare dei risultati falsamente positivi, sulla base del contenuto del file _FILE_ e la versione di _MYSQL_VERSION_ di _DBMS_TYPE_ rilevata a sistema', [ '_FILE_' => ''.$file_to_check_database.'', '_MYSQL_VERSION_' => ''.$database->getMySQLVersion().'', '_DBMS_TYPE_' => ''.$database->getType().'', ]).'. -
'; +
'; foreach ($results as $table => $errors) { echo ' -

'.$table.'

'; +

'.$table.'

'; if (array_key_exists('current', $errors) && $errors['current'] == null) { echo ' -
'.tr('Tabella assente').'
'; +
'.tr('Tabella assente').' +
'; continue; } @@ -170,15 +170,15 @@ if (!empty($results) || !empty($results_added) || !empty($results_settings) || ! if (!empty($errors)) { echo ' - - - - - - - +
'.tr('Colonna').''.tr('Conflitto').'
+ + + + + + - '; + '; foreach ($errors as $name => $diff) { $query = ''; $null = ''; @@ -202,62 +202,63 @@ if (!empty($results) || !empty($results_added) || !empty($results_settings) || ! } echo ' - - - - '; + + + + '; } echo ' - -
'.tr('Colonna').''.tr('Conflitto').'
- '.$name.' - - '.$query.'; -
+ '.$name.' + + '.$query.'; +
'; + +'; } if (!empty($foreign_keys)) { echo ' - - - - - - - +
'.tr('Foreign keys').''.tr('Conflitto').'
+ + + + + + - '; + '; foreach ($foreign_keys as $name => $diff) { echo ' - - - - '; + + + + '; } echo ' - -
'.tr('Foreign keys').''.tr('Conflitto').'
- '.($name ?: $diff['expected']['title']).' - - ALTER TABLE '.$table.' ADD CONSTRAINT '.$name.' FOREIGN KEY ('.$diff['expected']['column'].') REFERENCES '.$diff['expected']['referenced_table'].'(`'.$diff['expected']['referenced_column'].'`) ON DELETE '.$diff['expected']['delete_rule'].' ON UPDATE '.$diff['expected']['update_rule'].'; -
+ '.($name ?: $diff['expected']['title']).' + + ALTER TABLE '.$table.' ADD CONSTRAINT '.$name.' FOREIGN KEY ('.$diff['expected']['column'].') REFERENCES '.$diff['expected']['referenced_table'].'(`'.$diff['expected']['referenced_column'].'`) ON DELETE '.$diff['expected']['delete_rule'].' ON UPDATE '.$diff['expected']['update_rule'].'; +
'; + +'; } } } - if (!empty($results_added)) { + if ($results_added) { foreach ($results_added as $table => $errors) { - if ($results[$table] && array_keys($results[$table]) != array_keys($errors)) { + if (($results[$table] && array_keys($results[$table]) != array_keys($errors)) || (empty($results[$table]) && !empty($errors))) { echo ' -

'.$table.'

'; +

'.$table.'

'; if (array_key_exists('current', $errors) && $errors['current'] == null) { echo ' -
'.tr('Tabella assente').'
'; +
'.tr('Tabella assente').' +
'; continue; } @@ -266,15 +267,15 @@ if (!empty($results) || !empty($results_added) || !empty($results_settings) || ! if (!empty($errors)) { echo ' - - - - - - - +
'.tr('Colonna').''.tr('Conflitto').'
+ + + + + + - '; + '; foreach ($errors as $name => $diff) { $query = ''; @@ -290,64 +291,65 @@ if (!empty($results) || !empty($results_added) || !empty($results_settings) || ! } echo ' - - - - '; + + + + '; } } echo ' - -
'.tr('Colonna').''.tr('Conflitto').'
- '.$name.' - - '.$query.' -
+ '.$name.' + + '.$query.' +
'; + +'; } if (!empty($foreign_keys)) { echo ' - - - - - - - +
'.tr('Foreign keys').''.tr('Conflitto').'
+ + + + + + - '; + '; foreach ($foreign_keys as $name => $diff) { echo ' - - - - '; + + + + '; } echo ' - -
'.tr('Foreign keys').''.tr('Conflitto').'
- '.$name.' - - Chiave esterna non prevista -
+ '.$name.' + + Chiave esterna non prevista +
'; + +'; } } } } - if (!empty($results_settings)) { + if ($results_settings) { echo ' - -

Problemi impostazioni

- - - - - - + +

Problemi impostazioni

+ + + + + + + '; foreach ($results_settings as $key => $setting) { if (!$setting['current']) { @@ -356,44 +358,45 @@ if (!empty($results) || !empty($results_added) || !empty($results_settings) || ! $class = 'warning'; } echo ' - - - - - '; + + + + + '; } echo '
'.tr('Nome').''.tr('Valore attuale').''.tr('Valore atteso').'
'.tr('Nome').''.tr('Valore attuale').''.tr('Valore atteso').'
- '.$key.' - - '.($setting['current'] ?: '⚠️ Impostazione mancante').' - - '.$setting['expected'].' -
+ '.$key.' + + '.($setting['current'] ?: '⚠️ Impostazione mancante').' + + '.$setting['expected'].' +
'; } - if (!empty($results_settings_added)) { + + if ($results_settings_added) { echo ' - -

Impostazioni non previste

- - - - - + +

Impostazioni non previste

+ + + + + '; foreach ($results_settings_added as $key => $setting) { if ($setting['current'] == null) { echo ' - - - - '; + + + + '; } } echo ' @@ -403,6 +406,6 @@ if (!empty($results) || !empty($results_added) || !empty($results_settings) || ! } else { echo '
- '.tr('Il database non presenta problemi di integrità').'. + '.tr('Il database non presenta problemi di integrità').'.
'; }
'.tr('Nome').''.tr('Valore attuale').'
'.tr('Nome').''.tr('Valore attuale').'
- '.$key.' - - '.$setting['expected'].' -
+ '.$key.' + + '.$setting['expected'].' +