Plugin ABCalendrier

Mini Calendrier pour Articles et Brèves

Un mini calendrier pour publier des évènements depuis les articles et les brèves

Ce plugin est inspiré du minicalendrier pour eva, mais il permet d’insérer dans le calendrier à la fois les articles et les brèves.

Un nouveau champ evento est ajouté à la table spip_breves dans la base de données.

Le code a été ré-écrit pour utiliser le tags #BALISE de spip, ce qui évite d’insérer du php dans les squelettes ; la compatibilité multilingue a été ajoutée.

Il est maintenant possible d’ajouter plus d’évènements sur le même jour.

Installation :

Téléchargez les fichiers depuis le grenier.

Activez le plugin de manière classique. Créez un mot-clé mini-calendrier.

Utilisation :

Pour ajouter un article dans le calendrier, ajoutez le mot-clé mini-calendrier et utilisez la date de rédaction antérieure comme date d’évènement (assurez-vous de l’avoir activée dans le panneau de configuration)

Pour ajouter une brève dans le calendrier, validez la brève puis ajoutez le mot-clé mini-calendrier et paramétrez la date de l’évènement.

Insérez le tag #ABCALENDRIER dans les squelettes.
Paramétrage optionnel : il est possible d’écrire #ABCALENDRIER{7} pour limiter la liste d’évènements visualisés sous le calendrier à 7 par exemple.

Merci

Je remercie les auteurs du minicalendrier pour Eva, Olivier Gautier et tous ceux qui ont contribué au développement de la documentation du plugin.

Je remercie Tropicaloo pour la traduction en français de l’article.

Le logo est gracieusement offert par Attilio Torre

Discussion

