mirror of
https://github.com/devcode-it/openstamanager.git
synced 2024-12-18 19:23:10 +01:00
Aggiunta controllo su impostazioni
This commit is contained in:
parent
0dace8b900
commit
453b3603cc
1
.gitignore
vendored
1
.gitignore
vendored
@ -93,6 +93,7 @@ manifest.json
|
|||||||
checksum.json
|
checksum.json
|
||||||
database.json
|
database.json
|
||||||
database_5_7.json
|
database_5_7.json
|
||||||
|
settings.json
|
||||||
|
|
||||||
/tests/_log/*
|
/tests/_log/*
|
||||||
/tests/_temp/*
|
/tests/_temp/*
|
||||||
|
@ -473,6 +473,7 @@ function release(done) {
|
|||||||
'!checksum.json',
|
'!checksum.json',
|
||||||
'!database.json',
|
'!database.json',
|
||||||
'!database_5_7.json',
|
'!database_5_7.json',
|
||||||
|
'!settings.json',
|
||||||
'!manifest.json',
|
'!manifest.json',
|
||||||
'!.idea/**',
|
'!.idea/**',
|
||||||
'!.git/**',
|
'!.git/**',
|
||||||
@ -487,6 +488,7 @@ function release(done) {
|
|||||||
'!config.inc.php',
|
'!config.inc.php',
|
||||||
'!psalm.xml',
|
'!psalm.xml',
|
||||||
'!update/structure.php',
|
'!update/structure.php',
|
||||||
|
'!update/settings.php',
|
||||||
'!**/*.(lock|phar|log|zip|bak|jar|txt)',
|
'!**/*.(lock|phar|log|zip|bak|jar|txt)',
|
||||||
'!**/~*',
|
'!**/~*',
|
||||||
'!vendor/tecnickcom/tcpdf/examples/**',
|
'!vendor/tecnickcom/tcpdf/examples/**',
|
||||||
@ -535,6 +537,13 @@ function release(done) {
|
|||||||
name: 'database.json'
|
name: 'database.json'
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// Aggiunta del file per il controllo delle impostazioni
|
||||||
|
archive.append(shell.exec('php update/settings.php', {
|
||||||
|
silent: true
|
||||||
|
}).stdout, {
|
||||||
|
name: 'settings.json'
|
||||||
|
});
|
||||||
|
|
||||||
// Aggiunta del commit corrente nel file REVISION
|
// Aggiunta del commit corrente nel file REVISION
|
||||||
archive.append(shell.exec('git rev-parse --short HEAD', {
|
archive.append(shell.exec('git rev-parse --short HEAD', {
|
||||||
silent: true
|
silent: true
|
||||||
|
@ -304,6 +304,7 @@ $files_to_check = [
|
|||||||
'manifest.json' => tr('Necessario per l\'aggiunta a schermata home da terminale (creato al termine della configurazione)'),
|
'manifest.json' => tr('Necessario per l\'aggiunta a schermata home da terminale (creato al termine della configurazione)'),
|
||||||
'database_5_7.json' => tr('Necessario per il controllo integrità con database MySQL 5.7.x'),
|
'database_5_7.json' => tr('Necessario per il controllo integrità con database MySQL 5.7.x'),
|
||||||
'database.json' => tr('Necessario per il controllo integrità con database MySQL 8.0.x'),
|
'database.json' => tr('Necessario per il controllo integrità con database MySQL 8.0.x'),
|
||||||
|
'settings.json' => tr('Necessario per il controllo integrità impostazioni del database'),
|
||||||
'checksum.json' => tr('Necessario per il controllo integrità dei files del gestionale'),
|
'checksum.json' => tr('Necessario per il controllo integrità dei files del gestionale'),
|
||||||
];
|
];
|
||||||
|
|
||||||
|
@ -94,8 +94,14 @@ if (empty($data)) {
|
|||||||
$info = Update::getDatabaseStructure();
|
$info = Update::getDatabaseStructure();
|
||||||
$results = integrity_diff($data, $info);
|
$results = integrity_diff($data, $info);
|
||||||
|
|
||||||
|
$contents = file_get_contents(base_dir().'/settings.json');
|
||||||
|
$data = json_decode($contents, true);
|
||||||
|
|
||||||
|
$settings = Update::getSettings();
|
||||||
|
$results_settings = array_diff($data, $settings);
|
||||||
|
|
||||||
// Schermata di visualizzazione degli errori
|
// Schermata di visualizzazione degli errori
|
||||||
if (!empty($results)) {
|
if (!empty($results) || !empty($results_settings)) {
|
||||||
echo '
|
echo '
|
||||||
<p>'.tr("Segue l'elenco delle tabelle del database che presentano una struttura diversa rispetto a quella prevista nella versione ufficiale del gestionale").'.</p>
|
<p>'.tr("Segue l'elenco delle tabelle del database che presentano una struttura diversa rispetto a quella prevista nella versione ufficiale del gestionale").'.</p>
|
||||||
<div class="alert alert-warning">
|
<div class="alert alert-warning">
|
||||||
@ -187,9 +193,35 @@ if (!empty($results)) {
|
|||||||
</table>';
|
</table>';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
if (!empty($results_settings)) {
|
||||||
|
echo'
|
||||||
|
<table class="table table-bordered">
|
||||||
|
<thead>
|
||||||
|
<h3>Impostazioni mancanti</h3>
|
||||||
|
<tr>
|
||||||
|
<th>'.tr('Nome').'</th>
|
||||||
|
<th>'.tr('Tipo').'</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>';
|
||||||
|
foreach ($results_settings as $key => $setting) {
|
||||||
|
echo'
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
'.$key.'
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
'.$setting.'
|
||||||
|
</td>
|
||||||
|
</tr>';
|
||||||
|
}
|
||||||
echo '
|
echo '
|
||||||
|
</tbody>
|
||||||
|
</table>';
|
||||||
|
}
|
||||||
|
} else{
|
||||||
|
echo '
|
||||||
<div class="alert alert-info">
|
<div class="alert alert-info">
|
||||||
<i class="fa fa-info-circle"></i> '.tr('Il database non presenta problemi di integrità').'.
|
<i class="fa fa-info-circle"></i> '.tr('Il database non presenta problemi di integrità').'.
|
||||||
</div>';
|
</div>';
|
||||||
}
|
}
|
@ -208,7 +208,7 @@ class Update
|
|||||||
self::normalizeDatabase($database->getDatabaseName());
|
self::normalizeDatabase($database->getDatabaseName());
|
||||||
|
|
||||||
if (class_exists('\Models\Cache')) {
|
if (class_exists('\Models\Cache')) {
|
||||||
\Models\Cache::pool('Ultima versione di OpenSTAManager disponibile')->set(null);
|
Models\Cache::pool('Ultima versione di OpenSTAManager disponibile')->set(null);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Correzione permessi per le cartelle backup e files
|
// Correzione permessi per le cartelle backup e files
|
||||||
@ -259,7 +259,7 @@ class Update
|
|||||||
for ($i = $start; $i < $end; ++$i) {
|
for ($i = $start; $i < $end; ++$i) {
|
||||||
try {
|
try {
|
||||||
$database->query($queries[$i]);
|
$database->query($queries[$i]);
|
||||||
} catch (\Exception $e) {
|
} catch (Exception $e) {
|
||||||
throw new PDOException(tr('Aggiornamento fallito').': '.$queries[$i]);
|
throw new PDOException(tr('Aggiornamento fallito').': '.$queries[$i]);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -343,9 +343,9 @@ class Update
|
|||||||
self::normalizeDatabase($database->getDatabaseName());
|
self::normalizeDatabase($database->getDatabaseName());
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
} catch (\Exception $e) {
|
} catch (Exception $e) {
|
||||||
$logger = logger();
|
$logger = logger();
|
||||||
$logger->addRecord(\Monolog\Logger::EMERGENCY, $e->getMessage());
|
$logger->addRecord(Monolog\Logger::EMERGENCY, $e->getMessage());
|
||||||
}
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
@ -419,6 +419,13 @@ class Update
|
|||||||
return $info;
|
return $info;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static function getSettings()
|
||||||
|
{
|
||||||
|
$settings = database()->table('zz_settings')->pluck('tipo', 'nome')->toArray();
|
||||||
|
|
||||||
|
return $settings;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Controlla la presenza di aggiornamenti e prepara il database per la procedura.
|
* Controlla la presenza di aggiornamenti e prepara il database per la procedura.
|
||||||
*/
|
*/
|
||||||
|
11
update/settings.php
Normal file
11
update/settings.php
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
error_reporting(0);
|
||||||
|
|
||||||
|
$skip_permissions = true;
|
||||||
|
include_once __DIR__.'/../core.php';
|
||||||
|
|
||||||
|
$info = Update::getSettings();
|
||||||
|
$response = json_encode($info);
|
||||||
|
|
||||||
|
echo $response;
|
Loading…
Reference in New Issue
Block a user