YAML Collection v1

YAMK Collection est un projet de cms simple sans base de données, destiné à organiser des contenus basé sur l'image.

Galerie "plate" d'images à un seul niveau, elle s'apuie sur le stockage de fichier YAML. YAML Collection s'ajoute aux outils existants permettant de structurer des contenus, basé sur les besoins que quelques projets concrets.

La galerie plate est cependant augmentée de la possibilité de sélectionner une partie des items pour en faire différentes collections (d'où le nom du logiciel). Il est possible de réordonner les items à l'intérieur de ces collections pour permettre un diaporama structuré.

Cette version a été développée lors de l'été 2023. Elle reprend les concepts de base du projet "XML collection" et est un essai de codage en utilisant SFW, un framework CSS maison, une écriture en orienté objet pour la gestion des yaml.
Le code javascript est entièrement "vanilla", sans passer par un framework comme jQuery.

Un log permet de garder trace des changements.

Ce projet est développé par Stéphane Noël.


Dernière version

Voici la dernière version en date.
yaml_collection_04_10_2024-18_58.zip


Version archivées

Voici la liste des versions déjà produites.
Listées de la plus récente à la plus ancienne.


Log

version: 10.8 (04/10/2024, 18:58)

Ajout de la possibilité de liste dans les options pour les sélect, radio et checkbox

Via un fichier "arrays.php" à ajouter dans les snippets

version: 10.7 (30/09/2024, 14:52)

Reload en cas de mode != fullopen

en cas où on est pas en fullopen, la page est rechargée après login

version: 10.6 (30/09/2024, 14:02)

Correction sur le instant search

Les caractères spéciaux sont filtrés pour plus de facilité

version: 10.5 (03/09/2024, 23:54)

Ajout d'une fonction de date et d'un affichage en gros blocs verticaux

version: 10.3 (31/08/2024, 17:32)

Modification du comportement javascript / cs du full window

version: 10.2 (29/08/2024, 22:50)

Léger débug savascript

version: 10 (21/08/2024, 7:48)

Supprimer_cache dans import_docs

Dans le module import_docs, ajouté la suppression du cache après importation.

version: 9.9 (20/08/2024, 21:46)

ajouté un script pour cacher/montrer la barre d'outil dans le viewer pleine page.

version: 9.8 (06/07/2024, 10:22)

Zoom sur les images de galerie

Ajouté une fonctin de zoom sur les images en full window

version: 9.5 (30/05/2024, 21:03)

Ajout de la possibilité de placer un lien dans le menu des pages

version: 9.4 (11/05/2024, 13:42)

Update de la visualisation fullwindow

Ajout d'un fond noir sur les cartouches de decriptif, et d'une balise alt

version: 9.2 (06/05/2024, 17:39)

Correctif de l'affichage des descriptifs de docs dans la classe yaml_readwriter

Correctif pour la rétrocompatibilité

version: 9.1 (06/05/2024, 1:28)

Ajout majeur: champ de description pour les fichiers uploadés

Update des affichages dans la mosaique, les fenêtres d'affichage pour l'affichag correct des fichiers et images.

version: 8.9 (13/04/2024, 17:55)

Réorganisation du menu admin

version: 8.8 (13/04/2024, 17:49)

Quelques correctifs

Javascript et un bug sur l'affichage/gestion des modules

version: 8.7 (13/04/2024, 14:37)

Gestion des modules

L'activation et la désactivation des modules peut se faire par le menu de l'admin. Une description des modules a été ajoutée pour l'occasion.

version: 8.6 (12/04/2024, 13:25)

Ajout d'un affichage horizontal v1

version: 8.5 (09/04/2024, 14:23)

Correctif javascrit

Le tri n'est pas initialisé si l'outil de tri n'est pas activé dans les settings du site.

version: 8.4 (08/04/2024, 0:23)

Encore un microbug corrigé dans la classe des vignettes

version: 8.3 (07/04/2024, 17:47)

Légère correction dans la fonction de vignette

version: 8 (28/03/2024, 23:17)

Modification du tri

Suppression du paramètre de tri dans les préférences du site, et simplification de son affichage: "par défaut" est le seul parametre de base gardé, les autres doivent être ajouté dans la configuration de l'item via le paramètre "sortable: true".

version: 7.8 (27/03/2024, 15:52)

Some good updates

Ajouté un critère "sortable" dans structure_item.yaml permettant de choisir les champs sur lequel appliquer l'ordre. Le tri par titre devient optionnel, ainsi que tout autre critère (auteur par exemple). Modifié le module separator, pour activer la css automatiquement Modifié fichier main-functions.php, fonction deployerAppIfNotYet(): le dossier config est désormais à l'intérieur du dossier contents, pour plus de facilité de transport du site.

version: 7.6 (16/03/2024, 13:40)

Corrections mineures

Correction d'un bug dans la constitution des collections, et changement de "Densité" en "disposition"

version: 7.5 (10/03/2024, 16:16)

Transfert de la création de la constante URL de index.php à starter.php

version: 7.4 (10/03/2024, 15:53)

Correction mineure de l'affichage des icones de documents

version: 7.3 (10/03/2024, 15:45)

modification mineure de la fonction $this->getoptions de la classe yaml_reader pour ajout d'un implode

version: 7.2 (10/03/2024, 15:24)

Correction (définitive) du script de vignette

version: 7.1 (09/03/2024, 21:16)

rendu possible la personnalisation des favicons en plaçant un dossier contens/favicons

version: 6.9 (06/03/2024, 11:31)

Amélioration des boutons de filtrage

Un peur de css pour rendre les boutons de filtrage plus pratique. Pas encore sûr que ce soit la version définitive.

version: 6.8 (06/03/2024, 1:23)

Débug + Ajout des filtres

Ajouté la possibilité de filtrer les contenus via ceckbox et select et radio. Corrigé quelques bugs dans la foulée, notamment la sélection multiple en select et checkbox.

version: 6.7 (03/03/2024, 23:11)

Ajouté un module: separator

Ajout d'un module de documentation de l'ajout de séparateur qui requiert la modification de deux fichiers et la création d'une css.

version: 6.5 (02/03/2024, 19:08)

Update collection et visiteur

Ajouté la possibilité de brider le site pour les visiteurs. Ceci permet d'afficher via les settings l'affichage complet du site, sa fermeture ou la possibilité de donner accès à des collections spécifiques uniquement. Dans ce cas, seul le contenu d'une collection est accessible sur base d'une url aevc requete en get type ?c=fzefzfzoj. Corrigé quelques bugs mineurs autour, dont la création sans nécessité du dossier config/pages.

version: 6.2 (19/02/2024, 13:45)

Ajouté un module importdoc et corrigé un bug dans la classe de création de vignette

version: 5.8 (30/01/2024, 22:54)

Ajout du form_part checkbox

version: 5.7 (23/01/2024, 16:33)

Classe php thumbnail_tool + Correction mineure des collections

Passage de la fonction get_vignette vers une classe thumbnail_tool, plus intégrée. Intégration de son usage dans toutes les pages.

version: 5.6 (12/01/2024, 0:30)

Allègement du fichier main.js

Enlèvement des codes commentés, gain de 5k

version: 5.5 (11/01/2024, 22:51)

Update javascript

Réorganisation du fichier js pour alléger yc_load conformément à la réécriture de writeit

version: 5.2 (29/11/2023, 14:35)

Correctif du data-id dans les mosaique

Placé un sprintf avec 6 chiffres pour détromper le système de tri qui bugait.

version: 4.9 (02/11/2023, 0:32)

retouche css

la rotation de l'attente d'affichage est maintenant en animation

version: 4.8 (31/10/2023, 17:17)

Gros update

Ajouté le modules d'export de yaml (yaml de description + yamls + documents), corrigé un peu de javascript pour les galeries full window, ajouté le module d'import d'après csv, plus d'autres bugs mineurs

version: 4.7 (29/10/2023, 18:28)

Taille des images

Ajouté une limitation de la prise en charge des images (15 mégas) dans images_functions, starter et ajouté une image defaut qui signale le dépassement

version: 4.6 (28/10/2023, 19:08)

Update important

Consolidé la prise en charge des modules, ajouté un module d'export yaml + fichiers, ajouté le module d'import depusi xml collection.

version: 4.5 (25/10/2023, 16:05)

Ajouté la possibilité d'ajouter des modules, et un chargement dans index de pages de modules

Pour pouvoir ajouter des fonctionnalités au système, comme une page d'affichage ou un export de pdf par exemple, ou (utilisé comme martyr) un système de présences, un dossier "modules" a été ajouté, et avec lui la possibilité de charge depuis l'index une page provenant des modules sur get ?template= suivi de l'adresse de la page. A tester et affiner

version: 4.3 (23/10/2023, 12:14)

retouche html de #main-grid, passage css de id à classe

version: 3.9 (08/10/2023, 12:32)

Retouche css

petite retouche de l'éditeur ys en css

version: 3.8 (08/10/2023, 11:10)

placement de ysedit

placement d'un éditeur wysiwig pour les champs textarea + léger débuggage pour l'utilisation des fleches durant l'édition des formulaires. A cette occasion, création de la variable settings.formopen

version: 3.7 (04/10/2023, 15:00)

Ajout des collections

Ajout du code pour les collection, php, javascript. Gros update.

version: 3.5 (18/09/2023, 23:10)

Bug mineur

sur fichier main.js

version: 3.4 (18/09/2023, 18:14)

Retouche des inclusions

Modifications des contenus des includes des snippets de index.php, création de code-pageheader.php pour une meilleure personnalisation de pages custom

version: 3.3 (18/09/2023, 17:52)

Déplacement de code index > starter

Déplacement d'un ensemble d'instruction depuis index.php vers starter et async_start pour une intégration plus facile de page custom (typiquement une page de listage de présence)

version: 3.2 (16/09/2023, 19:01)

Fonction de crop

Ajouté la fonction de rotation et de crop sur les images. Fonction get_vignette retouchée.

version: 2.8 (08/09/2023, 14:12)

Loop

Ajouté la possibilité de looper avec les fleches gauche droite sur les item OU sur les galeries de l'item OU sur les deux

version: 2.4 (06/09/2023, 14:39)

print

Ajouté un style print et des print-none dans la page

version: 2.2 (06/09/2023, 13:30)

recherche

corrigé un bug sur telephone (majuscule dans le champ)

version: 2 (05/09/2023, 23:57)

Codage des players audio et vidéo

javascript et css

version: 1.8 (05/09/2023, 21:14)

propre

Réécriture de la fonction propre pour mieux gérer les array et les options.

version: 1.7 (05/09/2023, 17:17)

Debug pour installation erg + ajout d'un transcoder xml -> yaml

recodage de la fonction strip_accents(), correction de petits bugs

version: 1.3 (28/08/2023, 1:35)

Correctif

corrigé l'animation d'attente (blur+icone) pour le chargement asynchrone. test sur plus de 300 élément du dossier upload.

version: 1.1 (27/08/2023, 18:45)

Correctif

Ajout de la création du'un fichier htacces pour enmpecher le listing de config et contents

version: 0.9 (27/08/2023, 18:25)

Correctif

Corrigé l'importation d'items

version: 0.8 (27/08/2023, 16:42)

Login

Modifié la procédure de login: plus de yaml de base, il est créé lors de la première installation en suivant un lien. Un champ de controle de login a été ajouté.

version: 0.7 (26/08/2023, 18:22)

Correctifs

Ajouté une fonction getTemplate($file) qui permet de charger defaut/*.yaml si config/*.yaml n'existe paset vérifié la création des settings, ce qui permet d'alléger la fonction deployerAppIfNotYet()

version: 0.4 (24/08/2023, 12:16)

Correction de bugs divers

Corrections diverse pour l'installation à blanc: duplication de la structure de l'accès, etc. Correction javascript dans la partie action, placement du début de la création/modification des accès.

version: 0.3 (24/08/2023, 10:52)

Correction de la fonction d'installation

ajout du fichier access

version: 0.2 (23/08/2023, 14:56)

Premier versement

Tout le code à cette date


Créer une version

Version on the fly sans les fichiers trop spécifiques...