Agenda 2.0 et ultérieur

Voici la version pour SPIP 2.0 du Plugin Agenda pour SPIP 1.9.2, avec une interface remaniée pour encore plus de plaisir.
La lecture de Calendrier Mini 2.0 est également chaudement recommandée, étant donné que Agenda 3 est dépendant de ce plugin.

Le portage du plugin Agenda pour SPIP 2.0 a été l’occasion de repenser et améliorer l’ergonomie de son interface. La version 2.0 du plugin agenda ne nécessite plus le plugin Widget Calendar, mais nécessite le plugin SPIP Bonux

La navigation dans les événements est directement accessible par un sous-menu du menu edition :

La présentation de ces événements délaisse le mode calendrier pour un affichage en liste plus pratiqe à l’usage.
Par défaut seuls les événements à venir sont affichés :

Ce fonctionnement évite d’encombrer l’affichage avec les événements passés toujours plus nombreux.

Un menu de navigation latéral permet d’afficher tous les événements, paginés, triés par date :

Le menu latéral inclut également une navigation antéchronologique par mois calendaire permettant l’affichage de tous les événements d’un mois

La liste centrale présente une vue résumée de chaque événement. Il est possible de voir plus de détails en cliquant sur le titre de l’événement :

Un lien [article] permet d’accéder à l’article qui contient cet événement :

On y retrouve exactement le même type de navigation, mais limitée aux événements de l’article.

Créer un nouvel événement

Le lien situé dans le bandeau titre de la boîte agenda permet de créer un nouvel événement

Modifier un événement

Lorsque vous dépliez un événement, un bouton [modifier] permet d’accéder à l’édition de l’événement.

Si l’événement est une répétition, il n’est pas possible de l’éditer directement. Dans ce cas le lien modifier est remplacé par un lien [source] qui permet d’accéder à l’événement source pour le modifier.

Edition d’un événement

Que ce soit lors de la création ou l’édition d’un événement, la saisie se déroule désormais sur une page indépendante dédiée :

Outre les champs habituels de titre et descriptif, vous y retrouverez la zone d’édition des dates de début et de fin. Une case à cocher toute la journée permet de ne pas sélectionner d’horaire.

Sur chaque champ de saisie de la date, une icone calendrier permet d’accéder à un mini calendrier de saisie.

Les répétitions sont saisies après la date de début et de fin, sur un calendrier de saisie dédié. Le principe des événements répétés et que l’heure de début et la durée sont toujours conservées de l’événement d’origine, mais seul les jours de début changent en prenant les valeurs cochées dans le calendrier des répétitions.

Après saisie, lorsque vous enregistrez votre événement, vous revenez sur la page d’origine avec ce seul événement affiché en détail :

Vous pouvez ainsi vérifier votre saisie.

Vous pouvez retrouver tous les événements, ou les événements à venir seulement, en cliquant sur les liens correspondants.

Squelettes et boucle EVENEMENTS

En ce qui concerne l’utilisation du plugin agenda dans les squelettes, vous pouvez vous référer à la documentation du Plugin Agenda pour SPIP 1.9.2.

Nouveaux critères

