On revient à un select dont la présentation est inspirée de http://romy.tetue.net/prototype-edition-article-avec-spip
On ajoute deux déclarations 'texte_changer_statut' et 'aide_changer_statut' dans la déclaration
Le formulaire suppose explicitement que la variable de statut est nommée 'statut'.
Il ouvre par ailleurs la voie à une interface propre pour permettre de modifier la date de post-publi sur les articles, en meme temps que l'on passe en publie (mais c'est à faire)
Cela clos complètement la gestion du statut des objets qui repose maintenant intégralement sur la déclaration, et cela permet donc effectivement d'ajouter un statut à un objet par simple déclaration.
- toutes déplacées dans le repertoire du thème
- découpage par grandes fonctions
- tous les paramètres calculés historiques, auxquels sont ajoutés des paramètres liés à la typo, sont calculés une fois dans style_prive.css.html du theme, et passees a toutes les inclusions, ce qui evite redondance de calcul
- chaque feuille est surchargeable par un thème indépendamment des autres
- la typo est reprise du travail de tetue sur le plugin petronille/basecss
- la grille et les boites sont reprises de ooCSS
Gros travail de nettoyage des styles qui ne servent plus, d'homogeneisation des styles entre les différentes feuilles ...
spip_styles qui n'amène que des soucis pour l'annuler n'est plus utilisée et sa substantifique moelle est ajoutee a typo.css.html : elle est grandement allégée par rapport à la version statique précédente, et certaines propriétés sont calculées et non plus fixes.
Declaration des puces utilisees :
statut_images => array( 'pucepardefaut','statut1'=>'pucestatut1','statut2'=>'pucestatut2',...)
Declaration des titres associes :
statut_titres => array( 'titrepardefaut','statut1'=>'titretatut1','statut2'=>'titrestatut2',...)
Declaration des statuts instituables (puce de changement rapide) :
statut_textes_instituer => array('statut1'=>'texte instituer statut1',...)
En l'absence de declaration des images et/ou des titres de puce de statut, on utilise les puce bien connues pour les status connus prepa/prop/publie/refuse/poubelle
La declaration des status instituables permet par ailleurs de beneficier automatiquement des puces de changement rapide, proposees parmi les choix listes.
Le filtre puce_statut permet d'afficher une puce :
[(#STATUT|puce_statut{article})]
affiche une puce statique simple
[(#STATUT|puce_statut{article,#ID_ARTICLE,#ID_RUBRIQUE})]
affiche une puce avec changement rapide, lorsque l'objet a été déclaré, une puce statique simple sinon
Les fonctions puce_statut_{$type}_dist ne sont plus necessaires sauf exception, le traitement par defaut etant generique. Lorsque la fonction existe, elle est neanmoins appelee en priorite et se substitue au traitement generique.
Lorsqu'aucune puce n'est connue pour un objet donné, on affiche l'icone de son type, en 16px.
Le filtre |puce_changement_statut est obsolete et devrait disparaitre
Le filtre |puce_statut est implémenté par la fonction filtre_puce_statut_dist
La fonction puce_statut() homonyme du filtre est encore utilisée dans les menus instituer (boite info). Il reste a unifier celui là et le rendre generique sur la base de la déclaration pour faire disparaitre cette fonction.