SPIP Bonux

Le plugin qui lave plus SPIP que SPIP, avec des chouettes cadeaux dedans ! Interface douce, boucles POUR et CONDITION, tableaux, compteur, etc.

Parce que nous n’avons pas pu tout mettre dans SPIP 2.0 (la boîte était trop petite), voici un plugin qui intègre des trucs en plus ! C’est cadeau !

Rq : certaines fonctionnalités de SPIP Bonux ne sont pas documentées ici, mais dans la doc sur Bonux pour SPIP 3.

C’est doux, c’est neuf ?

De l’avis des amateurs de SPIP-Bonux, cette distribution améliore le confort d’usage des formulaires de saisie de l’espace privé, dont les couleurs tiennent mieux dans la durée. Il s’agit a priori d’une simple variante de style : celle-ci propose une nouvelle palette de couleurs, plus douces pour les yeux et propices à la concentration sur votre travail éditorial. Mais surtout, — là est le vrai cadeau Bonux —, ces formulaires restent accessibles, même lorsque l’affichage des images est désactivé dans le navigateur ou lorsque le trop faible débit de votre connexion ne permet pas de les afficher, situation bien plus courante qu’on ne croit. SPIP-Bonux vous permet donc d’accueillir des collaborateurs autrement laissés pour compte.

Une boucle (POUR)

Une boucle (POUR) qui permet de boucler sur tous les tableaux PHP, qu’ils soient en #ENV, en #GET, ou autres...

