Plugin Agenda pour SPIP 1.9

Le plugin agenda permet d’ajouter un objet « événement » aux articles.
-  Agenda 2.0 et ultérieur pour SPIP 2 et SPIP 3 est sorti. Suivez le lien !

Introduction

Un évènement est délimité dans le temps par une date de début et une date de fin. Il est décrit par un titre, un lieu et un descriptif. Des mots clefs peuvent lui être associés.

Le principe d’associer les événements aux articles a été retenu plutôt que de leur créer un workflow indépendant.

Il y a principalement deux façons d’utiliser les événements :

  • Pour les types d’évènement nécessitant une présentation éditoriale significative (comme des spectacles par exemple), l’article est utilisé pour rédiger la présentation éditoriale (avec toute la richesse de contenu permise par l’article), et les évènements attachés à l’article pour en préciser les occurrences, les lieux associés, et éventuellement certaines précisions liées à l’occurrence. Dans ce cas, on pourra regrouper les articles dans une rubrique.
  • Pour la gestion d’un agenda évènementiel dans lequel les évènements sont décrits de façon plus succincte (pas de réel contenu éditorial), on pourra regrouper tous les évènements dans un même article, en utilisant simplement le descriptif et le lieu de chaque évènement pour apporter les précisions nécessaires.

Selon le mode d’utilisation retenu, en fonction de votre besoin fonctionnel, les squelettes et boucles utilisés seront différents. Aussi le plugin n’intègre pas de squelettes tout prêts à l’emploi, mais plutôt des exemples et des modèles qu’il convient d’enrichir ou de personnaliser.

Télécharger le plugin

-  La version pour SPIP 1.9.0 est disponible en téléchargement sur la zone ici
-  Et le plugin Widget Calendrier se télécharge ici
-  La version pour SPIP 1.9.1 est disponibe ici
-  La version pour SPIP 1.9.2 est disponibe ici

Installation

Pour fonctionner, ce plugin nécessite le plugin Widget calendar. Il faut donc installer les deux plugins (Widget calendar + Agenda ) dans le répertoire plugins à la racine de votre site.
Une fois installés, rendez-vous au menu « Configuration » à « Gestion des plugins » et cochez les cases « Activer le plugin » en regard de Agenda et Widget Calendar.

Définir des groupes de Mots Clés

Pour pouvoir utiliser des mots-clés sur les évènements, vous devez spécifier dans les groupes que ceux ci s’appliquent aux évènements de l’agenda.

Saisir un évènement

Il y a deux modes de visualisation et d’édition des évènements dans l’interface privée : sur les pages articles, et par le gadget agenda.

Dans un article vous diposez d’une nouvelle barre d’outils dépliable nommée Agenda, située entre la zone d’édition des mot-clés et celle de validation de l’article. En la dépliant vous disposez de nouveaux champs pour créer votre évènement :

  • Titre : par défaut reprend le titre de l’article, mais il est possible de le modifier ;
  • Lieu : pour indiquer le lieu de l’évènement ;
  • Horaire : case à cocher pour gérer ou non les horaires de l’évènement (cochée par défaut) ;
  • Dates : permet de saisir les dates (et heures) de début et de fin de l’évènement. Soit à l’aide de deux calendriers graphiques sous forme de tableaux, soit à l’aide de menus déroulants (jour, mois, année, heure, minute) ;
  • Mots clefs : vous pouvez associer des mots clés (dans les groupes définis pour) aux événements. Pour les groupes à choix multiples, selectionnez/deselectionnez les différents mots clefs dans la liste en utilisant la touche ’ctrl’.
  • Répétitions : un calendrier vous permet de cocher les répétitions de l’évènement. Si l’évènement dure plus d’une journée, il est présumé que c’est la date de début qui est indiquée ici pour chaque évènement. Les heures de début et de fin et la durée seront conservées pour chaque occurrence.
    Toutes les occurrences de l’évènement héritent également des mots clés de l’évènement principal
  • Ajouter : bouton pour ajouter l’évènement.

Lorsqu’un évènement est saisi, il apparait dans une liste au dessus du formulaire. Vous pouvez modifier un évènement en cliquant dessus.

(Voir également la vidéo de Ben)

En cliquant sur « Calendrier », vous pouvez basculer vers la vue agenda des évènements de l’interface privée.

Il y a maintenant deux vues agenda : l’une pour les évènements, que nous allons détailler ici, et l’autre pour l’activité éditoriale, qui est celle d’origine, et correspond à la publication des articles.

Lorsque vous arrivez sur la vue agenda depuis un article, celui-ci est dans le contexte, et son titre est rappelé au dessus du calendrier. Vous pouvez alors cliquer sur un créneau horaire pour ajouter un évènement à cet article. Vous retrouvez, à droite de l’écran, un formulaire identique à celui décrit ci-dessus.

Vous pouvez aussi cliquer sur un évènement affiché dans le calendrier pour l’éditer. Si il s’agit d’une répétition, une mention l’indique en bas avec un lien vers l’évènement original pour le modifier.

Si l’évènement que vous éditez est rattaché à un autre article, c’est ce nouvel article qui devient celui du contexte, et auquel seront rattachés les évènements ajoutés.
Dans le calendrier, les évènements liés à l’article du contexte apparaissent de manière différente des autres.

Dans les squelettes

L’introduction des événements passe par une nouvelle boucle : la boucle EVENEMENTS

Balises