{evenement_a_venir} pour sélectionner les événements pas encore commencés à la date courante
{evenement_a_venir #ENV{date}} pour sélectionner les événements pas encore commencés à la date #ENV{date}
{!evenement_a_venir #ENV{date}} pour sélectionner les événements finis ou en cours à la date #ENV{date}

{evenement_en_cours} pour sélectionner les événements en cours à la date courante
{evenement_en_cours #ENV{date}} pour sélectionner les événements en cours à la date #ENV{date}
{!evenement_en_cours #ENV{date}} pour sélectionner les événements *pas* en cours à la date #ENV{date}

{evenement_passe} pour sélectionner les événements passés/finis à la date courante
{evenement_passe #ENV{date}} pour sélectionner les événements passés/finis à la date #ENV{date}
{!evenement_passe #ENV{date}} pour sélectionner les événements en cours ou pas encore commencés à
la date #ENV{date}

Il est possible combiner ces 3 critères pour effectuer une sélection fine.

Pour un affichage sous forme d’agenda en case, voir SPIP 3, Agenda et FullCalendar ou encore Agenda Fullcalendar facile.

Dernière modification de cette page le 8 mars 2018

Discussion

559 discussions

  • Alberto

    Bonsoir.
    Pour le site que je dois gérer j’ai créé le fichier de traduction en italien.
    Je voudrais savoir comment je peux mettre à la disposition à tous le fichier avec la traduction.
    Merci et bonne soirée

    Répondre à ce message

  • Philippe

    Bonjour
    Comment utiliser « evenement_a_venir #ENVdate » pour obtenir les événement arrivant à J+7
    Merci

    Répondre à ce message

  • 5
    crazyspip

    Bonjour,

    J’utilise agenda 3.18.1 avec Agenda Fullcalendar facile, ça fonctionne super bien, merci pour les plugins. J’aimerais cependant :

    1- pouvoir créer un événement sans lien vers un article.
    En cherchant, j’ai trouvé qu’il était possible d’utiliser une constante _AGENDA_AUTORISER_ORPHELINS dans mes_options.php mais quelle syntaxe faut-il utiliser au juste ?

    2- pouvoir, surtout, créer un événement dont le lien point hors du site Spip.
    Mon agenda répertorie des actions organisées par diverses associations et je ne souhaite pas nécessairement écrire mon propre article sur telle ou telle action mais pointer vers la page de leur site, par exemple.
    Jusqu’à présent, je n’ai que quelques entrées dans l’agenda et j’utilise une parade qui est de créer un article virtuel sur Spip qui lui-même redirige vers le site extérieur mais ce n’est pas très efficient comme méthode, surtout lorsque les dates se multiplieront.

    Pouvez-vous m’aider ? Grand merci !

    • Salut,

      la syntaxe pour les évènements sans article

      1. define('_AGENDA_AUTORISER_ORPHELINS', true);

      dans ton fichier mes_options.php

    • crazyspip

      Salut Jean-Marie,

      Un tout grand merci pour ta réponse !

      Pour l’autre partie (événements avec liens externes), je pense que je vais me tourner vers la liste spip parce que le forum de ce plugin-ci ne paraît pas être très suivi. :-)

    • Pour le lien externe, recherche peut être du côté d’un champs extra qui servirait d’url dans ton squelette ?

    • crazyspip

      Pardon, je n’avais pas vu ta réponse.

      J’y ai pensé mais ça ne me paraît pas simple. Il n’y a pas moyen de lier automatiquement un champ extra à un événement. Donc il faudrait, je suppose, surcharger le squelette événement de l’espace privé pour y inclure le nouveau champ. Jusque là, je dois m’en tirer.

      Il n’en reste pas moins que l’événement continuera à chercher son lien dans le champ prévu à cet effet. Donc j’imagine qu’il faut aussi modifier le PHP qui gère tout ça. C’est plus hasardeux pour moi... Et s’il faut modifier le PHP, autant le modifier directement pour qu’il accepte un lien externe, non ?

    • Salut,
      Comme Crazyspip, j’aimerais pouvoir créer un événement sans lien vers un article.
      J’ai intégré la constante « define(’_AGENDA_AUTORISER_ORPHELINS’, TRUE) ; » dans le fichier « mes_options.php », mais aucun résultat !
      Le plugin m’affiche un message d’erreur « Vous devez indiquer un article » dans le champ « Associé à l’article » de la création d’événement.

      Merci
      Pour info j’utilise Spip 3.1.1 + Z-core + Agenda 3.18.4

    Répondre à ce message

  • Pour info après changement des bornes

     compatibilite="[3.0.0;3.2.*]"

    RAS

    Répondre à ce message

  • Arthezius

    Bonjour,
    Une amélioration que je verrai bien, la possibilité de rajouter des couleurs sur les événements pour leur affichage sur l’agenda. Cela permettrai de distinguer certains types d’événements.
    Merci par avance.

    Répondre à ce message

  • Bonjour,

    Y a -t’il une possibiltié pour que lorsque l’on clique sur une date du calendrier, ça pointe vers l’évènement associé à l’article en cours et non les évènements du « jour » ?

    Exemple : https://www.kandidator.fr/Jean-Baptiste-SIAUSSAT.html
    -  > Quand on clique sur une date forcément on arrive sur la page « jour » avec tous les évènement associé au jour et je voudrais que l’on arrive sur l’évènement associé à l’article.

    Précision : Actuellement ne s’affichent que les jours où il y a un évènement pour Jean-Baptiste.

    Merci pour vos lumières.

    Gil

    Répondre à ce message

  • bonjour,
    je souhaiterai pouvoir effacer les événements passés.
    Soit par l’interface privé (tous les événements d’un mois ou d’une année ) ou automatiquement ( plus d’un mois, plus d’un an par exemple).
    Y a t-il une fonctionnalité qui le permet ?
    merci

    Répondre à ce message

  • Vincent

    Bonjour !

    Je cherche à faire une certaine fonction, pour laquelle je n’ai rien réussi et je ne trouve rien.

    Je veux, pour une événement qui a été entré avec une date de début et une date de fin, entrer chacune des dates individuelles.

    Par exemple, un événement qui aurait lieu du 1er mars au 5 mars 2017 afficherait une liste :
    2017-03-01
    2017-03-02
    2017-03-03
    2017-03-04
    2017-03-05

    Est-ce possible, et si oui comment ?

    Merci de votre aide !

    Répondre à ce message

  • Bonjour,

    Qu’en est-il exactement de cette version du plugin qui permet de se passer de l’obligation de lier les événements aux articles ?

    Répondre à ce message

  • 5

    Salut,

    n’ayant eu de réponse sur la liste spip-zone, je poste ici :

    dans Agenda, les dates sont indiquées (balise meta) avec l’attribut itemprop (startDate/endDate) au format iso pour être lisible notamment par les moteurs de recherche (cf https://framapic.org/mkiqCtwckzKL/n0EwMOKQnzIw.jpg ).
    Ca se passe L6 + L7 de /squelettes/inclure/resume/evenement.html (cf http://zone.spip.org/trac/spip-zone/browser/_plugins_/agenda/branches/v3/squelettes/inclure/resume/evenement.html )

    Le souci, c’est que le filtre |date_iso utilisé (http://www.spip.net/fr_article5641.html) affiche bien la date au format ISO mais à l’heure GMT : 2016-10-27 12:37:52 devient 2016-10-27T10:37:52Z. On a donc 2h d’avance, ce qui donne une heure inexacte (voir même un jour d’avance dans le cas de d’évènement sur la journée).

    Dans mon cas, l’évènement du 20 au 23 décembre apparait donc du 19 au 22 dans le moteur de recherche (cf capture d’écran)...

    Y a t’il une solution ?

    J’ai vu qu’on pouvait préciser le fuseau horaire (https://fr.wikipedia.org/wiki/ISO_8601#Fuseau_horaire) mais ça devient du bricolage si je dois le faire directement dans les squelettes...

    Merci,

    PS : le mail dans les archives de la liste https://www.mail-archive.com/spip-zone@rezo.net/msg41138.html

    • Après quelques recherches, la syntaxe

      1.  [(#DATE_DEBUT|affdate{Y-m-dTH:i:s})]

      retourne 2016-11-21CET14:28:10 ce qui semblerait coller.
      Est-ce que quelqu’un confirme ?

    • Je ne pense pas que la syntaxe 2016-12-20CET00:00:00 soit correcte. Selon les références pour l’itemprop ou pour le dc:date, la date doit être au format ISO 8601.

      Mais elle permet de spécifier le fuseau horaire. Tu peux donc l’avoir
      -  soit en UTC (2016-12-19T23:00:00Z) avec

      [(#DATE_DEBUT|date_iso)]


      -  soit, plus précis, avec la mention du décalage (2016-12-20T00:00:00+0100) avec un truc du genre

      [(#DATE_DEBUT|affdate{Y-m-d})]T[(#DATE_DEBUT|affdate{H:i:sO})]

      Je remarque cependant, dans ton exemple, que tu as deux heures d’écart (GMT : 2016-10-27 12:37:52 devient 2016-10-27T10:37:52Z). Ton serveur est-il à l’heure ? Et as-tu utilisé un moteur de recherche localisé en France ou ailleurs ? Ça joue peut-être.

      Tu peux aussi dire à Google (et probablement aux autres aussi) que ton site est français, ce qui ne se voit pas avec le .org. Pour Google, ça se fait via les Webmaster tools.

    • Salut,

      merci pour ton retour.

      Mes sites sont bien localisés en France avec les GWT, donc la solution |date_iso ne fonctionne pas.

      Par contre, ta solution avec l’indication du décalage horaire semble fonctionner : elle indique la bonne date et précise bien décalage par rapport à UTC.
      Je vais tester ça en prod voir ce que ça donne (rdv dans 1 mois le temps que google le prenne en compte :) ).

      Pour ce qui est des 2h d’écarts, c’était avant le passage à l’heure d’hiver.

    • 1 mois plus tard, ça semble fonctionner, je commite :
      V4x https://zone.spip.org/trac/spip-zone/changeset/101870
      V3x https://zone.spip.org/trac/spip-zone/changeset/101871

      Merci pour tes retours...

    Répondre à ce message

Ajouter un commentaire

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