Agenda Fullcalendar facile

Dans un précédent article, nous expliquions comment afficher un agenda Fullcalendar sur son site avec le plugin agenda.
Cependant, ceci nécessite des manipulation de squelettes, ce qui n’est pas toujours évident lorsqu’on débute.

La présente contribution permet d’intégrer plus facilement un agenda Fullcalendar, sans qu’il ne soit cependant possible d’avoir une configuration avancée [1].

Fonctionnalité

Avec le plugin Agenda activé, le présent plugin permet d’afficher dans un article un agenda Fullcalendar, affichant les évènements par mois, semaine ou jour, et liant chaque évènement à la page de l’article qui lui est associé.

Agenda souhaité au final

Installation

Le plugin nécessite SPIP 3.1, il s’installe comme n’importe quel plugin.

Utilisation

Une fois le plugin installé, et les événements créés, il suffit d’insérer le code suivant dans un article :

<agenda_fullcalendar|>

Colorer les évènements

À partir de la version 2.1.0, il est possible de choisir la couleur associé aux événements.

Pour ce faire, il vous faut :

  • avoir le plugin Couleur d’Objet activé, en version 0.3.0 minimum et les couleurs réglées
  • passer en paramètre du modèle l’objet sur lequel on prend la couleur :
    • <agenda_fullcalendar|couleur=rubrique> prend la couleur associé à la rubrique où se trouve l’évènement.
    • <agenda_fullcalendar|couleur=article> prend la couleur associé à l’article où se trouve l’évènement.
    • <agenda_fullcalendar|couleur=evenement > prend la couleur associé à l’évènement lui-même.

Notes