Elles correspondent aux champs de l’évènement :

  • #TITRE
  • #DATE_DEBUT
  • #DATE_FIN
  • #LIEU
  • #DESCRIPTIF
  • #HORAIRE qui prend la valeur oui/non, et est utile pour savoir si on doit afficher l’heure ou non dans une boucle (cf 2° exemple de boucle)
  • #ID_EVENEMENT_SOURCE : lorsque l’évènement est une répétion, retourne l’id de l’évènement qui est répété, 0 sinon

Les Critères

Vous pouvez évidemment utiliser les champs de l’évènement comme critères : id_evenement, date_debut, date_fin, lieu, descriptif, horaire et id_evenement_source. À noter que le critère date est aussi utilisable, et est dans cette boucle identique à date_debut.

Mais de nombreux autres critères sont également disponibles

  • Critères de date
    Tous les critères habituels age, age_relatif, mois_relatif, jour_relatif sont declinables sur les dates de début et de fin : age_debut, age_relatif_debut, mois_relatif_debut, jour_relatif_debut, et de même age_fin, age_relatif_fin, mois_relatif_fin, jour_relatif_fin
    Dans ce cas, il est à noter que les comparaison sont faites par rapport à des date_debut et des date_fin.
    Ainsi si vous utilisez {mois_relatif_debut<0} comme critère de votre boucle EVENEMENTS, seront retenus les évènements dont le mois de la date de début est supérieur ou égal au mois de date_debut du contexte (soit #ENV{date_debut} #DATE_DEBUT de la boucle englobante)

Pour trier vos évènements par rapport à une date englobante, il convient donc de la passer en paramètre de votre inclure dans date_debut et dans date_fin

  • Critères d’arborescence
    Les évènements étant rattachés à un article, il est possible d’utiliser sur la boucle événements les critères liés à l’arborescence du site : id_article évidemment, mais aussi id_rubrique, id_secteur, branche ..., qui s’interprètent implicitement par rapport à l’article auquel est rattaché l’événement.
  • Critères de mots-clés
    Comme il est possible de rattacher des mots-clés aux évènements, les critère liés aux mots clés (id_mot, type_mot ...) sont utilisables, et s’interprètent vis à vis des mots clés rattachés aux événements. Si vous voulez trier vos évènements en fonction des mots clés rattachés aux articles associés, il vous faut passer par une boucle ARTICLES supplémentaire.
  • Critères agenda
    Le critère agenda de SPIP permettant de sélectionner des occurrences appartenant à un jour, une semaine, un mois, une période ne s’applique pas ici directement compte tenu qu’un évènement a une date de début et une date de fin, et qu’il faut en tenir compte. À défaut, il permet de sélectionner les évènements dont la date de début est dans la période considérée.
    Pour le compléter, le critère agendafull est défini, qui permet de sélectionner tous les évènements à cheval sur la période considérée (dont l’intersection avec la période n’est pas nulle). Exemple :
    {agendafull date_debut,date_fin, mois, #ENV{annee}, #ENV{mois}}

Les filtres

Attention, ces filtres ne sont à utiliser que pour les version de SPIP < 3.0. Depuis la version 3.0, la gestion de l’agenda a changé : SPIP 3, Agenda et FullCalendar.

  • Les filtres Agenda_memo_full, Agenda_memo_evt_full et Agenda_affiche_full
    Ils sont la transposition des filtres natifs SPIP (agenda_memo et agenda_affiche) aux évènements. Ils prennent donc en plus en compte la date de fin. Exemples :
    • [(#DATE_DEBUT|Agenda_memo_full{#DATE_FIN,#TITRE,#DESCRIPTIF,#LIEU,#URL_ARTICLE, 'couleur'})] mémorise un événement qui sera affiché avec la class ’couleur’ dans l’agenda, sur le créneau horaire concerné
    • [(#DATE_DEBUT|Agenda_memo_evt_full{#DATE_FIN,#TITRE,#DESCRIPTIF,#LIEU,#URL_ARTICLE, 'couleur'})] mémorise un évènement sans notion d’heure (donc à utiliser lorsque #HORAIRE=non) qui sera affiché avec la class ’couleur’, en bas de l’agenda
    • [(#TOTAL_BOUCLE|Agenda_affiche_full{<:aucun_article:>, 'mois'})] affiche l’agenda avec les événements mémorisés par les appels aux deux filtres précédents.
  • le filtre Agenda_affdate_debut_fin affiche sous forme sympathique la date de l’événement en prenant en compte le fait que la date de début et la date de fin sont ou non le même jour, le même mois, la même année, et en prenant en compte l’affichage de l’heure ou non. Exemple :
    [(#DATE_DEBUT|Agenda_affdate_debut_fin{#DATE_FIN,#HORAIRE})]
  • le filtre Agenda_dateplus sert a afficher une date avec ajout de temps :
    [(#DATE_FIN|Agenda_dateplus{3600,'H:i'})] affiche la date de fin augmentée de 1H (3600 secondes) au format ’H:i’ (heures:minutes, voir affdate pour les types de format)

Exemples de boucle

1° exemple

<B_agenda>
<h3><:agenda:></h3>
<dl>
<BOUCLE_agenda(EVENEMENTS){age<0}{par date}{statut=publie}>
<dt>#TITRE</dt>
[<dd>(#DATE_DEBUT|Agenda_affdate_debut_fin{#DATE_FIN,#HORAIRE})</dd>]
<dd>#LIEU</dd>
<dd>#DESCRIPTIF</dd>
</BOUCLE_agenda>
</dl>
</B_agenda>

Version stable 1.9 : à noter le statut=publie dans cette boucle. En effet, vu qu’il n’y a pas de contexte d’article, tous les évènements à venir seraient publiés, même ceux attachés à un article non publié.

2° exemple

<B_lesevenements>
<h3 class="spip">&Eacute;v&egrave;nements associ&eacute;s</h3>
<ul class="spip">
<BOUCLE_lesevenements(EVENEMENTS) {par date} {id_article}>
<li 
class="spip"><strong>[(#TITRE|supprimer_numero|couper{80})]&nbsp;:</strong>
  [(#DATE_DEBUT|jour|=={[(#DATE_FIN|jour)]}|?{
  le [(#DATE_DEBUT|nom_jour)] [(#DATE_DEBUT|affdate)] 
[(#HORAIRE|=={oui}|?{
   [(#REM) memes heures ?]
     [(#DATE_DEBUT|=={#DATE_FIN}|?{&agrave 
[(#DATE_DEBUT|heures)]h[(#DATE_DEBUT|minutes)],''})]
   [(#REM) pas memes heures ?]
     [(#DATE_DEBUT|!={#DATE_FIN}|?{de 
[(#DATE_DEBUT|heures)]:[(#DATE_DEBUT|minutes)] &agrave; 
[(#DATE_FIN|heures)]:[(#DATE_FIN|minutes)],''})]
,''})]
,
  du [(#DATE_DEBUT|nom_jour)] [(#DATE_DEBUT|affdate)] 
[(#HORAIRE|=={oui}|?{&agrave; partir de
  [(#DATE_DEBUT|heures)]H[(#DATE_DEBUT|minutes)],''})] au 
[(#DATE_FIN|nom_jour)]
  [(#DATE_FIN|affdate)] [(#HORAIRE|=={oui}|?{jusqu'&agrave;
  [(#DATE_FIN|heures)]H[(#DATE_FIN|minutes)],''})]  })]
[-&nbsp;lieu&nbsp;: (#LIEU)]
</li>
  </BOUCLE_lesevenements>
</ul>
</B_lesevenements>

Squelettes

agenda_xx

Des adaptations à la boucle EVENEMENTS des squelettes agenda_jour, agenda_semaine, agenda_mois et agenda_periode et utilisant les critères agendafull et les filtres associés sont inclus dans le plugin. Ainsi, lorsque le plugin est activé ?page=agenda affiche l’agenda avec tous les évènements définis au lieu des articles.

ical-agenda

Il propose les évènements au format ical. On peut choisir de sélectionner ceux d’un article seulement en spécifiant dans l’url

Le Mini-Calendrier

Le plugin inclut un exemple de #CALENDRIER_MINI qui est une adapation à la boucle EVENEMENTS de la version proposée par James. Il est défini dans formulaires/calendrier_mini.html, et vous pouvez le personnaliser en le recopiant dans votre dossier squelettes (dans un sous répertoire formulaires/ comme dans le plugin).

Par défaut, sa syntaxe est :

#CALENDRIER_MINI{#ENV{date},'date',#SELF}

  • le premier argument est la date en cours
  • le second est le nom de la variable date dans l’url
  • le troisième est l’url de base vers laquelle le calendrier doit renvoyer.

Dans la version définie dans le plugin, le calendrier liste les articles liés à un id_article du contexte et éventuellement à un id_mot du contexte (si la balise est appelée dans une boucle MOTS par exemple.

Personnalisation du #CALENDRIER_MINI

Par défaut, la balise collecte l’id_rubrique, l’id_article et l’id_mot du contexte ou elle est appelée. Pour prendre par exemple tous les évènements d’une rubrique sans s’occuper de l’id_article ni de l’id_mot, on modifiera les critères de la BOUCLE_calendrier dans calendrier_mini.html

Un exemple d’appel à la balise est illustré dans le squelette de démo demo_calendrier_mini.html

Un formulaire d’édition des événements

Il est possible de mettre un formulaire en ligne pour permettre aux visiteurs d’éditer ou de proposer des évènements. Comme ceux-ci sont rattachés à des articles, il faut pour cela être dans une boucle article, qui permet de définir à quel article seront rattachés les évènements proposés.

Pour utiliser le formulaire, il suffit d’insérer la balise #FORMULAIRE_EDITION_EVENEMENT, dans une boucle article de votre squelette.

Si un id_evenement est spécifié dans l’url, le formulaire permettra de modifier l’événement sélectionné. Sinon, si le paramètre ajout_evenement=oui est précisé dans l’url, il permet d’ajouter un évènement.

Le formulaire collecte tout seul l’id_article et l’id_evenement du contexte.

Pour faire un lien permettant d’ajouter un événement, utilisez la construction de l’url ci-dessous :
<a href='[(#SELF|parametre_url{ajout_evenement,oui}|parametre_url{id_evenement,''})]'><:agenda:titre_cadre_ajouter_evenement:></a>

Pour permettre de proposer des évènements, mais pas de les éditer, on peut par exemple afficher le formulaire avec un style display:none en fonction de la présence ou non de id_evenement :

<div [style='(#ID_EVENEMENT|?{display:none,''})']>
#FORMULAIRE_EVENEMENT
</div>

Discussion

321 discussions

  • 1

    Bonjour,
    l’install du plugin agenda et widget a bien fonctionné. Je les ai dans la partie privé
    Par contre je n’ai pas d’agenda dans la partie publique de mon site
    et ce, même après avoir affecté une date de l’agenda à un article.
    Je suis en spip 1.9.1 et j’ai donc téléchargé l’agenda correspondant.

    Y a t’il une autre manip à faire sachant que je suis débutant en spip ?
    merci

    • Tu dois ecrire un boucle spip, sinon tu n’auras rien. Tu as des exemples juste ci-dessus (dans l’article).

    Répondre à ce message

  • 24

    Bonjour,

    J’utilise Spip depuis un certain temps bien que je suis toujours novice. J’ai commencé avec la version 1.8.3. j’ai installé des squelettes, et même un agenda. ( en renomant le fichier rubrique.html par rubrique-6.html) Bref

    Depuis j’ai installé la version 1.9.1n et je decouvre ce super agenda j’ai installer les plugin, tout ce passe bien la la partie privée du site. Mais je n’arrive pas a avoir l’agenda je clic sur la rubrique agenda. Comment puis je faire ?

    Merci de votre aide

    Je peux aussi vous appeler, on y gagnerai peut etre du temps

    • et bien yeahman, je suis comme toi ...
      Bon j’arrive à afficher le mini agenda où je veux en ajoutant la ligne #CALENDRIER_MINI#ENVdate,’date’,#SELF dans mon fichier inc-colgauche.html (squelette recit fp) de façon à afficher le calendrier sur la colonne de gauche ...

      Toutefois mes compétences s’arretent la puisque les liens sur les evenements que j’ai créé n’apparaissent pas ... étrange ????? Par ailleurs impossible de naviguer dans les mois ... Bizzare ??? Bien sur ces problèmes sont liés au fait que je capte rien à ce plugin lol Alors si quelqu un pouvait m’en dire plus ça m’aiderait bien !

      Après avoir inclu l’appel du calendrier dans ma colonne de gauche que dois je faire pour que ce calendrier soit opérationnel ? quel code ajouter dans quel fichier ? Merci de me sortir de ce trou noir ;-)

    • je précise ma doléance ..... après moulte trituration cérébrale je me suis rendu compte que la solution consistait à intégrer une boucle evenement dan mon fichier inc-colgauche.html en plus du fameux #CALENDRIER_MINI#ENVdate,’date’,#SELF
      par contre je ne maitrise pas la syntaxe et je n’y arrive pas .... quelqu’un peut il me donner le code intégrant la boucle et la balise #CALENDRIER_MINI pour que mon mini calendrier s’affiche... et qu’il fonctionne c’est à dire qu’en cliquant sur une date liée à un évènement l’article apparaisse...
      je sais pas si je suis claire ... mais merci d’avance

    • rectification les boucles à modifier doivent l’être dans le fichier formulaire/calendrier_mini
      si quelqu’un pouvait en poster une version opérationnelle ça serait cool

    • je ne suis pas capable de t’aider, car j’en suis au même point que toi... mais bon voilà, tu ne parles pas dans le vide :-)

    • pffff je n’ai pas réussi à exploiter ces liens... il doit y avoir un truc que je n’ai pas saisi...

      reprenons dès le début :

      DANS UN PREMIER TEMPS
      1) j’ai téléchargé , installé et activé les deux plugins (pour spip 1.9.1)
      2) comme je veux mettre le calendrier sur ma colonne de gauche, dans la page left j’ai rajouté :
      #CALENDRIER_MINI#ENVdate,’date’,#SELF

      3) dans ma partie squelette, j’ai mis dans le sous dossier formulaires une copie de calendrier mini
      4) j’ai créé ne rubrique appelé agenda, contenant un article où j’ai renseigné un événement.

      RESULTAT :
      un calendrier apparait, mais aucun événement n’y est renseigné, il n’ya aucun lien, à part les petits flèches qui servent à changer de mois, qui là, mènent à une page d’erreur...

      DANS UN SECOND TEMPS, j’ai tenté d’exploiter les liens donnés par Cédric,

      notammant en remplacant mon fichier calendrier-mini par celui qui était sur ce site...

      et là j’ai un calendrier farfelu...

      où ai-je oublié quelque chose ?

    • Peut-être manque-t-il le contexte ?

      Voici par exemple la boucle calendrier de calendrier_mini.html pour afficher les évènements de la rubrique n°13 :

      <BOUCLE_calendrier(EVENEMENTS)
      			{id_rubrique=13}
      			{agendafull date_debut, date_fin, mois, (#ENV{date}|annee), (#ENV{date}|mois)} {statut=publie} >[
      			(#DATE_DEBUT|Agenda_memo_full{#DATE_FIN,[(#TITRE|addslashes)],
      				#DESCRIPTIF,#LIEU,
      				[(#ENV{self}|parametre_url{#ENV{var_date},[(#DATE_DEBUT|affdate{'Y-m-d'})]})]})
      			]</BOUCLE_calendrier>[
      			(#ENV{date}|agenda_mini)
      			]</tbody>
    • En fait ce que tu dis, c’st qu’il me faut creer un fichier calendrier de calendrier_mini.html dans lequel j’y mets la boucle en question.

      Puis comment vais je mettre en relation avec mon site, il me manque un élément . please un peu de lumiere........je suis dans le noir

      jE N’AI QUE LE MANUEL DE REFERENCE POUR COMPRENDRE SPIP QUELQU’UN A QUELQUE CHOSE DE PLUS.....!
      Merci d’avance vous etes cool§

    • ok ok ...
      Merci vinbaron pour tes indications .. je (nous lol) touchons presque au but ... ça ne sert à rien de déplacer le fichier calendrier_mini dans le repertoire squelette on peut le laisser dans le repertoire formulaire !!! il faut l’y laisser d’ailleurs sinon ça ne fonctionne pas ! en suite pour ma part j’ai appliqué l’indication de Vimbaron à savoir personnaliser le fichier calendrier_mini en précisanr id_rubrique=6 « 6 » étant le numéro de ma rubrique spip dont je veux que les articles apparaissent dans l’agenda ... bref j’ai un affichage correct maintenant, ça ressemble au résultat final ... MAIS.... Il y a un MAIS ! les liens de l’agenda vers les articles ne fonctionne pas , ça m’envoi sur une page d’erreure avec un vague fond de page de spip basique et le message suivant : Erreur(s) dans le squelette Aucun squelette ’jour’ n’est disponible. Si je clique pour changer de mois même chose : Erreur(s) dans le squelette Aucun squelette ’mois’ n’est disponible.

      je sens que je touche au but mais que dois je faire au sujet des squelettes jour, mois, ical, ... des modif ???

      merci d’avance

    • Bon un truc me gêne.. c’est que le mini agenda soit tributaire d’une rubrique ... Je pensai que n’importe quelle evenement renseigné dans l’agenda privé via un article pouvait être affiché dans le mini agenda .. c’est un autre truc qui a du m’échaper .. sans doute un argument à préciser dans la boucle évenement du fichier calendrier_mini ...

      Une question à la fois je sais .. mais tant qu’à faire si un expert pouvait répondre aux 2 post ça serait bien ;-)

    • bon... en effet, c’était une aide assez précieuse :-) merci beaucoup vinbaron (et dionysos qui avec ses questions me fait avancer également).

      donc le soucis pour moi : j’ai également un affichage à peu près correct mais :

      -  je ne peux pas changer de mois, ça reste bloqué à novembre. si je clique sur les petits flèches (d’ailleurs quand la souris passe dessus, c’est ,oté « décembre » ou « octobre »), l’adresse affiche ?date=2006-12(donc pour décembre) et c’est novembre qui reste affiché...
      -  si je clique sur un événement renseigné, l’adresse se met dans la barre de navigation (ex : ?date=2006-11-10) mais pareil, je reste toujours à la même page en réalité....
      -  pour ce qui est de l’apparence de mon calendrier, elle est juste en texte, j’ai l’impression que le style (widget si j’ai bien compris) ne s’applique pas. Est-ce du au fait que j’ai un dossier squelettes ?
      merci d’avance à ceux qui tentent de nous aider !

    • j’ai récupéré la feuille de style de trac.rezo.net conseillée par cedric morin (celui de spip-party) http://trac.rezo.net/trac/spip-zone/browser/_squelettes_/spip-party/squelettes/styles/calendrier_mini.css le calendrier ressemble enfin à quelque chose !
      j’utilise le fichier calendrier_mini conseillé par cedric (celui de spip-party) récupéré au même endroit.... Or ce dernier appel pour fonctionner des fichier jour.html, mois.html, backend-calendrier.html, ical.html, agenda.html, evenement.html (pas certains pour celui la) ... j’ai récupéré les fichier de spip-party mais ça ne marche pas. Par contre j’ai testé en renommant les fichier présents dans le plugin agenda_jour.html en jours et ainsi de suite ... je n’ai plus d’erreure quand je clic sur un évènement, mais j’arrive sur une page qui ressemble vaguement au calendrier de l’espace privé mais sans mise en forme css donc très épurée .. ... donc je crois que je brule, il faut maintenant les bons fichiers html et j’espère que ça fonctionnera ...

      Si quelqu’un a une suggestion je suis tout ouie ;-)

      que de bidouilles quand même, il aurait été plus simple de mettre un tuto étape par étape dans la contrib pour l’installation du plugin (qui par définition devrait être plug’n play , mais qui ne l’est pas pour moi en tout cas lol) .. Bon en tout cas j’ai hate que ça fonctionne, et merci aux contributeurs !

    • ah au fait pour afficher tous les evènement du site et non seulement ceux d’une rubrique il faut conserver dans la boucle evenement l’argument id_article ? id_rubrique ? avec le «  ? » c’est important ! je répond à mes propres questions, un vrai skyzo lol

    • Les mecs je vous trouve super balaise. SVP est ce que quelqu’un pourrais me filler un tout petit tuyau histoire d’avancer un petit peu.

      J’ai installé les plugins. Dans l’espace privé tout ce passe bien. Par contre dès que je passe sur le site je ne visualise aucun calendrier.

      Je comprends qu’il me faut copier coller et même voir modifier quelques boucles.

      Question,

      Dois je modifier les fichiers article.html ou en créer de nouveau......je suis paumé.... je comprends ce que vous écrivez mais je ne manipule pas depuis longtemps, in peu plus de précisions m’aiderait grandement.

      Souvenez vous de temps ou vous galèriez........JE GALERE GRAVE......UN PEU DE COMPATSION............

      Soyez Cool Merci

    • yeahman je galère autant que toi lol Dès que j’ai réussit à tout paramétrer je t’en informe ...
      Bon j’avance dans ma compréhension de ce plugin, sur la base du calendrier _mini de spip-party : à l’heure actuel j’ai un affichage parfait là où je veux du mini calendrier mais avec les liens hypertextes qui mènent à une page d’erreur 404 :
      -  le mois en cours (Novembre)
      -  les flèches des mois suivants et précédents
      -  un évènement (que j’ai crée pour tester)
      -  un lien ical (celui ci semble fonctionner)
      -  un lien rss2 qui ne fonctionne pas non plus et que je vais sans doute virer

      après analyse du code ces lien ont la syntaxe #URL_PAGEX où X est soit jour, mois, ical, backend-calendrier. .. ils renvoient à des fichiers HTML du même nom. j’ai modifier le code en remplaçant les X que je viens de citer par les noms des fichier du plugin par défaut agenda_mois ; agenda_jour ; ical-agenda ; et par défaut pas de fichier backend dans le plugin donc je l’ai laissé tel quel.

      Quand je clique sur les liens maintenant je tombe sur l’agenda de l’espace privé chaotique sans mise en forme... Cela me conduit à penser que je dois rédiger mes propres fichiers HTML jour, mois, ical ...adaptés à mon squelettes pour obtenir enfin le résultat que je désire ... Or je suis une bille en code lol Je pense que je vais adapter une page rubrique.html ou article.html ...

      Dans le site spip-party :
      -  quand on clique sur le mois du mini calendrier on tombe sur tous les articles indéxés dans l’agenda de ce mois. Quelle boucle permet de faire ça (la syntaxe précise ?)
      -  Quand on clique sur l’evènement du mini agenda on est renvoyé à l’article en question. Boucle ? Syntaxe ?
      -  quand on clique sur les flèches « suivant » « précédent » le mini calendrier défile aux moix suivants ou précédents ... et bien pas chez moi ?? la je ne sait pas quoi faire ???

      donc à vos suggestions messieurs dames et merci d’avance.

    • même soucis que toi... (je cherche également)...

      par contre, je n’arrive pas à appliquer la feuille de style, d’où deux questions : où faut-il la mettre ? (j’ai tenté pleins d’endroits, en vain), et faut-il rajouter un peu de code quelque part pour renseigner que c’est dans elle qu’il faut aller trouver les instructions ?

    • alors pour ce qui est de la feuille de style je ne me suis pas cassé la tete, j’ai récupéré celle de spip-party sur la zone et je l’ai copiée dans ma feuille de style générale (copier/coller tout simple). En effet ma feuille de style générale applique un style à tout mon site. Si tu as une feuille de style css pour ta colonne gauche et bien colle le code css du calendrier à la suite comme si de rien était lol (j’ai cru comprendre que tu voulais le mettre à gauche ton calendrier) . voila j’espère que ça t’a aidé ...

      ah sinon, plan B, dans le pire des cas tu insères ça en tre

      et

      de ton sommaire ou de ta colonne gauche : (#CHEMIN{css/style_cal.css}" type="text/css" media="all" /> où style_cal est le nom du fichier css relatif au mini agenda (tu l’appelles comme tu veux).

      bon par contre pour la suite et bien je n’ai toujours pas avancé .. trop de choses à faire. Cet agenda est intégré dans 10 000 sites (c’est une hyperbole) et nous on bloque sur des broutilles lol Comme apparament tu t’es lancées sur le même chemin que moi marjorie avec l’agenda spip-party et bien peut êter unde nous deux débloquera la situation ;-)

    • ps : la solution d’intégrer le code css du mini agenda dans ta feuille de style css globale n’est valable que si tu n’as pas de balises qui portent le même nom que l’une de celle du calendrier ... mais en principe faudras variment que t’ai pas de chance ! dans ce cas et bien plan b cité plus haut...

    • alors avancée de mon côté...
      en me promenant dans le code des pages jour et suivant, je me suis rendue compte qu’il y avait un appel du style, mais qui donc pour nous n’était pas appliqué. Ce style se trouve dans les trois fiches en css qui se trouvent dans le plugin calendrier.
      J’ai suivi ta méthode du dessus (qui avait bien fonctionné la première fois pour l’affichage en soit du calendrier) et recopié dans ma feuille de style globale ce qui se trouve donc dans calendrier.css, agenda.css et agenda_articles.css.
      première étape qui ne changeait rien à l’affichage...

      ensuite j’ai pris le code d’une page type de mon squelette (à savoir article.html) et là où il y a la colonne principale, j’ai collé le code de la page ’jour’ de départ et j’ai renommé le tout jour.html... et là, bah c’est bon, mon style est appliqué, ça s’affiche correctement... je vais également modifier mois et semaine et tout ce qui va avec...

      le problème des flèches n’est pas résolu, mais on avance...

    • Bonjour,

      Apparemment tu as réussi à faire apparaître les évènements dans le mini-calendrier. Moi je n’y suis pas parvenu. Comment procéder ? Par contre j’affiche dans l’encart la liste des évènement à venir grâce aux indications trouver dans la contrib. Je suis tout à fait d’accord pour l’idée d’un tutoriel.

    • alors décrit moi ce qui se passe quand tu cliques sur 1 évènement ? tu arrives sur l’article ou sur un calendrier ?

    • bon effectivement, j’avais vite regardé et oui, si tu cliquais sur un évenement, tu n’allais pas à la page de l’article, mais c’est une page avec le calendrier du jour qui s’affichait...
      mais j’ai résolu le problème à peu près.
      dans la page calendrier_mini
      j’ai remplacé la ligne [(#URL_PAGEjour|parametre_url#ENVvar_date,[(#ENVdate|affdate’Y-m-d’)])]
      qui comme le code l’indique, t’envoie sur une page jour (avec un calendrier) par :
      [(#URL_ARTICLE|parametre_url#ENVvar_date,[(#ENVdate|affdate’Y-m-d’)])]
      et voilà, on va direct vers l’article !
      (je pense même que [(#URL_ARTICLE)] suffit, je fais les tests demain...

    • et bien Marjorie je sais pas où tu en es avec cet agenda ... j’ai provisoirement laissé tombé cette semaine à cause du boulot... SI tu as réussi à le faire fonctionner correctement nh’ésite pas à poster un message pour expliquer ça me sera util quand je devrais terminer le mien ...

    • Bonjour, visiblement je ne suis pas le seul à ne rien avoir dans la partie publique. Ne connaissant rien en spip, je pensais que ca s’installait tout seul. Mais visiblement, il y a pas mal d’écriture à réaliser en plus ?
      ou en êtes vous de votre coté ?

    Répondre à ce message

  • Bonjour

    J’utilise avec bonheur le plugin agenda (merci à son créateur).

    Mon problème : comment faire apparaître les répétitions dans la boucle ci-dessous. Tout les événements s’inscrive sauf les répétitions ?

    Je pensais que c’était automatique mais peut-être que non...

    Merci !

    Pascal

    Répondre à ce message

  • 3

    Bonjour,

    Je débute dans SPIP et je lis « consciencieusement » la documentation et les posts...

    Je voudrais activer les plugins Agenda et Widget Calendar. J’utilise la version 1.9.1 de Spip.
    J’ai crée un répertoire plugins à la racine, y ai installé les sous-répertoires Agenda et Widget . J’arrive dans l’interface privée à activer l’agenda mais widget calendar n’apparait pas. J’ai renommé les sous répertoires en supprimant le numéro des versions, ça ne change rien pour widget. Je l’ai également renommé en WCalendar, ça n’apparait toujours pas dans la gestion de mes plugins.
    Dans les différents posts, je n’ai vu aucune remarque à ce sujet...
    Est-ce normal que dans le répertoire de widget, il n’y ait qu’un seul fichier svn ?

    Merci de me renseigner.

    Michèle

    • Non, bien entendu, ce n’est absolument pas normal. Ton archive de Widget Calendar n’est pas complète

    • bonjour,

      widget calendar n’apparait pas

      Je suis dans une situation semblable. Chez moi le plugins widget_calendar s’affiche correctement dans la liste de plugins, mais il n’apparaît pas dans les articles et ne permet donc pas l’ajout d’événements.
      ( spip 1.9.1 / agenda_1_9_1 / widget_calendar_1_9 les plugins sont installés dans le répertoire plugins)

      J’ai cherché partout une version widget_calendar_1_9_1 , mais sans succès. La version 1_9 de widget_calendar est-elle censée fonctionner avec le plugin agenda_1_9_1 ? Si oui, d’où peut venir l’erreur ?

      quelqu’un a t-il pu résoudre cette situation ?
      merci d’avance,

    • J’ai le même problème. As-tu reçu une réponse ou trouvé la solution tout seul ? Elle m’intéresse. Je pense à un problème de feuille de style css et/ou une incompatibilité avec IE 7.

    Répondre à ce message

  • Merci pour ce plugin très pratique et très bien fait !

    Répondre à ce message

  • 2

    Bonjour,

    J’ai un évènement qui contient plusieurs occurences (exemple : 1 concert donné à deux reprises). Au lieu d’afficher n fois la description de mon évènement, je souhaiterai ne l’afficher qu’une seule fois avec les différentes dates possibles.

    Est-ce possible ?

    • oui, les calendriers de répétition d’évènement sont faits pour ça.

      en principe, ils sont affichés en dessous des champs à remplir pour l’évènement principal. il suffit d’y sélectionner les dates des différentes occurences de l’évènement.

    • C’est bien ce que j’ai fait au niveau de la définition de mon évenement. Mais dans la boucle d’affichage (j’ai repris l’exemple cité dans l’article), mon évenement est affiché 2 fois. Exemple :

      Au lieu d’avoir ça :
      Concert Chants baltes
      Jeudi 16 novembre 21:00
      Description

      Concert Chants baltes
      Vendredi 17 novembre 21:00
      Description

      Je souhaite ça :
      Concert Chants baltes
      Jeudi 16 novembre 21:00
      Vendredi 17 novembre 21:00
      Description

      Merci par avance de votre aide.

    Répondre à ce message

  • 1

    bjr

    j’ai installer les deux plugins, sans problème.

    Je peux donc créer des articles et ajouter un évènement.

    Par CONTRE :
    -  je n’arrive pas à intégrer le mini_calendrier dans mon sommaire : je ne comprends les explications ci dessus citées.

    -  Et les évenements de l’égenda apparaisent dans mes 10 derniers articles (chose qui ne m’interesse pas trop)

    D SELIE

    PS : j’utilise le squelette sandnyko et je vous laisse mon adresse directe au cas ou quelqu’un aurais que temps à me consacrer

    Merci d’avance

    selie@ac-rouen.fr

    • Bonjour,

      Après installation des 2 plugins toutes les options sont bien actives dans l’espce privé mais je ne peux pas créer un évènement.
      Je ne reçois pas de message d’erreur mais après validation du formulaire de création d’évènement je reviens dnas l’article et rien n’a été crée.

      Version Spip 1.9.1 (7502) mysql 5.0.24a.

      Dans spip.log voici les erreurs associés :

      Nov 14 16:01:32 10.133.2.99 (pid 2816) Erreur - ’connexions_body_prive’ non definie !
      Nov 14 16:01:33 10.133.2.99 (pid 2816) Nov 14 16:01:33 10.133.2.99 (pid 2816) POST /spip/ecrire/ ?exec=articles&id_article=4

      Nov 14 16:01:33 10.133.2.99 (pid 2816) Nov 14 16:01:33 10.133.2.99 (pid 2816) - INSERT INTO spip.spip_evenements (id_evenement_source,maj) VALUES (’0’,NOW())

      Nov 14 16:01:33 10.133.2.99 (pid 2816) Nov 14 16:01:33 10.133.2.99 (pid 2816) 1364 Field ’titre’ doesn’t have a default value

      Merci de votre aide.

    Répondre à ce message

  • 1

    Bonjour,

    Je viens d’ajouter la possibilité au plugin de saisir rapidement toute une série d’évenements.
    Sur la zone, le répertoire utilisé est : _plugins__stable_\agenda\saisie_rapide

    Cette amélioration est destinée à ceux qui ont beaucoup d’évènements à placer dans l’agenda.
    un lien ’Saisie rapide’ apparaît à côté de ’Ajouter un évènement’ lorsqu’on édite un article.
    un dialogue surgit, et on se laisse guider !

    Fichiers à placer dans le répertoire plugins/agenda :

    exec/saisie_rapide.php : dialogue de saisie rapide
    inc/agenda_gestion.php : fichier d’origine modifié
    SAISIE.TXT : les détails.

    attention : aucune internationalisation pour l’instant !

    Syntaxe :

    jj/mm[/aaaa][-jj/mm[/aaaa]] [hh:mm[-hh:mm]] « Le titre » [« Le lieu » [ « La description »]] [REP=jj/mm/aaaa[,jj/mm/aaaa,etc]]

    Les crochets indiquent les éléments facultatifs.
    Les répétitions de l’évènement sont indiquées par ’REP=’ suivi d’une liste de dates séparées par des virgules.
    Bien respecter les espaces entre les éléments et ne pas mettre de guillemets dans les textes.

    Exemple 1 : 20/09/2006 19:30-22:00 « Répétition de rentrée » « Temple des Gobelins » « Reprise de contact, Duruflé, et mise au point des calendriers »
    (programme un évènement précis à une date précise, et d’une durée précise)
    Exemple 2 : 17/08-23/08 « Stage d’été » « Les Salines »
    (programme un évènement cette année, sans description et sur plusieurs jours)
    Exemple 3 : 01/01/2007 « Bonne année à tous ! » REP=01/01/2008,01/01/2009,01/01/2010
    (programme un évènement sans horaire, sans lieu, à une date précise et répété sur 3 autres dates)

    Allez, voici comment j’ai saisi d’un coup tous les jours feries !!

    01/01/2006 « Premier de l’an » « Jour Férié »
    16/04/2006 « Pâques » « Jour Férié »
    17/04/2006 « Lundi de Pâques » « Jour Férié »
    01/05/2006 « Fête du travail » « Jour Férié »
    08/05/2006 « Victoire 1945 » « Jour Férié »
    25/05/2006 « Ascension » « Jour Férié »
    05/06/2006 « Pentecôte » « Jour Férié »
    14/07/2006 « Fête nationale » « Jour Férié »
    15/08/2006 « Assomption » « Jour Férié »
    01/11/2006 « Toussaint » « Jour Férié »
    11/11/2006 « Armistice » « Jour Férié »
    25/12/2006 « Noël » « Jour Férié »

    Pour 2007, 2008, etc. ou même les vacances scolaires jusqu’en 2010, ecrivez-moi !

    Maintenant, aux développeurs de me donner leur avis !

    • Bonsoir

      J’ai installe ce plugin bien puissant, mais une operation qui semble begnigne ne parvient pas a se realiser.

      J’ai ecrit des articles qui sont en fait des annonces d’evenement pour un jour donne. Ces articles sont publies sur la page d’accueil, mais ne devraient plus apparaitre des que l’evenement est passe.

      C’est ce que je ne parviens pas a faire.
      j’i bien essaye cette syntaxe : mois_relatif_debut<0 ou jour_relatif_debut<0
      mais ss succes.

      Vious avez une idee sur ce sujet ?

      Merci d’avance

    Répondre à ce message

  • bjr

    j’ai un problème car les évenements apparaissent dans ma boucles des 10 derniers articles.

    comment pour les supprimer ?

    Les 10 derniers articles




    [

    ]

    #TITRE

    (#DATE (#DATE <B_auteurs1>par #NOM

    [

    (#INTRODUCTION|couper300)

    ]

    Répondre à ce message

  • 1

    bonjour,

    je suis tout novice avec l’utilisation du plugin agenda et je cherche à récupéré les trois prochains évènements inscrit dans mon agenda. Je suis actuellement bloqué car je n’arrive pas à récupérer des évènements sur deux mois par exemple.

    voici ma boucle pour recuperer les evenements sur le mois en cour.

    <BOUCLE_agenda(EVENEMENTS){agendafull date_debut,date_fin, mois, #ENV{annee}, #ENV{mois}}{0,3}>
    
    <a href="#URL_PAGE{article,id_article=#ID_ARTICLE}" title="lien vers le descriptif #TITRE">#TITRE</a>, [(#DATE_DEBUT|Agenda_affdate_debut_fin{#DATE_FIN,#HORAIRE})]
    						<br />
    						
    					</BOUCLE_agenda>

    j’ai eu beau testé avec l’age relatif il n’y a rien a faire je n’y arrive pas.
    merci d’avance pour toute solution ou conseil.

    ++

    • A essayer (je ne sais pas si ça ira pour ton cas précis) :

      <BOUCLE_prochains_evenements(EVENEMENTS) {id_rubrique}  {date > #ENV{date}}  {par date} {0,3}>
            <a href="#URL_ARTICLE">#TITRE</a><br />
      </BOUCLE_prochains_evenements>

    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