SPIP-Contrib

SPIP-Contrib

عربي | Deutsch | English | Español | français | italiano | Nederlands

286 Plugins, 197 contribs sur SPIP-Zone, 255 visiteurs en ce moment

Accueil > Dates, calendriers et agendas > Calendriers > Simple Calendrier > Simple Calendrier v2

Simple Calendrier v2

25 février 2016 – par Julien Lanfrey, Peetdu – 19 commentaires

7 votes

Il s’agit de la version pour SPIP 3 du plugin Simple Calendrier.

Le plugin « simple calendrier » permet de gérer des évènements en ajoutant un nouvel objet éditorial dans l’administration de votre site SPIP. Il peut constituer une alternative au plugin Agenda 2.

Note à propos de la version 2.1.0
Cette version ajoute en option la gestion des horaires d’un événement.

Installation du Plugin

Le plugin s’installe comme tous les autres, en ajoutant son dossier dans le dossier plugins/ et en l’activant dans l’espace privé. En savoir plus.

Avertissement : Ce plugin n’est pas compatible avec le plugin Agenda 2. Voir la section « compatibilité avec d’autres plugins ».

Utilité du plugin

Ce plugin fournit un nouvel "objet éditorial" : l’évènement.
Il permet donc de créer des évènements, au même titre que l’on peut créer des articles ou des brèves.

Ce plugin permet de gérer différents scénarios :

  • Un simple calendrier pour tout le site
  • Un calendrier ou les évènements sont classés par thématique grâce aux mots clés
  • De multiples calendriers, en activant l’option permettant de raccrocher l’évènement à une rubrique.

Ce plugin ne permet pas :

  • La gestion des heures/minutes (mais le descriptif peut dans certains cas suffire...)
  • La gestion des répétitions.
  • Une quelconque notion d’inscription.
  • Et surement plein d’autres choses !

Pour ces derniers points, il existe un autre plugin très complet et éprouvé, de gestion d’évènements nommé Agenda 2.

Pourquoi ce nom ?

L’objectif de ce plugin est de fournir une solution de gestion d’évènements qui soit le plus simple possible à l’utilisation. Dans beaucoup de cas, il suffira de créer quelques évènements, de renseigner quelques champs de base. Puis d’utiliser une boucle EVENEMENTS pour les afficher.

Fonctionnalités du plugin

Un évènement comporte les champs suivants :

  • titre (requis)
  • date de début (requis)
  • date de fin
  • lieu
  • descriptif
  • texte
  • lien

Une page de configuration [1] dédiée à ce plugin permet de préciser :

  • Qui a le droit de créer des évènements (administrateurs / rédacteurs).
  • Si un évènement peut être affecté à une rubrique ou non.
  • Les champs à rendre disponibles sur le formulaire de saisie.
  • Si les articles / brèves peuvent « être épinglés » dans le calendrier (ce qui peut permettre d’utiliser le texte de l’article/de la brève comme contenu textuel pour l’évènement. On parlera de texte par référence).
  • Le choix d’un thème pour le mini-calendrier de l’espace public.

Liste des évènements :
Dans l’espace privé, la liste de tous les évènements est accessible via le menu Edition. Cette page permet aussi :

  • la création de nouveaux évènements
  • de voir la répartition des évènements par année et par mois.
  • Pour les administrateurs, un lien "Démo" permet de comprendre l’utilisation de la boucle EVENEMENTS.

Par défaut, la liste affichée est filtrée pour n’afficher que les évènements à venir.

Création d’évènements :
Les évènements peuvent être créés :

  • depuis la liste des évènements (accessible via le menu Edition)
  • depuis une rubrique si l’option "affectation aux rubriques" est activée.
  • depuis un article ou une brève si l’option "texte par référence" est activée.

Note : Pour les 2 derniers points, il s’agit simplement de raccourcis permettant de pré-remplir certains champs.

Quelques captures d’écran

PNG - 24.7 ko
Configuration du plugin
Accessible depuis le menu Configuration > Fonctions avancées
PNG - 50.1 ko
Page de liste des évènements
Accessible depuis le menu Edition
PNG - 17.9 ko
Page de liste des évènements restreinte à une rubrique
Lorsque l’option d’affectation aux secteurs / rubriques est activée.
PNG - 5.5 ko
Portlet sur la page rubrique
Lorsque l’option de rattachement aux rubriques est activée.
PNG - 38.9 ko
Création d’un évènement
Lorsque les options par défaut sont utilisées.
PNG - 37.1 ko
Création d’un évènement
Lorsque les options « affectation aux secteurs » et « texte par référence » sont activées.
PNG - 6 ko
Portlet sur la page article/breve
Présente lorsque l’option « Texte par référence » activée.
PNG - 42.5 ko
Visualisation d’un évènement
Ici dans le cas ou il est affecté à une rubrique (Fil d’ariane + portlet gauche)
PNG - 45.8 ko
Script de démo !
...qui s’adresse aux créateurs de squelettes...

