Re: crayons distraits
Cerdic <[email protected]>
| Newsgroups | gmane.comp.web.spip.devel |
|---|---|
| Message-ID | <d1ee6427-3678-4318-bf64-011da1a5951f@Spark> |
Ah sorry, j’ai pas eu du tout l’intention de casser quoi que ce soit. Si je lis le code, je pense que le bug vient de la modif de la ligne 480 if (is_scalar($id) and count($where)>1) qui devrait être if (is_scalar($id) and count($where)>=1) J’ai ajouté la condition sur count($where) par sécurité, mais du coup j’ai ajouté un bug à cet endroit Je te laisse vérifier que ça corrige bien ton bug et commit le cas échéant ! -- Cédric Le 12 mars 2020 à 17:18 +0100, JLuc <[email protected]>, a écrit : > Le 11/03/2020 à 17:45, JLuc a écrit : > > SPIP permet d'utiliser les tables non déclarées pour BOUCLEr, > > et les crayons marchaient jusqu'à peu pour leur édition en ligne. > > Il semble que ça ait régressé puisque désormais, > > les modifications faites avec les crayons ne sont pas enregistrées lors de leur validation. > > L'édition se fait bien, tout à l'air bien, mais l'enregistrement ne se fait pas. > > Le code des crayons documente bien cette possibilité : à partir de > https://git.spip.net/spip-contrib-extensions/crayons/src/branch/master/action/crayons_store.php#L254 > > Pour les objets non déclarés on passe par là : > « // si on a pas reussi on passe par crayons_update() qui fera un update sql brutal » > > Sauf que la fonction crayons_update été modifiée il y a 4 mois par > https://git.spip.net/spip-contrib-extensions/crayons/commit/17bb15b9b95fd0b02efea266af6d299da4931a14 > (de cerdic) qui impose désormais un appel à objet_modifier_champs ... > et ça casse le traitement des tables non déclarées > ou de certaines tables non déclarées en tout cas. > > Heureusement il y a une alternative: les fonctions revision_typobjet et typobjet_revision > https://git.spip.net/spip-contrib-extensions/crayons/src/commit/6533c1af7b87c00f70e0f171787f05c53c64b70b/action/crayons_store.php#L257 > et suivantes > C'est étonnant qu'à la fois les fonctions revision_typobjet et typobjet_revision soient gérées (ya un motif ?) > C'est facile à installer pour qui code en php, mais avant c'était 0-code-php pour tous. > On peut en rester là ou vouloir restaurer un accès 0-code aux crayons sur les objets non déclarés... > > C'est l'état du truc selon ma compréhension. > > JL > > > _______________________________________________ > liste: https://listes.rezo.net/mailman/listinfo/spip-dev > doc: https://www.spip.net/ > dev: https://core.spip.net/ > irc://irc.freenode.net/spip