Re: crayons distraits

JLuc <[email protected]>
Newsgroups gmane.comp.web.spip.devel
Message-ID <[email protected]>
Le 12/03/2020 à 17:26, Cerdic a écrit :
> 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)

Oui ça restaure les crayons 0-code sur (certains) objets non déclarés.
Merci pour ta réactivité !
Je vais commit le fix.
JLuc

> 
> 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
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.