. */ include_once __DIR__.'/../../core.php'; $backups = Backup::getList(); // Controllo sul requisito ZIP if (!extension_loaded('zip')) { echo "
".tr('Estensione zip non supportata').'. '.tr('Il backup verrà eseguito, ma non in formato ZIP. Sarà quindi scaricabile solo tramite FTP o con copia-incolla').'.
'; } if (!empty($backup_dir)) { $message = tr('Il percorso di backup è attualmente in: _PATH_', [ '_PATH_' => ''.slashes($backup_dir).'', ]); } else { $message = tr('Sembra che tu non abbia ancora specificato un percorso per il backup').'.'; } // Controllo sui permessi di scrittura if (!is_writable($backup_dir) || !is_readable($backup_dir)) { echo '
'.$message.'
'.tr('La cartella di backup indicata non è utilizzabile dal gestionale a causa di alcuni permessi di scrittura non impostati correttamente').'.
'; return; } echo '

'.tr('Il backup è molto importante perché permette di creare una copia della propria installazione e relativi dati per poterla poi ripristinare in seguito a errori, cancellazioni accidentali o guasti hardware').'.

'; if (string_starts_with($backup_dir, base_dir())) { echo '
'.tr('Per motivi di sicurezza si consiglia di modificare il percorso della cartella di backup al di fuori della cartella di OSM, possibilmente in una unità esterna. Puoi modificare il percorso di backup dal tuo file _FILE_', [ '_FILE_' => 'config.inc.php', ]).'.
'; } // Operazioni JavaScript echo ' '; echo '

'.$message.'


'.tr('Spazio totale occupato dai backup: _SPAZIO_', [ '_SPAZIO_' => '', ]).'

'.tr('Numero di backup: _NUM_', [ '_NUM_' => count($backups), ]).'

'; $upload_max_filesize = ini_get('upload_max_filesize'); $max_execution_time = ini_get('max_execution_time'); if (setting('Permetti il ripristino di backup da file esterni')) { echo '

'.tr('Ripristina backup').' (upload_max_filesize: '.$upload_max_filesize.') (max_execution_time: '.$max_execution_time.')

{[ "type": "file", "name": "blob", "required": 1, "accept": ".zip" ]}
'; } echo '
'; // Lettura file di backup if (file_exists($backup_dir)) { $backups_zip = []; $backups_file = []; foreach ($backups as $key => $backup) { if (string_ends_with($backup, '.zip')) { $backups_zip[$key] = $backup; } else { $backups_file[$key] = $backup; } } if (empty($backups_zip) && empty($backups_file)) { echo '
'.tr('Non è ancora stato trovato alcun backup!').' '.tr('Se hai già inserito dei dati su OSM crealo il prima possibile...').'
'; } else { echo '

'.tr('Backup compressi').'

'; if (!empty($backups_zip)) { foreach ($backups_zip as $id => $backup) { $name = basename($backup); $info = Backup::readName($backup); $data = $info['YYYY'].'-'.$info['m'].'-'.$info['d']; $ora = $info['H'].':'.$info['i'].':'.$info['s']; $tipo = $info['AAAAAAA']; echo '

'.tr('Backup del _DATE_ alle _TIME_', [ '_DATE_' => Translator::dateToLocale($data), '_TIME_' => Translator::timeToLocale($ora), ]).'

'.tr('Nome del file').': '.$name.'
'.tr('Tipo').': '.(($tipo == 'PARTIAL')? '🟠 '.tr('Parziale'):'🟢 '.tr('Completo')).'
'.tr('Dimensione').':

'.tr('Scarica').'
'; } } else { echo '
'.tr('Non è stato trovato alcun backup di questa tipologia.').'
'; } echo '

'.tr('Backup non compressi').'

'; // Backup non compressi e quindi non scaricabili if (!empty($backups_file)) { foreach ($backups_file as $backup) { $name = basename($backup); $info = Backup::readName($backup); $data = $info['YYYY'].'-'.$info['m'].'-'.$info['d']; $ora = $info['H'].':'.$info['i'].':'.$info['s']; echo '

'.tr('Backup del _DATE_ alle _TIME_', [ '_DATE_' => Translator::dateToLocale($data), '_TIME_' => Translator::timeToLocale($ora), ]).'

'.tr('Nome del file').': '.$name.'
'.tr('Dimensione').':

'.tr('Non scaricabile').'
'; } } else { echo '
'.tr('Non è stato trovato alcun backup di questa tipologia.').'
'; } echo '
'; } } else { echo '
'.tr('La cartella di backup non esiste!').' '.tr('Non è possibile eseguire i backup!').'
'; } // Creazione backup if (!empty($backup_dir)) { echo '
'; }