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 pratique à 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.

Discussion

600 discussions

  • Bonjour

    j’utilise le plugin Agenda

    j’ai mis evenement_en_cours & evenement_a_venir dans ma boucle EVENEMENTS

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

    mais les 2 combinés ne retournent aucun résultats

    WHERE (evenements.statut = 'publie')
    	AND (((horaire = 'oui') AND ((evenements.date_debut <= '2022-01-12 09:53:00') AND (evenements.date_fin >= '2022-01-12 09:53:00'))) OR ((horaire != 'oui') AND ((evenements.date_debut <= '2022-01-12 23:59:59') AND (evenements.date_fin >= '2022-01-12 00:00:00'))))
    	AND (((horaire = 'oui') AND (evenements.date_debut > '2022-01-12 09:53:00')) OR ((horaire != 'oui') AND (evenements.date_debut > '2022-01-12 23:59:59')))
    	AND ((evenements.id_article NOT IN (SELECT * FROM(
    SELECT zzza.id_article

    le AND à l’air de poser problème
    j’ai été obligé de faire 2 boucles

    c’est normal ?
    merci
    Natacha

    Reply to this message

  • 4

    bonjour,
    sur spip 3.2.11 et agenda 3.39.5
    la numérotation des événements saute un numéro sur deux
    ainsi de 9352 à 9354 puis 9356 etc.
    en remontant, le dernier événement « impair » (un numéro 7731) a pour date le 27 novembre 2020

    une bizarrerie que chez moi ?

    Caldue

    • Est-ce que cela le fait uniquement avec les evenemnt, ou avec d’autres objets ?

      ca peut être lié à certianes config serveur mysql chez certains hebergeurs

    • Effectivement, idem pour les articles

      ce site est hébergé chez lautre.net

      Claude

    • Bonjour
      certaine config de serveur de bdd comme Maria sont en effet paramétré comme ça l’auto increment est à 2
      Natacha

    • je vais regarder de plus près
      Merci
      Claude

    Reply to this message

  • 7

    Bonjour,

    Je m’aperçois que les datepicker ne fonctionnent pas pour de la création d’un événement quand on installe jQuery UI.
    Installation vierge en local et serveur : SPIP 4.0.0 + Agenda 4.3.4 + jQuery UI 1.14.2.

    https://git.spip.net/spip-contrib-extensions/agenda/issues/34

    Merci,
    François

    • je constate la même chose spip 4.0
      si j’installe le plugin jQuery UI je n’ai plus le piker dans evenement.

      si je le désinstalle ... j’ai le piker mais le plugin massicot ne fonctionne pas correctement ( pas de curseur au zoom, donc pas de redimensionnement)

    • merci beaucoup
      avec spip 4.0 ,agenda V4.1.5 et V1.4.2
      le picker de agenda fonctionne et le zoom de massicot aussi

    • par contre le nettoyage des anciens evenements donne toujours une erreur

    • La version 4.3.7 du plugin agenda répare les 2 problèmes (picker avec jQueryUI et erreur fatale lors de la suppression des vieux événements)

    • Merci @cerdic !

    • Je viens de faire le test les deux fonctionnalités fonctionnent bien avec 4.3.7
      merci beaucoup

    Reply to this message

  • bonjour,
    le mécanisme de suppression des evenements passés ne fonctionne pas sur mes sites avec spip 4 et agenda v4.3.4
    EN plus si je vais dans maintenance, tache de fond et que met “executer” maintenant a “Tâche CRON agenda_effacer_evenements_passes (toutes les 86400 s) |” j’obtiens :

    «Fatal error: Uncaught Error: Call to undefined function affdate() in ....\plugins\agenda-ef595-v4.3.4\agenda\genie\agenda_effacer_evenements_passes.php on line 22

    ( ! ) Error: Call to undefined function affdate() in ....\plugins\agenda-ef595-v4.3.4\agenda\genie\agenda_effacer_evenements_passes.php on line 22

    Call Stack
    # Time Memory Function Location
    1 0.0002 368696 main( ) ...\index.php:0
    2 0.0229 711072 traiter_appels_actions( ) ...\index.php:72
    3 0.0324 728752 action_forcer_job_dist( ) ...\aiguiller.php:74
    4 0.0488 1151816 queue_schedule( ) ...\forcer_job.php:37
    5 0.0517 1214496 queue_start_job( ) ...\queue.php:393
    6 0.0537 1216680 genie_agenda_effacer_evenements_passes( ) ...\queue.php:264
    »
    avez vous une idee du problème

    Reply to this message

  • 1

    Bonjour.
    Je viens de mettre mon site spip en 4.0 et après mise à jour de l’ensemble des plugin je rencontre un problème avec Agenda. Je n’arrive pas à afficher logo et document d’un évènement.
    Sans changer mon squelette cela fonctionne pour les évènements déjà créés avec la version précédente mais avec Spip4, Agenda 4.3.4 impossible de récupérer l’URL, ni avec #FICHIER, #URL_DOCUMENT ou #LOGO_DOCUMENT.

    Quelqu’un aurait-il une solution ?

    Merci.

    • Bonjour
      Je réponds à mon problème ayant compris mon erreur :

      dans ma boucle trainait un atribut mode=document inutile.

       <BOUCLE_visuel_event(DOCUMENTS){id_evenement}{mode=document}{doublons}>
      	<h3 class="head-event">#INPUT_SURTITRE</h3>
              <img class="responsive" src="#URL_DOCUMENT" alt="First slide">
      </BOUCLE_visuel_event>	

    Reply to this message

  • Bonjour,
    En version 4.3.4 la répétition d’événements est impossible. On peut créer un événement mais impossible d’ajouter des répétitions.

    Reply to this message

  • 1

    Bonjour
    Avec Spip 3.2.9 et Agenda 4.3.3
    Dans la page d’édition des événements, le bouton “Voir en ligne” renvoie systématiquement sur la page publique de l’article auquel est rattaché l’événement, et ce quel que soit le réglage effectué sur la page de configuration du plugin Agenda :
    Que soit coché Affichage d’un événement “sur une page dédiée pour chaque événement” ou “sur la page de l’article associé”, “Voir en ligne” envoie vers l’article associé.

    Dans le fichier prive\objets\infos : evenement.html, les lignes 32 à 35 définissent la construction de l’URL “Voir en ligne” :

    [(#CONFIG{agenda/url_evenement}|=={evenement}|?{
    #SET{url,#VAL{redirect}|generer_url_action{type=evenement&id=#ID_EVENEMENT}},
    #SET{url,#VAL{redirect}|generer_url_action{type=article&id=#ID_ARTICLE}},
    })]

    Si j’inverse la condition :

    [(#CONFIG{agenda/url_evenement}|=={article}|?{
    #SET{url,#VAL{redirect}|generer_url_action{type=article&id=#ID_ARTICLE}},
    #SET{url,#VAL{redirect}|generer_url_action{type=evenement&id=#ID_EVENEMENT}}
    })]

    Alors le comportement attendu est OK :

    • Affichage d’un événement “sur une page dédiée pour chaque événement” : envoie bien vers la page publique de l’événement.
    • Affichage d’un événement “sur la page de l’article associé” : envoie bien vers la page publique de l’article auquel est attaché l’événement.

    Au passage, j’ai aussi enlevé la virgule placée en dernier, avant la dernière fermeture de })].

    Reply to this message

  • Bonjour,
    Sur un SPIP 4 en test j’ai donc installé le plugin Agenda 4.3.4.
    Cela fonctionne (la pagination aussi). Il y a juste un problème d’icône sur les pages ecrire/?exec=evenement_edit&id_evenement=xx

    Merci

    Reply to this message

  • Bonjour,

    Sous Spip 3.2.11

    La gestion des plugin indique Agenda 3.39.5. et ne propose pas de version supérieure.

    Ajout des plugins indique que Agenda 4.3.4 est déjà installé.

    La nouvelle version d‘Escal que j‘utilise nécessite au minimum Agenda 4.3.

    Mon site (http://franc-parler.jp/) est donc cassé pour le moment.

    Que puis-je faire?

    Reply to this message

  • 2

    Bonjour,

    Je souhaiterai pouvoir filtrer des événements qui soient à la fois des événements en cours et des événements à venir. Or, si je cumule le critère evenement_en_cours avec le critère evenement_a_venir, la requềte SQL résultante fait un “AND” et non un “OR” comme je le souhaiterai.

    Est-ce qu’il existe une façon propre d’arriver à mes fins?

    Merci.

    • Pourquoi ne pas faire un tableau

      #ARRAY

      pour chaque boucle d’événement à venir et en cours puis regrouper tout cela avec une boucle DATA en triant par date ?

    • {!evenement_passe} 

      pour sélectionner les événements en cours ou pas encore commencés.

    Reply to this message

Add a comment

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 / PostgreSQL
  • 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 apparait.

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.

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