[1Si le besoin s’en fait sentir, il est nécessaire d’apprendre des notions de squelettes SPIP, puis de lire mon tutoriel.

Dernière modification de cette page le 13 février 2019

Discussion

8 discussions

  • 2

    Bonjour,

    Un soucis avec Fullcalendar facile 2.4.0 dans SPIP 3.2.3.
    Un évenement de 3 jours (toute la journée) est correctement indiqué dans l’article, mais le model de Fullcalendar ne rend que les deux premières journées.

    Répondre à ce message

  • Avec bootstrap 3.3.7, grille 4 -8 le calendrier fonctionne bien.
    En xs il se comporte comme si le javascript était désactivé. J’ai donc une liste. Comment contourner cela alors que si je mets #TITRE dans un col-sm-3 je peux voir un petit calendrier ?

      <div class="container-fluid">
    <div class="row">
    <div class="hidden-xs col-sm-4 ">colonne gauuche</div>
    <div class="hidden-xs col-sm-8 ">#TEXTE </div>
    <div class="visible-xs col-xs-12">tout l'écran</div>
    <div class="visible-xs col-xs-12"> #TEXTE </div>
    </div><!--row-->
     </div><!--.conteneur fluideBS--> 

    NOTE Pour tester j’ai mis #TITRE à la fois dans le sm-4 et le sm-8 et je m’attendais à voir un petit calendrier d’un bord et un grand de l’autre. Mais NON. Seul le sm-4 (le premier) apparaît. Le sm-8 se comporte comme pour le xs-12 il devient une liste sans javascript.

    Répondre à ce message

  • 11

    Autre bogue : J’ai mis dimanche comme première journée de la semaine dans Agenda, enregistrer, mais fullcalendar reste à lundi
    Pourtant j’ai cru comprendre que agenda et full calendar sont liés ?

    • full calendar utiliser les données d’agenda, mais pas forcément les règlages.

      Je vais voir si je peux facilement changer le réglage du premier jour de la semaine dans full calendar facile pour qu’il prenne celui d’agenda-.

    • la prochaine version du plugin prendra en compte les règlages de l’agenda sur ce point.

    • c’est possible que ce soit les réglages d’accps restreint qui mettent le bazar...

    • Je viens de faire la mise à jour et la semaine commence maintenant par dimanche. MERCI

      Sur la rubrique sans autorisation restreinte, avec ou sans la composition article-agenda.html, le message d’erreur apparaît ou disparait selon qu’on est branché ou pas. Le message d’erreur est donc lié au fait que l’on soit branché ou pas (webmestre ou admin restreint).

      Par contre cet erreur n’empêche pas full calendar facile de bien afficher les événements du calendrier. Ainsi, en attendant une solution à ce problème gênant est-ce que je peux camoufler (avec un display:none) le message d’erreur juste pour la page agenda car je dois présenter cette fonctionnalité du site en début de semaine prochaine. Merci

    • a priori oui, on peut toujours camoufler. Mais c’est pas normal qu’il y ait ce message. J’en comprend pas la raison.

    • ok, bon, je sais pas pourquoi il arrive pas à générer le fichier statique, Mais pourquoi ? je ne sais pas. Peut être un souci du côté des droits... il faudrait vraiment des accès plus dev pour savoir ce qu’il en est.

    • J’ai fait un test sur le serveur en créant un nouveau spip et seulement agenda et fullcalendar facile . Tout était parfait. Ajout d’accès restreint OK.
      J’ai jeté le site officiel et j’en ai installé un nouveau OK
      Puis j’ai mis le https et j’ai ajouté

      RewriteCond %{HTTPS} !=on
      RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

      dans le .htaccess et la même erreur revient ????
      Après relecture attentive sur le https j’ai déplacé la ligne de code (ci-haut) à la toute fin du fichier .htaccess et l’erreur a disparu ! OUF ! MERCI POUR TOUT

    • J’ai écrit trop vite. Après un gros 2 heures sans problème, l’erreur est revenue.
      J’ai jeté et ré-installé un spip neuf (http) avec les seuls plugins agenda et fullclendar
      Ça empire avant j’avais l’erreur juste sur la page agenda. Maintenant je l’ai aussi sur la page rubrique.

    • Il se pourrait qu’il y ait un bug dans la config serveur qui empeche de requeter sur le serveur lui même.

      mais comme je n’arrive plus à accéder à l’espace privé, je ne peux tester.

      Il faudrait faire un test simple en essayant de joindre en document distant un document du site lui-même.

    • J’ai une piste, avec cette histoire de https.

      D’abord, un peu d’explication.

      Pour construire la version non javascript du calendrier (pour des raisons d’accessibilités et d’indexation), fullcalendar facile va chercher le fichier json du site pour en faire une boucle DATAS dessus. Donc il fait une requete http(s). C’est cette requête qui visiblement échoue (cf le message 404).

      Or, cela peut être lié à un bug de SPIP qui n’arrive pas à faire des requetes https en tls 1.2, ce qui est visiblement le cas de ton site.
      Donc pour corriger cela il faudrait appliquer le patch qui a été préparé pour SPIP.

      Donc remplacer le fichier ecrire/inc/distant.php par cette version https://core.spip.net/projects/spip/repository/revisions/24018/entry/branches/spip-3.2/ecrire/inc/distant.php.

      Si jamais cela ne suffit pas, je ne sais vraiment pas.

    • Cela fonctionne ! Merci mille fois !

    Répondre à ce message

  • 2

    https://sitememoires.com/spip.php?article28
    C’est bizarre je viens de créer un article en dehors d’une zone admin restreint et en public je n’ai pas le message.
    En même temps, lorsque je regarde la page agenda avec acces restreint j’ai le message d’erreur. (voir image jointe)

    • l’image est trop petite je n’arrive pas à lire

    • /sitememoires.com/local/cache-json/jsondyn-agenda json-e60966c8.json ?1547159187, json] 404 / /
      2 //sitememoires.com/local/cache-json/jsondyn-agenda json-0783247c.json ?1547159188, json] 404

    Répondre à ce message

  • 3

    Alors que tout se passe bien sur mon ordi avec MAMP voilà qu’une fois en ligne j’ai une erreur autant en public qu’en privé : .../local/cache-json/jsondyn-agenda json-f1c8f085.json ?1547146158, json] 404
    J’ai l’impression que c’est lié au serveur ???
    PHP Version 7.1.25

    • Est-ce que le fichier en question a été créé ?

    • Non j’ai juste installer les plugins agenda et fullcalendar facile, créer un article, insérer le code <agenda_fullcalendar|couleur=article>, ajouter un événement et j’ai ce message d’erreur au dessus du calendrier qui par contre s’affiche bien
      Est-ce que je peux t’enoyer un login et mdp en message privé pour que tu vois ?

    • oui, monprenom@monprenom.net

    Répondre à ce message

  • 4

    Bonjour,
    je rencontre un petit souci depuis quelques temps mais je n’ai pas de précisions sur la date précise :

    L’insertion du modèle

    1. <agenda_fullcalendar|couleur=article>

    ne génère plus aucun affichage. Je ne sais pas trop vers quoi regarder, étant une bille totale en débogage :D

    Quelqu’un a-t-il déjà rencontré le souci ?

    D’avance merci beaucoup et bonne journée

    Le lien du planning

    • Difficile à dire comme cela. On a l’impression que le modèle n’est pas chargé complètement.

      Peux tu me créer un accès et me l’envoyer en privée ?

    • Bonjour,
      entretemps, j’ai continué mes investigations et je suis un idiot. Je ne me souvenais plus d’une modification que j’avais effectué sur un fichier du plugin que j’avais ensuite rangé dans le dossier squelette. Je viens de supprimer ce fichier et l’agenda est réapparu.
      Je n’ai pas encore cherché l’erreur et pourquoi j’avais fait cette modification mais comme toujours, le bug est entre le clavier et la chaise.

      Désolé de t’avoir fait perdre du temps et merci beaucoup.

      Bonne journée
      ED

    • Re bonjour,
      je viens de retrouver le pourquoi de la modification.

      L’affichage des heures pleines se faisait sous la forme HH et non HH:mm
      J’avais donc rajouté la ligne  : timeFormat : ’H:mm’, dans le modéle

      Un temps, la modification fonctionnait mais sur une mise à jour je pense, ça ne devait plus être bon.

      Je plaide coupable.

    • C’est bon, j’ai trouvé mon erreur, je n’avais pas mis à jour le modélé dans le dossier squelette par rapport à la nouvelle version du plugin.

      Bonne journée

    Répondre à ce message

  • 1

    Bonjour,

    Je viens de tester le plugin « Agenda Fullcalendar facile » et je rencontre un problème inattendu.

    Même en désactivant le dossier « /squellettes » et en vidant le cache de Spip pour revenir au « /squellettes-dist », sans aucune modification de CSS, les titres des événements restent sur une seul ligne, leur titre étant coupé, contrairement à l’exemple affiché sur cette page.

    Qu’est-ce qui cloche ?

    Merci d’avance,

    Cordialement,

    Hervé

    • j’imagine que le réglages css par défaut de fullcalendar ont changé...

      (mais franchement pas hyper le temps de regarder cela)

    Répondre à ce message

  • 4

    Bon soir, Maïeul, un grand merci par cette contrib.

    Le code <agenda_fullcalendar|> affiche touts les évènements enregistres, sans prendre en compte les différentes rubriques où les articles des évènements sont publiés.

    J’ai une structure comme ça dessous, et l’affichage que je voulais avoir c’est :

    +[rub] Pays (tous les évènements, de tous les états <- villes <- comités)
    ++ [rub] État (tous les évènements de tous le villes <- comités de cet état)
    +++ [rub] Ville (tous les évènements de tous les comités de cette ville)
    ++++ [art avec évènements] Comité (tous les évènements de ce comité)

    Il y a plusieurs états, chacun avec plusieurs villes, qui ont, respectivement plusieurs comités. J’espère que c’était clair.

    Je suis parfaitement confortable avec les squelettes de SPIP mais je ne suis pas bien versé en programmation. Cependant, si vous me pointez la bonne façon, je crois que je serais capable de réussir ce que j’ai besoin.

    Merci d’avance,
    Ricardo

    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