deleteDir

This commit is contained in:
Fred Tempez 2023-07-19 18:07:12 +02:00
parent 529f86c873
commit fec70444ee
11 changed files with 28 additions and 28 deletions

View File

@ -1231,13 +1231,13 @@ class common
* Effacer un dossier non vide. * Effacer un dossier non vide.
* @param string URL du dossier à supprimer * @param string URL du dossier à supprimer
*/ */
public function removeDir($path) public function deleteDir($path)
{ {
foreach (new DirectoryIterator($path) as $item) { foreach (new DirectoryIterator($path) as $item) {
if ($item->isFile()) if ($item->isFile())
@unlink($item->getRealPath()); @unlink($item->getRealPath());
if (!$item->isDot() && $item->isDir()) if (!$item->isDot() && $item->isDir())
$this->removeDir($item->getRealPath()); $this->deleteDir($item->getRealPath());
} }
return (rmdir($path)); return (rmdir($path));
} }

View File

@ -703,7 +703,7 @@ if ($this->getData(['core', 'dataVersion']) < 11400) {
// Effacer le dossier // Effacer le dossier
if (is_dir('core/module/addon')) { if (is_dir('core/module/addon')) {
$this->removeDir('core/module/addon'); $this->deleteDir('core/module/addon');
} }
@ -901,10 +901,10 @@ if ($this->getData(['core', 'dataVersion']) < 12000) {
// Supprimer les fichier associés // Supprimer les fichier associés
if (is_dir('core/module/translate/ressource')) { if (is_dir('core/module/translate/ressource')) {
$this->removeDir('core/module/translate/ressource'); $this->deleteDir('core/module/translate/ressource');
} }
if (is_dir('core/vendor/i18n/css')) { if (is_dir('core/vendor/i18n/css')) {
$this->removeDir('core/vendor/i18n/css'); $this->deleteDir('core/vendor/i18n/css');
} }
if (file_exists('core/vendor/i18n/inc.json')) { if (file_exists('core/vendor/i18n/inc.json')) {
unlink('core/vendor/i18n/inc.json'); unlink('core/vendor/i18n/inc.json');
@ -939,7 +939,7 @@ if ($this->getData(['core', 'dataVersion']) < 12301) {
// Nettoyage de flatPickr // Nettoyage de flatPickr
if (is_dir('core/vendor/flatpickr')) { if (is_dir('core/vendor/flatpickr')) {
$this->removeDir('core/vendor/flatpickr'); $this->deleteDir('core/vendor/flatpickr');
} }
// email reply // email reply
@ -1010,7 +1010,7 @@ if ($this->getData(['core', 'dataVersion']) < 13000) {
// Efface le dossier translate // Efface le dossier translate
if (is_dir('core/module/translate')) { if (is_dir('core/module/translate')) {
$this->removeDir('core/module/translate'); $this->deleteDir('core/module/translate');
} }
// Ajouter le prénom comme pseudo et le pseudo comme signature // Ajouter le prénom comme pseudo et le pseudo comme signature

View File

@ -398,7 +398,7 @@ class config extends common
// Copie dans le dossier /site/data // Copie dans le dossier /site/data
$success = $this->copyDir(self::TEMP_DIR . $tmpDir, 'site/'); $success = $this->copyDir(self::TEMP_DIR . $tmpDir, 'site/');
$this->removeDir(self::TEMP_DIR . $tmpDir); $this->deleteDir(self::TEMP_DIR . $tmpDir);
// Restaurer les users originaux d'une v10 si option cochée // Restaurer les users originaux d'une v10 si option cochée
if ( if (

View File

@ -175,7 +175,7 @@ class install extends common
$_SESSION['ZWII_CONTENT'] !== 'fr_FR' $_SESSION['ZWII_CONTENT'] !== 'fr_FR'
) { ) {
if (is_dir(self::DATA_DIR . 'fr_FR')) if (is_dir(self::DATA_DIR . 'fr_FR'))
$this->removeDir(self::DATA_DIR . 'fr_FR'); $this->deleteDir(self::DATA_DIR . 'fr_FR');
} }
// Sauvegarder la configuration du Proxy // Sauvegarder la configuration du Proxy

View File

@ -583,7 +583,7 @@ class language extends common
$success = false; $success = false;
// Effacement d'une site dans une langue // Effacement d'une site dans une langue
if (is_dir(self::DATA_DIR . $lang) === true) { if (is_dir(self::DATA_DIR . $lang) === true) {
$success = $this->removeDir(self::DATA_DIR . $lang); $success = $this->deleteDir(self::DATA_DIR . $lang);
} }
// Valeurs en sortie // Valeurs en sortie
$this->addOutput([ $this->addOutput([

View File

@ -258,7 +258,7 @@ class page extends common
array_key_exists($moduleId, $modulesData) array_key_exists($moduleId, $modulesData)
&& is_dir($modulesData[$moduleId]['dataDirectory'] . $page) && is_dir($modulesData[$moduleId]['dataDirectory'] . $page)
) { ) {
$this->removeDir($modulesData[$moduleId]['dataDirectory'] . $page); $this->deleteDir($modulesData[$moduleId]['dataDirectory'] . $page);
} }
// Effacer la page // Effacer la page
$this->deleteData(['page', $page]); $this->deleteData(['page', $page]);
@ -335,7 +335,7 @@ class page extends common
// Placer la feuille de style dans un dossier au nom de la nouvelle instance // Placer la feuille de style dans un dossier au nom de la nouvelle instance
mkdir($modulesData[$moduleId]['dataDirectory'] . $pageId, 0755); mkdir($modulesData[$moduleId]['dataDirectory'] . $pageId, 0755);
copy($modulesData[$moduleId]['dataDirectory'] . $this->getUrl(2), $modulesData[$moduleId]['dataDirectory'] . $pageId); copy($modulesData[$moduleId]['dataDirectory'] . $this->getUrl(2), $modulesData[$moduleId]['dataDirectory'] . $pageId);
$this->removeDir($modulesData[$moduleId]['dataDirectory'] . $this->getUrl(2)); $this->deleteDir($modulesData[$moduleId]['dataDirectory'] . $this->getUrl(2));
// Mettre à jour le nom de la feuille de style // Mettre à jour le nom de la feuille de style
$this->setData(['module', $pageId, 'theme', 'style', $modulesData[$moduleId]['dataDirectory'] . $pageId]); $this->setData(['module', $pageId, 'theme', 'style', $modulesData[$moduleId]['dataDirectory'] . $pageId]);
} }

View File

@ -73,13 +73,13 @@ class plugin extends common
$infoModules = helper::getModules(); $infoModules = helper::getModules();
$module = $this->getUrl(2); $module = $this->getUrl(2);
//Liste des dossiers associés au module non effacés //Liste des dossiers associés au module non effacés
if ($this->removeDir('./module/' . $module) === true) { if ($this->deleteDir('./module/' . $module) === true) {
$success = true; $success = true;
$notification = 'Module ' . $module . ' désinstallé'; $notification = 'Module ' . $module . ' désinstallé';
if (($infoModules[$this->getUrl(2)]['dataDirectory'])) { if (($infoModules[$this->getUrl(2)]['dataDirectory'])) {
if ( if (
is_dir($infoModules[$this->getUrl(2)]['dataDirectory']) is_dir($infoModules[$this->getUrl(2)]['dataDirectory'])
|| !$this->removeDir($infoModules[$this->getUrl(2)]['dataDirectory']) || !$this->deleteDir($infoModules[$this->getUrl(2)]['dataDirectory'])
) { ) {
$notification = sprintf(helper::translate('Le module %s est désinstallé, il reste peut-être des données dans %s'), $module, $infoModules[$this->getUrl(2)]['dataDirectory']); $notification = sprintf(helper::translate('Le module %s est désinstallé, il reste peut-être des données dans %s'), $module, $infoModules[$this->getUrl(2)]['dataDirectory']);
} }
@ -134,7 +134,7 @@ class plugin extends common
$module = json_decode(file_get_contents(self::TEMP_DIR . $tempFolder . 'enum.json'), true); $module = json_decode(file_get_contents(self::TEMP_DIR . $tempFolder . 'enum.json'), true);
} else { } else {
// Message de retour // Message de retour
$this->removeDir(self::TEMP_DIR . $tempFolder); $this->deleteDir(self::TEMP_DIR . $tempFolder);
$zip->close(); $zip->close();
return ([ return ([
'success' => false, 'success' => false,
@ -149,7 +149,7 @@ class plugin extends common
// Vérification de la présence des dossier décrits // Vérification de la présence des dossier décrits
if (!is_dir(self::TEMP_DIR . $tempFolder . $src)) { if (!is_dir(self::TEMP_DIR . $tempFolder . $src)) {
// Message de retour // Message de retour
$this->removeDir(self::TEMP_DIR . $tempFolder); $this->deleteDir(self::TEMP_DIR . $tempFolder);
$zip->close(); $zip->close();
return ([ return ([
'success' => false, 'success' => false,
@ -159,7 +159,7 @@ class plugin extends common
// Interdire l'écriture dans le dossier core // Interdire l'écriture dans le dossier core
if (strstr($dest, 'core') !== false) { if (strstr($dest, 'core') !== false) {
// Message de retour // Message de retour
$this->removeDir(self::TEMP_DIR . $tempFolder); $this->deleteDir(self::TEMP_DIR . $tempFolder);
$zip->close(); $zip->close();
return ([ return ([
'success' => false, 'success' => false,
@ -174,7 +174,7 @@ class plugin extends common
*/ */
if (!file_exists(self::TEMP_DIR . $tempFolder . $module['name'] . '.php')) { if (!file_exists(self::TEMP_DIR . $tempFolder . $module['name'] . '.php')) {
// Message de retour // Message de retour
$this->removeDir(self::TEMP_DIR . $tempFolder); $this->deleteDir(self::TEMP_DIR . $tempFolder);
$zip->close(); $zip->close();
return ([ return ([
'success' => false, 'success' => false,
@ -207,7 +207,7 @@ class plugin extends common
$installOk = true; $installOk = true;
} else { } else {
// Message de retour // Message de retour
$this->removeDir(self::TEMP_DIR . $tempFolder); $this->deleteDir(self::TEMP_DIR . $tempFolder);
$zip->close(); $zip->close();
return ([ return ([
'success' => false, 'success' => false,
@ -232,7 +232,7 @@ class plugin extends common
} }
// Message de retour // Message de retour
$t = isset($versionInstalled) ? helper::translate('actualisé') : helper::translate('installé'); $t = isset($versionInstalled) ? helper::translate('actualisé') : helper::translate('installé');
$this->removeDir(self::TEMP_DIR . $tempFolder); $this->deleteDir(self::TEMP_DIR . $tempFolder);
$zip->close(); $zip->close();
return ([ return ([
'success' => $success, 'success' => $success,
@ -242,7 +242,7 @@ class plugin extends common
]); ]);
} else { } else {
// Supprimer le dossier temporaire // Supprimer le dossier temporaire
$this->removeDir(self::TEMP_DIR . $tempFolder); $this->deleteDir(self::TEMP_DIR . $tempFolder);
$zip->close(); $zip->close();
return ([ return ([
'success' => false, 'success' => false,
@ -623,7 +623,7 @@ class plugin extends common
} }
// Nettoyage // Nettoyage
unlink(self::TEMP_DIR . $fileName); unlink(self::TEMP_DIR . $fileName);
$this->removeDir($tmpFolder); $this->deleteDir($tmpFolder);
} }
} }
@ -721,7 +721,7 @@ class plugin extends common
]); ]);
// Nettoyage // Nettoyage
unlink(self::TEMP_DIR . $fileName); unlink(self::TEMP_DIR . $fileName);
$this->removeDir($tmpFolder); $this->deleteDir($tmpFolder);
} }
break; break;
case 'download': case 'download':
@ -793,7 +793,7 @@ class plugin extends common
} }
// Supprimer le dossier temporaire // Supprimer le dossier temporaire
$this->removeDir(self::TEMP_DIR . $tmpFolder); $this->deleteDir(self::TEMP_DIR . $tmpFolder);
$zip->close(); $zip->close();
// Valeurs en sortie // Valeurs en sortie

View File

@ -1089,7 +1089,7 @@ class theme extends common
$notification = helper::translate('Archive de thème invalide'); $notification = helper::translate('Archive de thème invalide');
} }
// Supprimer le dossier temporaire même si le thème est invalide // Supprimer le dossier temporaire même si le thème est invalide
$this->removeDir(self::TEMP_DIR . $tempFolder); $this->deleteDir(self::TEMP_DIR . $tempFolder);
$zip->close(); $zip->close();
} else { } else {
// erreur à l'ouverture // erreur à l'ouverture

View File

@ -176,7 +176,7 @@ class gallery extends common
if (is_dir(self::DATADIRECTORY . 'pages/')) { if (is_dir(self::DATADIRECTORY . 'pages/')) {
// Déplacer les données du dossier Pages // Déplacer les données du dossier Pages
$this->copyDir(self::DATADIRECTORY . 'pages/' . $this->getUrl(0), self::DATADIRECTORY . $this->getUrl(0)); $this->copyDir(self::DATADIRECTORY . 'pages/' . $this->getUrl(0), self::DATADIRECTORY . $this->getUrl(0));
$this->removeDir(self::DATADIRECTORY . 'pages/'); $this->deleteDir(self::DATADIRECTORY . 'pages/');
$style = $this->getData(['module', $this->getUrl(0), 'theme', 'style']); $style = $this->getData(['module', $this->getUrl(0), 'theme', 'style']);
$this->setData(['module', $this->getUrl(0), 'theme', 'style', str_replace('pages/', '', $style)]); $this->setData(['module', $this->getUrl(0), 'theme', 'style', str_replace('pages/', '', $style)]);
} }

View File

@ -599,7 +599,7 @@ class news extends common
if (is_dir(self::DATADIRECTORY . 'pages/')) { if (is_dir(self::DATADIRECTORY . 'pages/')) {
// Déplacer les données du dossier Pages // Déplacer les données du dossier Pages
$this->copyDir(self::DATADIRECTORY . 'pages/' . $this->getUrl(0), self::DATADIRECTORY . $this->getUrl(0)); $this->copyDir(self::DATADIRECTORY . 'pages/' . $this->getUrl(0), self::DATADIRECTORY . $this->getUrl(0));
$this->removeDir(self::DATADIRECTORY . 'pages/'); $this->deleteDir(self::DATADIRECTORY . 'pages/');
$style = $this->getData(['module', $this->getUrl(0), 'theme', 'style']); $style = $this->getData(['module', $this->getUrl(0), 'theme', 'style']);
$this->setData(['module', $this->getUrl(0), 'theme', 'style', str_replace('pages/', '', $style)]); $this->setData(['module', $this->getUrl(0), 'theme', 'style', str_replace('pages/', '', $style)]);
} }

View File

@ -69,7 +69,7 @@ class search extends common
if (is_dir(self::DATADIRECTORY . 'pages/')) { if (is_dir(self::DATADIRECTORY . 'pages/')) {
// Déplacer les données du dossier Pages // Déplacer les données du dossier Pages
$this->copyDir(self::DATADIRECTORY . 'pages/' . $this->getUrl(0), self::DATADIRECTORY . $this->getUrl(0)); $this->copyDir(self::DATADIRECTORY . 'pages/' . $this->getUrl(0), self::DATADIRECTORY . $this->getUrl(0));
$this->removeDir(self::DATADIRECTORY . 'pages/'); $this->deleteDir(self::DATADIRECTORY . 'pages/');
} }
// Mettre à jour la version // Mettre à jour la version
$this->setData(['module', $this->getUrl(0), 'config', 'versionData', '2.2']); $this->setData(['module', $this->getUrl(0), 'config', 'versionData', '2.2']);