41 discussions

  • La version compatible avec spip 2,0 est sur la zone.

    Commencent les tests !

    Répondre à ce message

  • 1

    C’est bon, j’ai réussi à régler mon problème d’injection de php3.

    Dans le fichier : abcalendrier.php (ligne184), j’ai remplacer « include_spip(’urls/standard’) ; » par « charger_generer_url() ; » et SPIP fait le boulot tout seul pour trouver la bonne url.
    Du coup, plus besoin de fichier php3 avec redirection par header et c’est tant mieux ;-)

    en action : strangerider.free.fr

    Répondre à ce message

  • 2

    Bonjour,

    Comment limiter le nombre d’événements qui s’affichent sous le calendrier ?
    ça doit être simple, mais je ne trouve pas

    http://www.auboisementcorrect.com

    • Vous pouvez essayer le code donné sur le forum italien :-)

      Ce serait une idée de mettre ce « $test_boucle » en paramètre de la balise ...

    • yes,
      this is the idea,
      I’m inserting in the next version

    Répondre à ce message

  • 1

    bonjour

    j’utilise la version de spip 1 9 2d avec le plugin abccalendrier (version corrigée) pourtant je ne peux afficher les mois suivants au delà du premier mois (erreur 404)
    merci pour vos lumières
    yo

    • Bonjour,

      J’ai le même problème d’affichage des mois (Spip 1.9.2d). Plugin visiblement à revoir, car aucune solution viable (la révision 20185, dernière en date à ma connaissance, ne résoud pas grand chose...) n’est proposée à ce bug ! Dommage pour le manque de suivi, le plugin était intéressant.

    Répondre à ce message

  • Escuse moi,
    I had same troubles with email and didn’t receive your messages there.
    _
    Pour le bug

    « ne peux afficher les mois suivants au delà du premier mois (erreur 404) »
    je mise a jour le fichier « /abcalendrier/formulaires/abcalendrier.html » sur la zone

    I hope now it’s ok

    thanks for your reports and patience

    Répondre à ce message

  • 1

    Bonjour,

    Merci pour ce merveilleux plugin.
    Néanmoins, l’utilisation du calendrier n’est pour moi pas assez explicite.
    Une fois un groupe de mot crée « mini-calendrier » et associé à un article, l’agenda n’affiche rien.
    Ai-je oublié une étape ?
    De plus, je ne comprends pas ce qu’il y a à modifier dans la configuration. En bref, ça veux dire quoi ça :

    Pour ajouter un article au calendrier, ajoutez le mot-clé mini-calendrier et utilisez la date de rédaction antérieure comme date d’évènement (assurez-vous de l’avoir activée dans le panneau de configuration)

    Quelqu’un peux-t-il expliquer cela en détail svp ?

    Merci

    • utilisez la date de rédaction antérieure comme date d’évènement

      Onglet Configuration localitè/
      Articles (contenu)
      date redac anterieur : oui

      excuse moi francaise

    Répondre à ce message

  • 2

    Bonjour,
    Je viens d’installer ABCalendrier sur mon site. Il correspond exactement à ce que je cherchais.
    J’ai un problème pour l’affichage de l’article qui correspond à un événement.
    Si je viens de vider le cache, pas de problème et l’adresse URL qui s’affiche est (par exemple)
    http://localhost/sedet-essai/spip.php?article191
    mais ensuite, si je veux recommencer, que le cache n’est pas vide, j’ai
    http://localhost/sedet-essai/article.php3?id_article=191
    avec affichage d’une erreur 404.

    J’ai mis le .htaccess.txt de SPIP, (les éléments à décommenter indiqués dans ce forum par Tropicaloo l’étaient déjà en fait).
    Rien.
    J’ai ensuite créé un fichier article.php que j’ai mis à la racine du site (là où est le fichier spip.php) en adaptant à mon cas le conseil de Michel, toujours dans ce forum.
    Rien non plus.
    Je précise que je ne peux pas mettre de brèves dans mon site, (fonction désactivée de fait, même si je l’active sur les pages privées... un « cadeau » du kit CNRS avec lequel je m’entraine (http://sedetessai.free.fr/).

    Je suis vraiment très ennuyée, je n’arrive pas du tout à trouver ce que je dois faire.
    Merci !
    Pétarel

    • Bonjour,
      Attention, j’ai changé de calendrier, donc le calendrier qui s’affiche quand vous allez sur l’adresse que je donne ci-dessus (sedetessai.free.fr) n’est plus ABCalendrier. Donc vous ne verrez pas mon problème... que j’ai fini par contourner.
      Pétarel

    • Bonjour,
      c’est quel agenda que tu utilises maintenant ?
      joz

    Répondre à ce message

  • 9

    Bonjour j’ai intégré le plugin dans mon site en pré-production (www.sqy-sportnature.fr/2)
    Il s’affiche bien dans ma page pour le mois en cours. Par contre si je veux visualiser le mois précédent ou mois à venir, j’ai une erreur 404 qui s’affiche. Une idée de l’origine de ce problème ?

    • www.management-projet.org

      Bonjour,

      Le changement dans le fichier suivant a fonctionné pour moi. (SPIP 1.92)
      plugins/abcalendrier/formulaires/abcalendrier.html

      Il suffit, à priori, d’ajouter

      spip.php ? devant les liens

      (j’aurais mis le code mais je ne sais pas comment le faire afficher correctement, désolé)

    • Pour ma part je suis en 1.9.2.d lorsque je chnage de mois en avant ou arriere ca ne marche qu’une fois et je reste bloque sur ce dernier.

      En plus clair :
      mois par defaut , mois suivant => ok , tentavive de faire mois suivant ou mois suivant je reste bloque sur

      mois par defaut , mois precedent => ok , tentavive de faire mois suivant ou mois suivant je reste bloque sur

      J’ai des evenements déclares dans les mois passes et futur.

      Suis-je le seul a avoir ce probleme ?

    • Pour ma part je suis en 1.9.2.d lorsque je chnage de mois en avant ou arriere ca ne marche qu’une fois et je reste bloque sur ce derneir.

      En plus clair :
      mois par defaut Avril , mois suivant => Mai ok , tentavive de faire mois suivant ou mois suivant je reste bloque sur

      mois par defaut Avril , mois precedent => Mars ok , tentavive de faire mois suivant ou mois suivant je reste bloque sur Mars

      J’ai des evenements déclares dans les mois passes et futur.

      Suis-je le seul a avoir ce probleme ?

    • Tropicaloo

      Il semble y avoir des injections d’URL en .php3 de manière aléatoire au lieu de .php ...
      Pour assurer une compatibilité totale avec l’ancien format d’url, il faut utiliser le .htaccess de spip à la racine du site et décommenter les lignes 33 et 34 (enlever le # devant les lignes) :

      RewriteCond %REQUEST_FILENAME -f
      RewriteRule ^(.+)\.php[3]$ $1.php [QSA,L]

      Utilisation :
      1- Modifier le fichier htaccess.txt fourni par spip (à la racine) comme indiqué ci-dessus.
      2- Le transférer par FTP sur le serveur
      3- Modifier le nom « htaccess.txt » en « .htaccess »

    • impossible de le renommer en .htaccess , windows demande un nom de fichier et comprends que c’est une extension . Quelle est l’astuce.

      Merci

    • Thanks !!!
      It’s a bug : I didn’t clear variables calendrier_mois and calendrier_annee from the url so they where published several times in the same url and behaviour become unpredictable.

      Her is the corrected code for file /formulaires/abcalendrier.html as in svn rev 20185
       :

      #CACHE{86400}
      <div id="abcalendrier">
      	<h2 class="menu-titre"><:abcalendrier:agenda:></h2>
      			<a href="[(#SELF|parametre_url{'calendrier_annee',''}|parametre_url{'calendrier_mois',''})][(#SELF|strpos{'?'}|>{0}|?{'&','?'})]calendrier_mois=#ENV{prec_mois}&calendrier_annee=#ENV{prec_annee}" title="<:abcalendrier:mois_precedent:>">&lt;&lt;</a>&nbsp;&nbsp;#ENV*{moise_annee_curr}&nbsp;&nbsp;<a href="[(#SELF|parametre_url{'calendrier_annee',''}|parametre_url{'calendrier_mois',''})][(#SELF|strpos{'?'}|>{0}|?{'&','?'})]calendrier_mois=#ENV{suiv_mois}
      &calendrier_annee=#ENV{suiv_annee}" title="<:abcalendrier:mois_suivant:>"> &gt;&gt;</a>
      	[(#ENV*{abcal_table})]
      	<table width="100%"  border="0" cellspacing="0" cellpadding="2">
      		<tr>
      			<td>
      				[(#ENV*{event_table})]
      			</td>
      		</tr>
      	</table>
      </div>
    • Thanks a lot

      GH

    • nommer son fichier xx.htaccess sous windows, et le renommer en .htaccess une fois sur le serveur.

    • Le fichier .htaccess n’était pas accepté en l’état par mon hébergeur (tout plante...), j’ai opté pour une solution moins élégante mais qui doit être universelle :

      On crée un fichier « breve.php3 » et on le place dans le même répertoire que « spip.php »
      Son contenu est tout simplement :

      <?php
      header ("location:spip.php?breve$id_breve");
      ?>

      Et ça fonctionne parfaitement puisque le lien "corrompu" apparait sous la forme “breve.php3 ?id_breve=xxxx”

      On peut si nécessaire pratiquer de manière identique pour les articles s’il y en a qui sont référencés dans le mini-calendrier.

    Répondre à ce message

  • 1
    Jean-Luc (Croco)

    Bonjour, après une installation nickel en local, j’ai un warning après avoir transféré mon site chez mon hébergeur : « Warning : mysql_fetch_assoc() : supplied argument is not a valid MySQL result resource in /home/users2/j/jlgarnier/www/newsite/plugins/abcalendrier/balise/abcalendrier.php on line 225 ». C’est étonnant car cette ligne 225 ne présente rien de particulier... Une piste ?

    Merci d’avance pour toute aide !

    • It should be a bug that comes when you haven’t yet inserted mini-calendrier breves.

      Let me know if you already inserted breves in the mini-calendrier or not.

      Thanks for your notice

    Répondre à ce message

  • 3

    Bonjour

    Le plug-in est bien, mais n’aurait-il pas ete mieux d’eviter de patcher une table officielle de spip ? Est-il possible de contourner cela ?

    Merci

    • Sorry, I can’t write french.

      Initially I used champs extra, but their use is deprecated. And I thought it was excessive adding a whole table for just one field.

      Maybe in next version we can think about it, so we can avoid to use date redaction anterieur in the articles for the mini-calendrier.

      The table should contain the following fields :
      -  id_evenement
      -  object_type (article/breve, etc)
      -  id_object (id_article or id_breve...)
      -  date_evenement(date time evenement)
      -  date_fin_evenement (as suggested by Tropicaloo)

      Or did you think to different solutions ?

    • Hi,

      No worries for the French, I speak English too :)

      IMHO, even if it’s heavier to use a second table (for one field), it’s better to do so. This is really useful when you need to add extra features, and obviously, it’s cleaner :)
      For me, working in ’official’ table could break the upgrade process when updating spip version.


      French version ------
      Salut

      AMHA, même si c’est plus lourd d’utiliser une table séparée, c’est mieux de faire ainsi. c’est bien plus utile quand on a besoin d’ajouter des fonctionnalités, et bien sur, c’est plus propre.
      Pour moi, utiliser les tables officielles de spip pourrait casser le processus de mise a jour lors d’un changement de version de spip.

    • Tropicaloo

      Hi,
      With using specific fields, the keyword min-calendrier is no more useful.

      -----------------------------------------------------------------

      Bonjour,
      En utilisant des tables spécifiques, le mot-clé mini-calendrier n’est plus utile.

    Répondre à ce message

Ajouter un commentaire

Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :

  • Désactiver tous les plugins que vous ne voulez pas tester afin de vous assurer que le bug vient bien du plugin X. Cela vous évitera d’écrire sur le forum d’une contribution qui n’est finalement pas en cause.
  • Cherchez et notez les numéros de version de tout ce qui est en place au moment du test :
    • version de SPIP, en bas de la partie privée
    • version du plugin testé et des éventuels plugins nécessités
    • version de PHP (exec=info en partie privée)
    • version de MySQL / SQLite
  • Si votre problème concerne la partie publique de votre site, donnez une URL où le bug est visible, pour que les gens puissent voir par eux-mêmes.
  • En cas de page blanche, merci d’activer l’affichage des erreurs, et d’indiquer ensuite l’erreur qui apparaît.

Merci d’avance pour les personnes qui vous aideront !

Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.

Qui êtes-vous ?
[Se connecter]

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Suivre les commentaires : RSS 2.0 | Atom