Dans les squelettes

Une boucle :

<BOUCLE_evenement(EVENEMENTS)> ... </BOUCLE_evenement)

Des critères spécifiques :

  • {a_venir} : Les évènements en cours et à venir.
  • {du_mois} : Les évènements du mois courant.
  • {simplecalperiode 20160101, 20161231} : Les évènements entre le 1er janvier et le 31 décembre 2016.

Des balises :

  • Dans le cadre d’une boucle EVENEMENTS :
    • #ID_EVENEMENT
    • #TITRE
    • #URL_EVENEMENT
    • #LIEU
    • #DATE_DEBUT
    • #DATE_FIN
    • #DATE : date de publication
    • #LOGO_EVENEMENT
    • #DESCRIPTIF
    • #TEXTE
    • #LIEN_TITRE : titre du lien (v1.2)
    • #LIEN_URL : adresse du lien (v1.2)
    • #TYPE : Type d’objet pointé quand l’option "Texte par référence" est activée.
    • #ID_OBJET : identifiant de l’objet pointé quand l’option "Texte par référence" est activée.
  • Hors contexte :
    • #SIMPLE_CALENDRIER : Affiche un mini calendrier du mois en cours. Sur ce calendrier, les dates de début d’évènement sont mises en valeur.

Des filtres :

  1. [(#TYPE|simplecal_afftexteref{#ID_OBJET})]

|simplecal_afftexteref : Si l’option "Texte par référence" est activée : Permet de récupérer le texte de l’objet pointé.

Un nouveau squelette :

Un évènement est affiché grâce au squelette evenement.html au même titre que le squelette article.html affiche un article.

Exemple pour le squelette evenement.html :

  1. <BOUCLE_evenement(EVENEMENTS){id_evenement}>
  2. <h1>#TITRE</h1>
  3.  
  4. #LIEU
  5.  
  6. <!-- Affichage sympa de type 'de telle date à telle date' -->
  7. [(#DATE_DEBUT|simplecal_affdates{#DATE_FIN})]
  8.  
  9. #LOGO_EVENEMENT
  10.  
  11. #DESCRIPTIF
  12.  
  13. <!--
  14. Affichage par ordre de priorité :
  15. 1 - #TEXTE : Le texte de l’événement s'il existe
  16. 2 - #TYPE/#ID_OBJET : Sinon, le texte de l'objet référencé s'il existe (option)
  17. -->
  18. [(#TEXTE|?{ #TEXTE,
  19. [(#TYPE|?{ [(#TYPE|simplecal_afftexteref{#ID_OBJET})], ''})]
  20. })]
  21.  
  22. <!-- Lien vers un site web (v1.2) -->
  23. [(#LIEN_URL|oui)
  24. <a href="#LIEN_URL">[(#LIEN_TITRE|?{#LIEN_TITRE, #LIEN_URL})]</a>
  25. ]
  26.  
  27. <!-- Les mots clés rattachés s'il y en a -->
  28. <BOUCLE_mot(MOTS){id_evenement}>
  29. #TITRE
  30. </BOUCLE_mot>
  31.  
  32. </BOUCLE_evenement>

Télécharger

Personnalisation du mini-calendrier

Dans l’espace privé, lorsque l’on crée un évènement, la date de début et la date de fin peuvent être saisies manuellement ou en cliquant sur la petite icône à droite du champ. Un mini calendrier s’ouvre alors permettant de choisir la date. Ce Widget "datepicker" provient de la librairie jquery.ui.

Dans la partie publique, il est possible d’afficher un mini-calendrier en utilisant la balise #SIMPLE_CALENDRIER. La structure (html) de ce mini-calendrier est la même que celle du datepicker vu précédemment.

Cela permet d’utiliser les mêmes feuilles de styles. Et c’est pourquoi dans la configuration du plugin (Configuration -> Fonctions avancées), vous pouvez choisir un thème pour la partie publique.

Où se trouvent ces thèmes ?
Chaque thème fait l’objet d’une feuille de styles dans le dossier plugins/simple-calendrier/prive/css/datepicker. Les thèmes déjà embarqués dans le plugin proviennent du site http://jqueryui.com/themeroller.

Comment créer un nouveau thème ?
Réponse : à la main, en dupliquant une feuille de styles existante et en l’adaptant.

Pour vous aider, vous pouvez utiliser le site http://jqueryui.com/themeroller. Une fois votre style défini, il ne vous reste plus qu’à reporter les valeurs des couleurs (bordure, fond, texte) dans la feuille de styles que vous aviez précédemment dupliquée.

Compatibilité avec d’autres plugins

Plugin Agenda 2
-  100% incompatible  ! Ne cherchez jamais à faire cohabiter ces 2 plugins.
-  Aucun mécanisme de migration d’Agenda2 vers simple-calendrier n’est prévu.

Plugin corbeille
Les évènements en statut "à la poubelle" peuvent être gérés par le plugin corbeille

Plugin MiniBando
Prise en compte par le plugin MiniBando.

Plugin Acces restreint (A.R)
Le plugin simple-calendrier est compatible avec le plugin A.R. moyennant les adaptations décrites dans la section suivante.

Bugs connus et solutions

Accès restreint :
-  Crash possible de la boucle EVENEMENTS.
-  Crash possible avec un message d’erreur de type "fonction déjà définie".

L’installation du plugin A.R nécessite quelques petites adaptations pour pouvoir fonctionner avec simple calendrier :

  • Éditez le fichier public/acces_restreint.php du plugin A.R. Dans le "case evenement" : Ajouter un "break".
  • Éditez le fichier inc/acces_restreint_autoriser.php du plugin A.R. et renommer la fonction ’autoriser_evenement_voir’ (en ’autoriser_evenement_voir_inutilise’ par exemple...)
  • Il faut ensuite vider le cache SPIP

Note : ces modifications nécessaires dans le plugin A.R. n’ont pas de conséquence sur son fonctionnement. Le code initial étant prévu pour un usage du plugin Agenda2.

Ce plugin en action :

Voir en ligne : http://plugins.spip.net/simplecal

Notes

[1La page de configuration se trouve dans le menu : ConfigurationContenu du site au même titre que la configuration des articles ou des brèves.

Dernière modification de cette page le 29 janvier 2017

Retour en haut de la page

Vos commentaires

  • Le 1er novembre 2016 à 18:03, par Clement En réponse à : Simple Calendrier v2

    Bonjour,

    Je suis vraiment novice sur spip et votre plugin m’intéresse beaucoup. Malheureusement, je n’arrive pas à comprendre comment je peux intégrer le simple calendrier dans un article ou une rubrique. Je crois avoir compris qu’il faut que j’intègre cette balise :

    < BOUCLE1(ARTICLES)id_rubrique >#SIMPLE_CALENDRIER< /BOUCLE1 >

    Mais je dois mal m’y prendre, car ça m’affiche tout simplement :

    #SIMPLE_CALENDRIER

    Merci d’avance pour votre aide !

    • Le 2 novembre 2016 à 11:11, par Julien Lanfrey En réponse à : Simple Calendrier v2

      Bonjour Clément,

      As-tu activé le plugin depuis l’espace privé de SPIP > Configuration > Gestion des plugins ?

      Ton code semble lister les articles de la rubrique courante (critère id_rubrique). Le squelette d’un article ressemblerait à qqch comme ça :

      1. <BOUCLE1(ARTICLES){id_article}>
      2. #TITRE
      3.  
      4. #TEXTE
      5.  
      6. #SIMPLE_CALENDRIER
      7. </BOUCLE1>
      8. </B1>
      9. Pas d'article => pas de calendrier !
      10. <//B1>

      Télécharger

      A noter que la balise #SIMPLE_CALENDRIER affiche simplement le calendrier du mois courant sans tenir compte des boucles dans lesquelles elle se trouve.

    • Le 2 novembre 2016 à 16:52, par Clement En réponse à : Simple Calendrier v2

      Bonjour,

      Merci pour votre réponse.

      Oui le plugin est bien activé.

      En faite je ne comprend pas bien encor le terme de boucle, mais mon bute est seulement de pouvoir affiché un calendrier du mois courant dans un article ou bien une rubrique.

      Est-il possible de le faire comme avec un short code dans wordpress en écrivant directement dans l’article ?

    • Le 21 décembre 2016 à 15:05, par Julien Lanfrey En réponse à : Simple Calendrier v2

      Quelques liens :


      Pour lister les évènements du mois courant, on utilise le critère du_mois :

      1. <BOUCLE_evenements(EVENEMENTS){du_mois}{par date_debut}>
      2. <a href="#URL_EVENEMENT">#TITRE</a>
      3. </BOUCLE_evenements>

      Télécharger

    Répondre à ce message

  • Le 19 décembre 2016 à 16:25, par Peetdu En réponse à : Simple Calendrier v2

    La simplicité de ce plugin correspond parfaitement au nouveau projet sur lequel je travaille.
    C’est surtout le fait que les événements ne soient pas forcément liés à un objet qui fait mon bonheur.

    J’aimerais quand même pouvoir gérer l’heure de début et l’heure de fin d’un évènement.
    Est-ce quelque chose de prévu ?

    Si oui, je veux bien m’occuper d’ajouter cette fonction...

    • Le 20 décembre 2016 à 13:37, par Julien Lanfrey En réponse à : Simple Calendrier v2

      Bonjour peetdu,

      Merci pour le retour.
      Si tu veux rajouter les heures/minutes, n’hésite pas.
      Ce serait bien de le faire sous la forme d’une option à activer.

    • Le 20 décembre 2016 à 17:20, par Peetdu En réponse à : Simple Calendrier v2

      « Si tu veux rajouter les heures/minutes, n’hésite pas. »

      Ok. En avant…

      « Ce serait bien de le faire sous la forme d’une option à activer. »
      Ok tambien.

      Par ailleurs, j’ai testé en local l’ajout du pipeline "objet_compte_enfants", qui permet de changer automatiquement le statut d’une rubrique lorsque l’on commence à la peupler d’événements.
      Ainsi un rubrique qui ne contient que des événements est bien avec le staut "publie" et le bouton "supprimer cette rubrique" disparait
      Ça marche bien.
      J’ajoute cette modif également ?

    • Le 20 décembre 2016 à 20:07, par Julien Lanfrey En réponse à : Simple Calendrier v2

      Oui, il y a un oubli de ce côté là !

      C’était fait dans la 1re version du plugin pour SPIP 2.1 mais avec le pipeline « calculer_rubriques ». Je vois que ce pipeline est aussi utilisé dans le plugin-dist breves sous SPIP 3.1. (cf. breves_pipelines.php ligne 238).

      Y aurait-il 2 façons de faire ?
      En tout cas le plugin « Fabrique » utilise bien « objets_compte_enfants ».
      Peut-être un vieux code sur breves...

    Répondre à ce message

  • Le 17 août 2016 à 09:57, par Altea En réponse à : Simple Calendrier v2

    Bonjour,
    J’ai commencé à essayer d’utiliser ce plugin mais il y a une (ou deux) question que je me pose.
    Je précise que je suis novice sur SPIP.
    Donc, je voulais savoir si il y a moyen de pouvoir faire défiler les mois quand on est sur la page du site ?
    Et est ce que c’est possible de faire en sorte que lorsque l’on clic sur une case qui a un évènement on arrive sur la page de l’évènement ( qui montre la date, descriptif, etc. ).

    Merci bien si quelqu’un arrive à me répondre ^^

    PNG - 10.9 ko
    • Le 2 novembre 2016 à 11:30, par Julien Lanfrey En réponse à : Simple Calendrier v2

      Bonjour Altea,

      La balise #SIMPLE_CALENDRIER affiche le calendrier du mois courant, fixe, sans possibilité de faire défiler les mois donc.

      Les cases surlignées sont uniquement celles pour lesquelles une date de début d’évènement correspond. Et il n’y a pas de lien en l’état actuel des choses.

      À noter que s’il devait y avoir un lien, il faudrait que ce dernier pointe non pas un évènement mais une page qui liste tous les évènements dont la période [date_debut ; date_fin] passe par ce jour.

      Par ailleurs, ce calendrier ne peut donner qu’une vision partielle des choses. En effet si un évènement débute le mois précédent et coure sur le mois courant, il n’est alors pas du tout représenté sur l’affichage. C’est quelque chose de relativement complexe si on veut le faire correctement.

      Une solution simple consiste à mettre un lien de type « Voir l’agenda » au-dessous du calendrier qui pointe une page utilisant une boucle avec le critère

      1. {du_mois}

    Répondre à ce message

  • Le 13 juin 2016 à 19:31, par Théo En réponse à : Simple Calendrier v2

    Bonjour,

    Bizarre. Je mets :

    Date de début : jj/mm/aaaa
    Date de fin : jj/mm/aaaa

    et je me retrouve avec :

    Date de début : aaaa -mm-jj
    Date de fin : aaaa -mm-jj

    et bien entendu le message Erreur…

    Répondre à ce message

  • Le 19 mai 2016 à 17:33, par Peetdu En réponse à : Simple Calendrier v2

    Bonjour,

    Merci pour ce plugin.
    je n’ai pas trouvé l’accès au formulaire de configuration.

    Peetdu

    • Le 19 mai 2016 à 19:55, par Julien Lanfrey En réponse à : Simple Calendrier v2

      Bonjour,

      Il se trouve dans le menu Configuration > Contenu du site.

      Julien

    • Le 25 mai 2016 à 11:23, par Peetdu En réponse à : Simple Calendrier v2

      Bonjour Julien,

      ok, trouvé.

      Ce plugin est très bien, et correspond parfaitement à mon besoin du moment. Bravo et merci.

      Peetdu
      ps : j’ai été un peu surpris par la conf dans le menu Configuration > Contenu du site. Peut être ajouter une note à ce propos dans ta doc ?

    • Le 27 mai 2016 à 21:57, par Julien Lanfrey En réponse à : Simple Calendrier v2

      Bonsoir Peetdu,

      Je suis ravi qu’il soit utile à quelqu’un.
      Je viens de rajouter une note (de bas de page) comme tu le suggérais.
      merci,

      Julien

    Répondre à ce message

  • Le 1er avril 2016 à 10:54, par oil En réponse à : Simple Calendrier v2

    Bonjour savez-vous si ce plugin est compatible aussi avec ces plugins activés ?

    >>
    ciautoriser : Pipeline pour autoriser
    ciimport : Importation d’auteurs et de mots-clés
    cirr : Rédacteurs restreints
    cirv : rédacteur valideur

    • Le 9 mai 2016 à 12:11, par Julien Lanfrey En réponse à : Simple Calendrier v2

      Bonjour,

      Je n’en ai aucune idée, n’ayant fait aucun tests avec ces plugins.
      Les autorisations du plugin sont centralisées dans simplecal_autoriser.php

    Répondre à ce message

  • Le 1er avril 2016 à 11:06, par oil En réponse à : Simple Calendrier v2

    Savez-vous également si ce genre de plugin est compatible avec un fonctionnement de style SPIPr ?

    Et également s’il gère le multilingues et les liens de traductions pour un même évènement traduit en plusieurs langues donc ?

    merci !

    • Le 9 mai 2016 à 12:07, par Julien Lanfrey En réponse à : Simple Calendrier v2

      Ce plugin ne fournit pas vraiment de squelette pour la partie publique. A vous de créer/adapter le squelette public, à la sauce squelette-dist ou z-core ou autre.

      Le multilingue et les liens de traduction fonctionnent. La version 2.0.15 rajoute la langue entre crochet comme SPIP le fait avec les articles, quand la langue de l’objet n’est pas celle de l’utilisateur.

    Répondre à ce message

Répondre à cet article

Qui êtes-vous ?

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 Les choses à faire avant de poser une question (Prolégomènes aux rapports de bugs. )
Ajouter un document

Retour en haut de la page

Ça discute par ici

  • Plugin Analyclick - un compteur de téléchargements

    26 février 2011 – 180 commentaires

    Ce plugin permet de compter les téléchargements de documents sur son site. Il introduit une balise #URL_DOC_COMPTEUR qui va compter chaque clic fait sur ce lien. Il affiche une page de statistique. Avertissement Le passage en SPIP v.3 est en (...)

  • Menu privé alphabétique

    19 décembre 2016 – commentaire

    A force d’ajouter des plugins, le menu principal de l’espace privé se remplit d’items qui sont rangés un peu n’importe comment. Pas toujours facile de s’y retrouver. Ce plugin fait deux choses : trier les items des menus par ordre alphabétique, (...)

  • Réservation d’événements

    16 mars 2015 – 236 commentaires

    Ce plugin permet d’offrir aux visiteurs de s’inscrire pour un évènement du plugin Agenda et de gérer les réservations enregistrées. Installation Le plugin s’installe comme n’importe quel plugin. il nécessite : Agenda API de vérification (...)

  • Champs Extras 3

    16 janvier 2012 – 561 commentaires

    Ce plugin permet de créer et/ou de gérer des champs supplémentaires dans les objets éditoriaux de SPIP. Il permet donc de prendre en compte et d’afficher de nouveaux éléments dans n’importe quel objet éditorial de SPIP. Screencast Vous n’aimez pas (...)

  • GIS 4

    11 août 2012 – 1336 commentaires

    Présentation et nouveautés La version 4 de GIS abandonne la libraire Mapstraction au profit de Leaflet. Cette librairie permet de s’affranchir des librairies propriétaires tout en gardant les mêmes fonctionnalités, elle propose même de nouvelles (...)

Ça spipe par là