Amélioration de la méthode de backup
This commit is contained in:
parent
114dcad072
commit
2d2bca5e23
@ -5,6 +5,7 @@
|
|||||||
- Validation de la connexion au site grâce à l'envoi d'un code par email. L'option est activée depuis la configuration du site, onglet connexion. Elle s'active par groupe montant, exemple "éditeur" pour éditeurs et administrateurs.
|
- Validation de la connexion au site grâce à l'envoi d'un code par email. L'option est activée depuis la configuration du site, onglet connexion. Elle s'active par groupe montant, exemple "éditeur" pour éditeurs et administrateurs.
|
||||||
- Optimisation du chargement des variables de classe.
|
- Optimisation du chargement des variables de classe.
|
||||||
- Suppression de redondance de déclaration des charset.
|
- Suppression de redondance de déclaration des charset.
|
||||||
|
- Méthode de backup optimisée.
|
||||||
|
|
||||||
**Corrections :**
|
**Corrections :**
|
||||||
- Corrige un bug de changement de mot de passe pour les comptes non admin.
|
- Corrige un bug de changement de mot de passe pour les comptes non admin.
|
||||||
|
@ -197,14 +197,20 @@ class helper
|
|||||||
|
|
||||||
public static function autoBackup($folder, $filter = ['backup', 'tmp'])
|
public static function autoBackup($folder, $filter = ['backup', 'tmp'])
|
||||||
{
|
{
|
||||||
// Creation du ZIP
|
// Création du nom de fichier ZIP
|
||||||
$baseName = str_replace('/', '', helper::baseUrl(false, false));
|
$baseName = str_replace('/', '', helper::baseUrl(false, false));
|
||||||
$baseName = empty($baseName) ? 'ZwiiCMS' : $baseName;
|
$baseName = empty($baseName) ? 'ZwiiCMS' : $baseName;
|
||||||
$fileName = $baseName . '-backup-' . date('Y-m-d-H-i-s', time()) . '.zip';
|
$fileName = $baseName . '-backup-' . date('Y-m-d-H-i-s') . '.zip';
|
||||||
|
|
||||||
|
// Initialisation de l'archive ZIP
|
||||||
$zip = new ZipArchive();
|
$zip = new ZipArchive();
|
||||||
$zip->open($folder . $fileName, ZipArchive::CREATE | ZipArchive::OVERWRITE);
|
if ($zip->open($folder . $fileName, ZipArchive::CREATE | ZipArchive::OVERWRITE) !== true) {
|
||||||
|
return false; // Retourne false si l'ouverture échoue
|
||||||
|
}
|
||||||
|
|
||||||
$directory = 'site/';
|
$directory = 'site/';
|
||||||
//$filter = array('backup','tmp','file');
|
|
||||||
|
// Récupération des fichiers et des dossiers
|
||||||
$files = new RecursiveIteratorIterator(
|
$files = new RecursiveIteratorIterator(
|
||||||
new RecursiveCallbackFilterIterator(
|
new RecursiveCallbackFilterIterator(
|
||||||
new RecursiveDirectoryIterator(
|
new RecursiveDirectoryIterator(
|
||||||
@ -212,23 +218,30 @@ class helper
|
|||||||
RecursiveDirectoryIterator::SKIP_DOTS
|
RecursiveDirectoryIterator::SKIP_DOTS
|
||||||
),
|
),
|
||||||
function ($fileInfo, $key, $iterator) use ($filter) {
|
function ($fileInfo, $key, $iterator) use ($filter) {
|
||||||
return $fileInfo->isFile() || !in_array($fileInfo->getBaseName(), $filter);
|
// Inclure les fichiers ou les répertoires non filtrés
|
||||||
|
return $fileInfo->isFile() || ($fileInfo->isDir() && !in_array($fileInfo->getBaseName(), $filter));
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
foreach ($files as $name => $file) {
|
|
||||||
|
// Ajout des fichiers à l'archive
|
||||||
|
foreach ($files as $file) {
|
||||||
if (!$file->isDir()) {
|
if (!$file->isDir()) {
|
||||||
$filePath = $file->getRealPath();
|
$filePath = $file->getRealPath();
|
||||||
$relativePath = substr($filePath, strlen(realpath($directory)) + 1);
|
$relativePath = str_replace(DIRECTORY_SEPARATOR, '/', substr($filePath, strlen(realpath($directory)) + 1));
|
||||||
$zip->addFile($filePath, $relativePath);
|
$zip->addFile($filePath, $relativePath);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Fermeture de l'archive ZIP
|
||||||
$zip->close();
|
$zip->close();
|
||||||
return ($fileName);
|
|
||||||
|
return $fileName;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Retourne la liste des modules installés dans un tableau composé
|
* Retourne la liste des modules installés dans un tableau composé
|
||||||
* du nom réel
|
* du nom réel
|
||||||
|
Loading…
Reference in New Issue
Block a user