Slider 6.4

This commit is contained in:
Fred Tempez 2024-02-15 14:34:50 +01:00
parent e6b9cb16b5
commit a2f53e1e58
2 changed files with 27 additions and 10 deletions

View File

@ -1,3 +1,5 @@
# Version 6.4
- Corrige plussieurs bugs dans les fonctions de tri
# Version 6.3 # Version 6.3
- Corrige un tri non fonctionnel. - Corrige un tri non fonctionnel.
# Version 6.2 # Version 6.2

View File

@ -27,7 +27,7 @@ class slider extends common
'index' => self::GROUP_VISITOR 'index' => self::GROUP_VISITOR
]; ];
const VERSION = '6.3'; const VERSION = '6.4';
const REALNAME = 'Carrousel'; const REALNAME = 'Carrousel';
const DELETE = true; const DELETE = true;
const UPDATE = '0.0'; const UPDATE = '0.0';
@ -239,10 +239,10 @@ class slider extends common
// Tri des images pour affichage de la liste dans la page d'édition // Tri des images pour affichage de la liste dans la page d'édition
switch ($this->getData(['module', $this->getUrl(0), 'theme', 'sort'])) { switch ($this->getData(['module', $this->getUrl(0), 'theme', 'sort'])) {
case 'dsc': case 'dsc':
krsort(self::$pictures, SORT_NATURAL | SORT_FLAG_CASE); ksort(self::$pictures, SORT_NATURAL | SORT_FLAG_CASE);
break; break;
case 'asc': case 'asc':
ksort(self::$pictures, SORT_NATURAL | SORT_FLAG_CASE); krsort(self::$pictures, SORT_NATURAL | SORT_FLAG_CASE);
break; break;
case 'rand': case 'rand':
case 'none': case 'none':
@ -385,16 +385,31 @@ class slider extends common
} }
// Tri des images par ordre alphabétique, alphabétique inverse, aléatoire ou pas // Tri des images par ordre alphabétique, alphabétique inverse, aléatoire ou pas
switch ($this->getData(['module', $galleryId, 'config', 'sort'])) { switch ($this->getData(['module', $galleryId, 'theme', 'sort'])) {
case 'SORT_DSC': case 'desc':
krsort(self::$pictures, SORT_NATURAL | SORT_FLAG_CASE); uksort(self::$pictures, function ($a, $b) {
return strcmp(basename($a), basename($b));
});
break; break;
case 'SORT_ASC': case 'asc':
ksort(self::$pictures, SORT_NATURAL | SORT_FLAG_CASE); uksort(self::$pictures, function ($a, $b) {
return strcmp(basename($b), basename($a));
});
break; break;
case 'RAND': case 'rand':
// Récupérer les clés du tableau
$keys = array_keys(self::$pictures);
// Mélanger les clés
shuffle($keys);
// Créer un nouveau tableau avec les clés mélangées
$shuffledPictures = [];
foreach ($keys as $key) {
$shuffledPictures[$key] = self::$pictures[$key];
}
// Mettre à jour le tableau initial avec le nouveau tableau mélangé
self::$pictures = $shuffledPictures;
break; break;
case 'NONE': case 'none':
break; break;
default: default:
break; break;