Hello,
En creusant un peu le sujet des pages autonomes utilisées en Z v1 (donc zpip) et qui se nomment page-xxx, je me suis aperçu que le traitement est erroné dans le noiZetier v3.
Le noiZetier v3 a fait le choix de se concentrer sur les squelettes Z mais de conserver la compatibilité avec Z v1 et Z v2 soit Z-Core.
Or, cette compatibilité n’est pas correctement implémentée et il existe des cas qui merdent j’en parlerais plus tard.
Néanmoins, mon avis serait de conserver uniquement la compatibilité avec Z-Core et d’abandonner Z v1 car je ne vois pas aujourd’hui l’intérêt de rester en Z v1 par contre je vois l’intérêt de simplifier le code actuel.
Maintenant, je peux avoir tort mais j’aimerais avoir votre avis avant de faire quoi que ce soit.
Donc votre avis ?
Si on garde la compatibilité Z v1, que se passe-t-il aujourd’hui ?
- que je sois en Z v1 ou v2, je charge toutes les pages même les page-xxx. Celles-ci sont considérées comme des pages autonomes et pas des compositions ce qui est bon et leur identifiant est « page-xxx » en BDD => OK
- si je modifie la page (formulaire editer_page pour les blocs exclus) sans la correction que je viens de faire en local ça merde car on recompose l’id de la page à partir du type de page et de la composition. Donc on obtient un id égal à xxx et pas page-xxx. => NOK
- si je crée une composition virtuelle à partir de page-xxx j’ai une erreur d’autorisation car le code de l’autorisation extrait « bêtement » le type de page et la composition sans tenir compte du cas page-xxx => NOK
Et je pense qu’il y a d’autres incohérences.
Rien n’est rédhibitoire mais ça va demander pas mal d’introspection dans le code.
En outre, à aucun moment on ne teste Z v1 ou Z v2 pour effectuer une action en relation avec notre souci sauf lors du chargement.
Mais même pour le chargement, si il existe des page-xxx alors que l’on utilise Z-Core ces pages sont chargées comme expliquées plus haut.
Est ce incohérent ?
Plus généralement, si on est en Z-Core faut-il bien exclure les pages suivantes (qui sont dans content/ ou un autre répertoire identifié) :
-
z_apl.html
-
page-xxx.html
-
demo/content/xxxx.html (je viens de voir qu’il y a de telles pages dans Z-Core aujourd’hui)
-
autres ?
En Z v1, faut-il exclure : -
page.html uniquement ?
Existe-t-il d’autres cas que vous avez rencontrés ?
Donc c’est un peu bancal encore et donc je proposerais bien de nettoyer tout ça en se limitant à Z-Core soit Z v2.