<BOUCLE_test(POUR){tableau #ENV{tableau}}>
#CLE=>#VALEUR<br />
</BOUCLE_test>

cle et valeur peuvent être utilisés dans les critères, ainsi que de nombreux critères des boucles traditionnelles de spip (pagination par exemple)

Ces tableaux peuvent être déjà présent dans #ENV car fournis en argument d’un inclure, ou en contexte d’un formulaire CVT, ou issus de tout filtre retournant un array() PHP : (#ENV{qqc}|mon_filtre), ou toute balise retournant un array() comme #ARRAY ...

De nombreux exemples sont disponibles dans le répertoire demo/ du plugin.

Il est possible dans cette boucle de trier les résultats {par cle} ou {par valeur}, mais aussi, si les résultats sont eux-mêmes des tableaux (ou des objets), de trier sur une de leurs clés. Par exemple si #ARRAY est un tableau d’objets ayant un champ date, le tri {par date} fonctionne «naturellement».

Une boucle (CONDITION)

<BOUCLE_test(CONDITION){si #ENV{test}|>{5}}>
vrai
</BOUCLE_test>
faux
<//B_test>

Des balises pour manipuler les tableaux

SPIP permet deja d’initialiser un tableau avec

  1. #SET{tableau,#ARRAY{1,premier,2,deuxieme,3,troisieme}}

Spip-Bonux ajoute la balise #SET_MERGE qui permet de fusionner et affecter une variable en meme temps :

  1. #SET_MERGE{nom_tableau,#GET{tableau},#ARRAY{cle,valeur}}

et la balise #SET_PUSH, pour y ajouter un element :

  1. #SET_PUSH{tableau,valeur}

Un critère compteur

Inspiré de Classer les articles par nombre de commentaires, le critère compteur permet de compter les elements d’une table associées à ceux d’une autre.

Exemple, pour afficher les auteurs avec leur nombre d’articles :

<BOUCLE1(AUTEURS){compteur articles}{par compteur_articles}>
#ID_AUTEUR : #COMPTEUR{articles}
</BOUCLE1>

La balise #COMPTEUR est associée au critere et permet d’afficher la valeur du compteur pour chaque auteur.

SPIP Bonux (2.3.6)

updated on 17 March 2019

Discussion

110 discussions

  • Bonjours je voudrai installer un plugin pour lire mes vidéos

    Reply to this message

  • 1

    Bonjour,

    Est-ce que le plugin ’Spip Bonux’ est prévu de fonctionner avec la version de SPIP 2.1.2?
    car je l’ai installé et j’ai le message quand je veux configurer les options:
    ’Fichier configurer_spip_bonux introuvable’

    Merci de me confirmer car je prévois de rétrograder ma version de SPIP 2.1.2 vers 2.1!!!

    Richard

    • Oui il fonctionne en 2.1.2

      Tu dois avoir eu un problème dans ta mise en ligne du plugin

    Reply to this message

  • 2

    Bonjour.

    Mon spip est en 2.1.2, lorsque j’installe spip-bonux ma page d’accueil affiche le message d’erreur suivant :

    1. Fatal error: Cannot redeclare balise_config() (previously declared in /var/alternc/html/q/quefaire/plugins/spip-bonux/configurer/pipelines.php:296) in /var/alternc/html/q/quefaire/plugins/cfg/cfg_fonctions.php on line 45

    Une idée ?

    • Il faut mettre a jour le plugin CFG (et le plugin Bonux si il ne l’est pas).

    • Réglé ! C’était effectivement mon plugin cfg qui n’était pas à jour. Merci beaucoup !

    Reply to this message

  • Bonjour,

    Je suis en 2.0.12 et lorsque j’active spip_bonux et bien j’ai une page blanche aussi bien pour l’admin que pour le site!!!

    merci pour votre aide :)

    Reply to this message

  • 3

    Bonjour,

    Merci pour ce plug-in. Petit problème quand même : j’ai installé la mise-à-jour du 13.08. Malheureusement, en activant ce plug-in, les paramètres de formulaire entrés dans la config SPIP deviennent inopérants. Par exemple, pour les commentaires d’articles, je ne voulais pas qu’apparaisse le titre de l’article, ni la possibilité d’y mettre un lien HTML, etc. Tout était ok avant l’installation de SPIP-Bonux. Par contre, après, tous ces champs retirés apparaissaient à nouveau dans le site public sans possibilité de les retirer par l’interface admin.

    Donc, j’ai désactivé SPIP-Bonux, et je retrouve mon formulaire correctement formaté. Mais là, je n’arrive plus à accéder à mes articles dans l’interface admin. Je reçois ce message :

    Fatal error: Call to undefined function spip_bonux_lire_config() in (...)/ecrire/public/composer.php(49) : eval()'d code on line 76

    En retirant complètement le répertoire SPIP-Bonux du site, le problème est en tous points identique. A noter que je n’ai nullement modifié le formulaire.

    Une solution ?..

    Merci pour votre aide, et merci pour votre travail !

    • Il faut ajouter &var_mode=recalcul dans l’url de la page pour forcer le recalcul sans SPIP-Bonux. Pour le bug sur la configuration non appliquée, je regarde.

    • Merci pour le tuyau ! ;)

      Je vais suivre ce fil pour voir s’il existe une solution pour le bug qui apparaîtrait dans les jours à venir. SPIP-Bonux est sympa, c’est en plus nécessaire quand on veut utiliser complètement Stop-Spam (avec le plug-in forum).

      Bonne soirée.

    • J’avais le même bug, cela marchait une fois après avoir vider le cache, mais cela ne marchait plus après. J’ai résolu en mettant à jour le plugin CFG. et tout roule...

    Reply to this message

  • 4

    Bonjour à tous, je m’appelle Cédric.

    Je suis nouveau dans la communauté Spip et dois dire que je trouve ce CMS fort sympathique. Par contre j’ai voulu tester le spip bonux et là aïe je rencontre une tuile. J’ai bien dézippé le zip dans le dossier plugins. J’ai coché la case dans la liste active mais ma boucle SINON ne fonctionne pas pourtant la syntaxe me semble bonne.

    <BOUCLE_lacondi (CONDITION) {si #ENV{cb}>{0}} >
    je peux aller au niveau N-2
    </BOUCLE_lacondi>
    je suis bloqué au N-1
    <//B_lacondi>

    Vous avez une idée d’où cela peut-il bien venir ?

    • erreur dans la syntaxe je pense :

      <BOUCLE_lacondi (CONDITION) {si #ENV{cb}|>{0}} >

      attention au | (il s’agit d’un filtre SPIP).

      cordialement

    • Re bonjour et merci de vous pencher sur mon problème.

      Dans mon post j’ai oublié de le rajouter mais il est bien dans mon code pourtant la partie SINON de la condition ne s’exécute pas. Je ne sais pas pourquoi...

      Je poste/inclue une variable qui si elle est > 0 doit écrire “je suis au -2” (cela fonctionne) ou sinon "je suis au -1 (ne marche pas). J’ai essayé l’inverse mais j’ai un retour que lorsque je suis au -2. Bizarre, non ?

      Cdlt,

      cb79

    • avez vous testez ma suggestion ? parceque tel que vous écrivez actuellement votre test, la condition est toujour vrai.

      Je répète ne pas oubliez le |

    • Bonjour,

      Oui, tout à fait.

      J’ai une page qui appelle une autre page.

      mapage1 :

      <BOUCLE_b1(RUBRIQUES){id_parent} >
      <INCLURE (mapage2){id_rubrique}{mavar=#COMPTEUR_BOUCLE} ></INCLURE>
      </BOUCLE_b1>

      mapage2 :

      <BOUCLE_macondition (CONDITION) {si #ENV{mavar}|>{0}} >
      je peux aller au niveau N-2
      </BOUCLE_macondition>
      je suis bloqué au niveau 1
      <//B_macondition>

      Visiblement j’arrive bien à catcher “mavar”, je peux même afficher sa valeur, mais si mavar=0 ça ne m’affiche pas “je suis bloqué au niveau 1”, pourquoi ? Quel autre test puis-je faire pour savoir si spip bonux répond bien (j’ai même réinstallé et/ou mis à jour) ? Y a t-il une alternative autre ?

      Cordialement,

      cb79

    Reply to this message

  • 1

    bonjour,

    je suis sous SPIP 2.1.1,
    et la boucle CONDITION plante lorsque j’utilise un modele dans la partie principale (vrai) de la boucle, et pas dans la partie alternative (faux)

    le message : Table SQL « condition:matable » inconnue, matable étant utilisée dans une boucle de mon modèle

    merci

    • le problème est semble t-il déjà connu, et se produit également avec la balise #INCLURE

      Une solution de dépannage consiste donc à utiliser la balise <INCLURE>en lieu et place de #INCLURE et #MODELE

    Reply to this message

  • J’oubliais : Je suis sur SPIP 2.1.1.

    Reply to this message

  • Bonjour,
    J’ai depuis peu l’erreur suivante sous IE :
    Savez-vous d’où cela pourrait venir ?
    Cordialement
    Vincent
    ******
    Détails de l’erreur de la page Web

    Agent utilisateur : Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)
    Horodateur : Tue, 29 Jun 2010 08:24:24 UTC

    Message : ’data(...)’ a la valeur Null ou n’est pas un objet.
    Ligne : 138
    Caractère : 19
    Code : 0
    URI : ../plugins/spip-bonux/javascript/jquery.qtip-1.0.0-rc3.js

    Reply to this message

  • 2
    spipeur_débutant

    Bonjour,

    J’ai mis à jour le plugin SPIP Bonux (11/06/2010) il y a quelques minutes et maintenant, mon site plante régulièrement avec ce message d’erreur :

    Fatal error: Cannot redeclare balise_config() (previously declared in /XXXX/plugins/auto/spip-bonux/configurer/pipelines.php:253) in /XXXX/plugins/auto/cfg/cfg_fonctions.php on line 45

    Que faire ?

    Merci

    • Il faut mettre à jour CFG aussi, il vient d’y avoir une evolution dans bonux qui crééait un conflit entre les deux.

    • spipeur_débutant

      Merci beaucoup.
      J’ai forcé l’actualisation à distance dans les mise à jour via le couteau suisse et effectivement, il y avait une mise à jour pour CFG Rév. 38776 12/06/10. Tout semble correcte.

      Merci Cédric

    Reply to this message

Comment on this article

Who are you?
  • [Log in]

To show your avatar with your message, register it first on gravatar.com (free et painless) and don’t forget to indicate your Email addresse here.

Enter your comment here

This form accepts SPIP shortcuts {{bold}} {italic} -*list [text->url] <quote> <code> and HTML code <q> <del> <ins>. To create paragraphs, just leave empty lines.

Add a document

Follow the comments: RSS 2.0 | Atom