This commit is contained in:
fredtempez 2021-02-10 17:52:02 +01:00
commit ddb0f4f4a5
6 changed files with 46 additions and 46 deletions

View File

@ -3,9 +3,10 @@
## version 10.4.02 ## version 10.4.02
- Corrections : - Corrections :
- Thème : aperçu du site amélioré. - Thème : aperçu du site amélioré.
- Editeur de texte : couleur de fond parasite quand une image en arrière-plan est sélectionnée. - Thème : rétablissement du contrôle de l'import d'une version ancienne d'un thème.
- Éditeur de texte : couleur de fond parasite quand une image en arrière-plan est sélectionnée.
## version 10.4.01 ## version 10.4.01
Corrections : Corrections :
- Module form, erreur de syntaxe. - Module form, erreur de syntaxe.
- Chargement d'un thème, désactivation du contrôle des clés. - Chargement d'un thème, désactivation du contrôle des clés.

View File

@ -1,5 +1,5 @@
# ZwiiCMS 10.4.00 # ZwiiCMS 10.4.02
Zwii est un CMS sans base de données (flat-file) qui permet de créer et gérer facilement un site web sans aucune connaissance en programmation. Zwii est un CMS sans base de données (flat-file) qui permet de créer et gérer facilement un site web sans aucune connaissance en programmation.

View File

@ -137,30 +137,51 @@ class helper {
public static function getModules() { public static function getModules() {
$dirs = array_diff(scandir('module'), array('..', '.')); $dirs = array_diff(scandir('module'), array('..', '.'));
foreach ($dirs as $key => $value) { foreach ($dirs as $key => $value) {
// Lire les constantes // Dossier non vide
$class_reflex = new \ReflectionClass($value); if (file_exists('module/' . $value . '/' . $value . '.php')) {
$class_constants = $class_reflex->getConstants(); // Lire les constantes
// Constante REALNAME $class_reflex = new \ReflectionClass($value);
if (array_key_exists('REALNAME', $class_constants)) { $class_constants = $class_reflex->getConstants();
$realName = $value::REALNAME; // Constante REALNAME
} else { if (array_key_exists('REALNAME', $class_constants)) {
$realName = ucfirst($value); $realName = $value::REALNAME;
} else {
$realName = ucfirst($value);
}
// Constante VERSION
if (array_key_exists('VERSION', $class_constants)) {
$version = $value::VERSION;
} else {
$version = '0.0';
}
// Affection
$modules [$value] = [
'realName' => $realName,
'version' => $version
];
} }
// Constante VERSION
if (array_key_exists('VERSION', $class_constants)) {
$version = $value::VERSION;
} else {
$version = '0.0';
}
// Affection
$modules [$value] = [
'realName' => $realName,
'version' => $version
];
} }
return($modules); return($modules);
} }
/**
* Scanne le contenu d'un dossier et de ses sous-dossiers
* @param string $dir Dossier à scanner
* @return array liste de dossiers contenus dans le répertoire cible.
*/
public static function scanSubDir($dir) {
$dirContent = [];
$iterator = new DirectoryIterator($dir);
foreach($iterator as $fileInfos) {
if($fileInfos->isDot() === false AND $fileInfos->isDir()) {
$dirContent[] = $dir . '/' . $fileInfos->getBasename();
$dirContent = array_merge($dirContent, self::scanSubDir($dir . '/' . $fileInfos->getBasename()));
}
}
return $dirContent;
}
/** /**
* Retourne true si le protocole est en TLS * Retourne true si le protocole est en TLS

View File

@ -972,8 +972,7 @@ class common {
$db->set($keys[0].'.'.$keys[1].'.'.$keys[2].'.'.$keys[3].'.'.$keys[4].'.'.$keys[5],$keys[6], true); $db->set($keys[0].'.'.$keys[1].'.'.$keys[2].'.'.$keys[3].'.'.$keys[4].'.'.$keys[5],$keys[6], true);
break; break;
case 8: case 8:
$db->set($keys[0].'.'.$keys[1].'.'.$keys[2].'.'.$keys[3].'.'.$keys[4].'.'.$keys[5].'.'.$keys[6],$keys[7] ); $db->set($keys[0].'.'.$keys[1].'.'.$keys[2].'.'.$keys[3].'.'.$keys[4].'.'.$keys[5].'.'.$keys[6],$keys[7], true );
$db->save();
break; break;
} }
return true; return true;

View File

@ -604,7 +604,6 @@ class config extends common {
*/ */
public function modules() { public function modules() {
helper::getModules();
// Préparation du tableau des modules installés // Préparation du tableau des modules installés
// Liste des modules installés (répertoire de module/) // Liste des modules installés (répertoire de module/)
if ($dh = opendir( 'module/' )) { if ($dh = opendir( 'module/' )) {

View File

@ -324,7 +324,7 @@ class gallery extends common {
// Valeurs en sortie // Valeurs en sortie
$this->addOutput([ $this->addOutput([
'display' => self::DISPLAY_JSON, 'display' => self::DISPLAY_JSON,
'content' => galleriesHelper::scanDir(self::FILE_DIR.'source') 'content' => helper::scanSubDir(self::FILE_DIR.'source')
]); ]);
} }
@ -673,24 +673,4 @@ class gallery extends common {
]); ]);
} }
}
class galleriesHelper extends helper {
/**
* Scan le contenu d'un dossier et de ses sous-dossiers
* @param string $dir Dossier à scanner
* @return array
*/
public static function scanDir($dir) {
$dirContent = [];
$iterator = new DirectoryIterator($dir);
foreach($iterator as $fileInfos) {
if($fileInfos->isDot() === false AND $fileInfos->isDir()) {
$dirContent[] = $dir . '/' . $fileInfos->getBasename();
$dirContent = array_merge($dirContent, self::scanDir($dir . '/' . $fileInfos->getBasename()));
}
}
return $dirContent;
}
} }